From 86561592d002b08d6b2cd9549e8057a4ffd091cb Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Mon, 24 Feb 2020 11:19:00 -0600 Subject: [PATCH 01/95] First attempt at not requiring email address for registration --- src/boot/after_store.js | 3 +++ src/components/registration/registration.js | 9 +++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/boot/after_store.js b/src/boot/after_store.js index d70e1058..9fb9a853 100644 --- a/src/boot/after_store.js +++ b/src/boot/after_store.js @@ -241,6 +241,9 @@ const getNodeInfo = async ({ store }) => { : federation.enabled }) + const accountActivationRequired = metadata.accountActivationRequired + store.dispatch('setInstanceOption', { name: 'accountActivationRequired', value: accountActivationRequired }) + const accounts = metadata.staffAccounts resolveStaffAccounts({ store, accounts }) } else { diff --git a/src/components/registration/registration.js b/src/components/registration/registration.js index ace8cc7c..fd2942a5 100644 --- a/src/components/registration/registration.js +++ b/src/components/registration/registration.js @@ -1,5 +1,5 @@ import { validationMixin } from 'vuelidate' -import { required, sameAs } from 'vuelidate/lib/validators' +import { required, requiredIf, sameAs } from 'vuelidate/lib/validators' import { mapActions, mapState } from 'vuex' const registration = { @@ -16,7 +16,7 @@ const registration = { }), validations: { user: { - email: { required }, + email: requiredIf('accountActivationRequired'), username: { required }, fullname: { required }, password: { required }, @@ -24,6 +24,11 @@ const registration = { required, sameAsPassword: sameAs('password') } + }, + nested: { + required: requiredIf(function (nestedModel) { + return this.accountActivationRequired + }) } }, created () { From 39e3917118293912b2af09f509457d718f0207c9 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Mon, 24 Feb 2020 11:23:16 -0600 Subject: [PATCH 02/95] Remove unneccessary nested --- src/components/registration/registration.js | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/components/registration/registration.js b/src/components/registration/registration.js index fd2942a5..1d8109e4 100644 --- a/src/components/registration/registration.js +++ b/src/components/registration/registration.js @@ -24,11 +24,6 @@ const registration = { required, sameAsPassword: sameAs('password') } - }, - nested: { - required: requiredIf(function (nestedModel) { - return this.accountActivationRequired - }) } }, created () { From 8c5946b72881c38ce43a4b25bda8a38d4f08aac3 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Mon, 30 Mar 2020 12:39:28 -0500 Subject: [PATCH 03/95] Add button in 3dot menu to copy status link to clipboard --- src/components/extra_buttons/extra_buttons.js | 10 ++++++++++ src/components/extra_buttons/extra_buttons.vue | 8 +++++++- src/i18n/en.json | 3 ++- static/fontello.json | 8 +++++++- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/components/extra_buttons/extra_buttons.js b/src/components/extra_buttons/extra_buttons.js index 37485383..2dd77c66 100644 --- a/src/components/extra_buttons/extra_buttons.js +++ b/src/components/extra_buttons/extra_buttons.js @@ -3,6 +3,11 @@ import Popover from '../popover/popover.vue' const ExtraButtons = { props: [ 'status' ], components: { Popover }, + data: function () { + return { + statusLink: `https://${this.$store.state.instance.name}${this.$router.resolve({ name: 'conversation', params: { id: this.status.id } }).href}` + } + }, methods: { deleteStatus () { const confirmed = window.confirm(this.$t('status.delete_confirm')) @@ -29,6 +34,11 @@ const ExtraButtons = { this.$store.dispatch('unmuteConversation', this.status.id) .then(() => this.$emit('onSuccess')) .catch(err => this.$emit('onError', err.error.error)) + }, + copyLink () { + navigator.clipboard.writeText(this.statusLink) + .then(() => this.$emit('onSuccess')) + .catch(err => this.$emit('onError', err.error.error)) } }, computed: { diff --git a/src/components/extra_buttons/extra_buttons.vue b/src/components/extra_buttons/extra_buttons.vue index 3a7f1283..c785a180 100644 --- a/src/components/extra_buttons/extra_buttons.vue +++ b/src/components/extra_buttons/extra_buttons.vue @@ -1,6 +1,5 @@ <template> <Popover - v-if="canDelete || canMute || canPin" trigger="click" placement="top" class="extra-button-popover" @@ -45,6 +44,13 @@ > <i class="icon-cancel" /><span>{{ $t("status.delete") }}</span> </button> + <button + v-close-popover + class="dropdown-item dropdown-item-icon" + @click.prevent="copyLink" + > + <i class="icon-share" /><span>{{ $t("status.copy_link") }}</span> + </button> </div> </div> <i diff --git a/src/i18n/en.json b/src/i18n/en.json index 54d0608e..3a16585d 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -616,7 +616,8 @@ "replies_list": "Replies:", "mute_conversation": "Mute conversation", "unmute_conversation": "Unmute conversation", - "status_unavailable": "Status unavailable" + "status_unavailable": "Status unavailable", + "copy_link": "Copy link to status" }, "user_card": { "approve": "Approve", diff --git a/static/fontello.json b/static/fontello.json index 5a7086a2..9e56232c 100755 --- a/static/fontello.json +++ b/static/fontello.json @@ -345,6 +345,12 @@ "css": "link", "code": 59427, "src": "fontawesome" + }, + { + "uid": "4aad6bb50b02c18508aae9cbe14e784e", + "css": "share", + "code": 61920, + "src": "fontawesome" } ] -} +} \ No newline at end of file From 6bb75a3a6d8452a3e1b88085fe87cf27386f222c Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Tue, 21 Apr 2020 23:27:51 +0300 Subject: [PATCH 04/95] make relationships separate from users --- src/boot/after_store.js | 3 ++ .../account_actions/account_actions.js | 2 +- .../account_actions/account_actions.vue | 8 ++-- .../basic_user_card/basic_user_card.vue | 2 +- src/components/block_card/block_card.js | 5 ++- src/components/follow_button/follow_button.js | 14 +++---- src/components/follow_card/follow_card.js | 3 ++ src/components/follow_card/follow_card.vue | 5 ++- src/components/mute_card/mute_card.js | 9 +++-- src/components/notification/notification.js | 2 +- src/components/notification/notification.vue | 2 +- src/components/side_drawer/side_drawer.vue | 2 +- src/components/status/status.js | 15 ++++++-- src/components/status/status.vue | 2 +- src/components/user_card/user_card.js | 8 +++- src/components/user_card/user_card.vue | 15 +++++--- src/components/user_panel/user_panel.vue | 2 +- src/components/user_profile/user_profile.vue | 2 +- src/components/user_settings/user_settings.js | 8 ++-- src/modules/users.js | 37 +++++++------------ src/services/api/api.service.js | 4 +- .../entity_normalizer.service.js | 25 ++++++++----- .../follow_manipulate/follow_manipulate.js | 15 +++++--- .../notifications_fetcher.service.js | 1 - .../timeline_fetcher.service.js | 2 + 25 files changed, 112 insertions(+), 81 deletions(-) diff --git a/src/boot/after_store.js b/src/boot/after_store.js index d70e1058..1522d4f0 100644 --- a/src/boot/after_store.js +++ b/src/boot/after_store.js @@ -304,6 +304,9 @@ const afterStoreSetup = async ({ store, i18n }) => { getNodeInfo({ store }) ]) + // Start fetching things that don't need to block the UI + store.dispatch('fetchMutes') + const router = new VueRouter({ mode: 'history', routes: routes(store), diff --git a/src/components/account_actions/account_actions.js b/src/components/account_actions/account_actions.js index 5d7ecf7e..0826c275 100644 --- a/src/components/account_actions/account_actions.js +++ b/src/components/account_actions/account_actions.js @@ -3,7 +3,7 @@ import Popover from '../popover/popover.vue' const AccountActions = { props: [ - 'user' + 'user', 'relationship' ], data () { return { } diff --git a/src/components/account_actions/account_actions.vue b/src/components/account_actions/account_actions.vue index 483783cf..744b77d5 100644 --- a/src/components/account_actions/account_actions.vue +++ b/src/components/account_actions/account_actions.vue @@ -9,16 +9,16 @@ class="account-tools-popover" > <div class="dropdown-menu"> - <template v-if="user.following"> + <template v-if="relationship.following"> <button - v-if="user.showing_reblogs" + v-if="relationship.showing_reblogs" class="btn btn-default dropdown-item" @click="hideRepeats" > {{ $t('user_card.hide_repeats') }} </button> <button - v-if="!user.showing_reblogs" + v-if="!relationship.showing_reblogs" class="btn btn-default dropdown-item" @click="showRepeats" > @@ -30,7 +30,7 @@ /> </template> <button - v-if="user.statusnet_blocking" + v-if="relationship.blocking" class="btn btn-default btn-block dropdown-item" @click="unblockUser" > diff --git a/src/components/basic_user_card/basic_user_card.vue b/src/components/basic_user_card/basic_user_card.vue index 8a02174e..b5a11e2b 100644 --- a/src/components/basic_user_card/basic_user_card.vue +++ b/src/components/basic_user_card/basic_user_card.vue @@ -12,7 +12,7 @@ class="basic-user-card-expanded-content" > <UserCard - :user="user" + :userId="user.id" :rounded="true" :bordered="true" /> diff --git a/src/components/block_card/block_card.js b/src/components/block_card/block_card.js index c459ff1b..659c75d8 100644 --- a/src/components/block_card/block_card.js +++ b/src/components/block_card/block_card.js @@ -11,8 +11,11 @@ const BlockCard = { user () { return this.$store.getters.findUser(this.userId) }, + relationship () { + return this.$store.state.users.relationships[this.userId] || {} + }, blocked () { - return this.user.statusnet_blocking + return this.relationship.blocking } }, components: { diff --git a/src/components/follow_button/follow_button.js b/src/components/follow_button/follow_button.js index 12da2645..af7b1fef 100644 --- a/src/components/follow_button/follow_button.js +++ b/src/components/follow_button/follow_button.js @@ -1,6 +1,6 @@ import { requestFollow, requestUnfollow } from '../../services/follow_manipulate/follow_manipulate' export default { - props: ['user', 'labelFollowing', 'buttonClass'], + props: ['relationship', 'labelFollowing', 'buttonClass'], data () { return { inProgress: false @@ -8,12 +8,12 @@ export default { }, computed: { isPressed () { - return this.inProgress || this.user.following + return this.inProgress || this.relationship.following }, title () { - if (this.inProgress || this.user.following) { + if (this.inProgress || this.relationship.following) { return this.$t('user_card.follow_unfollow') - } else if (this.user.requested) { + } else if (this.relationship.requested) { return this.$t('user_card.follow_again') } else { return this.$t('user_card.follow') @@ -22,9 +22,9 @@ export default { label () { if (this.inProgress) { return this.$t('user_card.follow_progress') - } else if (this.user.following) { + } else if (this.relationship.following) { return this.labelFollowing || this.$t('user_card.following') - } else if (this.user.requested) { + } else if (this.relationship.requested) { return this.$t('user_card.follow_sent') } else { return this.$t('user_card.follow') @@ -33,7 +33,7 @@ export default { }, methods: { onClick () { - this.user.following ? this.unfollow() : this.follow() + this.relationship.following ? this.unfollow() : this.follow() }, follow () { this.inProgress = true diff --git a/src/components/follow_card/follow_card.js b/src/components/follow_card/follow_card.js index aefd609e..620ae7fd 100644 --- a/src/components/follow_card/follow_card.js +++ b/src/components/follow_card/follow_card.js @@ -18,6 +18,9 @@ const FollowCard = { }, loggedIn () { return this.$store.state.users.currentUser + }, + relationship () { + return this.$store.state.users.relationships[this.user.id] } } } diff --git a/src/components/follow_card/follow_card.vue b/src/components/follow_card/follow_card.vue index 81e6e6dc..d789a325 100644 --- a/src/components/follow_card/follow_card.vue +++ b/src/components/follow_card/follow_card.vue @@ -2,14 +2,14 @@ <basic-user-card :user="user"> <div class="follow-card-content-container"> <span - v-if="!noFollowsYou && user.follows_you" + v-if="!noFollowsYou && relationship.followed_by" class="faint" > {{ isMe ? $t('user_card.its_you') : $t('user_card.follows_you') }} </span> <template v-if="!loggedIn"> <div - v-if="!user.following" + v-if="!relationship.following" class="follow-card-follow-button" > <RemoteFollow :user="user" /> @@ -18,6 +18,7 @@ <template v-else> <FollowButton :user="user" + :relationship="relationship" class="follow-card-follow-button" :label-following="$t('user_card.follow_unfollow')" /> diff --git a/src/components/mute_card/mute_card.js b/src/components/mute_card/mute_card.js index 65c9cfb5..be528d37 100644 --- a/src/components/mute_card/mute_card.js +++ b/src/components/mute_card/mute_card.js @@ -11,8 +11,11 @@ const MuteCard = { user () { return this.$store.getters.findUser(this.userId) }, + relationship () { + return this.$store.state.users.relationships[this.userId] + }, muted () { - return this.user.muted + return this.relationship.muting } }, components: { @@ -21,13 +24,13 @@ const MuteCard = { methods: { unmuteUser () { this.progress = true - this.$store.dispatch('unmuteUser', this.user.id).then(() => { + this.$store.dispatch('unmuteUser', this.userId).then(() => { this.progress = false }) }, muteUser () { this.progress = true - this.$store.dispatch('muteUser', this.user.id).then(() => { + this.$store.dispatch('muteUser', this.userId).then(() => { this.progress = false }) } diff --git a/src/components/notification/notification.js b/src/components/notification/notification.js index e7bd769e..09554f54 100644 --- a/src/components/notification/notification.js +++ b/src/components/notification/notification.js @@ -56,7 +56,7 @@ const Notification = { return this.generateUserProfileLink(this.targetUser) }, needMute () { - return this.user.muted + return (this.$store.state.users.relationships[this.user.id] || {}).muting } } } diff --git a/src/components/notification/notification.vue b/src/components/notification/notification.vue index 411c0271..24d9fe90 100644 --- a/src/components/notification/notification.vue +++ b/src/components/notification/notification.vue @@ -40,7 +40,7 @@ <div class="notification-right"> <UserCard v-if="userExpanded" - :user="getUser(notification)" + :user-id="getUser(notification).id" :rounded="true" :bordered="true" /> diff --git a/src/components/side_drawer/side_drawer.vue b/src/components/side_drawer/side_drawer.vue index df1d22a4..a9dbbeec 100644 --- a/src/components/side_drawer/side_drawer.vue +++ b/src/components/side_drawer/side_drawer.vue @@ -19,7 +19,7 @@ > <UserCard v-if="currentUser" - :user="currentUser" + :userId="currentUser.id" :hide-bio="true" /> <div diff --git a/src/components/status/status.js b/src/components/status/status.js index fc5956ec..a73e3ae2 100644 --- a/src/components/status/status.js +++ b/src/components/status/status.js @@ -118,7 +118,13 @@ const Status = { return hits }, - muted () { return !this.unmuted && ((!(this.inProfile && this.status.user.id === this.profileUserId) && this.status.user.muted) || (!this.inConversation && this.status.thread_muted) || this.muteWordHits.length > 0) }, + muted () { + const relationship = this.$store.state.users.relationships[this.status.user.id] || {} + return !this.unmuted && ( + (!(this.inProfile && this.status.user.id === this.profileUserId) && relationship.muting) || + (!this.inConversation && this.status.thread_muted) || + this.muteWordHits.length > 0) + }, hideFilteredStatuses () { return this.mergedConfig.hideFilteredStatuses }, @@ -178,8 +184,11 @@ const Status = { if (this.status.user.id === this.status.attentions[i].id) { continue } - const taggedUser = this.$store.getters.findUser(this.status.attentions[i].id) - if (checkFollowing && taggedUser && taggedUser.following) { + // There's zero guarantee of this working. If we happen to have that user and their + // relationship in store then it will work, but there's kinda little chance of having + // them for people you're not following. + const relationship = this.$store.state.users.relationships[this.status.attentions[i].id] + if (checkFollowing && relationship && relationship.following) { return false } if (this.status.attentions[i].id === this.currentUser.id) { diff --git a/src/components/status/status.vue b/src/components/status/status.vue index ca295640..a04b501a 100644 --- a/src/components/status/status.vue +++ b/src/components/status/status.vue @@ -94,7 +94,7 @@ <div class="status-body"> <UserCard v-if="userExpanded" - :user="status.user" + :userId="status.user.id" :rounded="true" :bordered="true" class="status-usercard" diff --git a/src/components/user_card/user_card.js b/src/components/user_card/user_card.js index 1cdbd3fa..fb3cfebc 100644 --- a/src/components/user_card/user_card.js +++ b/src/components/user_card/user_card.js @@ -9,7 +9,7 @@ import { mapGetters } from 'vuex' export default { props: [ - 'user', 'switcher', 'selected', 'hideBio', 'rounded', 'bordered', 'allowZoomingAvatar' + 'userId', 'switcher', 'selected', 'hideBio', 'rounded', 'bordered', 'allowZoomingAvatar' ], data () { return { @@ -21,6 +21,12 @@ export default { this.$store.dispatch('fetchUserRelationship', this.user.id) }, computed: { + user () { + return this.$store.getters.findUser(this.userId) + }, + relationship () { + return this.$store.state.users.relationships[this.userId] || {} + }, classes () { return [{ 'user-card-rounded-t': this.rounded === 'top', // set border-top-left-radius and border-top-right-radius diff --git a/src/components/user_card/user_card.vue b/src/components/user_card/user_card.vue index 4ee040e8..25fdd70e 100644 --- a/src/components/user_card/user_card.vue +++ b/src/components/user_card/user_card.vue @@ -8,7 +8,9 @@ :style="style" class="background-image" /> - <div class="panel-heading"> + <div + class="panel-heading" + > <div class="user-info"> <div class="container"> <a @@ -69,6 +71,7 @@ <AccountActions v-if="isOtherUser && loggedIn" :user="user" + :relationship="relationship" /> </div> <div class="bottom-line"> @@ -92,7 +95,7 @@ </div> <div class="user-meta"> <div - v-if="user.follows_you && loggedIn && isOtherUser" + v-if="relationship.followed_by && loggedIn && isOtherUser" class="following" > {{ $t('user_card.follows_you') }} @@ -139,10 +142,10 @@ class="user-interactions" > <div class="btn-group"> - <FollowButton :user="user" /> - <template v-if="user.following"> + <FollowButton :relationship="relationship" /> + <template v-if="relationship.following"> <ProgressButton - v-if="!user.subscribed" + v-if="!relationship.subscribing" class="btn btn-default" :click="subscribeUser" :title="$t('user_card.subscribe')" @@ -161,7 +164,7 @@ </div> <div> <button - v-if="user.muted" + v-if="relationship.muting" class="btn btn-default btn-block toggled" @click="unmuteUser" > diff --git a/src/components/user_panel/user_panel.vue b/src/components/user_panel/user_panel.vue index e9f08015..ea4e2e9f 100644 --- a/src/components/user_panel/user_panel.vue +++ b/src/components/user_panel/user_panel.vue @@ -6,7 +6,7 @@ class="panel panel-default signed-in" > <UserCard - :user="user" + :userId="user.id" :hide-bio="true" rounded="top" /> diff --git a/src/components/user_profile/user_profile.vue b/src/components/user_profile/user_profile.vue index 14082e83..7855c839 100644 --- a/src/components/user_profile/user_profile.vue +++ b/src/components/user_profile/user_profile.vue @@ -5,7 +5,7 @@ class="user-profile panel panel-default" > <UserCard - :user="user" + :userId="user.id" :switcher="true" :selected="timeline.viewing" :allow-zooming-avatar="true" diff --git a/src/components/user_settings/user_settings.js b/src/components/user_settings/user_settings.js index eca6f9b1..adfab8fa 100644 --- a/src/components/user_settings/user_settings.js +++ b/src/components/user_settings/user_settings.js @@ -351,14 +351,14 @@ const UserSettings = { }, filterUnblockedUsers (userIds) { return reject(userIds, (userId) => { - const user = this.$store.getters.findUser(userId) - return !user || user.statusnet_blocking || user.id === this.$store.state.users.currentUser.id + const relationship = this.$store.state.users.relationships[userId] || {} + return relationship.blocking || userId === this.$store.state.users.currentUser.id }) }, filterUnMutedUsers (userIds) { return reject(userIds, (userId) => { - const user = this.$store.getters.findUser(userId) - return !user || user.muted || user.id === this.$store.state.users.currentUser.id + const relationship = this.$store.state.users.relationships[userId] || {} + return relationship.muting || userId === this.$store.state.users.currentUser.id }) }, queryUserIds (query) { diff --git a/src/modules/users.js b/src/modules/users.js index df133be0..7e73ab18 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -146,26 +146,19 @@ export const mutations = { } }, addNewUsers (state, users) { - each(users, (user) => mergeOrAdd(state.users, state.usersObject, user)) + each(users, (user) => { + // console.log(user) + if (user.relationship) { + set(state.relationships, user.relationship.id, user.relationship) + } + mergeOrAdd(state.users, state.usersObject, user) + }) }, updateUserRelationship (state, relationships) { relationships.forEach((relationship) => { - const user = state.usersObject[relationship.id] - if (user) { - user.follows_you = relationship.followed_by - user.following = relationship.following - user.muted = relationship.muting - user.statusnet_blocking = relationship.blocking - user.subscribed = relationship.subscribing - user.showing_reblogs = relationship.showing_reblogs - } + set(state.relationships, relationship.id, relationship) }) }, - updateBlocks (state, blockedUsers) { - // Reset statusnet_blocking of all fetched users - each(state.users, (user) => { user.statusnet_blocking = false }) - each(blockedUsers, (user) => mergeOrAdd(state.users, state.usersObject, user)) - }, saveBlockIds (state, blockIds) { state.currentUser.blockIds = blockIds }, @@ -174,11 +167,6 @@ export const mutations = { state.currentUser.blockIds.push(blockId) } }, - updateMutes (state, mutedUsers) { - // Reset muted of all fetched users - each(state.users, (user) => { user.muted = false }) - each(mutedUsers, (user) => mergeOrAdd(state.users, state.usersObject, user)) - }, saveMuteIds (state, muteIds) { state.currentUser.muteIds = muteIds }, @@ -254,7 +242,8 @@ export const defaultState = { users: [], usersObject: {}, signUpPending: false, - signUpErrors: [] + signUpErrors: [], + relationships: {} } const users = { @@ -279,7 +268,7 @@ const users = { return store.rootState.api.backendInteractor.fetchBlocks() .then((blocks) => { store.commit('saveBlockIds', map(blocks, 'id')) - store.commit('updateBlocks', blocks) + store.commit('addNewUsers', blocks) return blocks }) }, @@ -298,8 +287,8 @@ const users = { fetchMutes (store) { return store.rootState.api.backendInteractor.fetchMutes() .then((mutes) => { - store.commit('updateMutes', mutes) store.commit('saveMuteIds', map(mutes, 'id')) + store.commit('addNewUsers', mutes) return mutes }) }, @@ -416,7 +405,7 @@ const users = { }, addNewNotifications (store, { notifications }) { const users = map(notifications, 'from_profile') - const targetUsers = map(notifications, 'target') + const targetUsers = map(notifications, 'target').filter(_ => _) const notificationIds = notifications.map(_ => _.id) store.commit('addNewUsers', users) store.commit('addNewUsers', targetUsers) diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js index 7db1d094..ee6bf151 100644 --- a/src/services/api/api.service.js +++ b/src/services/api/api.service.js @@ -496,7 +496,8 @@ const fetchTimeline = ({ userId = false, tag = false, withMuted = false, - withMove = false + withMove = false, + withRelationships = false }) => { const timelineUrls = { public: MASTODON_PUBLIC_TIMELINE, @@ -542,6 +543,7 @@ const fetchTimeline = ({ params.push(['count', 20]) params.push(['with_muted', withMuted]) + params.push(['with_relationships', withRelationships]) const queryString = map(params, (param) => `${param[0]}=${param[1]}`).join('&') url += `?${queryString}` diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js index 84169a7b..97f9f2ae 100644 --- a/src/services/entity_normalizer/entity_normalizer.service.js +++ b/src/services/entity_normalizer/entity_normalizer.service.js @@ -73,7 +73,7 @@ export const parseUser = (data) => { output.background_image = data.pleroma.background_image output.token = data.pleroma.chat_token - if (relationship) { + if (relationship && !relationship) { output.follows_you = relationship.followed_by output.requested = relationship.requested output.following = relationship.following @@ -82,6 +82,9 @@ export const parseUser = (data) => { output.showing_reblogs = relationship.showing_reblogs output.subscribed = relationship.subscribing } + if (relationship) { + output.relationship = relationship + } output.allow_following_move = data.pleroma.allow_following_move @@ -137,16 +140,10 @@ export const parseUser = (data) => { output.statusnet_profile_url = data.statusnet_profile_url - output.statusnet_blocking = data.statusnet_blocking - output.is_local = data.is_local output.role = data.role output.show_role = data.show_role - output.follows_you = data.follows_you - - output.muted = data.muted - if (data.rights) { output.rights = { moderator: data.rights.delete_others_notice, @@ -160,10 +157,16 @@ export const parseUser = (data) => { output.hide_follows_count = data.hide_follows_count output.hide_followers_count = data.hide_followers_count output.background_image = data.background_image - // on mastoapi this info is contained in a "relationship" - output.following = data.following // Websocket token output.token = data.token + + // Convert relationsip data to expected format + output.relationship = { + muting: data.muted, + blocking: data.statusnet_blocking, + followed_by: data.follows_you, + following: data.following + } } output.created_at = new Date(data.created_at) @@ -317,6 +320,9 @@ export const parseStatus = (data) => { ? String(output.in_reply_to_user_id) : null + if (data.account.pleroma.relationship) { + data.account.pleroma.relationship = undefined + } output.user = parseUser(masto ? data.account : data.user) output.attentions = ((masto ? data.mentions : data.attentions) || []).map(parseUser) @@ -342,7 +348,6 @@ export const parseNotification = (data) => { } const masto = !data.hasOwnProperty('ntype') const output = {} - if (masto) { output.type = mastoDict[data.type] || data.type output.seen = data.pleroma.is_seen diff --git a/src/services/follow_manipulate/follow_manipulate.js b/src/services/follow_manipulate/follow_manipulate.js index 29b38a0f..c5d86afa 100644 --- a/src/services/follow_manipulate/follow_manipulate.js +++ b/src/services/follow_manipulate/follow_manipulate.js @@ -1,15 +1,18 @@ -const fetchUser = (attempt, user, store) => new Promise((resolve, reject) => { +const fetchRelationship = (attempt, user, store) => new Promise((resolve, reject) => { setTimeout(() => { - store.state.api.backendInteractor.fetchUser({ id: user.id }) - .then((user) => store.commit('addNewUsers', [user])) - .then(() => resolve([user.following, user.requested, user.locked, attempt])) + store.state.api.backendInteractor.fetchUserRelationship({ id: user.id }) + .then((relationship) => { + store.commit('updateUserRelationship', [relationship]) + return relationship + }) + .then((relationship) => resolve([relationship.following, relationship.requested, user.locked, attempt])) .catch((e) => reject(e)) }, 500) }).then(([following, sent, locked, attempt]) => { if (!following && !(locked && sent) && attempt <= 3) { // If we BE reports that we still not following that user - retry, // increment attempts by one - fetchUser(++attempt, user, store) + fetchRelationship(++attempt, user, store) } }) @@ -31,7 +34,7 @@ export const requestFollow = (user, store) => new Promise((resolve, reject) => { // don't know that yet. // Recursive Promise, it will call itself up to 3 times. - return fetchUser(1, user, store) + return fetchRelationship(1, user, store) .then(() => { resolve() }) diff --git a/src/services/notifications_fetcher/notifications_fetcher.service.js b/src/services/notifications_fetcher/notifications_fetcher.service.js index 864e32f8..eb6d84c4 100644 --- a/src/services/notifications_fetcher/notifications_fetcher.service.js +++ b/src/services/notifications_fetcher/notifications_fetcher.service.js @@ -48,7 +48,6 @@ const fetchNotifications = ({ store, args, older }) => { update({ store, notifications, older }) return notifications }, () => store.dispatch('setNotificationsError', { value: true })) - .catch(() => store.dispatch('setNotificationsError', { value: true })) } const startFetching = ({ credentials, store }) => { diff --git a/src/services/timeline_fetcher/timeline_fetcher.service.js b/src/services/timeline_fetcher/timeline_fetcher.service.js index c6b28ad5..96fafff9 100644 --- a/src/services/timeline_fetcher/timeline_fetcher.service.js +++ b/src/services/timeline_fetcher/timeline_fetcher.service.js @@ -31,6 +31,7 @@ const fetchAndUpdate = ({ const { getters } = store const timelineData = rootState.statuses.timelines[camelCase(timeline)] const hideMutedPosts = getters.mergedConfig.hideMutedPosts + const replyVisibility = getters.mergedConfig.replyVisibility if (older) { args['until'] = until || timelineData.minId @@ -41,6 +42,7 @@ const fetchAndUpdate = ({ args['userId'] = userId args['tag'] = tag args['withMuted'] = !hideMutedPosts + args['withRelationships'] = replyVisibility === 'following' const numStatusesBeforeFetch = timelineData.statuses.length From 4b7007bc7dc4af8601454d8a84cf9f68e47545dd Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Tue, 21 Apr 2020 23:56:48 +0300 Subject: [PATCH 05/95] fix mistakes --- src/components/user_card/user_card.vue | 4 +--- src/modules/users.js | 1 - src/services/entity_normalizer/entity_normalizer.service.js | 3 --- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/src/components/user_card/user_card.vue b/src/components/user_card/user_card.vue index 25fdd70e..b40435cd 100644 --- a/src/components/user_card/user_card.vue +++ b/src/components/user_card/user_card.vue @@ -8,9 +8,7 @@ :style="style" class="background-image" /> - <div - class="panel-heading" - > + <div class="panel-heading"> <div class="user-info"> <div class="container"> <a diff --git a/src/modules/users.js b/src/modules/users.js index 7e73ab18..591d4634 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -147,7 +147,6 @@ export const mutations = { }, addNewUsers (state, users) { each(users, (user) => { - // console.log(user) if (user.relationship) { set(state.relationships, user.relationship.id, user.relationship) } diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js index 97f9f2ae..66a7a8b7 100644 --- a/src/services/entity_normalizer/entity_normalizer.service.js +++ b/src/services/entity_normalizer/entity_normalizer.service.js @@ -320,9 +320,6 @@ export const parseStatus = (data) => { ? String(output.in_reply_to_user_id) : null - if (data.account.pleroma.relationship) { - data.account.pleroma.relationship = undefined - } output.user = parseUser(masto ? data.account : data.user) output.attentions = ((masto ? data.mentions : data.attentions) || []).map(parseUser) From 576ad9750be4a76df7f7cc4d7062aa4546d7f61f Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 22 Apr 2020 00:07:01 +0300 Subject: [PATCH 06/95] make tests not fail --- test/unit/specs/components/user_profile.spec.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/test/unit/specs/components/user_profile.spec.js b/test/unit/specs/components/user_profile.spec.js index 1b6a47d7..0a3f2d27 100644 --- a/test/unit/specs/components/user_profile.spec.js +++ b/test/unit/specs/components/user_profile.spec.js @@ -96,7 +96,8 @@ const externalProfileStore = new Vuex.Store({ credentials: '' }, usersObject: { 100: extUser }, - users: [extUser] + users: [extUser], + relationships: {} } } }) @@ -164,7 +165,8 @@ const localProfileStore = new Vuex.Store({ credentials: '' }, usersObject: { 100: localUser, 'testuser': localUser }, - users: [localUser] + users: [localUser], + relationships: {} } } }) From aa561473226d22d71c37756265df6949795a6cab Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 22 Apr 2020 15:06:10 +0300 Subject: [PATCH 07/95] fix follow --- src/components/follow_button/follow_button.js | 6 +++--- .../follow_manipulate/follow_manipulate.js | 20 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/components/follow_button/follow_button.js b/src/components/follow_button/follow_button.js index af7b1fef..95e7cb6b 100644 --- a/src/components/follow_button/follow_button.js +++ b/src/components/follow_button/follow_button.js @@ -37,16 +37,16 @@ export default { }, follow () { this.inProgress = true - requestFollow(this.user, this.$store).then(() => { + requestFollow(this.relationship.id, this.$store).then(() => { this.inProgress = false }) }, unfollow () { const store = this.$store this.inProgress = true - requestUnfollow(this.user, store).then(() => { + requestUnfollow(this.relationship.id, store).then(() => { this.inProgress = false - store.commit('removeStatus', { timeline: 'friends', userId: this.user.id }) + store.commit('removeStatus', { timeline: 'friends', userId: this.relationship.id }) }) } } diff --git a/src/services/follow_manipulate/follow_manipulate.js b/src/services/follow_manipulate/follow_manipulate.js index c5d86afa..08f4c4d6 100644 --- a/src/services/follow_manipulate/follow_manipulate.js +++ b/src/services/follow_manipulate/follow_manipulate.js @@ -1,27 +1,27 @@ -const fetchRelationship = (attempt, user, store) => new Promise((resolve, reject) => { +const fetchRelationship = (attempt, userId, store) => new Promise((resolve, reject) => { setTimeout(() => { - store.state.api.backendInteractor.fetchUserRelationship({ id: user.id }) + store.state.api.backendInteractor.fetchUserRelationship({ id: userId }) .then((relationship) => { store.commit('updateUserRelationship', [relationship]) return relationship }) - .then((relationship) => resolve([relationship.following, relationship.requested, user.locked, attempt])) + .then((relationship) => resolve([relationship.following, relationship.requested, relationship.locked, attempt])) .catch((e) => reject(e)) }, 500) }).then(([following, sent, locked, attempt]) => { if (!following && !(locked && sent) && attempt <= 3) { // If we BE reports that we still not following that user - retry, // increment attempts by one - fetchRelationship(++attempt, user, store) + fetchRelationship(++attempt, userId, store) } }) -export const requestFollow = (user, store) => new Promise((resolve, reject) => { - store.state.api.backendInteractor.followUser({ id: user.id }) +export const requestFollow = (userId, store) => new Promise((resolve, reject) => { + store.state.api.backendInteractor.followUser({ id: userId }) .then((updated) => { store.commit('updateUserRelationship', [updated]) - if (updated.following || (user.locked && user.requested)) { + if (updated.following || (updated.locked && updated.requested)) { // If we get result immediately or the account is locked, just stop. resolve() return @@ -34,15 +34,15 @@ export const requestFollow = (user, store) => new Promise((resolve, reject) => { // don't know that yet. // Recursive Promise, it will call itself up to 3 times. - return fetchRelationship(1, user, store) + return fetchRelationship(1, updated, store) .then(() => { resolve() }) }) }) -export const requestUnfollow = (user, store) => new Promise((resolve, reject) => { - store.state.api.backendInteractor.unfollowUser({ id: user.id }) +export const requestUnfollow = (userId, store) => new Promise((resolve, reject) => { + store.state.api.backendInteractor.unfollowUser({ id: userId }) .then((updated) => { store.commit('updateUserRelationship', [updated]) resolve({ From cda298c8223851d50edcd2761391d4ddb8932ed1 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Thu, 23 Apr 2020 11:17:52 +0300 Subject: [PATCH 08/95] remove unused mutation and test for it --- src/modules/users.js | 4 ---- .../entity_normalizer/entity_normalizer.service.js | 9 --------- test/unit/specs/modules/users.spec.js | 14 -------------- 3 files changed, 27 deletions(-) diff --git a/src/modules/users.js b/src/modules/users.js index 591d4634..6b19fc97 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -83,10 +83,6 @@ const unmuteDomain = (store, domain) => { } export const mutations = { - setMuted (state, { user: { id }, muted }) { - const user = state.usersObject[id] - set(user, 'muted', muted) - }, tagUser (state, { user: { id }, tag }) { const user = state.usersObject[id] const tags = user.tags || [] diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js index 66a7a8b7..7237fdfc 100644 --- a/src/services/entity_normalizer/entity_normalizer.service.js +++ b/src/services/entity_normalizer/entity_normalizer.service.js @@ -73,15 +73,6 @@ export const parseUser = (data) => { output.background_image = data.pleroma.background_image output.token = data.pleroma.chat_token - if (relationship && !relationship) { - output.follows_you = relationship.followed_by - output.requested = relationship.requested - output.following = relationship.following - output.statusnet_blocking = relationship.blocking - output.muted = relationship.muting - output.showing_reblogs = relationship.showing_reblogs - output.subscribed = relationship.subscribing - } if (relationship) { output.relationship = relationship } diff --git a/test/unit/specs/modules/users.spec.js b/test/unit/specs/modules/users.spec.js index eeb7afef..670acfc8 100644 --- a/test/unit/specs/modules/users.spec.js +++ b/test/unit/specs/modules/users.spec.js @@ -18,20 +18,6 @@ describe('The users module', () => { expect(state.users).to.eql([user]) expect(state.users[0].name).to.eql('Dude') }) - - it('sets a mute bit on users', () => { - const state = cloneDeep(defaultState) - const user = { id: '1', name: 'Guy' } - - mutations.addNewUsers(state, [user]) - mutations.setMuted(state, { user, muted: true }) - - expect(user.muted).to.eql(true) - - mutations.setMuted(state, { user, muted: false }) - - expect(user.muted).to.eql(false) - }) }) describe('findUser', () => { From ce0a1e7ad134089f62835fc0f9f015fed673766b Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Thu, 23 Apr 2020 14:08:33 +0300 Subject: [PATCH 09/95] add back missing catch --- .../notifications_fetcher/notifications_fetcher.service.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/services/notifications_fetcher/notifications_fetcher.service.js b/src/services/notifications_fetcher/notifications_fetcher.service.js index eb6d84c4..864e32f8 100644 --- a/src/services/notifications_fetcher/notifications_fetcher.service.js +++ b/src/services/notifications_fetcher/notifications_fetcher.service.js @@ -48,6 +48,7 @@ const fetchNotifications = ({ store, args, older }) => { update({ store, notifications, older }) return notifications }, () => store.dispatch('setNotificationsError', { value: true })) + .catch(() => store.dispatch('setNotificationsError', { value: true })) } const startFetching = ({ credentials, store }) => { From 99d8e16e4d19acbd811a9e19e087eeed04f7b638 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Thu, 23 Apr 2020 14:11:48 +0300 Subject: [PATCH 10/95] remove with_relationships as it doesn't help --- src/services/api/api.service.js | 4 +--- src/services/timeline_fetcher/timeline_fetcher.service.js | 2 -- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js index ee6bf151..7db1d094 100644 --- a/src/services/api/api.service.js +++ b/src/services/api/api.service.js @@ -496,8 +496,7 @@ const fetchTimeline = ({ userId = false, tag = false, withMuted = false, - withMove = false, - withRelationships = false + withMove = false }) => { const timelineUrls = { public: MASTODON_PUBLIC_TIMELINE, @@ -543,7 +542,6 @@ const fetchTimeline = ({ params.push(['count', 20]) params.push(['with_muted', withMuted]) - params.push(['with_relationships', withRelationships]) const queryString = map(params, (param) => `${param[0]}=${param[1]}`).join('&') url += `?${queryString}` diff --git a/src/services/timeline_fetcher/timeline_fetcher.service.js b/src/services/timeline_fetcher/timeline_fetcher.service.js index 96fafff9..c6b28ad5 100644 --- a/src/services/timeline_fetcher/timeline_fetcher.service.js +++ b/src/services/timeline_fetcher/timeline_fetcher.service.js @@ -31,7 +31,6 @@ const fetchAndUpdate = ({ const { getters } = store const timelineData = rootState.statuses.timelines[camelCase(timeline)] const hideMutedPosts = getters.mergedConfig.hideMutedPosts - const replyVisibility = getters.mergedConfig.replyVisibility if (older) { args['until'] = until || timelineData.minId @@ -42,7 +41,6 @@ const fetchAndUpdate = ({ args['userId'] = userId args['tag'] = tag args['withMuted'] = !hideMutedPosts - args['withRelationships'] = replyVisibility === 'following' const numStatusesBeforeFetch = timelineData.statuses.length From ca00e93b6092c855b0109e1e6dab93c29a28716a Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Thu, 23 Apr 2020 14:27:27 +0300 Subject: [PATCH 11/95] minor fixes --- src/components/follow_card/follow_card.vue | 3 +-- src/components/side_drawer/side_drawer.vue | 2 +- src/components/status/status.vue | 2 +- src/services/entity_normalizer/entity_normalizer.service.js | 1 + 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/components/follow_card/follow_card.vue b/src/components/follow_card/follow_card.vue index d789a325..76a70730 100644 --- a/src/components/follow_card/follow_card.vue +++ b/src/components/follow_card/follow_card.vue @@ -17,10 +17,9 @@ </template> <template v-else> <FollowButton - :user="user" :relationship="relationship" - class="follow-card-follow-button" :label-following="$t('user_card.follow_unfollow')" + class="follow-card-follow-button" /> </template> </div> diff --git a/src/components/side_drawer/side_drawer.vue b/src/components/side_drawer/side_drawer.vue index a9dbbeec..2958a386 100644 --- a/src/components/side_drawer/side_drawer.vue +++ b/src/components/side_drawer/side_drawer.vue @@ -19,7 +19,7 @@ > <UserCard v-if="currentUser" - :userId="currentUser.id" + :user-id="currentUser.id" :hide-bio="true" /> <div diff --git a/src/components/status/status.vue b/src/components/status/status.vue index a04b501a..dd7cd579 100644 --- a/src/components/status/status.vue +++ b/src/components/status/status.vue @@ -94,7 +94,7 @@ <div class="status-body"> <UserCard v-if="userExpanded" - :userId="status.user.id" + :user-id="status.user.id" :rounded="true" :bordered="true" class="status-usercard" diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js index 7237fdfc..724dcc4b 100644 --- a/src/services/entity_normalizer/entity_normalizer.service.js +++ b/src/services/entity_normalizer/entity_normalizer.service.js @@ -336,6 +336,7 @@ export const parseNotification = (data) => { } const masto = !data.hasOwnProperty('ntype') const output = {} + if (masto) { output.type = mastoDict[data.type] || data.type output.seen = data.pleroma.is_seen From c476193fd9e5bbb783ad4d3be80839caf180f598 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Thu, 23 Apr 2020 14:44:55 +0300 Subject: [PATCH 12/95] minor lint fixes --- src/components/user_panel/user_panel.vue | 2 +- src/components/user_profile/user_profile.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/user_panel/user_panel.vue b/src/components/user_panel/user_panel.vue index ea4e2e9f..1db4f648 100644 --- a/src/components/user_panel/user_panel.vue +++ b/src/components/user_panel/user_panel.vue @@ -6,7 +6,7 @@ class="panel panel-default signed-in" > <UserCard - :userId="user.id" + :user-id="user.id" :hide-bio="true" rounded="top" /> diff --git a/src/components/user_profile/user_profile.vue b/src/components/user_profile/user_profile.vue index 7855c839..1871d46c 100644 --- a/src/components/user_profile/user_profile.vue +++ b/src/components/user_profile/user_profile.vue @@ -5,7 +5,7 @@ class="user-profile panel panel-default" > <UserCard - :userId="user.id" + :user-id="userId" :switcher="true" :selected="timeline.viewing" :allow-zooming-avatar="true" From f6fce92cf7a463fbdf270d494404dca5aae06045 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Thu, 23 Apr 2020 14:48:15 +0300 Subject: [PATCH 13/95] last lint warning --- src/components/basic_user_card/basic_user_card.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/basic_user_card/basic_user_card.vue b/src/components/basic_user_card/basic_user_card.vue index b5a11e2b..9e410610 100644 --- a/src/components/basic_user_card/basic_user_card.vue +++ b/src/components/basic_user_card/basic_user_card.vue @@ -12,7 +12,7 @@ class="basic-user-card-expanded-content" > <UserCard - :userId="user.id" + :user-id="user.id" :rounded="true" :bordered="true" /> From af9492977aaa10903d54add3187b5cf9d9a00d6c Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Fri, 24 Apr 2020 18:53:17 +0300 Subject: [PATCH 14/95] add back mute prediction, add getter for relationships --- src/components/block_card/block_card.js | 2 +- src/components/follow_card/follow_card.js | 2 +- src/components/mute_card/mute_card.js | 2 +- src/components/notification/notification.js | 2 +- src/components/status/status.js | 2 +- src/components/user_card/user_card.js | 2 +- src/components/user_settings/user_settings.js | 4 ++-- src/modules/users.js | 12 ++++++++++++ test/unit/specs/components/user_profile.spec.js | 1 + 9 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/components/block_card/block_card.js b/src/components/block_card/block_card.js index 659c75d8..0bf4e37b 100644 --- a/src/components/block_card/block_card.js +++ b/src/components/block_card/block_card.js @@ -12,7 +12,7 @@ const BlockCard = { return this.$store.getters.findUser(this.userId) }, relationship () { - return this.$store.state.users.relationships[this.userId] || {} + return this.$store.getters.relationship(this.userId) }, blocked () { return this.relationship.blocking diff --git a/src/components/follow_card/follow_card.js b/src/components/follow_card/follow_card.js index 620ae7fd..6dcb6d47 100644 --- a/src/components/follow_card/follow_card.js +++ b/src/components/follow_card/follow_card.js @@ -20,7 +20,7 @@ const FollowCard = { return this.$store.state.users.currentUser }, relationship () { - return this.$store.state.users.relationships[this.user.id] + return this.$store.getters.relationship(this.user.id) } } } diff --git a/src/components/mute_card/mute_card.js b/src/components/mute_card/mute_card.js index be528d37..cbec0e9b 100644 --- a/src/components/mute_card/mute_card.js +++ b/src/components/mute_card/mute_card.js @@ -12,7 +12,7 @@ const MuteCard = { return this.$store.getters.findUser(this.userId) }, relationship () { - return this.$store.state.users.relationships[this.userId] + return this.$store.getters.relationship(this.userId) }, muted () { return this.relationship.muting diff --git a/src/components/notification/notification.js b/src/components/notification/notification.js index 09554f54..ff1c2817 100644 --- a/src/components/notification/notification.js +++ b/src/components/notification/notification.js @@ -56,7 +56,7 @@ const Notification = { return this.generateUserProfileLink(this.targetUser) }, needMute () { - return (this.$store.state.users.relationships[this.user.id] || {}).muting + return this.$store.getters.relationship(this.user.id).muting } } } diff --git a/src/components/status/status.js b/src/components/status/status.js index a73e3ae2..a36de028 100644 --- a/src/components/status/status.js +++ b/src/components/status/status.js @@ -119,7 +119,7 @@ const Status = { return hits }, muted () { - const relationship = this.$store.state.users.relationships[this.status.user.id] || {} + const relationship = this.$store.getters.relationship(this.userId) return !this.unmuted && ( (!(this.inProfile && this.status.user.id === this.profileUserId) && relationship.muting) || (!this.inConversation && this.status.thread_muted) || diff --git a/src/components/user_card/user_card.js b/src/components/user_card/user_card.js index fb3cfebc..8e6b9d7f 100644 --- a/src/components/user_card/user_card.js +++ b/src/components/user_card/user_card.js @@ -25,7 +25,7 @@ export default { return this.$store.getters.findUser(this.userId) }, relationship () { - return this.$store.state.users.relationships[this.userId] || {} + return this.$store.getters.relationship(this.userId) }, classes () { return [{ diff --git a/src/components/user_settings/user_settings.js b/src/components/user_settings/user_settings.js index adfab8fa..5338c974 100644 --- a/src/components/user_settings/user_settings.js +++ b/src/components/user_settings/user_settings.js @@ -351,13 +351,13 @@ const UserSettings = { }, filterUnblockedUsers (userIds) { return reject(userIds, (userId) => { - const relationship = this.$store.state.users.relationships[userId] || {} + const relationship = this.$store.getters.relationship(this.userId) return relationship.blocking || userId === this.$store.state.users.currentUser.id }) }, filterUnMutedUsers (userIds) { return reject(userIds, (userId) => { - const relationship = this.$store.state.users.relationships[userId] || {} + const relationship = this.$store.getters.relationship(this.userId) return relationship.muting || userId === this.$store.state.users.currentUser.id }) }, diff --git a/src/modules/users.js b/src/modules/users.js index 6b19fc97..fb04ebd3 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -48,6 +48,11 @@ const unblockUser = (store, id) => { } const muteUser = (store, id) => { + const predictedRelationship = store.state.relationships[id] || { id } + predictedRelationship.muting = true + store.commit('updateUserRelationship', [predictedRelationship]) + store.commit('addMuteId', id) + return store.rootState.api.backendInteractor.muteUser({ id }) .then((relationship) => { store.commit('updateUserRelationship', [relationship]) @@ -56,6 +61,10 @@ const muteUser = (store, id) => { } const unmuteUser = (store, id) => { + const predictedRelationship = store.state.relationships[id] || { id } + predictedRelationship.muting = false + store.commit('updateUserRelationship', [predictedRelationship]) + return store.rootState.api.backendInteractor.unmuteUser({ id }) .then((relationship) => store.commit('updateUserRelationship', [relationship])) } @@ -227,6 +236,9 @@ export const getters = { return state.usersObject[query.toLowerCase()] } return result + }, + relationship: state => id => { + return state.relationships[id] || { id, loading: true } } } diff --git a/test/unit/specs/components/user_profile.spec.js b/test/unit/specs/components/user_profile.spec.js index 0a3f2d27..dcf066f9 100644 --- a/test/unit/specs/components/user_profile.spec.js +++ b/test/unit/specs/components/user_profile.spec.js @@ -19,6 +19,7 @@ const actions = { const testGetters = { findUser: state => getters.findUser(state.users), + relationship: state => getters.relationship(state.users), mergedConfig: state => ({ colors: '', highlight: {}, From 8b1aa593a46869ac1ea26de8a1f31d9fa2f44e56 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Mon, 27 Apr 2020 10:06:17 +0300 Subject: [PATCH 15/95] fix status mutes --- src/components/status/status.js | 2 +- src/modules/users.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/components/status/status.js b/src/components/status/status.js index a36de028..890f4b91 100644 --- a/src/components/status/status.js +++ b/src/components/status/status.js @@ -119,7 +119,7 @@ const Status = { return hits }, muted () { - const relationship = this.$store.getters.relationship(this.userId) + const relationship = this.$store.getters.relationship(this.status.user.id) return !this.unmuted && ( (!(this.inProfile && this.status.user.id === this.profileUserId) && relationship.muting) || (!this.inConversation && this.status.thread_muted) || diff --git a/src/modules/users.js b/src/modules/users.js index fb04ebd3..1d1b415c 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -238,7 +238,8 @@ export const getters = { return result }, relationship: state => id => { - return state.relationships[id] || { id, loading: true } + const rel = id && state.relationships[id] + return rel || { id, loading: true } } } From 7a25160ddc15a97a02366dff60ec12801348f229 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Mon, 27 Apr 2020 12:53:04 +0300 Subject: [PATCH 16/95] Separate status content from status like in direct conversations mr --- src/components/status/status.js | 188 +------------- src/components/status/status.vue | 230 +---------------- .../status_content/status_content.js | 210 +++++++++++++++ .../status_content/status_content.vue | 240 ++++++++++++++++++ 4 files changed, 460 insertions(+), 408 deletions(-) create mode 100644 src/components/status_content/status_content.js create mode 100644 src/components/status_content/status_content.vue diff --git a/src/components/status/status.js b/src/components/status/status.js index 61d66301..ab3de5fc 100644 --- a/src/components/status/status.js +++ b/src/components/status/status.js @@ -1,23 +1,17 @@ -import Attachment from '../attachment/attachment.vue' import FavoriteButton from '../favorite_button/favorite_button.vue' import ReactButton from '../react_button/react_button.vue' import RetweetButton from '../retweet_button/retweet_button.vue' -import Poll from '../poll/poll.vue' import ExtraButtons from '../extra_buttons/extra_buttons.vue' import PostStatusForm from '../post_status_form/post_status_form.vue' import UserCard from '../user_card/user_card.vue' import UserAvatar from '../user_avatar/user_avatar.vue' -import Gallery from '../gallery/gallery.vue' -import LinkPreview from '../link-preview/link-preview.vue' import AvatarList from '../avatar_list/avatar_list.vue' import Timeago from '../timeago/timeago.vue' +import StatusContent from '../status_content/status_content.vue' import StatusPopover from '../status_popover/status_popover.vue' import EmojiReactions from '../emoji_reactions/emoji_reactions.vue' import generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator' -import fileType from 'src/services/file_type/file_type.service' -import { processHtml } from 'src/services/tiny_post_html_processor/tiny_post_html_processor.service.js' import { highlightClass, highlightStyle } from '../../services/user_highlighter/user_highlighter.js' -import { mentionMatchesUrl, extractTagFromUrl } from 'src/services/matcher/matcher.service.js' import { filter, unescape, uniqBy } from 'lodash' import { mapGetters, mapState } from 'vuex' @@ -43,17 +37,10 @@ const Status = { replying: false, unmuted: false, userExpanded: false, - showingTall: this.inConversation && this.focused, - showingLongSubject: false, - error: null, - // not as computed because it sets the initial state which will be changed later - expandingSubject: !this.$store.getters.mergedConfig.collapseMessageWithSubject + error: null } }, computed: { - localCollapseSubjectDefault () { - return this.mergedConfig.collapseMessageWithSubject - }, muteWords () { return this.mergedConfig.muteWords }, @@ -79,10 +66,6 @@ const Status = { const highlight = this.mergedConfig.highlight return highlightStyle(highlight[user.screen_name]) }, - hideAttachments () { - return (this.mergedConfig.hideAttachments && !this.inConversation) || - (this.mergedConfig.hideAttachmentsInConv && this.inConversation) - }, userProfileLink () { return this.generateUserProfileLink(this.status.user.id, this.status.user.screen_name) }, @@ -135,20 +118,6 @@ const Status = { // use conversation highlight only when in conversation return this.status.id === this.highlight }, - // This is a bit hacky, but we want to approximate post height before rendering - // so we count newlines (masto uses <p> for paragraphs, GS uses <br> between them) - // as well as approximate line count by counting characters and approximating ~80 - // per line. - // - // Using max-height + overflow: auto for status components resulted in false positives - // very often with japanese characters, and it was very annoying. - tallStatus () { - const lengthScore = this.status.statusnet_html.split(/<p|<br/).length + this.status.text.length / 80 - return lengthScore > 20 - }, - longSubject () { - return this.status.summary.length > 900 - }, isReply () { return !!(this.status.in_reply_to_status_id && this.status.in_reply_to_user_id) }, @@ -188,32 +157,6 @@ const Status = { } return this.status.attentions.length > 0 }, - - // When a status has a subject and is also tall, we should only have one show more/less button. If the default is to collapse statuses with subjects, we just treat it like a status with a subject; otherwise, we just treat it like a tall status. - mightHideBecauseSubject () { - return this.status.summary && (!this.tallStatus || this.localCollapseSubjectDefault) - }, - mightHideBecauseTall () { - return this.tallStatus && (!this.status.summary || !this.localCollapseSubjectDefault) - }, - hideSubjectStatus () { - return this.mightHideBecauseSubject && !this.expandingSubject - }, - hideTallStatus () { - return this.mightHideBecauseTall && !this.showingTall - }, - showingMore () { - return (this.mightHideBecauseTall && this.showingTall) || (this.mightHideBecauseSubject && this.expandingSubject) - }, - nsfwClickthrough () { - if (!this.status.nsfw) { - return false - } - if (this.status.summary && this.localCollapseSubjectDefault) { - return false - } - return true - }, replySubject () { if (!this.status.summary) return '' const decodedSummary = unescape(this.status.summary) @@ -227,83 +170,6 @@ const Status = { return '' } }, - attachmentSize () { - if ((this.mergedConfig.hideAttachments && !this.inConversation) || - (this.mergedConfig.hideAttachmentsInConv && this.inConversation) || - (this.status.attachments.length > this.maxThumbnails)) { - return 'hide' - } else if (this.compact) { - return 'small' - } - return 'normal' - }, - galleryTypes () { - if (this.attachmentSize === 'hide') { - return [] - } - return this.mergedConfig.playVideosInModal - ? ['image', 'video'] - : ['image'] - }, - galleryAttachments () { - return this.status.attachments.filter( - file => fileType.fileMatchesSomeType(this.galleryTypes, file) - ) - }, - nonGalleryAttachments () { - return this.status.attachments.filter( - file => !fileType.fileMatchesSomeType(this.galleryTypes, file) - ) - }, - hasImageAttachments () { - return this.status.attachments.some( - file => fileType.fileType(file.mimetype) === 'image' - ) - }, - hasVideoAttachments () { - return this.status.attachments.some( - file => fileType.fileType(file.mimetype) === 'video' - ) - }, - maxThumbnails () { - return this.mergedConfig.maxThumbnails - }, - postBodyHtml () { - const html = this.status.statusnet_html - - if (this.mergedConfig.greentext) { - try { - if (html.includes('>')) { - // This checks if post has '>' at the beginning, excluding mentions so that @mention >impying works - return processHtml(html, (string) => { - if (string.includes('>') && - string - .replace(/<[^>]+?>/gi, '') // remove all tags - .replace(/@\w+/gi, '') // remove mentions (even failed ones) - .trim() - .startsWith('>')) { - return `<span class='greentext'>${string}</span>` - } else { - return string - } - }) - } else { - return html - } - } catch (e) { - console.err('Failed to process status html', e) - return html - } - } else { - return html - } - }, - contentHtml () { - if (!this.status.summary_html) { - return this.postBodyHtml - } - return this.status.summary_html + '<br />' + this.postBodyHtml - }, combinedFavsAndRepeatsUsers () { // Use the status from the global status repository since favs and repeats are saved in it const combinedUsers = [].concat( @@ -312,9 +178,6 @@ const Status = { ) return uniqBy(combinedUsers, 'id') }, - ownStatus () { - return this.status.user.id === this.currentUser.id - }, tags () { return this.status.tags.filter(tagObj => tagObj.hasOwnProperty('name')).map(tagObj => tagObj.name).join(' ') }, @@ -328,21 +191,18 @@ const Status = { }) }, components: { - Attachment, FavoriteButton, ReactButton, RetweetButton, ExtraButtons, PostStatusForm, - Poll, UserCard, UserAvatar, - Gallery, - LinkPreview, AvatarList, Timeago, StatusPopover, - EmojiReactions + EmojiReactions, + StatusContent }, methods: { visibilityIcon (visibility) { @@ -363,32 +223,6 @@ const Status = { clearError () { this.error = undefined }, - linkClicked (event) { - const target = event.target.closest('.status-content a') - if (target) { - if (target.className.match(/mention/)) { - const href = target.href - const attn = this.status.attentions.find(attn => mentionMatchesUrl(attn, href)) - if (attn) { - event.stopPropagation() - event.preventDefault() - const link = this.generateUserProfileLink(attn.id, attn.screen_name) - this.$router.push(link) - return - } - } - if (target.rel.match(/(?:^|\s)tag(?:$|\s)/) || target.className.match(/hashtag/)) { - // Extract tag name from link url - const tag = extractTagFromUrl(target.href) - if (tag) { - const link = this.generateTagLink(tag) - this.$router.push(link) - return - } - } - window.open(target.href, '_blank') - } - }, toggleReplying () { this.replying = !this.replying }, @@ -406,22 +240,8 @@ const Status = { toggleUserExpanded () { this.userExpanded = !this.userExpanded }, - toggleShowMore () { - if (this.mightHideBecauseTall) { - this.showingTall = !this.showingTall - } else if (this.mightHideBecauseSubject) { - this.expandingSubject = !this.expandingSubject - } - }, generateUserProfileLink (id, name) { return generateProfileLink(id, name, this.$store.state.instance.restrictedNicknames) - }, - generateTagLink (tag) { - return `/tag/${tag}` - }, - setMedia () { - const attachments = this.attachmentSize === 'hide' ? this.status.attachments : this.galleryAttachments - return () => this.$store.dispatch('setMedia', attachments) } }, watch: { diff --git a/src/components/status/status.vue b/src/components/status/status.vue index ca295640..1ee4f27c 100644 --- a/src/components/status/status.vue +++ b/src/components/status/status.vue @@ -226,118 +226,12 @@ </div> </div> - <div - v-if="longSubject" - class="status-content-wrapper" - :class="{ 'tall-status': !showingLongSubject }" - > - <a - v-if="!showingLongSubject" - class="tall-status-hider" - :class="{ 'tall-status-hider_focused': isFocused }" - href="#" - @click.prevent="showingLongSubject=true" - >{{ $t("general.show_more") }}</a> - <div - class="status-content media-body" - @click.prevent="linkClicked" - v-html="contentHtml" - /> - <a - v-if="showingLongSubject" - href="#" - class="status-unhider" - @click.prevent="showingLongSubject=false" - >{{ $t("general.show_less") }}</a> - </div> - <div - v-else - :class="{'tall-status': hideTallStatus}" - class="status-content-wrapper" - > - <a - v-if="hideTallStatus" - class="tall-status-hider" - :class="{ 'tall-status-hider_focused': isFocused }" - href="#" - @click.prevent="toggleShowMore" - >{{ $t("general.show_more") }}</a> - <div - v-if="!hideSubjectStatus" - class="status-content media-body" - @click.prevent="linkClicked" - v-html="contentHtml" - /> - <div - v-else - class="status-content media-body" - @click.prevent="linkClicked" - v-html="status.summary_html" - /> - <a - v-if="hideSubjectStatus" - href="#" - class="cw-status-hider" - @click.prevent="toggleShowMore" - > - {{ $t("general.show_more") }} - <span - v-if="hasImageAttachments" - class="icon-picture" - /> - <span - v-if="hasVideoAttachments" - class="icon-video" - /> - <span - v-if="status.card" - class="icon-link" - /> - </a> - <a - v-if="showingMore" - href="#" - class="status-unhider" - @click.prevent="toggleShowMore" - >{{ $t("general.show_less") }}</a> - </div> - - <div v-if="status.poll && status.poll.options"> - <poll :base-poll="status.poll" /> - </div> - - <div - v-if="status.attachments && (!hideSubjectStatus || showingLongSubject)" - class="attachments media-body" - > - <attachment - v-for="attachment in nonGalleryAttachments" - :key="attachment.id" - class="non-gallery" - :size="attachmentSize" - :nsfw="nsfwClickthrough" - :attachment="attachment" - :allow-play="true" - :set-media="setMedia()" - /> - <gallery - v-if="galleryAttachments.length > 0" - :nsfw="nsfwClickthrough" - :attachments="galleryAttachments" - :set-media="setMedia()" - /> - </div> - - <div - v-if="status.card && !hideSubjectStatus && !noHeading" - class="link-preview media-body" - > - <link-preview - :card="status.card" - :size="attachmentSize" - :nsfw="nsfwClickthrough" - /> - </div> + <StatusContent + :status="status" + :no-heading="noHeading" + :highlight="highlight" + :focused="isFocused" + /> <transition name="fade"> <div @@ -630,105 +524,6 @@ $status-margin: 0.75em; } } - .tall-status { - position: relative; - height: 220px; - overflow-x: hidden; - overflow-y: hidden; - z-index: 1; - .status-content { - height: 100%; - mask: linear-gradient(to top, white, transparent) bottom/100% 70px no-repeat, - linear-gradient(to top, white, white); - /* Autoprefixed seem to ignore this one, and also syntax is different */ - -webkit-mask-composite: xor; - mask-composite: exclude; - } - } - - .tall-status-hider { - display: inline-block; - word-break: break-all; - position: absolute; - height: 70px; - margin-top: 150px; - width: 100%; - text-align: center; - line-height: 110px; - z-index: 2; - } - - .status-unhider, .cw-status-hider { - width: 100%; - text-align: center; - display: inline-block; - word-break: break-all; - } - - .status-content { - font-family: var(--postFont, sans-serif); - line-height: 1.4em; - white-space: pre-wrap; - - a { - color: $fallback--link; - color: var(--postLink, $fallback--link); - } - - img, video { - max-width: 100%; - max-height: 400px; - vertical-align: middle; - object-fit: contain; - - &.emoji { - width: 32px; - height: 32px; - } - } - - blockquote { - margin: 0.2em 0 0.2em 2em; - font-style: italic; - } - - pre { - overflow: auto; - } - - code, samp, kbd, var, pre { - font-family: var(--postCodeFont, monospace); - } - - p { - margin: 0 0 1em 0; - } - - p:last-child { - margin: 0 0 0 0; - } - - h1 { - font-size: 1.1em; - line-height: 1.2em; - margin: 1.4em 0; - } - - h2 { - font-size: 1.1em; - margin: 1.0em 0; - } - - h3 { - font-size: 1em; - margin: 1.2em 0; - } - - h4 { - margin: 1.1em 0; - } - } - .retweet-info { padding: 0.4em $status-margin; margin: 0; @@ -790,11 +585,6 @@ $status-margin: 0.75em; } } -.greentext { - color: $fallback--cGreen; - color: var(--cGreen, $fallback--cGreen); -} - .status-conversation { border-left-style: solid; } @@ -866,14 +656,6 @@ a.unmute { flex: 1; } -.timeline :not(.panel-disabled) > { - .status-el:last-child { - border-radius: 0 0 $fallback--panelRadius $fallback--panelRadius; - border-radius: 0 0 var(--panelRadius, $fallback--panelRadius) var(--panelRadius, $fallback--panelRadius); - border-bottom: none; - } -} - .favs-repeated-users { margin-top: $status-margin; diff --git a/src/components/status_content/status_content.js b/src/components/status_content/status_content.js new file mode 100644 index 00000000..ccc01b6f --- /dev/null +++ b/src/components/status_content/status_content.js @@ -0,0 +1,210 @@ +import Attachment from '../attachment/attachment.vue' +import Poll from '../poll/poll.vue' +import Gallery from '../gallery/gallery.vue' +import LinkPreview from '../link-preview/link-preview.vue' +import generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator' +import fileType from 'src/services/file_type/file_type.service' +import { processHtml } from 'src/services/tiny_post_html_processor/tiny_post_html_processor.service.js' +import { mentionMatchesUrl, extractTagFromUrl } from 'src/services/matcher/matcher.service.js' +import { mapGetters, mapState } from 'vuex' + +const StatusContent = { + name: 'StatusContent', + props: [ + 'status', + 'focused', + 'noHeading', + 'fullContent' + ], + data () { + return { + showingTall: this.inConversation && this.focused, + showingLongSubject: false, + // not as computed because it sets the initial state which will be changed later + expandingSubject: !this.$store.getters.mergedConfig.collapseMessageWithSubject + } + }, + computed: { + localCollapseSubjectDefault () { + return this.mergedConfig.collapseMessageWithSubject + }, + hideAttachments () { + return (this.mergedConfig.hideAttachments && !this.inConversation) || + (this.mergedConfig.hideAttachmentsInConv && this.inConversation) + }, + // This is a bit hacky, but we want to approximate post height before rendering + // so we count newlines (masto uses <p> for paragraphs, GS uses <br> between them) + // as well as approximate line count by counting characters and approximating ~80 + // per line. + // + // Using max-height + overflow: auto for status components resulted in false positives + // very often with japanese characters, and it was very annoying. + tallStatus () { + const lengthScore = this.status.statusnet_html.split(/<p|<br/).length + this.status.text.length / 80 + return lengthScore > 20 + }, + longSubject () { + return this.status.summary.length > 900 + }, + // When a status has a subject and is also tall, we should only have one show more/less button. If the default is to collapse statuses with subjects, we just treat it like a status with a subject; otherwise, we just treat it like a tall status. + mightHideBecauseSubject () { + return this.status.summary && (!this.tallStatus || this.localCollapseSubjectDefault) + }, + mightHideBecauseTall () { + return this.tallStatus && (!this.status.summary || !this.localCollapseSubjectDefault) + }, + hideSubjectStatus () { + return this.mightHideBecauseSubject && !this.expandingSubject + }, + hideTallStatus () { + return this.mightHideBecauseTall && !this.showingTall + }, + showingMore () { + return (this.mightHideBecauseTall && this.showingTall) || (this.mightHideBecauseSubject && this.expandingSubject) + }, + nsfwClickthrough () { + if (!this.status.nsfw) { + return false + } + if (this.status.summary && this.localCollapseSubjectDefault) { + return false + } + return true + }, + attachmentSize () { + if ((this.mergedConfig.hideAttachments && !this.inConversation) || + (this.mergedConfig.hideAttachmentsInConv && this.inConversation) || + (this.status.attachments.length > this.maxThumbnails)) { + return 'hide' + } else if (this.compact) { + return 'small' + } + return 'normal' + }, + galleryTypes () { + if (this.attachmentSize === 'hide') { + return [] + } + return this.mergedConfig.playVideosInModal + ? ['image', 'video'] + : ['image'] + }, + galleryAttachments () { + return this.status.attachments.filter( + file => fileType.fileMatchesSomeType(this.galleryTypes, file) + ) + }, + nonGalleryAttachments () { + return this.status.attachments.filter( + file => !fileType.fileMatchesSomeType(this.galleryTypes, file) + ) + }, + hasImageAttachments () { + return this.status.attachments.some( + file => fileType.fileType(file.mimetype) === 'image' + ) + }, + hasVideoAttachments () { + return this.status.attachments.some( + file => fileType.fileType(file.mimetype) === 'video' + ) + }, + maxThumbnails () { + return this.mergedConfig.maxThumbnails + }, + postBodyHtml () { + const html = this.status.statusnet_html + + if (this.mergedConfig.greentext) { + try { + if (html.includes('>')) { + // This checks if post has '>' at the beginning, excluding mentions so that @mention >impying works + return processHtml(html, (string) => { + if (string.includes('>') && + string + .replace(/<[^>]+?>/gi, '') // remove all tags + .replace(/@\w+/gi, '') // remove mentions (even failed ones) + .trim() + .startsWith('>')) { + return `<span class='greentext'>${string}</span>` + } else { + return string + } + }) + } else { + return html + } + } catch (e) { + console.err('Failed to process status html', e) + return html + } + } else { + return html + } + }, + contentHtml () { + if (!this.status.summary_html) { + return this.postBodyHtml + } + return this.status.summary_html + '<br />' + this.postBodyHtml + }, + ...mapGetters(['mergedConfig']), + ...mapState({ + betterShadow: state => state.interface.browserSupport.cssFilter, + currentUser: state => state.users.currentUser + }) + }, + components: { + Attachment, + Poll, + Gallery, + LinkPreview + }, + methods: { + linkClicked (event) { + const target = event.target.closest('.status-content a') + if (target) { + if (target.className.match(/mention/)) { + const href = target.href + const attn = this.status.attentions.find(attn => mentionMatchesUrl(attn, href)) + if (attn) { + event.stopPropagation() + event.preventDefault() + const link = this.generateUserProfileLink(attn.id, attn.screen_name) + this.$router.push(link) + return + } + } + if (target.rel.match(/(?:^|\s)tag(?:$|\s)/) || target.className.match(/hashtag/)) { + // Extract tag name from link url + const tag = extractTagFromUrl(target.href) + if (tag) { + const link = this.generateTagLink(tag) + this.$router.push(link) + return + } + } + window.open(target.href, '_blank') + } + }, + toggleShowMore () { + if (this.mightHideBecauseTall) { + this.showingTall = !this.showingTall + } else if (this.mightHideBecauseSubject) { + this.expandingSubject = !this.expandingSubject + } + }, + generateUserProfileLink (id, name) { + return generateProfileLink(id, name, this.$store.state.instance.restrictedNicknames) + }, + generateTagLink (tag) { + return `/tag/${tag}` + }, + setMedia () { + const attachments = this.attachmentSize === 'hide' ? this.status.attachments : this.galleryAttachments + return () => this.$store.dispatch('setMedia', attachments) + } + } +} + +export default StatusContent diff --git a/src/components/status_content/status_content.vue b/src/components/status_content/status_content.vue new file mode 100644 index 00000000..8c2e8749 --- /dev/null +++ b/src/components/status_content/status_content.vue @@ -0,0 +1,240 @@ +<template> + <!-- eslint-disable vue/no-v-html --> + <div class="status-body"> + <slot name="header" /> + <div + v-if="longSubject" + class="status-content-wrapper" + :class="{ 'tall-status': !showingLongSubject }" + > + <a + v-if="!showingLongSubject" + class="tall-status-hider" + :class="{ 'tall-status-hider_focused': focused }" + href="#" + @click.prevent="showingLongSubject=true" + > + {{ $t("general.show_more") }} + <span + v-if="hasImageAttachments" + class="icon-picture" + /> + <span + v-if="hasVideoAttachments" + class="icon-video" + /> + <span + v-if="status.card" + class="icon-link" + /> + </a> + <div + class="status-content media-body" + @click.prevent="linkClicked" + v-html="contentHtml" + /> + <a + v-if="showingLongSubject" + href="#" + class="status-unhider" + @click.prevent="showingLongSubject=false" + >{{ $t("general.show_less") }}</a> + </div> + <div + v-else + :class="{'tall-status': hideTallStatus}" + class="status-content-wrapper" + > + <a + v-if="hideTallStatus" + class="tall-status-hider" + :class="{ 'tall-status-hider_focused': focused }" + href="#" + @click.prevent="toggleShowMore" + >{{ $t("general.show_more") }}</a> + <div + v-if="!hideSubjectStatus" + class="status-content media-body" + @click.prevent="linkClicked" + v-html="contentHtml" + /> + <div + v-else + class="status-content media-body" + @click.prevent="linkClicked" + v-html="status.summary_html" + /> + <a + v-if="hideSubjectStatus" + href="#" + class="cw-status-hider" + @click.prevent="toggleShowMore" + >{{ $t("general.show_more") }}</a> + <a + v-if="showingMore" + href="#" + class="status-unhider" + @click.prevent="toggleShowMore" + >{{ $t("general.show_less") }}</a> + </div> + + <div v-if="status.poll && status.poll.options"> + <poll :base-poll="status.poll" /> + </div> + + <div + v-if="status.attachments.length !== 0 && (!hideSubjectStatus || showingLongSubject)" + class="attachments media-body" + > + <attachment + v-for="attachment in nonGalleryAttachments" + :key="attachment.id" + class="non-gallery" + :size="attachmentSize" + :nsfw="nsfwClickthrough" + :attachment="attachment" + :allow-play="true" + :set-media="setMedia()" + /> + <gallery + v-if="galleryAttachments.length > 0" + :nsfw="nsfwClickthrough" + :attachments="galleryAttachments" + :set-media="setMedia()" + /> + </div> + + <div + v-if="status.card && !hideSubjectStatus && !noHeading" + class="link-preview media-body" + > + <link-preview + :card="status.card" + :size="attachmentSize" + :nsfw="nsfwClickthrough" + /> + </div> + <slot name="footer" /> + </div> + <!-- eslint-enable vue/no-v-html --> +</template> + +<script src="./status_content.js" ></script> +<style lang="scss"> +@import '../../_variables.scss'; + +$status-margin: 0.75em; + +.status-body { + flex: 1; + min-width: 0; + + .tall-status { + position: relative; + height: 220px; + overflow-x: hidden; + overflow-y: hidden; + z-index: 1; + .status-content { + height: 100%; + mask: linear-gradient(to top, white, transparent) bottom/100% 70px no-repeat, + linear-gradient(to top, white, white); + /* Autoprefixed seem to ignore this one, and also syntax is different */ + -webkit-mask-composite: xor; + mask-composite: exclude; + } + } + + .tall-status-hider { + display: inline-block; + word-break: break-all; + position: absolute; + height: 70px; + margin-top: 150px; + width: 100%; + text-align: center; + line-height: 110px; + z-index: 2; + } + + .status-unhider, .cw-status-hider { + width: 100%; + text-align: center; + display: inline-block; + word-break: break-all; + } + + .status-content { + font-family: var(--postFont, sans-serif); + line-height: 1.4em; + white-space: pre-wrap; + + img, video { + max-width: 100%; + max-height: 400px; + vertical-align: middle; + object-fit: contain; + + &.emoji { + width: 32px; + height: 32px; + } + } + + blockquote { + margin: 0.2em 0 0.2em 2em; + font-style: italic; + } + + pre { + overflow: auto; + } + + code, samp, kbd, var, pre { + font-family: var(--postCodeFont, monospace); + } + + p { + margin: 0 0 1em 0; + } + + p:last-child { + margin: 0 0 0 0; + } + + h1 { + font-size: 1.1em; + line-height: 1.2em; + margin: 1.4em 0; + } + + h2 { + font-size: 1.1em; + margin: 1.0em 0; + } + + h3 { + font-size: 1em; + margin: 1.2em 0; + } + + h4 { + margin: 1.1em 0; + } + } +} + +.greentext { + color: $fallback--cGreen; + color: var(--cGreen, $fallback--cGreen); +} + +.timeline :not(.panel-disabled) > { + .status-el:last-child { + border-radius: 0 0 $fallback--panelRadius $fallback--panelRadius; + border-radius: 0 0 var(--panelRadius, $fallback--panelRadius) var(--panelRadius, $fallback--panelRadius); + border-bottom: none; + } +} + +</style> From f7f8a579fa17102a994dc7bd7a4c7808e0964d55 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Mon, 4 May 2020 12:56:39 +0300 Subject: [PATCH 17/95] make email validation conditional work --- src/components/registration/registration.js | 23 ++++++++++++--------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/components/registration/registration.js b/src/components/registration/registration.js index 1d8109e4..dab06e1e 100644 --- a/src/components/registration/registration.js +++ b/src/components/registration/registration.js @@ -14,15 +14,17 @@ const registration = { }, captcha: {} }), - validations: { - user: { - email: requiredIf('accountActivationRequired'), - username: { required }, - fullname: { required }, - password: { required }, - confirm: { - required, - sameAsPassword: sameAs('password') + validations () { + return { + user: { + email: { required: requiredIf(() => this.accountActivationRequired) }, + username: { required }, + fullname: { required }, + password: { required }, + confirm: { + required, + sameAsPassword: sameAs('password') + } } } }, @@ -43,7 +45,8 @@ const registration = { signedIn: (state) => !!state.users.currentUser, isPending: (state) => state.users.signUpPending, serverValidationErrors: (state) => state.users.signUpErrors, - termsOfService: (state) => state.instance.tos + termsOfService: (state) => state.instance.tos, + accountActivationRequired: (state) => state.instance.accountActivationRequired }) }, methods: { From b3003d4e8de46ebf0ade12e6c6527bbfdb016e1d Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 6 May 2020 11:46:40 -0500 Subject: [PATCH 18/95] Add notification privacy option to user settings --- src/components/user_settings/user_settings.vue | 12 ++++++++++++ src/i18n/en.json | 3 +++ 2 files changed, 15 insertions(+) diff --git a/src/components/user_settings/user_settings.vue b/src/components/user_settings/user_settings.vue index 8b2336b4..ad184520 100644 --- a/src/components/user_settings/user_settings.vue +++ b/src/components/user_settings/user_settings.vue @@ -379,6 +379,7 @@ :label="$t('settings.notifications')" > <div class="setting-item"> + <h2>{{ $t('settings.notification_setting_filters') }}</h2> <div class="select-multiple"> <span class="label">{{ $t('settings.notification_setting') }}</span> <ul class="option-list"> @@ -404,6 +405,17 @@ </li> </ul> </div> + </div> + + <div class="setting-item"> + <h2>{{ $t('settings.notification_setting_privacy') }}</h2> + <p> + <Checkbox v-model="notificationSettings.privacy_option"> + {{ $t('settings.notification_setting_privacy_option') }} + </Checkbox> + </p> + </div> + <div class="setting-item"> <p>{{ $t('settings.notification_mutes') }}</p> <p>{{ $t('settings.notification_blocks') }}</p> <button diff --git a/src/i18n/en.json b/src/i18n/en.json index 37d9591c..e42754ea 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -405,11 +405,14 @@ "fun": "Fun", "greentext": "Meme arrows", "notifications": "Notifications", + "notification_setting_filters": "Filters", "notification_setting": "Receive notifications from:", "notification_setting_follows": "Users you follow", "notification_setting_non_follows": "Users you do not follow", "notification_setting_followers": "Users who follow you", "notification_setting_non_followers": "Users who do not follow you", + "notification_setting_privacy": "Privacy", + "notification_setting_privacy_option": "Hide the sender and contents of push notifications", "notification_mutes": "To stop receiving notifications from a specific user, use a mute.", "notification_blocks": "Blocking a user stops all notifications as well as unsubscribes them.", "enable_web_push_notifications": "Enable web push notifications", From 93baa8b664ed7769f5a562953b4b9b93d21ff043 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Fri, 8 May 2020 00:10:49 +0300 Subject: [PATCH 19/95] fix gap when not logged in --- src/components/react_button/react_button.js | 2 +- src/components/react_button/react_button.vue | 1 - src/components/status/status.vue | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/components/react_button/react_button.js b/src/components/react_button/react_button.js index 19949563..abc3bf07 100644 --- a/src/components/react_button/react_button.js +++ b/src/components/react_button/react_button.js @@ -2,7 +2,7 @@ import Popover from '../popover/popover.vue' import { mapGetters } from 'vuex' const ReactButton = { - props: ['status', 'loggedIn'], + props: ['status'], data () { return { filterWord: '' diff --git a/src/components/react_button/react_button.vue b/src/components/react_button/react_button.vue index ab4b4fcd..0b34add1 100644 --- a/src/components/react_button/react_button.vue +++ b/src/components/react_button/react_button.vue @@ -37,7 +37,6 @@ </div> </div> <i - v-if="loggedIn" slot="trigger" class="icon-smile button-icon add-reaction-button" :title="$t('tool_tip.add_reaction')" diff --git a/src/components/status/status.vue b/src/components/status/status.vue index ca295640..76b5c5ab 100644 --- a/src/components/status/status.vue +++ b/src/components/status/status.vue @@ -404,7 +404,7 @@ :status="status" /> <ReactButton - :logged-in="loggedIn" + v-if="loggedIn" :status="status" /> <extra-buttons From 41fc26869f4ce9e93da94f1e441c69e2e37b0124 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Thu, 7 May 2020 16:33:21 -0500 Subject: [PATCH 20/95] Correctly resolve the URI of the server --- src/components/extra_buttons/extra_buttons.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/extra_buttons/extra_buttons.js b/src/components/extra_buttons/extra_buttons.js index 2dd77c66..e1bf7e20 100644 --- a/src/components/extra_buttons/extra_buttons.js +++ b/src/components/extra_buttons/extra_buttons.js @@ -5,7 +5,7 @@ const ExtraButtons = { components: { Popover }, data: function () { return { - statusLink: `https://${this.$store.state.instance.name}${this.$router.resolve({ name: 'conversation', params: { id: this.status.id } }).href}` + statusLink: `${this.$store.state.instance.server}${this.$router.resolve({ name: 'conversation', params: { id: this.status.id } }).href}` } }, methods: { From ddc3b86d24249021cc1634dbdfb476684265f293 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Fri, 8 May 2020 10:46:00 +0300 Subject: [PATCH 21/95] fix popover not closing on pressing the buttons --- src/components/extra_buttons/extra_buttons.js | 8 +++----- src/components/extra_buttons/extra_buttons.vue | 13 ++++++++----- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/components/extra_buttons/extra_buttons.js b/src/components/extra_buttons/extra_buttons.js index e1bf7e20..e4b19d01 100644 --- a/src/components/extra_buttons/extra_buttons.js +++ b/src/components/extra_buttons/extra_buttons.js @@ -3,11 +3,6 @@ import Popover from '../popover/popover.vue' const ExtraButtons = { props: [ 'status' ], components: { Popover }, - data: function () { - return { - statusLink: `${this.$store.state.instance.server}${this.$router.resolve({ name: 'conversation', params: { id: this.status.id } }).href}` - } - }, methods: { deleteStatus () { const confirmed = window.confirm(this.$t('status.delete_confirm')) @@ -56,6 +51,9 @@ const ExtraButtons = { }, canMute () { return !!this.currentUser + }, + statusLink () { + return `${this.$store.state.instance.server}${this.$router.resolve({ name: 'conversation', params: { id: this.status.id } }).href}` } } } diff --git a/src/components/extra_buttons/extra_buttons.vue b/src/components/extra_buttons/extra_buttons.vue index c785a180..bca93ea7 100644 --- a/src/components/extra_buttons/extra_buttons.vue +++ b/src/components/extra_buttons/extra_buttons.vue @@ -4,7 +4,10 @@ placement="top" class="extra-button-popover" > - <div slot="content"> + <div + slot="content" + slot-scope="{close}" + > <div class="dropdown-menu"> <button v-if="canMute && !status.thread_muted" @@ -22,32 +25,32 @@ </button> <button v-if="!status.pinned && canPin" - v-close-popover class="dropdown-item dropdown-item-icon" @click.prevent="pinStatus" + @click="close" > <i class="icon-pin" /><span>{{ $t("status.pin") }}</span> </button> <button v-if="status.pinned && canPin" - v-close-popover class="dropdown-item dropdown-item-icon" @click.prevent="unpinStatus" + @click="close" > <i class="icon-pin" /><span>{{ $t("status.unpin") }}</span> </button> <button v-if="canDelete" - v-close-popover class="dropdown-item dropdown-item-icon" @click.prevent="deleteStatus" + @click="close" > <i class="icon-cancel" /><span>{{ $t("status.delete") }}</span> </button> <button - v-close-popover class="dropdown-item dropdown-item-icon" @click.prevent="copyLink" + @click="close" > <i class="icon-share" /><span>{{ $t("status.copy_link") }}</span> </button> From 7a0e554daf843fe9e98053e79ec0114c380ededb Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Fri, 8 May 2020 13:25:18 +0300 Subject: [PATCH 22/95] update changelog --- CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ebd0e613..a44fb163 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Changed - Removed the use of with_move parameters when fetching notifications +## [Unreleased patch] +### Add +- Added private notifications option for push notifications +- 'Copy link' button for statuses (in the ellipsis menu) + +### Changed +- Registration page no longer requires email if the server is configured not to require it + +### Fixed +- Status ellipsis menu closes properly when selecting certain options + ## [2.0.3] - 2020-05-02 ### Fixed - Show more/less works correctly with auto-collapsed subjects and long posts From 9180fdb4927af12c123751a30ef55d6f56ffa173 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Fri, 8 May 2020 15:56:53 -0500 Subject: [PATCH 23/95] Clarify that we only delete data, not the account --- src/i18n/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/en.json b/src/i18n/en.json index d5748719..c7f8839d 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -281,7 +281,7 @@ "data_import_export_tab": "Data Import / Export", "default_vis": "Default visibility scope", "delete_account": "Delete Account", - "delete_account_description": "Permanently delete your account and all your messages.", + "delete_account_description": "Permanently delete your data and deactivate your account.", "delete_account_error": "There was an issue deleting your account. If this persists please contact your instance administrator.", "delete_account_instructions": "Type your password in the input below to confirm account deletion.", "discoverable": "Allow discovery of this account in search results and other services", From c412856716d0b16f9e3aac57a4bb6dad3755c9ae Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" <contact+translate.pleroma.social@hacktivis.me> Date: Mon, 11 May 2020 22:33:44 +0000 Subject: [PATCH 24/95] Translated using Weblate (French) Currently translated at 97.3% (597 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: http://translate.pleroma.social/projects/pleroma/pleroma-fe/fr/ --- src/i18n/fr.json | 215 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 197 insertions(+), 18 deletions(-) diff --git a/src/i18n/fr.json b/src/i18n/fr.json index 5f0053d5..61877a3a 100644 --- a/src/i18n/fr.json +++ b/src/i18n/fr.json @@ -79,7 +79,9 @@ "twkn": "Ensemble du réseau connu", "user_search": "Recherche d'utilisateur·ice", "who_to_follow": "Qui suivre", - "preferences": "Préférences" + "preferences": "Préférences", + "search": "Recherche", + "administration": "Administration" }, "notifications": { "broken_favorite": "Chargement d'un message inconnu…", @@ -89,12 +91,16 @@ "notifications": "Notifications", "read": "Lu !", "repeated_you": "a partagé votre statut", - "no_more_notifications": "Aucune notification supplémentaire" + "no_more_notifications": "Aucune notification supplémentaire", + "migrated_to": "a migré à", + "reacted_with": "a réagi avec {0}", + "follow_request": "veut vous suivre" }, "interactions": { "favs_repeats": "Partages et favoris", - "follows": "Nouveaux⋅elles abonné⋅e⋅s ?", - "load_older": "Chargez d'anciennes interactions" + "follows": "Nouveaux suivis", + "load_older": "Chargez d'anciennes interactions", + "moves": "Migrations de comptes" }, "post_status": { "new_status": "Poster un nouveau statut", @@ -170,7 +176,7 @@ "secret_code": "Clé" }, "verify": { - "desc": "Pour activer la double authentification, entrez le code depuis votre application:" + "desc": "Pour activer la double authentification, entrez le code depuis votre application :" } }, "attachmentRadius": "Pièces jointes", @@ -185,7 +191,7 @@ "block_export_button": "Export des comptes bloqués vers un fichier csv", "block_import": "Import des comptes bloqués", "block_import_error": "Erreur lors de l'import des comptes bloqués", - "blocks_imported": "Blocks importés! Le traitement va prendre un moment.", + "blocks_imported": "Blocks importés ! Le traitement va prendre un moment.", "blocks_tab": "Bloqué·e·s", "btnRadius": "Boutons", "cBlue": "Bleu (répondre, suivre)", @@ -233,7 +239,7 @@ "import_theme": "Charger le thème", "inputRadius": "Champs de texte", "checkboxRadius": "Cases à cocher", - "instance_default": "(default: {value})", + "instance_default": "(default : {value})", "instance_default_simple": "(default)", "interface": "Interface", "interfaceLanguage": "Langue de l'interface", @@ -264,7 +270,7 @@ "nsfw_clickthrough": "Masquer les images marquées comme contenu adulte ou sensible", "oauth_tokens": "Jetons OAuth", "token": "Jeton", - "refresh_token": "Refresh Token", + "refresh_token": "Rafraichir le jeton", "valid_until": "Valable jusque", "revoke_token": "Révoquer", "panelRadius": "Fenêtres", @@ -293,8 +299,8 @@ "settings": "Paramètres", "subject_input_always_show": "Toujours copier le champ de sujet", "subject_line_behavior": "Copier le sujet en répondant", - "subject_line_email": "Comme les mails: « re: sujet »", - "subject_line_mastodon": "Comme mastodon: copier tel quel", + "subject_line_email": "Similaire au courriel : « re : sujet »", + "subject_line_mastodon": "Comme mastodon : copier tel quel", "subject_line_noop": "Ne pas copier", "post_status_content_type": "Type de contenu du statuts", "stop_gifs": "N'animer les GIFS que lors du survol du curseur de la souris", @@ -312,7 +318,7 @@ "true": "oui" }, "notifications": "Notifications", - "notification_setting": "Reçevoir les notifications de:", + "notification_setting": "Reçevoir les notifications de :", "notification_setting_follows": "Utilisateurs que vous suivez", "notification_setting_non_follows": "Utilisateurs que vous ne suivez pas", "notification_setting_followers": "Utilisateurs qui vous suivent", @@ -330,7 +336,17 @@ "save_load_hint": "L'option « Garder » préserve les options activés en cours lors de la séléction ou chargement des thèmes, il sauve aussi les dites options lors de l'export d'un thème. Quand toutes les cases sont décochés, exporter un thème sauvera tout.", "reset": "Remise à zéro", "clear_all": "Tout vider", - "clear_opacity": "Vider la transparence" + "clear_opacity": "Vider la transparence", + "load_theme": "Charger le thème", + "use_snapshot": "Ancienne version", + "help": { + "upgraded_from_v2": "PleromaFE à été mis à jour, le thème peut être un peu différent que dans vos souvenirs.", + "v2_imported": "Le fichier que vous avez importé vient d'un version antérieure. Nous essayons de maximizer la compatibilité mais il peu y avoir quelques incohérences.", + "future_version_imported": "Le fichier importé viens d'une version postérieure de PleromaFE.", + "older_version_imported": "Le fichier importé viens d'une version antérieure de PleromaFE." + }, + "keep_as_is": "Garder tel-quel", + "use_source": "Nouvelle version" }, "common": { "color": "Couleur", @@ -365,7 +381,18 @@ "borders": "Bordures", "buttons": "Boutons", "inputs": "Champs de saisie", - "faint_text": "Texte en fondu" + "faint_text": "Texte en fondu", + "underlay": "sous-calque", + "pressed": "Appuyé", + "alert_warning": "Avertissement", + "alert_neutral": "Neutre", + "post": "Messages/Bios des comptes", + "poll": "Graphique de Sondage", + "icons": "Icônes", + "selectedPost": "Message sélectionné", + "selectedMenu": "Objet sélectionné du menu", + "disabled": "Désactivé", + "tabs": "Onglets" }, "radii": { "_tab_label": "Rondeur" @@ -398,7 +425,8 @@ "buttonPressed": "Bouton (cliqué)", "buttonPressedHover": "Bouton (cliqué+survol)", "input": "Champ de saisie" - } + }, + "hintV3": "Pour les ombres vous pouvez aussi utiliser la notation {0} pour utiliser un autre emplacement de couleur." }, "fonts": { "_tab_label": "Polices", @@ -433,7 +461,28 @@ "title": "Version", "backend_version": "Version du Backend", "frontend_version": "Version du Frontend" - } + }, + "change_email": "Changer de courriel", + "domain_mutes": "Domaines", + "pad_emoji": "Rajouter un espace autour de l'émoji après l’avoir choisit", + "notification_visibility_emoji_reactions": "Réactions", + "hide_follows_count_description": "Masquer le nombre de suivis", + "useStreamingApiWarning": "(Non recommandé, expérimental, connu pour rater des messages)", + "type_domains_to_mute": "Écrire les domaines à masquer", + "fun": "Rigolo", + "greentext": "greentexting", + "allow_following_move": "Suivre automatiquement quand ce compte migre", + "change_email_error": "Il y a eu un problème pour charger votre courriel.", + "changed_email": "Courriel changé avec succès !", + "discoverable": "Permettre de découvrir ce compte dans les résultats de recherche web et autres services", + "emoji_reactions_on_timeline": "Montrer les émojis-réactions dans le flux", + "new_email": "Nouveau courriel", + "notification_visibility_moves": "Migrations de compte", + "user_mutes": "Comptes", + "useStreamingApi": "Recevoir les messages et notifications en temps réel", + "notification_setting_filters": "Filtres", + "notification_setting_privacy_option": "Masquer l'expéditeur et le contenu des notifications push", + "notification_setting_privacy": "Intimité" }, "timeline": { "collapse": "Fermer", @@ -456,7 +505,11 @@ "pinned": "Agraffé", "delete_confirm": "Voulez-vous vraiment supprimer ce statuts ?", "reply_to": "Réponse à", - "replies_list": "Réponses:" + "replies_list": "Réponses :", + "mute_conversation": "Masquer la conversation", + "unmute_conversation": "Démasquer la conversation", + "status_unavailable": "Status indisponible", + "copy_link": "Copier le lien au status" }, "user_card": { "approve": "Accepter", @@ -505,7 +558,13 @@ "quarantine": "Interdir les statuts de l'utilisateur à fédérer", "delete_user": "Supprimer l'utilisateur", "delete_user_confirmation": "Êtes-vous absolument-sûr⋅e ? Cette action ne peut être annulée." - } + }, + "mention": "Mention", + "hidden": "Caché", + "subscribe": "Abonner", + "unsubscribe": "Désabonner", + "hide_repeats": "Cacher les partages", + "show_repeats": "Montrer les partages" }, "user_profile": { "timeline_title": "Journal de l'utilisateur⋅ice", @@ -530,7 +589,10 @@ "repeat": "Répéter", "reply": "Répondre", "favorite": "Favoriser", - "user_settings": "Paramètres utilisateur" + "user_settings": "Paramètres utilisateur", + "add_reaction": "Ajouter une réaction", + "accept_follow_request": "Accepter la demande de suivit", + "reject_follow_request": "Rejeter la demande de suivit" }, "upload": { "error": { @@ -545,5 +607,122 @@ "GiB": "GiO", "TiB": "TiO" } + }, + "about": { + "mrf": { + "keyword": { + "reject": "Rejeté", + "replace": "Remplacer", + "keyword_policies": "Politiques par mot-clés", + "ftl_removal": "Suppression du flux \"Ensemble du réseau connu\"", + "is_replaced_by": "→" + }, + "simple": { + "simple_policies": "Politiques par instances", + "accept": "Accepter", + "accept_desc": "Cette instance accepte des messages seulement depuis ces instances :", + "reject": "Rejeter", + "reject_desc": "Cette instance n'acceptera pas de message de ces instances :", + "quarantine": "Quarantaine", + "quarantine_desc": "Cette instance enverras seulement des messages publics à ces instances :", + "ftl_removal_desc": "Cette instance supprime ces instance du flux fédéré :", + "media_removal": "Suppression multimédia", + "media_removal_desc": "Cette instance supprime le contenu multimédia des instances suivantes :", + "media_nsfw": "Force le contenu multimédia comme sensible", + "ftl_removal": "Suppression du flux fédéré", + "media_nsfw_desc": "Cette instance force le contenu multimédia comme sensible pour les messages des instances suivantes :" + }, + "federation": "Fédération", + "mrf_policies": "Politiques MRF activées", + "mrf_policies_desc": "Les politiques MRF modifient la fédération entre les instances. Les politiques suivantes sont activées :" + }, + "staff": "Staff" + }, + "domain_mute_card": { + "mute": "Muet", + "mute_progress": "Masquage…", + "unmute": "Démasquer", + "unmute_progress": "Démasquage…" + }, + "polls": { + "add_poll": "Ajouter un Sondage", + "add_option": "Ajouter une option", + "option": "Option", + "votes": "votes", + "type": "Type de Sondage", + "single_choice": "Choix unique", + "multiple_choices": "Choix multiples", + "expiry": "Age du sondage", + "expires_in": "Fin du sondage dans {0}", + "not_enough_options": "Trop peu d'options unique au sondage", + "vote": "Voter", + "expired": "Sondage terminé il y a {0}" + }, + "emoji": { + "emoji": "Émoji", + "search_emoji": "Rechercher un émoji", + "add_emoji": "Insérer un émoji", + "custom": "émoji personnalisé", + "unicode": "émoji unicode", + "load_all": "Charger tout les {emojiAmount} émojis", + "load_all_hint": "{saneAmount} émojis chargé, charger tout les émojis peuvent causer des problèmes de performances.", + "stickers": "Stickers" + }, + "remote_user_resolver": { + "error": "Non trouvé." + }, + "time": { + "minutes_short": "{0}min", + "second_short": "{0}s", + "day": "{0} jour", + "days": "{0} jours", + "months": "{0} mois", + "month_short": "{0}m", + "months_short": "{0}m", + "now": "tout de suite", + "now_short": "maintenant", + "second": "{0} seconde", + "seconds": "{0} secondes", + "seconds_short": "{0}s", + "day_short": "{0}j", + "days_short": "{0}j", + "hour": "{0} heure", + "hours": "{0} heures", + "hour_short": "{0}h", + "hours_short": "{0}h", + "in_future": "dans {0}", + "in_past": "il y a {0}", + "minute": "{0} minute", + "minutes": "{0} minutes", + "minute_short": "{0}min", + "month": "{0} mois", + "week": "{0} semaine", + "weeks": "{0} semaines", + "week_short": "{0}s", + "weeks_short": "{0}s", + "year": "{0} année", + "years": "{0} années", + "year_short": "{0}a", + "years_short": "{0}a" + }, + "search": { + "people": "Comptes", + "person_talking": "{count} personnes discutant", + "hashtags": "Mot-dièses", + "people_talking": "{count} personnes discutant", + "no_results": "Aucun résultats" + }, + "password_reset": { + "forgot_password": "Mot de passe oublié ?", + "check_email": "Vérifiez vos courriels pour le lien permettant de changer votre mot de passe.", + "password_reset_disabled": "Le changement de mot de passe est désactivé. Veuillez contacter l'administration de votre instance.", + "password_reset_required_but_mailer_is_disabled": "Vous devez changer votre mot de passe mais sont changement est désactivé. Veuillez contacter l’administration de votre instance.", + "password_reset": "Nouveau mot de passe", + "instruction": "Entrer votre address de courriel ou votre nom utilisateur. Nous enverrons un lien pour changer votre mot de passe.", + "placeholder": "Votre email ou nom d'utilisateur", + "return_home": "Retourner à la page d'accueil", + "not_found": "Email ou nom d'utilisateur inconnu.", + "too_many_requests": "Vos avez atteint la limite d'essais, essayez plus tard.", + "password_reset_required": "Vous devez changer votre mot de passe pour vous authentifier." } } From 26bcfea727d2fa8134fcc7e1f250695a5ffb886d Mon Sep 17 00:00:00 2001 From: Egor <egor@kislitsyn.com> Date: Tue, 12 May 2020 11:39:08 +0000 Subject: [PATCH 25/95] Translated using Weblate (Russian) Currently translated at 53.8% (330 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 816 ++++++++++++++++++++++++----------------------- 1 file changed, 412 insertions(+), 404 deletions(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index 4cb2d497..afaba444 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -1,414 +1,422 @@ { - "chat": { - "title": "Чат" - }, - "finder": { - "error_fetching_user": "Пользователь не найден", - "find_user": "Найти пользователя" - }, - "general": { - "apply": "Применить", - "submit": "Отправить", - "cancel": "Отмена", - "disable": "Оключить", - "enable": "Включить", - "confirm": "Подтвердить", - "verify": "Проверить" - }, - "login": { - "login": "Войти", - "logout": "Выйти", - "password": "Пароль", - "placeholder": "e.c. lain", - "register": "Зарегистрироваться", - "username": "Имя пользователя", - "authentication_code": "Код аутентификации", - "enter_recovery_code": "Ввести код восстановления", - "enter_two_factor_code": "Ввести код аутентификации", - "recovery_code": "Код восстановления", - "heading" : { - "TotpForm" : "Двухфакторная аутентификация", - "RecoveryForm" : "Two-factor recovery" - } - }, - "nav": { - "back": "Назад", - "chat": "Локальный чат", - "mentions": "Упоминания", - "interactions": "Взаимодействия", - "public_tl": "Публичная лента", - "timeline": "Лента", - "twkn": "Федеративная лента", - "search": "Поиск" - }, - "notifications": { - "broken_favorite": "Неизвестный статус, ищем...", - "favorited_you": "нравится ваш статус", - "followed_you": "начал(а) читать вас", - "load_older": "Загрузить старые уведомления", - "notifications": "Уведомления", - "read": "Прочесть", - "repeated_you": "повторил(а) ваш статус" - }, - "interactions": { - "favs_repeats": "Повторы и фавориты", - "follows": "Новые подписки", - "load_older": "Загрузить старые взаимодействия" - }, - "post_status": { - "account_not_locked_warning": "Ваш аккаунт не {0}. Кто угодно может зафоловить вас чтобы прочитать посты только для подписчиков", - "account_not_locked_warning_link": "залочен", - "attachments_sensitive": "Вложения содержат чувствительный контент", - "content_warning": "Тема (не обязательно)", - "default": "Что нового?", - "direct_warning": "Этот пост будет виден только упомянутым пользователям", - "posting": "Отправляется", - "scope_notice": { - "public": "Этот пост будет виден всем", - "private": "Этот пост будет виден только вашим подписчикам", - "unlisted": "Этот пост не будет виден в публичной и федеративной ленте" + "chat": { + "title": "Чат" }, - "scope": { - "direct": "Личное - этот пост видят только те кто в нём упомянут", - "private": "Для подписчиков - этот пост видят только подписчики", - "public": "Публичный - этот пост виден всем", - "unlisted": "Непубличный - этот пост не виден на публичных лентах" - } - }, - "registration": { - "bio": "Описание", - "email": "Email", - "fullname": "Отображаемое имя", - "password_confirm": "Подтверждение пароля", - "registration": "Регистрация", - "token": "Код приглашения", - "validations": { - "username_required": "не должно быть пустым", - "fullname_required": "не должно быть пустым", - "email_required": "не должен быть пустым", - "password_required": "не должен быть пустым", - "password_confirmation_required": "не должно быть пустым", - "password_confirmation_match": "должно совпадать с паролем" - } - }, - "settings": { - "enter_current_password_to_confirm": "Введите свой текущий пароль", - "mfa": { - "otp" : "OTP", - "setup_otp" : "Настройка OTP", - "wait_pre_setup_otp" : "предварительная настройка OTP", - "confirm_and_enable" : "Подтвердить и включить OTP", - "title": "Двухфакторная аутентификация", - "generate_new_recovery_codes" : "Получить новые коды востановления", - "warning_of_generate_new_codes" : "После получения новых кодов восстановления, старые больше не будут работать.", - "recovery_codes" : "Коды восстановления.", - "waiting_a_recovery_codes": "Получение кодов восстановления ...", - "recovery_codes_warning" : "Запишите эти коды и держите в безопасном месте - иначе вы их больше не увидите. Если вы потеряете доступ к OTP приложению - без резервных кодов вы больше не сможете залогиниться.", - "authentication_methods" : "Методы аутентификации", - "scan": { - "title": "Сканирование", - "desc": "Используйте приложение для двухэтапной аутентификации для сканирования этого QR-код или введите текстовый ключ:", - "secret_code": "Ключ" - }, - "verify": { - "desc": "Чтобы включить двухэтапную аутентификации, введите код из вашего приложение для двухэтапной аутентификации:" - } + "finder": { + "error_fetching_user": "Пользователь не найден", + "find_user": "Найти пользователя" }, - "attachmentRadius": "Прикреплённые файлы", - "attachments": "Вложения", - "autoload": "Включить автоматическую загрузку при прокрутке вниз", - "avatar": "Аватар", - "avatarAltRadius": "Аватары в уведомлениях", - "avatarRadius": "Аватары", - "background": "Фон", - "bio": "Описание", - "btnRadius": "Кнопки", - "cBlue": "Ответить, читать", - "cGreen": "Повторить", - "cOrange": "Нравится", - "cRed": "Отменить", - "change_email": "Сменить email", - "change_email_error": "Произошла ошибка при попытке изменить email.", - "changed_email": "Email изменён успешно.", - "change_password": "Сменить пароль", - "change_password_error": "Произошла ошибка при попытке изменить пароль.", - "changed_password": "Пароль изменён успешно.", - "collapse_subject": "Сворачивать посты с темой", - "confirm_new_password": "Подтверждение нового пароля", - "current_avatar": "Текущий аватар", - "current_password": "Текущий пароль", - "current_profile_banner": "Текущий баннер профиля", - "data_import_export_tab": "Импорт / Экспорт данных", - "delete_account": "Удалить аккаунт", - "delete_account_description": "Удалить ваш аккаунт и все ваши сообщения.", - "delete_account_error": "Возникла ошибка в процессе удаления вашего аккаунта. Если это повторяется, свяжитесь с администратором вашего сервера.", - "delete_account_instructions": "Введите ваш пароль в поле ниже для подтверждения удаления.", - "export_theme": "Сохранить Тему", - "filtering": "Фильтрация", - "filtering_explanation": "Все статусы, содержащие данные слова, будут игнорироваться, по одному в строке", - "follow_export": "Экспортировать читаемых", - "follow_export_button": "Экспортировать читаемых в файл .csv", - "follow_export_processing": "Ведётся обработка, скоро вам будет предложено загрузить файл", - "follow_import": "Импортировать читаемых", - "follow_import_error": "Ошибка при импортировании читаемых.", - "follows_imported": "Список читаемых импортирован. Обработка займёт некоторое время..", - "foreground": "Передний план", - "general": "Общие", - "hide_attachments_in_convo": "Прятать вложения в разговорах", - "hide_attachments_in_tl": "Прятать вложения в ленте", - "hide_isp": "Скрыть серверную панель", - "import_followers_from_a_csv_file": "Импортировать читаемых из файла .csv", - "import_theme": "Загрузить Тему", - "inputRadius": "Поля ввода", - "checkboxRadius": "Чекбоксы", - "instance_default": "(по умолчанию: {value})", - "instance_default_simple": "(по умолчанию)", - "interface": "Интерфейс", - "interfaceLanguage": "Язык интерфейса", - "limited_availability": "Не доступно в вашем браузере", - "links": "Ссылки", - "lock_account_description": "Аккаунт доступен только подтверждённым подписчикам", - "loop_video": "Зациливать видео", - "loop_video_silent_only": "Зацикливать только беззвучные видео (т.е. \"гифки\" с Mastodon)", - "name": "Имя", - "name_bio": "Имя и описание", - "new_email": "Новый email", - "new_password": "Новый пароль", - "fun": "Потешное", - "greentext": "Мемные стрелочки", - "notification_visibility": "Показывать уведомления", - "notification_visibility_follows": "Подписки", - "notification_visibility_likes": "Лайки", - "notification_visibility_mentions": "Упоминания", - "notification_visibility_repeats": "Повторы", - "no_rich_text_description": "Убрать форматирование из всех постов", - "hide_follows_description": "Не показывать кого я читаю", - "hide_followers_description": "Не показывать кто читает меня", - "hide_follows_count_description": "Не показывать число читаемых пользователей", - "hide_followers_count_description": "Не показывать число моих подписчиков", - "show_admin_badge": "Показывать значок администратора в моем профиле", - "show_moderator_badge": "Показывать значок модератора в моем профиле", - "nsfw_clickthrough": "Включить скрытие NSFW вложений", - "oauth_tokens": "OAuth токены", - "token": "Токен", - "refresh_token": "Рефреш токен", - "valid_until": "Годен до", - "revoke_token": "Удалить", - "panelRadius": "Панели", - "pause_on_unfocused": "Приостановить загрузку когда вкладка не в фокусе", - "presets": "Пресеты", - "profile_background": "Фон профиля", - "profile_banner": "Баннер профиля", - "profile_tab": "Профиль", - "radii_help": "Скругление углов элементов интерфейса (в пикселях)", - "replies_in_timeline": "Ответы в ленте", - "reply_link_preview": "Включить предварительный просмотр ответа при наведении мыши", - "reply_visibility_all": "Показывать все ответы", - "reply_visibility_following": "Показывать только ответы мне и тех на кого я подписан", - "reply_visibility_self": "Показывать только ответы мне", - "autohide_floating_post_button": "Автоматически скрывать кнопку постинга (в мобильной версии)", - "saving_err": "Не удалось сохранить настройки", - "saving_ok": "Сохранено", - "security_tab": "Безопасность", - "scope_copy": "Копировать видимость поста при ответе (всегда включено для Личных Сообщений)", - "minimal_scopes_mode": "Минимизировать набор опций видимости поста", - "set_new_avatar": "Загрузить новый аватар", - "set_new_profile_background": "Загрузить новый фон профиля", - "set_new_profile_banner": "Загрузить новый баннер профиля", - "settings": "Настройки", - "subject_input_always_show": "Всегда показывать поле ввода темы", - "stop_gifs": "Проигрывать GIF анимации только при наведении", - "streaming": "Включить автоматическую загрузку новых сообщений при прокрутке вверх", - "useStreamingApi": "Получать сообщения и уведомления в реальном времени", - "useStreamingApiWarning": "(Не рекомендуется, экспериментально, сообщения могут пропадать)", - "text": "Текст", - "theme": "Тема", - "theme_help": "Используйте шестнадцатеричные коды цветов (#rrggbb) для настройки темы.", - "theme_help_v2_1": "Вы так же можете перепоределить цвета определенных компонентов нажав соотв. галочку. Используйте кнопку \"Очистить всё\" чтобы снять все переопределения", - "theme_help_v2_2": "Под некоторыми полями ввода это идикаторы контрастности, наведите на них мышью чтобы узнать больше. Приспользовании прозрачности контраст расчитывается для наихудшего варианта.", - "tooltipRadius": "Всплывающие подсказки/уведомления", - "user_settings": "Настройки пользователя", - "values": { - "false": "нет", - "true": "да" + "general": { + "apply": "Применить", + "submit": "Отправить", + "cancel": "Отмена", + "disable": "Оключить", + "enable": "Включить", + "confirm": "Подтвердить", + "verify": "Проверить" }, - "style": { - "switcher": { - "keep_color": "Оставить цвета", - "keep_shadows": "Оставить тени", - "keep_opacity": "Оставить прозрачность", - "keep_roundness": "Оставить скругление", - "keep_fonts": "Оставить шрифты", - "save_load_hint": "Опции \"оставить...\" позволяют сохранить текущие настройки при выборе другой темы или импорта её из файла. Так же они влияют на то какие компоненты будут сохранены при экспорте темы. Когда все галочки сняты все компоненты будут экспортированы.", - "reset": "Сбросить", - "clear_all": "Очистить всё", - "clear_opacity": "Очистить прозрачность" - }, - "common": { - "color": "Цвет", - "opacity": "Прозрачность", - "contrast": { - "hint": "Уровень контраста: {ratio}, что {level} {context}", - "level": { - "aa": "соответствует гайдлайну Level AA (минимальный)", - "aaa": "соответствует гайдлайну Level AAA (рекомендуемый)", - "bad": "не соответствует каким либо гайдлайнам" - }, - "context": { - "18pt": "для крупного (18pt+) текста", - "text": "для текста" - } + "login": { + "login": "Войти", + "logout": "Выйти", + "password": "Пароль", + "placeholder": "e.c. lain", + "register": "Зарегистрироваться", + "username": "Имя пользователя", + "authentication_code": "Код аутентификации", + "enter_recovery_code": "Ввести код восстановления", + "enter_two_factor_code": "Ввести код аутентификации", + "recovery_code": "Код восстановления", + "heading": { + "TotpForm": "Двухфакторная аутентификация", + "RecoveryForm": "Two-factor recovery" } - }, - "common_colors": { - "_tab_label": "Общие", - "main": "Общие цвета", - "foreground_hint": "См. вкладку \"Дополнительно\" для более детального контроля", - "rgbo": "Иконки, акценты, ярылки" - }, - "advanced_colors": { - "_tab_label": "Дополнительно", - "alert": "Фон уведомлений", - "alert_error": "Ошибки", - "badge": "Фон значков", - "badge_notification": "Уведомления", - "panel_header": "Заголовок панели", - "top_bar": "Верняя полоска", - "borders": "Границы", - "buttons": "Кнопки", - "inputs": "Поля ввода", - "faint_text": "Маловажный текст" - }, - "radii": { - "_tab_label": "Скругление" - }, - "shadows": { - "_tab_label": "Светотень", - "component": "Компонент", - "override": "Переопределить", - "shadow_id": "Тень №{value}", - "blur": "Размытие", - "spread": "Разброс", - "inset": "Внутренняя", - "hint": "Для теней вы так же можете использовать --variable в качестве цвета чтобы использовать CSS3-переменные. В таком случае прозрачность работать не будет.", - "filter_hint": { - "always_drop_shadow": "Внимание, эта тень всегда использует {0} когда браузер поддерживает это", - "drop_shadow_syntax": "{0} не поддерживает параметр {1} и ключевое слово {2}", - "avatar_inset": "Одновременное использование внутренних и внешних теней на (прозрачных) аватарках может дать не те результаты что вы ожидаете", - "spread_zero": "Тени с разбросом > 0 будут выглядеть как если бы разброс установлен в 0", - "inset_classic": "Внутренние тени будут использовать {0}" + }, + "nav": { + "back": "Назад", + "chat": "Локальный чат", + "mentions": "Упоминания", + "interactions": "Взаимодействия", + "public_tl": "Публичная лента", + "timeline": "Лента", + "twkn": "Федеративная лента", + "search": "Поиск" + }, + "notifications": { + "broken_favorite": "Неизвестный статус, ищем...", + "favorited_you": "нравится ваш статус", + "followed_you": "начал(а) читать вас", + "load_older": "Загрузить старые уведомления", + "notifications": "Уведомления", + "read": "Прочесть", + "repeated_you": "повторил(а) ваш статус" + }, + "interactions": { + "favs_repeats": "Повторы и фавориты", + "follows": "Новые подписки", + "load_older": "Загрузить старые взаимодействия" + }, + "post_status": { + "account_not_locked_warning": "Ваш аккаунт не {0}. Кто угодно может зафоловить вас чтобы прочитать посты только для подписчиков", + "account_not_locked_warning_link": "залочен", + "attachments_sensitive": "Вложения содержат чувствительный контент", + "content_warning": "Тема (не обязательно)", + "default": "Что нового?", + "direct_warning": "Этот пост будет виден только упомянутым пользователям", + "posting": "Отправляется", + "scope_notice": { + "public": "Этот пост будет виден всем", + "private": "Этот пост будет виден только вашим подписчикам", + "unlisted": "Этот пост не будет виден в публичной и федеративной ленте" }, - "components": { - "panel": "Панель", - "panelHeader": "Заголовок панели", - "topBar": "Верхняя полоска", - "avatar": "Аватарка (профиль)", - "avatarStatus": "Аватарка (в ленте)", - "popup": "Всплывающие подсказки", - "button": "Кнопки", - "buttonHover": "Кнопки (наведен курсор)", - "buttonPressed": "Кнопки (нажата)", - "buttonPressedHover": "Кнопки (нажата+наведен курсор)", - "input": "Поля ввода" + "scope": { + "direct": "Личное - этот пост видят только те кто в нём упомянут", + "private": "Для подписчиков - этот пост видят только подписчики", + "public": "Публичный - этот пост виден всем", + "unlisted": "Непубличный - этот пост не виден на публичных лентах" } - }, - "fonts": { - "_tab_label": "Шрифты", - "help": "Выберите тип шрифта для использования в интерфейсе. При выборе варианта \"другой\" надо ввести название шрифта в точности как он называется в системе.", - "components": { - "interface": "Интерфейс", - "input": "Поля ввода", - "post": "Текст постов", - "postCode": "Моноширинный текст в посте (форматирование)" + }, + "registration": { + "bio": "Описание", + "email": "Email", + "fullname": "Отображаемое имя", + "password_confirm": "Подтверждение пароля", + "registration": "Регистрация", + "token": "Код приглашения", + "validations": { + "username_required": "не должно быть пустым", + "fullname_required": "не должно быть пустым", + "email_required": "не должен быть пустым", + "password_required": "не должен быть пустым", + "password_confirmation_required": "не должно быть пустым", + "password_confirmation_match": "должно совпадать с паролем" + } + }, + "settings": { + "enter_current_password_to_confirm": "Введите свой текущий пароль", + "mfa": { + "otp": "OTP", + "setup_otp": "Настройка OTP", + "wait_pre_setup_otp": "предварительная настройка OTP", + "confirm_and_enable": "Подтвердить и включить OTP", + "title": "Двухфакторная аутентификация", + "generate_new_recovery_codes": "Получить новые коды востановления", + "warning_of_generate_new_codes": "После получения новых кодов восстановления, старые больше не будут работать.", + "recovery_codes": "Коды восстановления.", + "waiting_a_recovery_codes": "Получение кодов восстановления ...", + "recovery_codes_warning": "Запишите эти коды и держите в безопасном месте - иначе вы их больше не увидите. Если вы потеряете доступ к OTP приложению - без резервных кодов вы больше не сможете залогиниться.", + "authentication_methods": "Методы аутентификации", + "scan": { + "title": "Сканирование", + "desc": "Используйте приложение для двухэтапной аутентификации для сканирования этого QR-код или введите текстовый ключ:", + "secret_code": "Ключ" + }, + "verify": { + "desc": "Чтобы включить двухэтапную аутентификации, введите код из вашего приложение для двухэтапной аутентификации:" + } }, - "family": "Шрифт", - "size": "Размер (в пикселях)", - "weight": "Ширина", - "custom": "Другой" - }, - "preview": { - "header": "Пример", - "content": "Контент", - "error": "Ошибка стоп 000", - "button": "Кнопка", - "text": "Еще немного {0} и масенькая {1}", - "mono": "контента", - "input": "Что нового?", - "faint_link": "Его придется убрать", - "fine_print": "Если проблемы остались — ваш гуртовщик мыши плохо стоит. {0}.", - "header_faint": "Все идет по плану", - "checkbox": "Я подтверждаю что не было ни единого разрыва", - "link": "ссылка" - } + "attachmentRadius": "Прикреплённые файлы", + "attachments": "Вложения", + "autoload": "Включить автоматическую загрузку при прокрутке вниз", + "avatar": "Аватар", + "avatarAltRadius": "Аватары в уведомлениях", + "avatarRadius": "Аватары", + "background": "Фон", + "bio": "Описание", + "btnRadius": "Кнопки", + "cBlue": "Ответить, читать", + "cGreen": "Повторить", + "cOrange": "Нравится", + "cRed": "Отменить", + "change_email": "Сменить email", + "change_email_error": "Произошла ошибка при попытке изменить email.", + "changed_email": "Email изменён успешно.", + "change_password": "Сменить пароль", + "change_password_error": "Произошла ошибка при попытке изменить пароль.", + "changed_password": "Пароль изменён успешно.", + "collapse_subject": "Сворачивать посты с темой", + "confirm_new_password": "Подтверждение нового пароля", + "current_avatar": "Текущий аватар", + "current_password": "Текущий пароль", + "current_profile_banner": "Текущий баннер профиля", + "data_import_export_tab": "Импорт / Экспорт данных", + "delete_account": "Удалить аккаунт", + "delete_account_description": "Удалить ваш аккаунт и все ваши сообщения.", + "delete_account_error": "Возникла ошибка в процессе удаления вашего аккаунта. Если это повторяется, свяжитесь с администратором вашего сервера.", + "delete_account_instructions": "Введите ваш пароль в поле ниже для подтверждения удаления.", + "export_theme": "Сохранить Тему", + "filtering": "Фильтрация", + "filtering_explanation": "Все статусы, содержащие данные слова, будут игнорироваться, по одному в строке", + "follow_export": "Экспортировать читаемых", + "follow_export_button": "Экспортировать читаемых в файл .csv", + "follow_export_processing": "Ведётся обработка, скоро вам будет предложено загрузить файл", + "follow_import": "Импортировать читаемых", + "follow_import_error": "Ошибка при импортировании читаемых.", + "follows_imported": "Список читаемых импортирован. Обработка займёт некоторое время..", + "foreground": "Передний план", + "general": "Общие", + "hide_attachments_in_convo": "Прятать вложения в разговорах", + "hide_attachments_in_tl": "Прятать вложения в ленте", + "hide_isp": "Скрыть серверную панель", + "import_followers_from_a_csv_file": "Импортировать читаемых из файла .csv", + "import_theme": "Загрузить Тему", + "inputRadius": "Поля ввода", + "checkboxRadius": "Чекбоксы", + "instance_default": "(по умолчанию: {value})", + "instance_default_simple": "(по умолчанию)", + "interface": "Интерфейс", + "interfaceLanguage": "Язык интерфейса", + "limited_availability": "Не доступно в вашем браузере", + "links": "Ссылки", + "lock_account_description": "Аккаунт доступен только подтверждённым подписчикам", + "loop_video": "Зациливать видео", + "loop_video_silent_only": "Зацикливать только беззвучные видео (т.е. \"гифки\" с Mastodon)", + "name": "Имя", + "name_bio": "Имя и описание", + "new_email": "Новый email", + "new_password": "Новый пароль", + "fun": "Потешное", + "greentext": "Мемные стрелочки", + "notification_visibility": "Показывать уведомления", + "notification_visibility_follows": "Подписки", + "notification_visibility_likes": "Лайки", + "notification_visibility_mentions": "Упоминания", + "notification_visibility_repeats": "Повторы", + "no_rich_text_description": "Убрать форматирование из всех постов", + "hide_follows_description": "Не показывать кого я читаю", + "hide_followers_description": "Не показывать кто читает меня", + "hide_follows_count_description": "Не показывать число читаемых пользователей", + "hide_followers_count_description": "Не показывать число моих подписчиков", + "show_admin_badge": "Показывать значок администратора в моем профиле", + "show_moderator_badge": "Показывать значок модератора в моем профиле", + "nsfw_clickthrough": "Включить скрытие NSFW вложений", + "oauth_tokens": "OAuth токены", + "token": "Токен", + "refresh_token": "Рефреш токен", + "valid_until": "Годен до", + "revoke_token": "Удалить", + "panelRadius": "Панели", + "pause_on_unfocused": "Приостановить загрузку когда вкладка не в фокусе", + "presets": "Пресеты", + "profile_background": "Фон профиля", + "profile_banner": "Баннер профиля", + "profile_tab": "Профиль", + "radii_help": "Скругление углов элементов интерфейса (в пикселях)", + "replies_in_timeline": "Ответы в ленте", + "reply_link_preview": "Включить предварительный просмотр ответа при наведении мыши", + "reply_visibility_all": "Показывать все ответы", + "reply_visibility_following": "Показывать только ответы мне и тех на кого я подписан", + "reply_visibility_self": "Показывать только ответы мне", + "autohide_floating_post_button": "Автоматически скрывать кнопку постинга (в мобильной версии)", + "saving_err": "Не удалось сохранить настройки", + "saving_ok": "Сохранено", + "security_tab": "Безопасность", + "scope_copy": "Копировать видимость поста при ответе (всегда включено для Личных Сообщений)", + "minimal_scopes_mode": "Минимизировать набор опций видимости поста", + "set_new_avatar": "Загрузить новый аватар", + "set_new_profile_background": "Загрузить новый фон профиля", + "set_new_profile_banner": "Загрузить новый баннер профиля", + "settings": "Настройки", + "subject_input_always_show": "Всегда показывать поле ввода темы", + "stop_gifs": "Проигрывать GIF анимации только при наведении", + "streaming": "Включить автоматическую загрузку новых сообщений при прокрутке вверх", + "useStreamingApi": "Получать сообщения и уведомления в реальном времени", + "useStreamingApiWarning": "(Не рекомендуется, экспериментально, сообщения могут пропадать)", + "text": "Текст", + "theme": "Тема", + "theme_help": "Используйте шестнадцатеричные коды цветов (#rrggbb) для настройки темы.", + "theme_help_v2_1": "Вы так же можете перепоределить цвета определенных компонентов нажав соотв. галочку. Используйте кнопку \"Очистить всё\" чтобы снять все переопределения", + "theme_help_v2_2": "Под некоторыми полями ввода это идикаторы контрастности, наведите на них мышью чтобы узнать больше. Приспользовании прозрачности контраст расчитывается для наихудшего варианта.", + "tooltipRadius": "Всплывающие подсказки/уведомления", + "user_settings": "Настройки пользователя", + "values": { + "false": "нет", + "true": "да" + }, + "style": { + "switcher": { + "keep_color": "Оставить цвета", + "keep_shadows": "Оставить тени", + "keep_opacity": "Оставить прозрачность", + "keep_roundness": "Оставить скругление", + "keep_fonts": "Оставить шрифты", + "save_load_hint": "Опции \"оставить...\" позволяют сохранить текущие настройки при выборе другой темы или импорта её из файла. Так же они влияют на то какие компоненты будут сохранены при экспорте темы. Когда все галочки сняты все компоненты будут экспортированы.", + "reset": "Сбросить", + "clear_all": "Очистить всё", + "clear_opacity": "Очистить прозрачность" + }, + "common": { + "color": "Цвет", + "opacity": "Прозрачность", + "contrast": { + "hint": "Уровень контраста: {ratio}, что {level} {context}", + "level": { + "aa": "соответствует гайдлайну Level AA (минимальный)", + "aaa": "соответствует гайдлайну Level AAA (рекомендуемый)", + "bad": "не соответствует каким либо гайдлайнам" + }, + "context": { + "18pt": "для крупного (18pt+) текста", + "text": "для текста" + } + } + }, + "common_colors": { + "_tab_label": "Общие", + "main": "Общие цвета", + "foreground_hint": "См. вкладку \"Дополнительно\" для более детального контроля", + "rgbo": "Иконки, акценты, ярылки" + }, + "advanced_colors": { + "_tab_label": "Дополнительно", + "alert": "Фон уведомлений", + "alert_error": "Ошибки", + "badge": "Фон значков", + "badge_notification": "Уведомления", + "panel_header": "Заголовок панели", + "top_bar": "Верняя полоска", + "borders": "Границы", + "buttons": "Кнопки", + "inputs": "Поля ввода", + "faint_text": "Маловажный текст" + }, + "radii": { + "_tab_label": "Скругление" + }, + "shadows": { + "_tab_label": "Светотень", + "component": "Компонент", + "override": "Переопределить", + "shadow_id": "Тень №{value}", + "blur": "Размытие", + "spread": "Разброс", + "inset": "Внутренняя", + "hint": "Для теней вы так же можете использовать --variable в качестве цвета чтобы использовать CSS3-переменные. В таком случае прозрачность работать не будет.", + "filter_hint": { + "always_drop_shadow": "Внимание, эта тень всегда использует {0} когда браузер поддерживает это", + "drop_shadow_syntax": "{0} не поддерживает параметр {1} и ключевое слово {2}", + "avatar_inset": "Одновременное использование внутренних и внешних теней на (прозрачных) аватарках может дать не те результаты что вы ожидаете", + "spread_zero": "Тени с разбросом > 0 будут выглядеть как если бы разброс установлен в 0", + "inset_classic": "Внутренние тени будут использовать {0}" + }, + "components": { + "panel": "Панель", + "panelHeader": "Заголовок панели", + "topBar": "Верхняя полоска", + "avatar": "Аватарка (профиль)", + "avatarStatus": "Аватарка (в ленте)", + "popup": "Всплывающие подсказки", + "button": "Кнопки", + "buttonHover": "Кнопки (наведен курсор)", + "buttonPressed": "Кнопки (нажата)", + "buttonPressedHover": "Кнопки (нажата+наведен курсор)", + "input": "Поля ввода" + } + }, + "fonts": { + "_tab_label": "Шрифты", + "help": "Выберите тип шрифта для использования в интерфейсе. При выборе варианта \"другой\" надо ввести название шрифта в точности как он называется в системе.", + "components": { + "interface": "Интерфейс", + "input": "Поля ввода", + "post": "Текст постов", + "postCode": "Моноширинный текст в посте (форматирование)" + }, + "family": "Шрифт", + "size": "Размер (в пикселях)", + "weight": "Ширина", + "custom": "Другой" + }, + "preview": { + "header": "Пример", + "content": "Контент", + "error": "Ошибка стоп 000", + "button": "Кнопка", + "text": "Еще немного {0} и масенькая {1}", + "mono": "контента", + "input": "Что нового?", + "faint_link": "Его придется убрать", + "fine_print": "Если проблемы остались — ваш гуртовщик мыши плохо стоит. {0}.", + "header_faint": "Все идет по плану", + "checkbox": "Я подтверждаю что не было ни единого разрыва", + "link": "ссылка" + } + } + }, + "timeline": { + "collapse": "Свернуть", + "conversation": "Разговор", + "error_fetching": "Ошибка при обновлении", + "load_older": "Загрузить старые статусы", + "no_retweet_hint": "Пост помечен как \"только для подписчиков\" или \"личное\" и поэтому не может быть повторён", + "repeated": "повторил(а)", + "show_new": "Показать новые", + "up_to_date": "Обновлено" + }, + "user_card": { + "block": "Заблокировать", + "blocked": "Заблокирован", + "favorites": "Понравившиеся", + "follow": "Читать", + "follow_sent": "Запрос отправлен!", + "follow_progress": "Запрашиваем…", + "follow_again": "Запросить еще заново?", + "follow_unfollow": "Перестать читать", + "followees": "Читаемые", + "followers": "Читатели", + "following": "Читаю", + "follows_you": "Читает вас", + "mute": "Игнорировать", + "muted": "Игнорирую", + "per_day": "в день", + "remote_follow": "Читать удалённо", + "statuses": "Статусы", + "admin_menu": { + "moderation": "Опции модератора", + "grant_admin": "Сделать администратором", + "revoke_admin": "Забрать права администратора", + "grant_moderator": "Сделать модератором", + "revoke_moderator": "Забрать права модератора", + "activate_account": "Активировать аккаунт", + "deactivate_account": "Деактивировать аккаунт", + "delete_account": "Удалить аккаунт", + "force_nsfw": "Отмечать посты пользователя как NSFW", + "strip_media": "Убирать вложения из постов пользователя", + "force_unlisted": "Не добавлять посты в публичные ленты", + "sandbox": "Посты доступны только для подписчиков", + "disable_remote_subscription": "Запретить подписываться с удаленных серверов", + "disable_any_subscription": "Запретить подписываться на пользователя", + "quarantine": "Не федерировать посты пользователя", + "delete_user": "Удалить пользователя", + "delete_user_confirmation": "Вы уверены? Это действие нельзя отменить." + } + }, + "user_profile": { + "timeline_title": "Лента пользователя" + }, + "search": { + "people": "Люди", + "hashtags": "Хэштэги", + "person_talking": "Популярно у {count} человека", + "people_talking": "Популярно у {count} человек", + "no_results": "Ничего не найдено" + }, + "password_reset": { + "forgot_password": "Забыли пароль?", + "password_reset": "Сброс пароля", + "instruction": "Введите ваш email или имя пользователя, и мы отправим вам ссылку для сброса пароля.", + "placeholder": "Ваш email или имя пользователя", + "check_email": "Проверьте ваш email и перейдите по ссылке для сброса пароля.", + "return_home": "Вернуться на главную страницу", + "not_found": "Мы не смогли найти аккаунт с таким email-ом или именем пользователя.", + "too_many_requests": "Вы исчерпали допустимое количество попыток, попробуйте позже.", + "password_reset_disabled": "Сброс пароля отключен. Cвяжитесь с администратором вашего сервера." + }, + "about": { + "mrf": { + "federation": "Федерация", + "simple": { + "accept_desc": "" + } + } } - }, - "timeline": { - "collapse": "Свернуть", - "conversation": "Разговор", - "error_fetching": "Ошибка при обновлении", - "load_older": "Загрузить старые статусы", - "no_retweet_hint": "Пост помечен как \"только для подписчиков\" или \"личное\" и поэтому не может быть повторён", - "repeated": "повторил(а)", - "show_new": "Показать новые", - "up_to_date": "Обновлено" - }, - "user_card": { - "block": "Заблокировать", - "blocked": "Заблокирован", - "favorites": "Понравившиеся", - "follow": "Читать", - "follow_sent": "Запрос отправлен!", - "follow_progress": "Запрашиваем…", - "follow_again": "Запросить еще заново?", - "follow_unfollow": "Перестать читать", - "followees": "Читаемые", - "followers": "Читатели", - "following": "Читаю", - "follows_you": "Читает вас", - "mute": "Игнорировать", - "muted": "Игнорирую", - "per_day": "в день", - "remote_follow": "Читать удалённо", - "statuses": "Статусы", - "admin_menu": { - "moderation": "Опции модератора", - "grant_admin": "Сделать администратором", - "revoke_admin": "Забрать права администратора", - "grant_moderator": "Сделать модератором", - "revoke_moderator": "Забрать права модератора", - "activate_account": "Активировать аккаунт", - "deactivate_account": "Деактивировать аккаунт", - "delete_account": "Удалить аккаунт", - "force_nsfw": "Отмечать посты пользователя как NSFW", - "strip_media": "Убирать вложения из постов пользователя", - "force_unlisted": "Не добавлять посты в публичные ленты", - "sandbox": "Посты доступны только для подписчиков", - "disable_remote_subscription": "Запретить подписываться с удаленных серверов", - "disable_any_subscription": "Запретить подписываться на пользователя", - "quarantine": "Не федерировать посты пользователя", - "delete_user": "Удалить пользователя", - "delete_user_confirmation": "Вы уверены? Это действие нельзя отменить." - } - }, - "user_profile": { - "timeline_title": "Лента пользователя" - }, - "search": { - "people": "Люди", - "hashtags": "Хэштэги", - "person_talking": "Популярно у {count} человека", - "people_talking": "Популярно у {count} человек", - "no_results": "Ничего не найдено" - }, - "password_reset": { - "forgot_password": "Забыли пароль?", - "password_reset": "Сброс пароля", - "instruction": "Введите ваш email или имя пользователя, и мы отправим вам ссылку для сброса пароля.", - "placeholder": "Ваш email или имя пользователя", - "check_email": "Проверьте ваш email и перейдите по ссылке для сброса пароля.", - "return_home": "Вернуться на главную страницу", - "not_found": "Мы не смогли найти аккаунт с таким email-ом или именем пользователя.", - "too_many_requests": "Вы исчерпали допустимое количество попыток, попробуйте позже.", - "password_reset_disabled": "Сброс пароля отключен. Cвяжитесь с администратором вашего сервера." - } } From bc5005b3ddddeb47d5160a1b79d2edb39e887b4b Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Tue, 12 May 2020 13:59:52 -0500 Subject: [PATCH 26/95] Permit sidebar alignment with instance configuration option --- src/App.js | 7 ++++++- src/App.vue | 5 ++++- src/modules/instance.js | 1 + static/config.json | 3 ++- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/App.js b/src/App.js index 61b5eec1..bbb41409 100644 --- a/src/App.js +++ b/src/App.js @@ -99,7 +99,12 @@ export default { }, showFeaturesPanel () { return this.$store.state.instance.showFeaturesPanel }, isMobileLayout () { return this.$store.state.interface.mobileLayout }, - privateMode () { return this.$store.state.instance.private } + privateMode () { return this.$store.state.instance.private }, + sidebarAlign () { + return { + 'order': this.$store.state.instance.sidebarRight ? 99 : 0 + } + } }, methods: { scrollToTop () { diff --git a/src/App.vue b/src/App.vue index ff62fc51..7018a5a4 100644 --- a/src/App.vue +++ b/src/App.vue @@ -80,7 +80,10 @@ id="content" class="container underlay" > - <div class="sidebar-flexer mobile-hidden"> + <div + class="sidebar-flexer mobile-hidden" + :style="sidebarAlign" + > <div class="sidebar-bounds"> <div class="sidebar-scroller"> <div class="sidebar"> diff --git a/src/modules/instance.js b/src/modules/instance.js index ffece311..869ceebd 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -36,6 +36,7 @@ const defaultState = { showFeaturesPanel: true, minimalScopesMode: false, greentext: false, + sidebarRight: false, // Nasty stuff pleromaBackend: true, diff --git a/static/config.json b/static/config.json index c8267869..a87ed853 100644 --- a/static/config.json +++ b/static/config.json @@ -19,5 +19,6 @@ "noAttachmentLinks": false, "nsfwCensorImage": "", "showFeaturesPanel": true, - "minimalScopesMode": false + "minimalScopesMode": false, + "sidebarRight": false } From 8e399710988dd874bd921a9ced76daf90034c29f Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 13 May 2020 17:48:31 +0300 Subject: [PATCH 27/95] add with_relationships where necessary --- src/components/post_status_form/post_status_form.js | 2 +- src/components/user_settings/user_settings.js | 4 ++-- src/modules/users.js | 4 ++-- src/services/api/api.service.js | 13 +++++++++---- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/components/post_status_form/post_status_form.js b/src/components/post_status_form/post_status_form.js index 74067fef..a98e1e31 100644 --- a/src/components/post_status_form/post_status_form.js +++ b/src/components/post_status_form/post_status_form.js @@ -102,7 +102,7 @@ const PostStatusForm = { ...this.$store.state.instance.customEmoji ], users: this.$store.state.users.users, - updateUsersList: (input) => this.$store.dispatch('searchUsers', input) + updateUsersList: (query) => this.$store.dispatch('searchUsers', { query }) }) }, emojiSuggestor () { diff --git a/src/components/user_settings/user_settings.js b/src/components/user_settings/user_settings.js index 5338c974..a1ec2997 100644 --- a/src/components/user_settings/user_settings.js +++ b/src/components/user_settings/user_settings.js @@ -112,7 +112,7 @@ const UserSettings = { ...this.$store.state.instance.customEmoji ], users: this.$store.state.users.users, - updateUsersList: (input) => this.$store.dispatch('searchUsers', input) + updateUsersList: (query) => this.$store.dispatch('searchUsers', { query }) }) }, emojiSuggestor () { @@ -362,7 +362,7 @@ const UserSettings = { }) }, queryUserIds (query) { - return this.$store.dispatch('searchUsers', query) + return this.$store.dispatch('searchUsers', { query }) .then((users) => map(users, 'id')) }, blockUsers (ids) { diff --git a/src/modules/users.js b/src/modules/users.js index 1d1b415c..f377da75 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -428,8 +428,8 @@ const users = { store.commit('setUserForNotification', notification) }) }, - searchUsers (store, query) { - return store.rootState.api.backendInteractor.searchUsers({ query }) + searchUsers (store, { query, withRelationships }) { + return store.rootState.api.backendInteractor.searchUsers({ query, withRelationships }) .then((users) => { store.commit('addNewUsers', users) return users diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js index 72c8874f..94ff4623 100644 --- a/src/services/api/api.service.js +++ b/src/services/api/api.service.js @@ -324,7 +324,8 @@ const fetchFriends = ({ id, maxId, sinceId, limit = 20, credentials }) => { const args = [ maxId && `max_id=${maxId}`, sinceId && `since_id=${sinceId}`, - limit && `limit=${limit}` + limit && `limit=${limit}`, + `with_relationships=true` ].filter(_ => _).join('&') url = url + (args ? '?' + args : '') @@ -358,7 +359,8 @@ const fetchFollowers = ({ id, maxId, sinceId, limit = 20, credentials }) => { const args = [ maxId && `max_id=${maxId}`, sinceId && `since_id=${sinceId}`, - limit && `limit=${limit}` + limit && `limit=${limit}`, + `with_relationships=true` ].filter(_ => _).join('&') url += args ? '?' + args : '' @@ -935,12 +937,13 @@ const reportUser = ({ credentials, userId, statusIds, comment, forward }) => { }) } -const searchUsers = ({ credentials, query }) => { +const searchUsers = ({ credentials, query, withRelationships }) => { return promisedRequest({ url: MASTODON_USER_SEARCH_URL, params: { q: query, - resolve: true + resolve: true, + with_relationships: withRelationships }, credentials }) @@ -971,6 +974,8 @@ const search2 = ({ credentials, q, resolve, limit, offset, following }) => { params.push(['following', true]) } + params.push(['with_relationships', true]) + let queryString = map(params, (param) => `${param[0]}=${param[1]}`).join('&') url += `?${queryString}` From 355281081a044c950ce7d07fa1081149eb4aec0d Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 13 May 2020 17:53:43 +0300 Subject: [PATCH 28/95] don't send undefined --- src/services/api/api.service.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js index 94ff4623..37ccfd6b 100644 --- a/src/services/api/api.service.js +++ b/src/services/api/api.service.js @@ -943,7 +943,7 @@ const searchUsers = ({ credentials, query, withRelationships }) => { params: { q: query, resolve: true, - with_relationships: withRelationships + with_relationships: !!withRelationships }, credentials }) From 9c7cb3a95431bbea44391f79da465f77565a4b49 Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 13 May 2020 18:04:30 +0300 Subject: [PATCH 29/95] remove search1 with_relationships --- src/modules/users.js | 4 ++-- src/services/api/api.service.js | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/modules/users.js b/src/modules/users.js index f377da75..f9329f2a 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -428,8 +428,8 @@ const users = { store.commit('setUserForNotification', notification) }) }, - searchUsers (store, { query, withRelationships }) { - return store.rootState.api.backendInteractor.searchUsers({ query, withRelationships }) + searchUsers (store, { query }) { + return store.rootState.api.backendInteractor.searchUsers({ query }) .then((users) => { store.commit('addNewUsers', users) return users diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js index 37ccfd6b..7f82d2fa 100644 --- a/src/services/api/api.service.js +++ b/src/services/api/api.service.js @@ -937,13 +937,12 @@ const reportUser = ({ credentials, userId, statusIds, comment, forward }) => { }) } -const searchUsers = ({ credentials, query, withRelationships }) => { +const searchUsers = ({ credentials, query }) => { return promisedRequest({ url: MASTODON_USER_SEARCH_URL, params: { q: query, - resolve: true, - with_relationships: !!withRelationships + resolve: true }, credentials }) From fa403bbcbdd82770ff41d31295938e1f01c12604 Mon Sep 17 00:00:00 2001 From: Alibek Omarov <a1ba.omarov@gmail.com> Date: Wed, 13 May 2020 16:42:17 +0000 Subject: [PATCH 30/95] Translated using Weblate (Russian) Currently translated at 54.4% (334 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index afaba444..22125853 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -56,7 +56,7 @@ "load_older": "Загрузить старые взаимодействия" }, "post_status": { - "account_not_locked_warning": "Ваш аккаунт не {0}. Кто угодно может зафоловить вас чтобы прочитать посты только для подписчиков", + "account_not_locked_warning": "Ваш аккаунт не {0}. Кто угодно может зафоловить вас чтобы прочитать посты только для подписчиков.", "account_not_locked_warning_link": "залочен", "attachments_sensitive": "Вложения содержат чувствительный контент", "content_warning": "Тема (не обязательно)", @@ -129,10 +129,10 @@ "cRed": "Отменить", "change_email": "Сменить email", "change_email_error": "Произошла ошибка при попытке изменить email.", - "changed_email": "Email изменён успешно.", + "changed_email": "Email изменён успешно!", "change_password": "Сменить пароль", "change_password_error": "Произошла ошибка при попытке изменить пароль.", - "changed_password": "Пароль изменён успешно.", + "changed_password": "Пароль изменён успешно!", "collapse_subject": "Сворачивать посты с темой", "confirm_new_password": "Подтверждение нового пароля", "current_avatar": "Текущий аватар", @@ -150,7 +150,7 @@ "follow_export_button": "Экспортировать читаемых в файл .csv", "follow_export_processing": "Ведётся обработка, скоро вам будет предложено загрузить файл", "follow_import": "Импортировать читаемых", - "follow_import_error": "Ошибка при импортировании читаемых.", + "follow_import_error": "Ошибка при импортировании читаемых", "follows_imported": "Список читаемых импортирован. Обработка займёт некоторое время..", "foreground": "Передний план", "general": "Общие", @@ -224,7 +224,7 @@ "text": "Текст", "theme": "Тема", "theme_help": "Используйте шестнадцатеричные коды цветов (#rrggbb) для настройки темы.", - "theme_help_v2_1": "Вы так же можете перепоределить цвета определенных компонентов нажав соотв. галочку. Используйте кнопку \"Очистить всё\" чтобы снять все переопределения", + "theme_help_v2_1": "Вы так же можете перепоределить цвета определенных компонентов нажав соотв. галочку. Используйте кнопку \"Очистить всё\" чтобы снять все переопределения.", "theme_help_v2_2": "Под некоторыми полями ввода это идикаторы контрастности, наведите на них мышью чтобы узнать больше. Приспользовании прозрачности контраст расчитывается для наихудшего варианта.", "tooltipRadius": "Всплывающие подсказки/уведомления", "user_settings": "Настройки пользователя", @@ -292,9 +292,9 @@ "inset": "Внутренняя", "hint": "Для теней вы так же можете использовать --variable в качестве цвета чтобы использовать CSS3-переменные. В таком случае прозрачность работать не будет.", "filter_hint": { - "always_drop_shadow": "Внимание, эта тень всегда использует {0} когда браузер поддерживает это", - "drop_shadow_syntax": "{0} не поддерживает параметр {1} и ключевое слово {2}", - "avatar_inset": "Одновременное использование внутренних и внешних теней на (прозрачных) аватарках может дать не те результаты что вы ожидаете", + "always_drop_shadow": "Внимание, эта тень всегда использует {0} когда браузер поддерживает это.", + "drop_shadow_syntax": "{0} не поддерживает параметр {1} и ключевое слово {2}.", + "avatar_inset": "Одновременное использование внутренних и внешних теней на (прозрачных) аватарках может дать не те результаты что вы ожидаете.", "spread_zero": "Тени с разбросом > 0 будут выглядеть как если бы разброс установлен в 0", "inset_classic": "Внутренние тени будут использовать {0}" }, From 1a944efa33b00842f3f9d3fb01323b0d143903cf Mon Sep 17 00:00:00 2001 From: hj <spam@hjkos.com> Date: Wed, 13 May 2020 16:48:47 +0000 Subject: [PATCH 31/95] Translated using Weblate (Russian) Currently translated at 54.4% (334 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index 22125853..e6fab7e8 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -416,7 +416,11 @@ "federation": "Федерация", "simple": { "accept_desc": "" + }, + "keyword": { + "ftl_removal": "Убраны из федеративной ленты" } - } + }, + "staff": "Администрация" } } From 625d9b73208a614a20d3b9e05378fadf5b41f232 Mon Sep 17 00:00:00 2001 From: rinpatch <rinpatch@airmail.cc> Date: Wed, 13 May 2020 17:14:53 +0000 Subject: [PATCH 32/95] Translated using Weblate (Russian) Currently translated at 54.4% (334 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index e6fab7e8..a34c2e3f 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -418,7 +418,9 @@ "accept_desc": "" }, "keyword": { - "ftl_removal": "Убраны из федеративной ленты" + "ftl_removal": "Убраны из федеративной ленты", + "reject": "Отклонить", + "keyword_policies": "Действия на ключевые слова" } }, "staff": "Администрация" From 433d64827d6c1cb0c8110f091bce08d71dd5719c Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Wed, 13 May 2020 17:40:57 +0000 Subject: [PATCH 33/95] Translated using Weblate (Italian) Currently translated at 27.5% (169 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 409 ++++++++++++++++++++++++----------------------- 1 file changed, 207 insertions(+), 202 deletions(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index f441292e..3a49d96f 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -1,206 +1,211 @@ { - "general": { - "submit": "Invia", - "apply": "Applica" - }, - "nav": { - "mentions": "Menzioni", - "public_tl": "Sequenza temporale pubblica", - "timeline": "Sequenza temporale", - "twkn": "L'intera rete conosciuta", - "chat": "Chat Locale", - "friend_requests": "Richieste di Seguirti" - }, - "notifications": { - "followed_you": "ti segue", - "notifications": "Notifiche", - "read": "Leggi!", - "broken_favorite": "Stato sconosciuto, lo sto cercando...", - "favorited_you": "ha messo mi piace al tuo stato", - "load_older": "Carica notifiche più vecchie", - "repeated_you": "ha condiviso il tuo stato" - }, - "settings": { - "attachments": "Allegati", - "autoload": "Abilita caricamento automatico quando si raggiunge fondo pagina", - "avatar": "Avatar", - "bio": "Introduzione", - "current_avatar": "Il tuo avatar attuale", - "current_profile_banner": "Il tuo banner attuale", - "filtering": "Filtri", - "filtering_explanation": "Tutti i post contenenti queste parole saranno silenziati, uno per linea", - "hide_attachments_in_convo": "Nascondi gli allegati presenti nelle conversazioni", - "hide_attachments_in_tl": "Nascondi gli allegati presenti nella sequenza temporale", - "name": "Nome", - "name_bio": "Nome & Introduzione", - "nsfw_clickthrough": "Abilita il click per visualizzare gli allegati segnati come NSFW", - "profile_background": "Sfondo della tua pagina", - "profile_banner": "Banner del tuo profilo", - "reply_link_preview": "Abilita il link per la risposta al passaggio del mouse", - "set_new_avatar": "Scegli un nuovo avatar", - "set_new_profile_background": "Scegli un nuovo sfondo per la tua pagina", - "set_new_profile_banner": "Scegli un nuovo banner per il tuo profilo", - "settings": "Impostazioni", - "theme": "Tema", - "user_settings": "Impostazioni Utente", - "attachmentRadius": "Allegati", - "avatarAltRadius": "Avatar (Notifiche)", - "avatarRadius": "Avatar", - "background": "Sfondo", - "btnRadius": "Pulsanti", - "cBlue": "Blu (Rispondere, seguire)", - "cGreen": "Verde (Condividi)", - "cOrange": "Arancio (Mi piace)", - "cRed": "Rosso (Annulla)", - "change_password": "Cambia Password", - "change_password_error": "C'è stato un problema durante il cambiamento della password.", - "changed_password": "Password cambiata correttamente!", - "collapse_subject": "Riduci post che hanno un oggetto", - "confirm_new_password": "Conferma la nuova password", - "current_password": "Password attuale", - "data_import_export_tab": "Importa / Esporta Dati", - "default_vis": "Visibilità predefinita dei post", - "delete_account": "Elimina Account", - "delete_account_description": "Elimina definitivamente il tuo account e tutti i tuoi messaggi.", - "delete_account_error": "C'è stato un problema durante l'eliminazione del tuo account. Se il problema persiste contatta l'amministratore della tua istanza.", - "delete_account_instructions": "Digita la tua password nel campo sottostante per confermare l'eliminazione dell'account.", - "export_theme": "Salva settaggi", - "follow_export": "Esporta la lista di chi segui", - "follow_export_button": "Esporta la lista di chi segui in un file csv", - "follow_export_processing": "Sto elaborando, presto ti sarà chiesto di scaricare il tuo file", - "follow_import": "Importa la lista di chi segui", - "follow_import_error": "Errore nell'importazione della lista di chi segui", - "follows_imported": "Importazione riuscita! L'elaborazione richiederà un po' di tempo.", - "foreground": "In primo piano", - "general": "Generale", - "hide_post_stats": "Nascondi statistiche dei post (es. il numero di mi piace)", - "hide_user_stats": "Nascondi statistiche dell'utente (es. il numero di chi ti segue)", - "import_followers_from_a_csv_file": "Importa una lista di chi segui da un file csv", - "import_theme": "Carica settaggi", - "inputRadius": "Campi di testo", - "instance_default": "(predefinito: {value})", - "interfaceLanguage": "Linguaggio dell'interfaccia", - "invalid_theme_imported": "Il file selezionato non è un file di tema per Pleroma supportato. Il tuo tema non è stato modificato.", - "limited_availability": "Non disponibile nel tuo browser", - "links": "Collegamenti", - "lock_account_description": "Limita il tuo account solo per contatti approvati", - "loop_video": "Riproduci video in ciclo continuo", - "loop_video_silent_only": "Riproduci solo video senza audio in ciclo continuo (es. le gif di Mastodon)", - "new_password": "Nuova password", - "notification_visibility": "Tipi di notifiche da mostrare", - "notification_visibility_follows": "Nuove persone ti seguono", - "notification_visibility_likes": "Mi piace", - "notification_visibility_mentions": "Menzioni", - "notification_visibility_repeats": "Condivisioni", - "no_rich_text_description": "Togli la formattazione del testo da tutti i post", - "oauth_tokens": "Token OAuth", - "token": "Token", - "refresh_token": "Aggiorna token", - "valid_until": "Valido fino a", - "revoke_token": "Revocare", - "panelRadius": "Pannelli", - "pause_on_unfocused": "Metti in pausa l'aggiornamento continuo quando la scheda non è in primo piano", - "presets": "Valori predefiniti", - "profile_tab": "Profilo", - "radii_help": "Imposta l'arrotondamento dei bordi (in pixel)", - "replies_in_timeline": "Risposte nella sequenza temporale", - "reply_visibility_all": "Mostra tutte le risposte", - "reply_visibility_following": "Mostra solo le risposte dirette a me o agli utenti che seguo", - "reply_visibility_self": "Mostra solo risposte dirette a me", - "saving_err": "Errore nel salvataggio delle impostazioni", - "saving_ok": "Impostazioni salvate", - "security_tab": "Sicurezza", - "stop_gifs": "Riproduci GIF al passaggio del cursore del mouse", - "streaming": "Abilita aggiornamento automatico dei nuovi post quando si è in alto alla pagina", - "text": "Testo", - "theme_help": "Usa codici colore esadecimali (#rrggbb) per personalizzare il tuo schema di colori.", - "tooltipRadius": "Descrizioni/avvisi", - "values": { - "false": "no", - "true": "si" - } - }, - "timeline": { - "error_fetching": "Errore nel prelievo aggiornamenti", - "load_older": "Carica messaggi più vecchi", - "show_new": "Mostra nuovi", - "up_to_date": "Aggiornato", - "collapse": "Riduci", - "conversation": "Conversazione", - "no_retweet_hint": "La visibilità del post è impostata solo per chi ti segue o messaggio diretto e non può essere condiviso", - "repeated": "condiviso" - }, - "user_card": { - "follow": "Segui", - "followees": "Chi stai seguendo", - "followers": "Chi ti segue", - "following": "Lo stai seguendo!", - "follows_you": "Ti segue!", - "mute": "Silenzia", - "muted": "Silenziato", - "per_day": "al giorno", - "statuses": "Messaggi", - "approve": "Approva", - "block": "Blocca", - "blocked": "Bloccato!", - "deny": "Nega", - "remote_follow": "Segui da remoto" - }, - "chat": { - "title": "Chat" - }, - "features_panel": { - "chat": "Chat", - "gopher": "Gopher", - "media_proxy": "Media proxy", - "scope_options": "Opzioni di visibilità", - "text_limit": "Lunghezza limite", - "title": "Caratteristiche", - "who_to_follow": "Chi seguire" - }, - "finder": { - "error_fetching_user": "Errore nel recupero dell'utente", - "find_user": "Trova utente" - }, - "login": { - "login": "Accedi", - "logout": "Disconnettiti", - "password": "Password", - "placeholder": "es. lain", - "register": "Registrati", - "username": "Nome utente" - }, - "post_status": { - "account_not_locked_warning": "Il tuo account non è {0}. Chiunque può seguirti e vedere i tuoi post riservati a chi ti segue.", - "account_not_locked_warning_link": "bloccato", - "attachments_sensitive": "Segna allegati come sensibili", - "content_type": { - "text/plain": "Testo normale" + "general": { + "submit": "Invia", + "apply": "Applica" }, - "content_warning": "Oggetto (facoltativo)", - "default": "Appena atterrato in L.A.", - "direct_warning": "Questo post sarà visibile solo dagli utenti menzionati.", - "posting": "Pubblica", - "scope": { - "direct": "Diretto - Pubblicato solo per gli utenti menzionati", - "private": "Solo per chi ti segue - Visibile solo da chi ti segue", - "public": "Pubblico - Visibile sulla sequenza temporale pubblica", - "unlisted": "Non elencato - Non visibile sulla sequenza temporale pubblica" + "nav": { + "mentions": "Menzioni", + "public_tl": "Sequenza temporale pubblica", + "timeline": "Sequenza temporale", + "twkn": "L'intera rete conosciuta", + "chat": "Chat Locale", + "friend_requests": "Richieste di Seguirti" + }, + "notifications": { + "followed_you": "ti segue", + "notifications": "Notifiche", + "read": "Leggi!", + "broken_favorite": "Stato sconosciuto, lo sto cercando...", + "favorited_you": "ha messo mi piace al tuo stato", + "load_older": "Carica notifiche più vecchie", + "repeated_you": "ha condiviso il tuo stato" + }, + "settings": { + "attachments": "Allegati", + "autoload": "Abilita caricamento automatico quando si raggiunge fondo pagina", + "avatar": "Avatar", + "bio": "Introduzione", + "current_avatar": "Il tuo avatar attuale", + "current_profile_banner": "Il tuo banner attuale", + "filtering": "Filtri", + "filtering_explanation": "Tutti i post contenenti queste parole saranno silenziati, uno per linea", + "hide_attachments_in_convo": "Nascondi gli allegati presenti nelle conversazioni", + "hide_attachments_in_tl": "Nascondi gli allegati presenti nella sequenza temporale", + "name": "Nome", + "name_bio": "Nome & Introduzione", + "nsfw_clickthrough": "Abilita il click per visualizzare gli allegati segnati come NSFW", + "profile_background": "Sfondo della tua pagina", + "profile_banner": "Banner del tuo profilo", + "reply_link_preview": "Abilita il link per la risposta al passaggio del mouse", + "set_new_avatar": "Scegli un nuovo avatar", + "set_new_profile_background": "Scegli un nuovo sfondo per la tua pagina", + "set_new_profile_banner": "Scegli un nuovo banner per il tuo profilo", + "settings": "Impostazioni", + "theme": "Tema", + "user_settings": "Impostazioni Utente", + "attachmentRadius": "Allegati", + "avatarAltRadius": "Avatar (Notifiche)", + "avatarRadius": "Avatar", + "background": "Sfondo", + "btnRadius": "Pulsanti", + "cBlue": "Blu (Rispondere, seguire)", + "cGreen": "Verde (Condividi)", + "cOrange": "Arancio (Mi piace)", + "cRed": "Rosso (Annulla)", + "change_password": "Cambia Password", + "change_password_error": "C'è stato un problema durante il cambiamento della password.", + "changed_password": "Password cambiata correttamente!", + "collapse_subject": "Riduci post che hanno un oggetto", + "confirm_new_password": "Conferma la nuova password", + "current_password": "Password attuale", + "data_import_export_tab": "Importa / Esporta Dati", + "default_vis": "Visibilità predefinita dei post", + "delete_account": "Elimina Account", + "delete_account_description": "Elimina definitivamente il tuo account e tutti i tuoi messaggi.", + "delete_account_error": "C'è stato un problema durante l'eliminazione del tuo account. Se il problema persiste contatta l'amministratore della tua istanza.", + "delete_account_instructions": "Digita la tua password nel campo sottostante per confermare l'eliminazione dell'account.", + "export_theme": "Salva settaggi", + "follow_export": "Esporta la lista di chi segui", + "follow_export_button": "Esporta la lista di chi segui in un file csv", + "follow_export_processing": "Sto elaborando, presto ti sarà chiesto di scaricare il tuo file", + "follow_import": "Importa la lista di chi segui", + "follow_import_error": "Errore nell'importazione della lista di chi segui", + "follows_imported": "Importazione riuscita! L'elaborazione richiederà un po' di tempo.", + "foreground": "In primo piano", + "general": "Generale", + "hide_post_stats": "Nascondi statistiche dei post (es. il numero di mi piace)", + "hide_user_stats": "Nascondi statistiche dell'utente (es. il numero di chi ti segue)", + "import_followers_from_a_csv_file": "Importa una lista di chi segui da un file csv", + "import_theme": "Carica settaggi", + "inputRadius": "Campi di testo", + "instance_default": "(predefinito: {value})", + "interfaceLanguage": "Linguaggio dell'interfaccia", + "invalid_theme_imported": "Il file selezionato non è un file di tema per Pleroma supportato. Il tuo tema non è stato modificato.", + "limited_availability": "Non disponibile nel tuo browser", + "links": "Collegamenti", + "lock_account_description": "Limita il tuo account solo per contatti approvati", + "loop_video": "Riproduci video in ciclo continuo", + "loop_video_silent_only": "Riproduci solo video senza audio in ciclo continuo (es. le gif di Mastodon)", + "new_password": "Nuova password", + "notification_visibility": "Tipi di notifiche da mostrare", + "notification_visibility_follows": "Nuove persone ti seguono", + "notification_visibility_likes": "Mi piace", + "notification_visibility_mentions": "Menzioni", + "notification_visibility_repeats": "Condivisioni", + "no_rich_text_description": "Togli la formattazione del testo da tutti i post", + "oauth_tokens": "Token OAuth", + "token": "Token", + "refresh_token": "Aggiorna token", + "valid_until": "Valido fino a", + "revoke_token": "Revocare", + "panelRadius": "Pannelli", + "pause_on_unfocused": "Metti in pausa l'aggiornamento continuo quando la scheda non è in primo piano", + "presets": "Valori predefiniti", + "profile_tab": "Profilo", + "radii_help": "Imposta l'arrotondamento dei bordi (in pixel)", + "replies_in_timeline": "Risposte nella sequenza temporale", + "reply_visibility_all": "Mostra tutte le risposte", + "reply_visibility_following": "Mostra solo le risposte dirette a me o agli utenti che seguo", + "reply_visibility_self": "Mostra solo risposte dirette a me", + "saving_err": "Errore nel salvataggio delle impostazioni", + "saving_ok": "Impostazioni salvate", + "security_tab": "Sicurezza", + "stop_gifs": "Riproduci GIF al passaggio del cursore del mouse", + "streaming": "Abilita aggiornamento automatico dei nuovi post quando si è in alto alla pagina", + "text": "Testo", + "theme_help": "Usa codici colore esadecimali (#rrggbb) per personalizzare il tuo schema di colori.", + "tooltipRadius": "Descrizioni/avvisi", + "values": { + "false": "no", + "true": "si" + } + }, + "timeline": { + "error_fetching": "Errore nel prelievo aggiornamenti", + "load_older": "Carica messaggi più vecchi", + "show_new": "Mostra nuovi", + "up_to_date": "Aggiornato", + "collapse": "Riduci", + "conversation": "Conversazione", + "no_retweet_hint": "La visibilità del post è impostata solo per chi ti segue o messaggio diretto e non può essere condiviso", + "repeated": "condiviso" + }, + "user_card": { + "follow": "Segui", + "followees": "Chi stai seguendo", + "followers": "Chi ti segue", + "following": "Lo stai seguendo!", + "follows_you": "Ti segue!", + "mute": "Silenzia", + "muted": "Silenziato", + "per_day": "al giorno", + "statuses": "Messaggi", + "approve": "Approva", + "block": "Blocca", + "blocked": "Bloccato!", + "deny": "Nega", + "remote_follow": "Segui da remoto" + }, + "chat": { + "title": "Chat" + }, + "features_panel": { + "chat": "Chat", + "gopher": "Gopher", + "media_proxy": "Media proxy", + "scope_options": "Opzioni di visibilità", + "text_limit": "Lunghezza limite", + "title": "Caratteristiche", + "who_to_follow": "Chi seguire" + }, + "finder": { + "error_fetching_user": "Errore nel recupero dell'utente", + "find_user": "Trova utente" + }, + "login": { + "login": "Accedi", + "logout": "Disconnettiti", + "password": "Password", + "placeholder": "es. lain", + "register": "Registrati", + "username": "Nome utente" + }, + "post_status": { + "account_not_locked_warning": "Il tuo account non è {0}. Chiunque può seguirti e vedere i tuoi post riservati a chi ti segue.", + "account_not_locked_warning_link": "bloccato", + "attachments_sensitive": "Segna allegati come sensibili", + "content_type": { + "text/plain": "Testo normale" + }, + "content_warning": "Oggetto (facoltativo)", + "default": "Appena atterrato in L.A.", + "direct_warning": "Questo post sarà visibile solo dagli utenti menzionati.", + "posting": "Pubblica", + "scope": { + "direct": "Diretto - Pubblicato solo per gli utenti menzionati", + "private": "Solo per chi ti segue - Visibile solo da chi ti segue", + "public": "Pubblico - Visibile sulla sequenza temporale pubblica", + "unlisted": "Non elencato - Non visibile sulla sequenza temporale pubblica" + } + }, + "registration": { + "bio": "Introduzione", + "email": "Email", + "fullname": "Nome visualizzato", + "password_confirm": "Conferma password", + "registration": "Registrazione", + "token": "Codice d'invito" + }, + "user_profile": { + "timeline_title": "Sequenza Temporale dell'Utente" + }, + "who_to_follow": { + "more": "Più", + "who_to_follow": "Chi seguire" + }, + "about": { + "mrf": { + "federation": "Federazione" + } } - }, - "registration": { - "bio": "Introduzione", - "email": "Email", - "fullname": "Nome visualizzato", - "password_confirm": "Conferma password", - "registration": "Registrazione", - "token": "Codice d'invito" - }, - "user_profile": { - "timeline_title": "Sequenza Temporale dell'Utente" - }, - "who_to_follow": { - "more": "Più", - "who_to_follow": "Chi seguire" - } } From c360a2384578b15664bc461dddb1a193d5e0b09f Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 13 May 2020 16:47:13 +0000 Subject: [PATCH 34/95] Translated using Weblate (Finnish) Currently translated at 78.7% (483 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/fi/ --- src/i18n/fi.json | 923 ++++++++++++++++++++++++++++++----------------- 1 file changed, 584 insertions(+), 339 deletions(-) diff --git a/src/i18n/fi.json b/src/i18n/fi.json index 926e6087..386578fb 100644 --- a/src/i18n/fi.json +++ b/src/i18n/fi.json @@ -1,344 +1,589 @@ { - "chat": { - "title": "Chat" - }, - "features_panel": { - "chat": "Chat", - "gopher": "Gopher", - "media_proxy": "Media-välityspalvelin", - "scope_options": "Näkyvyyden rajaus", - "text_limit": "Tekstin pituusraja", - "title": "Ominaisuudet", - "who_to_follow": "Seurausehdotukset" - }, - "finder": { - "error_fetching_user": "Virhe hakiessa käyttäjää", - "find_user": "Hae käyttäjä" - }, - "general": { - "apply": "Aseta", - "submit": "Lähetä", - "more": "Lisää", - "generic_error": "Virhe tapahtui" - }, - "login": { - "login": "Kirjaudu sisään", - "description": "Kirjaudu sisään OAuthilla", - "logout": "Kirjaudu ulos", - "password": "Salasana", - "placeholder": "esim. Seppo", - "register": "Rekisteröidy", - "username": "Käyttäjänimi" - }, - "nav": { - "about": "Tietoja", - "back": "Takaisin", - "chat": "Paikallinen Chat", - "friend_requests": "Seurauspyynnöt", - "mentions": "Maininnat", - "interactions": "Interaktiot", - "dms": "Yksityisviestit", - "public_tl": "Julkinen Aikajana", - "timeline": "Aikajana", - "twkn": "Koko Tunnettu Verkosto", - "user_search": "Käyttäjähaku", - "who_to_follow": "Seurausehdotukset", - "preferences": "Asetukset" - }, - "notifications": { - "broken_favorite": "Viestiä ei löydetty...", - "favorited_you": "tykkäsi viestistäsi", - "followed_you": "seuraa sinua", - "load_older": "Lataa vanhempia ilmoituksia", - "notifications": "Ilmoitukset", - "read": "Lue!", - "repeated_you": "toisti viestisi", - "no_more_notifications": "Ei enempää ilmoituksia", - "reacted_with": "lisäsi reaktion {0}" - }, - "polls": { - "add_poll": "Lisää äänestys", - "add_option": "Lisää vaihtoehto", - "option": "Vaihtoehto", - "votes": "ääntä", - "vote": "Äänestä", - "type": "Äänestyksen tyyppi", - "single_choice": "Yksi valinta", - "multiple_choices": "Monivalinta", - "expiry": "Äänestyksen kesto", - "expires_in": "Päättyy {0} päästä", - "expired": "Päättyi {0} sitten", - "not_enough_option": "Liian vähän uniikkeja vaihtoehtoja äänestyksessä" - }, - "interactions": { - "favs_repeats": "Toistot ja tykkäykset", - "follows": "Uudet seuraukset", - "load_older": "Lataa vanhempia interaktioita" - }, - "post_status": { - "new_status": "Uusi viesti", - "account_not_locked_warning": "Tilisi ei ole {0}. Kuka vain voi seurata sinua nähdäksesi 'vain-seuraajille' -viestisi", - "account_not_locked_warning_link": "lukittu", - "attachments_sensitive": "Merkkaa liitteet arkaluonteisiksi", - "content_type": { - "text/plain": "Tavallinen teksti" + "chat": { + "title": "Chat" }, - "content_warning": "Aihe (valinnainen)", - "default": "Tulin juuri saunasta.", - "direct_warning": "Tämä viesti näkyy vain mainituille käyttäjille.", - "posting": "Lähetetään", - "scope": { - "direct": "Yksityisviesti - Näkyy vain mainituille käyttäjille", - "private": "Vain-seuraajille - Näkyy vain seuraajillesi", - "public": "Julkinen - Näkyy julkisilla aikajanoilla", - "unlisted": "Listaamaton - Ei näy julkisilla aikajanoilla" - } - }, - "registration": { - "bio": "Kuvaus", - "email": "Sähköposti", - "fullname": "Koko nimi", - "password_confirm": "Salasanan vahvistaminen", - "registration": "Rekisteröityminen", - "token": "Kutsuvaltuus", - "captcha": "Varmenne", - "new_captcha": "Paina kuvaa saadaksesi uuden varmenteen", - "validations": { - "username_required": "ei voi olla tyhjä", - "fullname_required": "ei voi olla tyhjä", - "email_required": "ei voi olla tyhjä", - "password_required": "ei voi olla tyhjä", - "password_confirmation_required": "ei voi olla tyhjä", - "password_confirmation_match": "pitää vastata salasanaa" - } - }, - "settings": { - "attachmentRadius": "Liitteet", - "attachments": "Liitteet", - "autoload": "Lataa vanhempia viestejä automaattisesti ruudun pohjalla", - "avatar": "Profiilikuva", - "avatarAltRadius": "Profiilikuvat (ilmoitukset)", - "avatarRadius": "Profiilikuvat", - "background": "Tausta", - "bio": "Kuvaus", - "btnRadius": "Napit", - "cBlue": "Sininen (Vastaukset, seuraukset)", - "cGreen": "Vihreä (Toistot)", - "cOrange": "Oranssi (Tykkäykset)", - "cRed": "Punainen (Peruminen)", - "change_password": "Vaihda salasana", - "change_password_error": "Virhe vaihtaessa salasanaa.", - "changed_password": "Salasana vaihdettu!", - "collapse_subject": "Minimoi viestit, joille on asetettu aihe", - "composing": "Viestien laatiminen", - "confirm_new_password": "Vahvista uusi salasana", - "current_avatar": "Nykyinen profiilikuvasi", - "current_password": "Nykyinen salasana", - "current_profile_banner": "Nykyinen julisteesi", - "data_import_export_tab": "Tietojen tuonti / vienti", - "default_vis": "Oletusnäkyvyysrajaus", - "delete_account": "Poista tili", - "delete_account_description": "Poista tilisi ja viestisi pysyvästi.", - "delete_account_error": "Virhe poistaessa tiliäsi. Jos virhe jatkuu, ota yhteyttä palvelimesi ylläpitoon.", - "delete_account_instructions": "Syötä salasanasi vahvistaaksesi tilin poiston.", - "emoji_reactions_on_timeline": "Näytä emojireaktiot aikajanalla", - "export_theme": "Tallenna teema", - "filtering": "Suodatus", - "filtering_explanation": "Kaikki viestit, jotka sisältävät näitä sanoja, suodatetaan. Yksi sana per rivi.", - "follow_export": "Seurausten vienti", - "follow_export_button": "Vie seurauksesi CSV-tiedostoon", - "follow_export_processing": "Käsitellään, sinua pyydetään lataamaan tiedosto hetken päästä", - "follow_import": "Seurausten tuonti", - "follow_import_error": "Virhe tuodessa seuraksia", - "follows_imported": "Seuraukset tuotu! Niiden käsittely vie hetken.", - "foreground": "Korostus", - "general": "Yleinen", - "hide_attachments_in_convo": "Piilota liitteet keskusteluissa", - "hide_attachments_in_tl": "Piilota liitteet aikajanalla", - "max_thumbnails": "Suurin sallittu määrä liitteitä esikatselussa", - "hide_isp": "Piilota palvelimenkohtainen ruutu", - "preload_images": "Esilataa kuvat", - "use_one_click_nsfw": "Avaa NSFW-liitteet yhdellä painalluksella", - "hide_post_stats": "Piilota viestien statistiikka (esim. tykkäysten määrä)", - "hide_user_stats": "Piilota käyttäjien statistiikka (esim. seuraajien määrä)", - "import_followers_from_a_csv_file": "Tuo seuraukset CSV-tiedostosta", - "import_theme": "Tuo tallennettu teema", - "inputRadius": "Syöttökentät", - "checkboxRadius": "Valintalaatikot", - "instance_default": "(oletus: {value})", - "instance_default_simple": "(oletus)", - "interface": "Käyttöliittymä", - "interfaceLanguage": "Käyttöliittymän kieli", - "invalid_theme_imported": "Tuotu tallennettu teema on epäkelpo, muutoksia ei tehty nykyiseen teemaasi.", - "limited_availability": "Ei saatavilla selaimessasi", - "links": "Linkit", - "lock_account_description": "Vain erikseen hyväksytyt käyttäjät voivat seurata tiliäsi", - "loop_video": "Uudelleentoista videot", - "loop_video_silent_only": "Uudelleentoista ainoastaan äänettömät videot (Video-\"giffit\")", - "play_videos_in_modal": "Toista videot modaalissa", - "use_contain_fit": "Älä rajaa liitteitä esikatselussa", - "name": "Nimi", - "name_bio": "Nimi ja kuvaus", - "new_password": "Uusi salasana", - "notification_visibility": "Ilmoitusten näkyvyys", - "notification_visibility_follows": "Seuraukset", - "notification_visibility_likes": "Tykkäykset", - "notification_visibility_mentions": "Maininnat", - "notification_visibility_repeats": "Toistot", - "notification_visibility_emoji_reactions": "Reaktiot", - "no_rich_text_description": "Älä näytä tekstin muotoilua.", - "hide_network_description": "Älä näytä seurauksiani tai seuraajiani", - "nsfw_clickthrough": "Piilota NSFW liitteet klikkauksen taakse", - "oauth_tokens": "OAuth-merkit", - "token": "Token", - "refresh_token": "Päivitä token", - "valid_until": "Voimassa asti", - "revoke_token": "Peruuttaa", - "panelRadius": "Ruudut", - "pause_on_unfocused": "Pysäytä automaattinen viestien näyttö välilehden ollessa pois fokuksesta", - "presets": "Valmiit teemat", - "profile_background": "Taustakuva", - "profile_banner": "Juliste", - "profile_tab": "Profiili", - "radii_help": "Aseta reunojen pyöristys (pikseleinä)", - "replies_in_timeline": "Keskustelut aikajanalla", - "reply_link_preview": "Keskusteluiden vastauslinkkien esikatselu", - "reply_visibility_all": "Näytä kaikki vastaukset", - "reply_visibility_following": "Näytä vain vastaukset minulle tai seuraamilleni käyttäjille", - "reply_visibility_self": "Näytä vain vastaukset minulle", - "saving_err": "Virhe tallentaessa asetuksia", - "saving_ok": "Asetukset tallennettu", - "security_tab": "Tietoturva", - "scope_copy": "Kopioi näkyvyysrajaus vastatessa (Yksityisviestit aina kopioivat)", - "set_new_avatar": "Aseta uusi profiilikuva", - "set_new_profile_background": "Aseta uusi taustakuva", - "set_new_profile_banner": "Aseta uusi juliste", - "settings": "Asetukset", - "subject_input_always_show": "Näytä aihe-kenttä", - "subject_line_behavior": "Aihe-kentän kopiointi", - "subject_line_email": "Kuten sähköposti: \"re: aihe\"", - "subject_line_mastodon": "Kopioi sellaisenaan", - "subject_line_noop": "Älä kopioi", - "stop_gifs": "Toista giffit vain kohdistaessa", - "streaming": "Näytä uudet viestit automaattisesti ollessasi ruudun huipulla", - "text": "Teksti", - "theme": "Teema", - "theme_help": "Käytä heksadesimaalivärejä muokataksesi väriteemaasi.", - "theme_help_v2_1": "Voit asettaa tiettyjen osien värin tai läpinäkyvyyden täyttämällä valintalaatikon, käytä \"Tyhjennä kaikki\"-nappia tyhjentääksesi kaiken.", - "theme_help_v2_2": "Ikonit kenttien alla ovat kontrasti-indikaattoreita, lisätietoa kohdistamalla. Käyttäessä läpinäkyvyyttä ne näyttävät pahimman skenaarion.", - "tooltipRadius": "Ohje- tai huomioviestit", - "user_settings": "Käyttäjän asetukset", - "values": { - "false": "pois päältä", - "true": "päällä" - } - }, - "time": { - "day": "{0} päivä", - "days": "{0} päivää", - "day_short": "{0}pv", - "days_short": "{0}pv", - "hour": "{0} tunti", - "hours": "{0} tuntia", - "hour_short": "{0}t", - "hours_short": "{0}t", - "in_future": "{0} tulevaisuudessa", - "in_past": "{0} sitten", - "minute": "{0} minuutti", - "minutes": "{0} minuuttia", - "minute_short": "{0}min", - "minutes_short": "{0}min", - "month": "{0} kuukausi", - "months": "{0} kuukautta", - "month_short": "{0}kk", - "months_short": "{0}kk", - "now": "nyt", - "now_short": "juuri nyt", - "second": "{0} sekunti", - "seconds": "{0} sekuntia", - "second_short": "{0}s", - "seconds_short": "{0}s", - "week": "{0} viikko", - "weeks": "{0} viikkoa", - "week_short": "{0}vk", - "weeks_short": "{0}vk", - "year": "{0} vuosi", - "years": "{0} vuotta", - "year_short": "{0}v", - "years_short": "{0}v" - }, - "timeline": { - "collapse": "Sulje", - "conversation": "Keskustelu", - "error_fetching": "Virhe ladatessa viestejä", - "load_older": "Lataa vanhempia viestejä", - "no_retweet_hint": "Viesti ei ole julkinen, eikä sitä voi toistaa", - "repeated": "toisti", - "show_new": "Näytä uudet", - "up_to_date": "Ajantasalla", - "no_more_statuses": "Ei enempää viestejä" - }, - "status": { - "favorites": "Tykkäykset", - "repeats": "Toistot", - "delete": "Poista", - "pin": "Kiinnitä profiiliisi", - "unpin": "Poista kiinnitys", - "pinned": "Kiinnitetty", - "delete_confirm": "Haluatko varmasti postaa viestin?", - "reply_to": "Vastaus", - "replies_list": "Vastaukset:", - "mute_conversation": "Hiljennä keskustelu", - "unmute_conversation": "Poista hiljennys", - "status_unavailable": "Viesti ei saatavissa" - }, - "user_card": { - "approve": "Hyväksy", - "block": "Estä", - "blocked": "Estetty!", - "deny": "Älä hyväksy", - "follow": "Seuraa", - "follow_sent": "Pyyntö lähetetty!", - "follow_progress": "Pyydetään...", - "follow_again": "Lähetä pyyntö uudestaan", - "follow_unfollow": "Älä seuraa", - "followees": "Seuraa", - "followers": "Seuraajat", - "following": "Seuraat!", - "follows_you": "Seuraa sinua!", - "its_you": "Sinun tili!", - "mute": "Hiljennä", - "muted": "Hiljennetty", - "per_day": "päivässä", - "remote_follow": "Seuraa muualta", - "statuses": "Viestit" - }, - "user_profile": { - "timeline_title": "Käyttäjän aikajana" - }, - "who_to_follow": { - "more": "Lisää", - "who_to_follow": "Seurausehdotukset" - }, - "tool_tip": { - "media_upload": "Lataa tiedosto", - "repeat": "Toista", - "reply": "Vastaa", - "favorite": "Tykkää", - "user_settings": "Käyttäjäasetukset" - }, - "upload":{ - "error": { - "base": "Lataus epäonnistui.", - "file_too_big": "Tiedosto liian suuri [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "Yritä uudestaan myöhemmin" + "features_panel": { + "chat": "Chat", + "gopher": "Gopher", + "media_proxy": "Media-välityspalvelin", + "scope_options": "Näkyvyyden rajaus", + "text_limit": "Tekstin pituusraja", + "title": "Ominaisuudet", + "who_to_follow": "Seurausehdotukset" }, - "file_size_units": { - "B": "tavua", - "KiB": "kt", - "MiB": "Mt", - "GiB": "Gt", - "TiB": "Tt" + "finder": { + "error_fetching_user": "Virhe hakiessa käyttäjää", + "find_user": "Hae käyttäjä" + }, + "general": { + "apply": "Aseta", + "submit": "Lähetä", + "more": "Lisää", + "generic_error": "Virhe tapahtui", + "optional": "valinnainen", + "show_more": "Näytä lisää", + "show_less": "Näytä vähemmän", + "dismiss": "Sulje", + "cancel": "Peruuta", + "disable": "Poista käytöstä", + "confirm": "Hyväksy", + "verify": "Varmenna", + "enable": "Ota käyttöön" + }, + "login": { + "login": "Kirjaudu sisään", + "description": "Kirjaudu sisään OAuthilla", + "logout": "Kirjaudu ulos", + "password": "Salasana", + "placeholder": "esim. Seppo", + "register": "Rekisteröidy", + "username": "Käyttäjänimi", + "hint": "Kirjaudu sisään liittyäksesi keskusteluun", + "authentication_code": "Todennuskoodi", + "enter_recovery_code": "Syötä palautuskoodi", + "recovery_code": "Palautuskoodi", + "heading": { + "totp": "Monivaihetodennus", + "recovery": "Monivaihepalautus" + }, + "enter_two_factor_code": "Syötä monivaihetodennuskoodi" + }, + "nav": { + "about": "Tietoja", + "back": "Takaisin", + "chat": "Paikallinen Chat", + "friend_requests": "Seurauspyynnöt", + "mentions": "Maininnat", + "interactions": "Interaktiot", + "dms": "Yksityisviestit", + "public_tl": "Julkinen Aikajana", + "timeline": "Aikajana", + "twkn": "Koko Tunnettu Verkosto", + "user_search": "Käyttäjähaku", + "who_to_follow": "Seurausehdotukset", + "preferences": "Asetukset", + "administration": "Ylläpito", + "search": "Haku" + }, + "notifications": { + "broken_favorite": "Viestiä ei löydetty...", + "favorited_you": "tykkäsi viestistäsi", + "followed_you": "seuraa sinua", + "load_older": "Lataa vanhempia ilmoituksia", + "notifications": "Ilmoitukset", + "read": "Lue!", + "repeated_you": "toisti viestisi", + "no_more_notifications": "Ei enempää ilmoituksia", + "reacted_with": "lisäsi reaktion {0}", + "migrated_to": "siirtyi sivulle", + "follow_request": "haluaa seurata sinua" + }, + "polls": { + "add_poll": "Lisää äänestys", + "add_option": "Lisää vaihtoehto", + "option": "Vaihtoehto", + "votes": "ääntä", + "vote": "Äänestä", + "type": "Äänestyksen tyyppi", + "single_choice": "Yksi valinta", + "multiple_choices": "Monivalinta", + "expiry": "Äänestyksen kesto", + "expires_in": "Päättyy {0} päästä", + "expired": "Päättyi {0} sitten", + "not_enough_option": "Liian vähän uniikkeja vaihtoehtoja äänestyksessä", + "not_enough_options": "Liian vähän ainutkertaisia vaihtoehtoja" + }, + "interactions": { + "favs_repeats": "Toistot ja tykkäykset", + "follows": "Uudet seuraukset", + "load_older": "Lataa vanhempia interaktioita", + "moves": "Käyttäjien siirtymiset" + }, + "post_status": { + "new_status": "Uusi viesti", + "account_not_locked_warning": "Tilisi ei ole {0}. Kuka vain voi seurata sinua nähdäksesi 'vain-seuraajille' -viestisi", + "account_not_locked_warning_link": "lukittu", + "attachments_sensitive": "Merkkaa liitteet arkaluonteisiksi", + "content_type": { + "text/plain": "Tavallinen teksti", + "text/html": "HTML", + "text/markdown": "Markdown", + "text/bbcode": "BBCode" + }, + "content_warning": "Aihe (valinnainen)", + "default": "Tulin juuri saunasta.", + "direct_warning": "Tämä viesti näkyy vain mainituille käyttäjille.", + "posting": "Lähetetään", + "scope": { + "direct": "Yksityisviesti - Näkyy vain mainituille käyttäjille", + "private": "Vain-seuraajille - Näkyy vain seuraajillesi", + "public": "Julkinen - Näkyy julkisilla aikajanoilla", + "unlisted": "Listaamaton - Ei näy julkisilla aikajanoilla" + }, + "direct_warning_to_all": "Tämä viesti näkyy vain viestissä mainituille käyttäjille.", + "direct_warning_to_first_only": "Tämä viesti näkyy vain viestin alussa mainituille käyttäjille.", + "scope_notice": { + "public": "Tämä viesti näkyy kaikille", + "private": "Tämä viesti näkyy vain sinun seuraajillesi", + "unlisted": "Tämä viesti ei näy Julkisella Aikajanalla tai Koko Tunnettu Verkosto -aikajanalla" + } + }, + "registration": { + "bio": "Kuvaus", + "email": "Sähköposti", + "fullname": "Koko nimi", + "password_confirm": "Salasanan vahvistaminen", + "registration": "Rekisteröityminen", + "token": "Kutsuvaltuus", + "captcha": "Varmenne", + "new_captcha": "Paina kuvaa saadaksesi uuden varmenteen", + "validations": { + "username_required": "ei voi olla tyhjä", + "fullname_required": "ei voi olla tyhjä", + "email_required": "ei voi olla tyhjä", + "password_required": "ei voi olla tyhjä", + "password_confirmation_required": "ei voi olla tyhjä", + "password_confirmation_match": "pitää vastata salasanaa" + }, + "username_placeholder": "esim. peke", + "fullname_placeholder": "esim. Pekka Postaaja", + "bio_placeholder": "esim.\nHei, olen Pekka.\nOlen esimerkkikäyttäjä tässä verkostossa." + }, + "settings": { + "attachmentRadius": "Liitteet", + "attachments": "Liitteet", + "autoload": "Lataa vanhempia viestejä automaattisesti ruudun pohjalla", + "avatar": "Profiilikuva", + "avatarAltRadius": "Profiilikuvat (ilmoitukset)", + "avatarRadius": "Profiilikuvat", + "background": "Tausta", + "bio": "Kuvaus", + "btnRadius": "Napit", + "cBlue": "Sininen (Vastaukset, seuraukset)", + "cGreen": "Vihreä (Toistot)", + "cOrange": "Oranssi (Tykkäykset)", + "cRed": "Punainen (Peruminen)", + "change_password": "Vaihda salasana", + "change_password_error": "Virhe vaihtaessa salasanaa.", + "changed_password": "Salasana vaihdettu!", + "collapse_subject": "Minimoi viestit, joille on asetettu aihe", + "composing": "Viestien laatiminen", + "confirm_new_password": "Vahvista uusi salasana", + "current_avatar": "Nykyinen profiilikuvasi", + "current_password": "Nykyinen salasana", + "current_profile_banner": "Nykyinen julisteesi", + "data_import_export_tab": "Tietojen tuonti / vienti", + "default_vis": "Oletusnäkyvyysrajaus", + "delete_account": "Poista tili", + "delete_account_description": "Poista tilisi ja viestisi pysyvästi.", + "delete_account_error": "Virhe poistaessa tiliäsi. Jos virhe jatkuu, ota yhteyttä palvelimesi ylläpitoon.", + "delete_account_instructions": "Syötä salasanasi vahvistaaksesi tilin poiston.", + "emoji_reactions_on_timeline": "Näytä emojireaktiot aikajanalla", + "export_theme": "Tallenna teema", + "filtering": "Suodatus", + "filtering_explanation": "Kaikki viestit, jotka sisältävät näitä sanoja, suodatetaan. Yksi sana per rivi.", + "follow_export": "Seurausten vienti", + "follow_export_button": "Vie seurauksesi CSV-tiedostoon", + "follow_export_processing": "Käsitellään, sinua pyydetään lataamaan tiedosto hetken päästä", + "follow_import": "Seurausten tuonti", + "follow_import_error": "Virhe tuodessa seuraksia", + "follows_imported": "Seuraukset tuotu! Niiden käsittely vie hetken.", + "foreground": "Etuala", + "general": "Yleinen", + "hide_attachments_in_convo": "Piilota liitteet keskusteluissa", + "hide_attachments_in_tl": "Piilota liitteet aikajanalla", + "max_thumbnails": "Suurin sallittu määrä liitteitä esikatselussa", + "hide_isp": "Piilota palvelimenkohtainen ruutu", + "preload_images": "Esilataa kuvat", + "use_one_click_nsfw": "Avaa NSFW-liitteet yhdellä painalluksella", + "hide_post_stats": "Piilota viestien statistiikka (esim. tykkäysten määrä)", + "hide_user_stats": "Piilota käyttäjien statistiikka (esim. seuraajien määrä)", + "import_followers_from_a_csv_file": "Tuo seuraukset CSV-tiedostosta", + "import_theme": "Tuo tallennettu teema", + "inputRadius": "Syöttökentät", + "checkboxRadius": "Valintalaatikot", + "instance_default": "(oletus: {value})", + "instance_default_simple": "(oletus)", + "interface": "Käyttöliittymä", + "interfaceLanguage": "Käyttöliittymän kieli", + "invalid_theme_imported": "Tuotu tallennettu teema on epäkelpo, muutoksia ei tehty nykyiseen teemaasi.", + "limited_availability": "Ei saatavilla selaimessasi", + "links": "Linkit", + "lock_account_description": "Vain erikseen hyväksytyt käyttäjät voivat seurata tiliäsi", + "loop_video": "Uudelleentoista videot", + "loop_video_silent_only": "Uudelleentoista ainoastaan äänettömät videot (Video-\"giffit\")", + "play_videos_in_modal": "Toista videot modaalissa", + "use_contain_fit": "Älä rajaa liitteitä esikatselussa", + "name": "Nimi", + "name_bio": "Nimi ja kuvaus", + "new_password": "Uusi salasana", + "notification_visibility": "Ilmoitusten näkyvyys", + "notification_visibility_follows": "Seuraukset", + "notification_visibility_likes": "Tykkäykset", + "notification_visibility_mentions": "Maininnat", + "notification_visibility_repeats": "Toistot", + "notification_visibility_emoji_reactions": "Reaktiot", + "no_rich_text_description": "Älä näytä tekstin muotoilua", + "hide_network_description": "Älä näytä seurauksiani tai seuraajiani", + "nsfw_clickthrough": "Piilota NSFW liitteet klikkauksen taakse", + "oauth_tokens": "OAuth-merkit", + "token": "Token", + "refresh_token": "Päivitä token", + "valid_until": "Voimassa asti", + "revoke_token": "Peruuta", + "panelRadius": "Ruudut", + "pause_on_unfocused": "Pysäytä automaattinen viestien näyttö välilehden ollessa pois fokuksesta", + "presets": "Valmiit teemat", + "profile_background": "Taustakuva", + "profile_banner": "Juliste", + "profile_tab": "Profiili", + "radii_help": "Aseta reunojen pyöristys (pikseleinä)", + "replies_in_timeline": "Keskustelut aikajanalla", + "reply_link_preview": "Keskusteluiden vastauslinkkien esikatselu", + "reply_visibility_all": "Näytä kaikki vastaukset", + "reply_visibility_following": "Näytä vain vastaukset minulle tai seuraamilleni käyttäjille", + "reply_visibility_self": "Näytä vain vastaukset minulle", + "saving_err": "Virhe tallentaessa asetuksia", + "saving_ok": "Asetukset tallennettu", + "security_tab": "Tietoturva", + "scope_copy": "Kopioi näkyvyysrajaus vastatessa (Yksityisviestit aina kopioivat)", + "set_new_avatar": "Aseta uusi profiilikuva", + "set_new_profile_background": "Aseta uusi taustakuva", + "set_new_profile_banner": "Aseta uusi juliste", + "settings": "Asetukset", + "subject_input_always_show": "Näytä aihe-kenttä", + "subject_line_behavior": "Aihe-kentän kopiointi", + "subject_line_email": "Kuten sähköposti: \"re: aihe\"", + "subject_line_mastodon": "Kopioi sellaisenaan", + "subject_line_noop": "Älä kopioi", + "stop_gifs": "Toista giffit vain kohdistaessa", + "streaming": "Näytä uudet viestit automaattisesti ollessasi ruudun huipulla", + "text": "Teksti", + "theme": "Teema", + "theme_help": "Käytä heksadesimaalivärejä muokataksesi väriteemaasi.", + "theme_help_v2_1": "Voit asettaa tiettyjen osien värin tai läpinäkyvyyden täyttämällä valintalaatikon, käytä \"Tyhjennä kaikki\"-nappia tyhjentääksesi kaiken.", + "theme_help_v2_2": "Ikonit kenttien alla ovat kontrasti-indikaattoreita, lisätietoa kohdistamalla. Käyttäessä läpinäkyvyyttä ne näyttävät pahimman skenaarion.", + "tooltipRadius": "Ohje- tai huomioviestit", + "user_settings": "Käyttäjän asetukset", + "values": { + "false": "pois päältä", + "true": "päällä" + }, + "hide_follows_description": "Älä näytä ketä seuraan", + "show_moderator_badge": "Näytä Moderaattori-merkki profiilissani", + "useStreamingApi": "Vastaanota viestiejä ja ilmoituksia reaaliajassa", + "notification_setting_filters": "Suodattimet", + "notification_setting": "Vastaanota ilmoituksia seuraavista:", + "notification_setting_privacy_option": "Piilota lähettäjä ja sisältö sovelluksen ulkopuolisista ilmoituksista", + "enable_web_push_notifications": "Ota käyttöön sovelluksen ulkopuoliset ilmoitukset", + "app_name": "Sovelluksen nimi", + "security": "Turvallisuus", + "mfa": { + "otp": "OTP", + "setup_otp": "OTP-asetukset", + "wait_pre_setup_otp": "esiasetetaan OTP:ta", + "confirm_and_enable": "Hyväksy ja käytä OTP", + "title": "Monivaihetodennus", + "generate_new_recovery_codes": "Luo uudet palautuskoodit", + "authentication_methods": "Todennus", + "warning_of_generate_new_codes": "Luodessasi uudet palautuskoodit, vanhat koodisi lakkaavat toimimasta.", + "recovery_codes": "Palautuskoodit.", + "waiting_a_recovery_codes": "Odotetaan palautuskoodeja...", + "recovery_codes_warning": "Kirjoita koodit ylös tai tallenna ne turvallisesti, muuten et näe niitä uudestaan. Jos et voi käyttää monivaihetodennusta ja sinulla ei ole palautuskoodeja, et voi enää kirjautua sisään tilillesi." + }, + "allow_following_move": "Salli automaattinen seuraaminen kun käyttäjä siirtää tilinsä", + "block_export": "Estojen vienti", + "block_export_button": "Vie estosi CSV-tiedostoon", + "block_import": "Estojen tuonti", + "block_import_error": "Virhe tuodessa estoja", + "blocks_imported": "Estot tuotu! Käsittely vie hetken.", + "blocks_tab": "Estot", + "change_email": "Vaihda sähköpostiosoite", + "change_email_error": "Virhe vaihtaessa sähköpostiosoitetta.", + "changed_email": "Sähköpostiosoite vaihdettu!", + "domain_mutes": "Sivut", + "avatar_size_instruction": "Suositeltu vähimmäiskoko profiilikuville on 150x150 pikseliä.", + "accent": "Korostus", + "hide_muted_posts": "Piilota mykistettyjen käyttäjien viestit", + "hide_filtered_statuses": "Piilota mykistetyt viestit", + "import_blocks_from_a_csv_file": "Tuo estot CSV-tiedostosta", + "no_blocks": "Ei estoja", + "no_mutes": "Ei mykistyksiä", + "notification_visibility_moves": "Käyttäjien siirtymiset", + "hide_followers_description": "Älä näytä ketkä seuraavat minua", + "hide_follows_count_description": "Älä näytä seurauksien määrää", + "hide_followers_count_description": "Älä näytä seuraajien määrää", + "show_admin_badge": "Näytä Ylläpitäjä-merkki proofilissani", + "autohide_floating_post_button": "Piilota Uusi Viesti -nappi automaattisesti (mobiili)", + "search_user_to_block": "Hae estettäviä käyttäjiä", + "search_user_to_mute": "Hae mykistettäviä käyttäjiä", + "minimal_scopes_mode": "Yksinkertaista näkyvyydenrajauksen vaihtoehdot", + "post_status_content_type": "Uuden viestin sisällön muoto", + "user_mutes": "Käyttäjät", + "useStreamingApiWarning": "(Kokeellinen)", + "type_domains_to_mute": "Syötä mykistettäviä sivustoja", + "upload_a_photo": "Lataa kuva", + "fun": "Hupi", + "greentext": "Meeminuolet", + "notifications": "Ilmoitukset", + "style": { + "switcher": { + "save_load_hint": "\"Säilytä\" asetukset säilyttävät tällä hetkellä asetetut asetukset valittaessa tai ladatessa teemaa, se myös tallentaa kyseiset asetukset viedessä teemaa. Kun kaikki laatikot ovat tyhjänä, viety teema tallentaa kaiken.", + "help": { + "older_version_imported": "Tuomasi tiedosto on luotu vanhemmalla versiolla.", + "fe_upgraded": "PleromaFE:n teemaus päivitetty versiopäivityksen yhteydessä.", + "migration_snapshot_ok": "Varmuuden vuoksi teeman kaappaus ladattu. Voit koittaa ladata teeman sisällön.", + "migration_napshot_gone": "Jostain syystä teeman kaappaus puuttuu, kaikki asiat eivät välttämättä näytä oikealta.", + "snapshot_source_mismatch": "Versiot eivät täsmää: todennäköisesti versio vaihdettu vanhempaan ja päivitetty uudestaan, jos vaihdoit teemaa vanhalla versiolla, sinun tulisi käyttää vanhaa versiota, muutoin uutta.", + "upgraded_from_v2": "PleromaFE on päivitetty, teemasi saattaa näyttää erilaiselta kuin muistat.", + "v2_imported": "Tuomasi tiedosto on luotu vanhemmalla versiolla. Yhteensopivuus ei välttämättä ole täydellinen.", + "future_version_imported": "Tuomasi tiedosto on luotu uudemmalla versiolla.", + "snapshot_present": "Teeman kaappaus ladattu, joten kaikki arvot ovat ylikirjoitettu. Voit sen sijaan ladata teeman sisällön.", + "snapshot_missing": "Teeman kaappausta ei tiedostossa, joten se voi näyttää erilaiselta kuin suunniteltu.", + "fe_downgraded": "PleromaFE:n versio vaihtunut vanhempaan." + }, + "keep_color": "Säilytä värit", + "keep_shadows": "Säilytä varjot", + "keep_opacity": "Säilytä läpinäkyvyys", + "keep_roundness": "Säilytä pyöristys", + "keep_fonts": "Säilytä fontit", + "reset": "Palauta", + "clear_all": "Tyhjennä kaikki", + "clear_opacity": "Tyhjennä läpinäkyvyys", + "load_theme": "Lataa teema", + "keep_as_is": "Pidä sellaisenaan", + "use_snapshot": "Vanha", + "use_source": "Uusi" + }, + "advanced_colors": { + "selectedPost": "Valittu viesti", + "_tab_label": "Edistynyt", + "alert": "Varoituksen tausta", + "alert_error": "Virhe", + "alert_warning": "Varoitus", + "alert_neutral": "Neutraali", + "post": "Viestit/Käyttäjien kuvaukset", + "badge": "Merkin tausta", + "badge_notification": "Ilmoitus", + "panel_header": "Ruudun otsikko", + "top_bar": "Yläpalkki", + "borders": "Reunat", + "buttons": "Napit", + "inputs": "Syöttökentät", + "faint_text": "Häivytetty teksti", + "underlay": "Taustapeite", + "poll": "Äänestyksen kuvaaja", + "icons": "Ikonit", + "highlight": "Korostetut elementit", + "pressed": "Painettu" + }, + "common": { + "color": "Väri", + "opacity": "Läpinäkyvyys", + "contrast": { + "level": { + "aaa": "saavuttaa AAA-tason (suositeltu)", + "aa": "saavuttaa AA-tason (minimi)", + "bad": "ei saavuta mitään helppokäyttöisyyssuosituksia" + }, + "hint": "Kontrastisuhde on {ratio}, se {level} {context}", + "context": { + "18pt": "suurella (18pt+) tekstillä", + "text": "tekstillä" + } + } + }, + "common_colors": { + "_tab_label": "Yleinen", + "main": "Yleiset värit", + "foreground_hint": "Löydät \"Edistynyt\"-välilehdeltä tarkemmat asetukset", + "rgbo": "Ikonit, korostukset, merkit" + } + }, + "enter_current_password_to_confirm": "Syötä nykyinen salasanasi todentaaksesi henkilöllisyytesi", + "discoverable": "Salli tilisi näkyvyys hakukoneisiin ja muihin palveluihin", + "pad_emoji": "Välistä emojit välilyönneillä lisätessäsi niitä valitsimesta", + "mutes_tab": "Mykistykset", + "new_email": "Uusi sähköpostiosoite", + "notification_setting_follows": "Käyttäjät joita seuraat", + "notification_setting_non_follows": "Käyttäjät joita et seuraa", + "notification_setting_followers": "Käyttäjät jotka seuraavat sinua", + "notification_setting_non_followers": "Käyttäjät jotka eivät seuraa sinua", + "notification_setting_privacy": "Yksityisyys", + "notification_mutes": "Jos et halua ilmoituksia joltain käyttäjältä, käytä mykistystä.", + "notification_blocks": "Estäminen pysäyttää kaikki ilmoitukset käyttäjältä ja poistaa seurauksen." + }, + "time": { + "day": "{0} päivä", + "days": "{0} päivää", + "day_short": "{0}pv", + "days_short": "{0}pv", + "hour": "{0} tunti", + "hours": "{0} tuntia", + "hour_short": "{0}t", + "hours_short": "{0}t", + "in_future": "{0} tulevaisuudessa", + "in_past": "{0} sitten", + "minute": "{0} minuutti", + "minutes": "{0} minuuttia", + "minute_short": "{0}min", + "minutes_short": "{0}min", + "month": "{0} kuukausi", + "months": "{0} kuukautta", + "month_short": "{0}kk", + "months_short": "{0}kk", + "now": "nyt", + "now_short": "juuri nyt", + "second": "{0} sekunti", + "seconds": "{0} sekuntia", + "second_short": "{0}s", + "seconds_short": "{0}s", + "week": "{0} viikko", + "weeks": "{0} viikkoa", + "week_short": "{0}vk", + "weeks_short": "{0}vk", + "year": "{0} vuosi", + "years": "{0} vuotta", + "year_short": "{0}v", + "years_short": "{0}v" + }, + "timeline": { + "collapse": "Sulje", + "conversation": "Keskustelu", + "error_fetching": "Virhe ladatessa viestejä", + "load_older": "Lataa vanhempia viestejä", + "no_retweet_hint": "Viesti ei ole julkinen, eikä sitä voi toistaa", + "repeated": "toisti", + "show_new": "Näytä uudet", + "up_to_date": "Ajantasalla", + "no_more_statuses": "Ei enempää viestejä" + }, + "status": { + "favorites": "Tykkäykset", + "repeats": "Toistot", + "delete": "Poista", + "pin": "Kiinnitä profiiliisi", + "unpin": "Poista kiinnitys", + "pinned": "Kiinnitetty", + "delete_confirm": "Haluatko varmasti postaa viestin?", + "reply_to": "Vastaus", + "replies_list": "Vastaukset:", + "mute_conversation": "Hiljennä keskustelu", + "unmute_conversation": "Poista hiljennys", + "status_unavailable": "Viesti ei saatavissa" + }, + "user_card": { + "approve": "Hyväksy", + "block": "Estä", + "blocked": "Estetty!", + "deny": "Älä hyväksy", + "follow": "Seuraa", + "follow_sent": "Pyyntö lähetetty!", + "follow_progress": "Pyydetään...", + "follow_again": "Lähetä pyyntö uudestaan", + "follow_unfollow": "Älä seuraa", + "followees": "Seuraa", + "followers": "Seuraajat", + "following": "Seuraat!", + "follows_you": "Seuraa sinua!", + "its_you": "Sinun tili!", + "mute": "Hiljennä", + "muted": "Hiljennetty", + "per_day": "päivässä", + "remote_follow": "Seuraa muualta", + "statuses": "Viestit" + }, + "user_profile": { + "timeline_title": "Käyttäjän aikajana" + }, + "who_to_follow": { + "more": "Lisää", + "who_to_follow": "Seurausehdotukset" + }, + "tool_tip": { + "media_upload": "Lataa tiedosto", + "repeat": "Toista", + "reply": "Vastaa", + "favorite": "Tykkää", + "user_settings": "Käyttäjäasetukset" + }, + "upload": { + "error": { + "base": "Lataus epäonnistui.", + "file_too_big": "Tiedosto liian suuri [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", + "default": "Yritä uudestaan myöhemmin" + }, + "file_size_units": { + "B": "tavua", + "KiB": "kt", + "MiB": "Mt", + "GiB": "Gt", + "TiB": "Tt" + } + }, + "about": { + "mrf": { + "keyword": { + "keyword_policies": "Avainsanasäännöt", + "ftl_removal": "Poistettu \"Koko Tunnettu Verkosto\" -aikajanalta", + "reject": "Hylkää", + "replace": "Korvaa", + "is_replaced_by": "→" + }, + "simple": { + "accept": "Hyväksy", + "reject": "Hylkää", + "quarantine": "Karanteeni", + "ftl_removal": "Poisto \"Koko Tunnettu Verkosto\" -aikajanalta", + "media_removal": "Media-tiedostojen poisto" + }, + "federation": "Federaatio", + "mrf_policies": "Aktivoidut MRF-säännöt" + }, + "staff": "Henkilökunta" + }, + "domain_mute_card": { + "mute": "Mykistä", + "unmute": "Poista mykistys", + "mute_progress": "Mykistetään...", + "unmute_progress": "Poistetaan mykistyst..." + }, + "exporter": { + "export": "Vie", + "processing": "Käsitellään, hetken päästä voit tallentaa tiedoston" + }, + "image_cropper": { + "crop_picture": "Rajaa kuva", + "save": "Tallenna", + "save_without_cropping": "Tallenna rajaamatta", + "cancel": "Peruuta" + }, + "importer": { + "submit": "Hyväksy", + "error": "Virhe tapahtui tietoja tuodessa.", + "success": "Tuonti onnistui." + }, + "media_modal": { + "previous": "Edellinen", + "next": "Seuraava" + }, + "emoji": { + "stickers": "Tarrat", + "emoji": "Emoji", + "keep_open": "Pidä valitsin auki", + "search_emoji": "Hae emojia", + "add_emoji": "Lisää emoji", + "custom": "Custom-emoji", + "load_all": "Ladataan kaikkia {emojiAmount} emojia", + "unicode": "Unicode-emoji", + "load_all_hint": "Ensimmäiset {saneAmount} emojia ladattu, kaikkien emojien lataaminen voi aiheuttaa hidastelua." + }, + "remote_user_resolver": { + "remote_user_resolver": "Ulkopuolinen käyttäjä", + "searching_for": "Etsitään käyttäjää", + "error": "Ei löytynyt." + }, + "selectable_list": { + "select_all": "Valitse kaikki" } - } } From a26731de300209ab3aa6a1e61fe6415f6facca94 Mon Sep 17 00:00:00 2001 From: Toro Mino <mail@dennisbuchholz.net> Date: Wed, 13 May 2020 17:16:29 +0000 Subject: [PATCH 35/95] Translated using Weblate (German) Currently translated at 66.7% (409 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 913 ++++++++++++++++++++++++++--------------------- 1 file changed, 508 insertions(+), 405 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index a4b4c16f..4037b4b3 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -1,413 +1,516 @@ { - "chat": { - "title": "Chat" - }, - "features_panel": { - "chat": "Chat", - "gopher": "Gopher", - "media_proxy": "Medienproxy", - "scope_options": "Reichweitenoptionen", - "text_limit": "Textlimit", - "title": "Features", - "who_to_follow": "Wem folgen?" - }, - "finder": { - "error_fetching_user": "Fehler beim Suchen des Benutzers", - "find_user": "Finde Benutzer" - }, - "general": { - "apply": "Anwenden", - "submit": "Absenden" - }, - "login": { - "login": "Anmelden", - "description": "Mit OAuth anmelden", - "logout": "Abmelden", - "password": "Passwort", - "placeholder": "z.B. lain", - "register": "Registrieren", - "username": "Benutzername" - }, - "nav": { - "about": "Über", - "back": "Zurück", - "chat": "Lokaler Chat", - "friend_requests": "Followanfragen", - "mentions": "Erwähnungen", - "interactions": "Interaktionen", - "dms": "Direktnachrichten", - "public_tl": "Öffentliche Zeitleiste", - "timeline": "Zeitleiste", - "twkn": "Das gesamte bekannte Netzwerk", - "user_search": "Benutzersuche", - "search": "Suche", - "preferences": "Voreinstellungen" - }, - "notifications": { - "broken_favorite": "Unbekannte Nachricht, suche danach...", - "favorited_you": "favorisierte deine Nachricht", - "followed_you": "folgt dir", - "load_older": "Ältere Benachrichtigungen laden", - "notifications": "Benachrichtigungen", - "read": "Gelesen!", - "repeated_you": "wiederholte deine Nachricht" - }, - "post_status": { - "new_status": "Neuen Status veröffentlichen", - "account_not_locked_warning": "Dein Profil ist nicht {0}. Wer dir folgen will, kann das jederzeit tun und dann auch deine privaten Beiträge sehen.", - "account_not_locked_warning_link": "gesperrt", - "attachments_sensitive": "Anhänge als heikel markieren", - "content_type": { - "text/plain": "Nur Text" + "chat": { + "title": "Chat" }, - "content_warning": "Betreff (optional)", - "default": "Sitze gerade im Hofbräuhaus.", - "direct_warning": "Dieser Beitrag wird nur für die erwähnten Nutzer sichtbar sein.", - "posting": "Veröffentlichen", - "scope": { - "direct": "Direkt - Beitrag nur an erwähnte Profile", - "private": "Nur Follower - Beitrag nur für Follower sichtbar", - "public": "Öffentlich - Beitrag an öffentliche Zeitleisten", - "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" - } - }, - "registration": { - "bio": "Bio", - "email": "Email", - "fullname": "Angezeigter Name", - "password_confirm": "Passwort bestätigen", - "registration": "Registrierung", - "token": "Einladungsschlüssel", - "captcha": "CAPTCHA", - "new_captcha": "Zum Erstellen eines neuen Captcha auf das Bild klicken.", - "validations": { - "username_required": "darf nicht leer sein", - "fullname_required": "darf nicht leer sein", - "email_required": "darf nicht leer sein", - "password_required": "darf nicht leer sein", - "password_confirmation_required": "darf nicht leer sein", - "password_confirmation_match": "sollte mit dem Passwort identisch sein." - } - }, - "settings": { - "attachmentRadius": "Anhänge", - "attachments": "Anhänge", - "autoload": "Aktiviere automatisches Laden von älteren Beiträgen beim scrollen", - "avatar": "Avatar", - "avatarAltRadius": "Avatare (Benachrichtigungen)", - "avatarRadius": "Avatare", - "background": "Hintergrund", - "bio": "Bio", - "btnRadius": "Buttons", - "cBlue": "Blau (Antworten, Folgt dir)", - "cGreen": "Grün (Retweet)", - "cOrange": "Orange (Favorisieren)", - "cRed": "Rot (Abbrechen)", - "change_password": "Passwort ändern", - "change_password_error": "Es gab ein Problem bei der Änderung des Passworts.", - "changed_password": "Passwort erfolgreich geändert!", - "collapse_subject": "Beiträge mit Betreff einklappen", - "composing": "Verfassen", - "confirm_new_password": "Neues Passwort bestätigen", - "current_avatar": "Dein derzeitiger Avatar", - "current_password": "Aktuelles Passwort", - "current_profile_banner": "Der derzeitige Banner deines Profils", - "data_import_export_tab": "Datenimport/-export", - "default_vis": "Standard-Sichtbarkeitsumfang", - "delete_account": "Account löschen", - "delete_account_description": "Lösche deinen Account und alle deine Nachrichten unwiderruflich.", - "delete_account_error": "Es ist ein Fehler beim Löschen deines Accounts aufgetreten. Tritt dies weiterhin auf, wende dich an den Administrator der Instanz.", - "delete_account_instructions": "Tippe dein Passwort unten in das Feld ein, um die Löschung deines Accounts zu bestätigen.", - "discoverable": "Erlaubnis für automatisches Suchen nach diesem Account", - "avatar_size_instruction": "Die empfohlene minimale Größe für Avatare ist 150x150 Pixel.", - "pad_emoji": "Emojis mit Leerzeichen umrahmen", - "export_theme": "Farbschema speichern", - "filtering": "Filtern", - "filtering_explanation": "Alle Beiträge die diese Wörter enthalten werden ausgeblendet. Ein Wort pro Zeile.", - "follow_export": "Follower exportieren", - "follow_export_button": "Exportiere deine Follows in eine csv-Datei", - "follow_export_processing": "In Bearbeitung. Die Liste steht gleich zum herunterladen bereit.", - "follow_import": "Followers importieren", - "follow_import_error": "Fehler beim importieren der Follower", - "follows_imported": "Followers importiert! Die Bearbeitung kann eine Zeit lang dauern.", - "foreground": "Vordergrund", - "general": "Allgemein", - "hide_attachments_in_convo": "Anhänge in Unterhaltungen ausblenden", - "hide_attachments_in_tl": "Anhänge in der Zeitleiste ausblenden", - "hide_muted_posts": "Verberge Beiträge stummgeschalteter Nutzer", - "max_thumbnails": "Maximale Anzahl von Vorschaubildern pro Beitrag", - "hide_isp": "Instanz-spezifisches Panel ausblenden", - "preload_images": "Bilder vorausladen", - "use_one_click_nsfw": "Heikle Anhänge mit nur einem Klick öffnen", - "hide_post_stats": "Beitragsstatistiken verbergen (z.B. die Anzahl der Favoriten)", - "hide_user_stats": "Benutzerstatistiken verbergen (z.B. die Anzahl der Follower)", - "hide_filtered_statuses": "Gefilterte Beiträge verbergen", - "import_followers_from_a_csv_file": "Importiere Follower, denen du folgen möchtest, aus einer CSV-Datei", - "import_theme": "Farbschema laden", - "inputRadius": "Eingabefelder", - "checkboxRadius": "Auswahlfelder", - "instance_default": "(Standard: {value})", - "instance_default_simple": "(Standard)", - "interface": "Oberfläche", - "interfaceLanguage": "Sprache der Oberfläche", - "invalid_theme_imported": "Die ausgewählte Datei ist kein unterstütztes Pleroma-Theme. Keine Änderungen wurden vorgenommen.", - "limited_availability": "In deinem Browser nicht verfügbar", - "links": "Links", - "lock_account_description": "Sperre deinen Account, um neue Follower zu genehmigen oder abzulehnen", - "loop_video": "Videos wiederholen", - "loop_video_silent_only": "Nur Videos ohne Ton wiederholen (z.B. Mastodons \"gifs\")", - "mutes_tab": "Mutes", - "play_videos_in_modal": "Videos in größerem Medienfenster abspielen", - "use_contain_fit": "Vorschaubilder nicht zuschneiden", - "name": "Name", - "name_bio": "Name & Bio", - "new_password": "Neues Passwort", - "notification_visibility": "Benachrichtigungstypen, die angezeigt werden sollen", - "notification_visibility_follows": "Follows", - "notification_visibility_likes": "Favoriten", - "notification_visibility_mentions": "Erwähnungen", - "notification_visibility_repeats": "Wiederholungen", - "no_rich_text_description": "Rich-Text Formatierungen von allen Beiträgen entfernen", - "hide_follows_description": "Zeige nicht, wem ich folge", - "hide_followers_description": "Zeige nicht, wer mir folgt", - "hide_follows_count_description": "Verberge die Anzahl deiner Gefolgten", - "hide_followers_count_description": "Verberge die Anzahl deiner Folgenden", - "nsfw_clickthrough": "Aktiviere ausblendbares Overlay für Anhänge, die als NSFW markiert sind", - "oauth_tokens": "OAuth-Token", - "token": "Zeichen", - "refresh_token": "Token aktualisieren", - "valid_until": "Gültig bis", - "revoke_token": "Widerrufen", - "panelRadius": "Panel", - "pause_on_unfocused": "Streaming pausieren, wenn das Tab nicht fokussiert ist", - "presets": "Voreinstellungen", - "profile_background": "Profilhintergrund", - "profile_banner": "Profilbanner", - "profile_tab": "Profil", - "radii_help": "Kantenrundung (in Pixel) der Oberfläche anpassen", - "replies_in_timeline": "Antworten in der Zeitleiste", - "reply_link_preview": "Antwortlink-Vorschau beim Überfahren mit der Maus aktivieren", - "reply_visibility_all": "Alle Antworten zeigen", - "reply_visibility_following": "Zeige nur Antworten an mich oder an Benutzer, denen ich folge", - "reply_visibility_self": "Nur Antworten an mich anzeigen", - "autohide_floating_post_button": "Automatisches Verbergen des Knopfs für neue Beiträge (mobil)", - "saving_err": "Fehler beim Speichern der Einstellungen", - "saving_ok": "Einstellungen gespeichert", - "security_tab": "Sicherheit", - "scope_copy": "Reichweite beim Antworten übernehmen (Direktnachrichten werden immer kopiert)", - "minimal_scopes_mode": "Minimiere Reichweitenoptionen", - "set_new_avatar": "Setze einen neuen Avatar", - "set_new_profile_background": "Setze einen neuen Hintergrund für dein Profil", - "set_new_profile_banner": "Setze einen neuen Banner für dein Profil", - "settings": "Einstellungen", - "subject_input_always_show": "Betreff-Feld immer anzeigen", - "subject_line_behavior": "Betreff beim Antworten kopieren", - "subject_line_email": "Wie Email: \"re: Betreff\"", - "subject_line_mastodon": "Wie Mastodon: unverändert kopieren", - "subject_line_noop": "Nicht kopieren", - "post_status_content_type": "Beitragsart", - "stop_gifs": "Animationen nur beim Darüberfahren abspielen", - "streaming": "Aktiviere automatisches Laden (Streaming) von neuen Beiträgen", - "text": "Text", - "theme": "Farbschema", - "theme_help": "Benutze HTML-Farbcodes (#rrggbb) um dein Farbschema anzupassen", - "theme_help_v2_1": "Du kannst auch die Farben und die Deckkraft bestimmter Komponenten überschreiben, indem du das Kontrollkästchen umschaltest. Verwende die Schaltfläche \"Alle löschen\", um alle Überschreibungen zurückzusetzen.", - "theme_help_v2_2": "Unter einigen Einträgen befinden sich Symbole für Hintergrund-/Textkontrastindikatoren, für detaillierte Informationen fahre mit der Maus darüber. Bitte beachte, dass bei der Verwendung von Transparenz Kontrastindikatoren den schlechtest möglichen Fall darstellen.", - "tooltipRadius": "Tooltips/Warnungen", - "user_settings": "Benutzereinstellungen", - "values": { - "false": "nein", - "true": "Ja" + "features_panel": { + "chat": "Chat", + "gopher": "Gopher", + "media_proxy": "Medienproxy", + "scope_options": "Reichweitenoptionen", + "text_limit": "Zeichenlimit", + "title": "Funktionen", + "who_to_follow": "Wem folgen?" }, - "notifications": "Benachrichtigungen", - "enable_web_push_notifications": "Web-Pushbenachrichtigungen aktivieren", + "finder": { + "error_fetching_user": "Fehler beim Suchen des Benutzers", + "find_user": "Finde Benutzer" + }, + "general": { + "apply": "Anwenden", + "submit": "Absenden", + "more": "Mehr", + "generic_error": "Ein Fehler ist aufgetreten", + "optional": "Optional", + "show_more": "Zeige mehr", + "show_less": "Zeige weniger", + "dismiss": "Ablehnen", + "cancel": "Abbrechen", + "disable": "Deaktivieren", + "enable": "Aktivieren", + "confirm": "Bestätigen", + "verify": "Verifizieren" + }, + "login": { + "login": "Anmelden", + "description": "Mit OAuth anmelden", + "logout": "Abmelden", + "password": "Passwort", + "placeholder": "z.B. lain", + "register": "Registrieren", + "username": "Benutzername", + "authentication_code": "Authentifizierungscode", + "enter_recovery_code": "Gebe einen Wiederherstellungscode ein", + "recovery_code": "Wiederherstellungscode", + "heading": { + "totp": "Zwei-Faktor Authentifizierung", + "recovery": "Zwei-Faktor Wiederherstellung" + }, + "hint": "Anmelden um an der Diskussion teilzunehmen", + "enter_two_factor_code": "Gebe einen Zwei-Faktor-Code ein" + }, + "nav": { + "about": "Über", + "back": "Zurück", + "chat": "Lokaler Chat", + "friend_requests": "Followanfragen", + "mentions": "Erwähnungen", + "interactions": "Interaktionen", + "dms": "Direktnachrichten", + "public_tl": "Öffentliche Zeitleiste", + "timeline": "Zeitleiste", + "twkn": "Das gesamte bekannte Netzwerk", + "user_search": "Benutzersuche", + "search": "Suche", + "preferences": "Voreinstellungen", + "administration": "Administration", + "who_to_follow": "Wem folgen" + }, + "notifications": { + "broken_favorite": "Unbekannte Nachricht, suche danach...", + "favorited_you": "favorisierte deine Nachricht", + "followed_you": "folgt dir", + "load_older": "Ältere Benachrichtigungen laden", + "notifications": "Benachrichtigungen", + "read": "Gelesen!", + "repeated_you": "wiederholte deine Nachricht", + "follow_request": "möchte dir folgen", + "migrated_to": "migrierte zu", + "reacted_with": "reagierte mit {0}", + "no_more_notifications": "Keine Benachrichtigungen mehr" + }, + "post_status": { + "new_status": "Neuen Status veröffentlichen", + "account_not_locked_warning": "Dein Profil ist nicht {0}. Wer dir folgen will, kann das jederzeit tun und dann auch deine privaten Beiträge sehen.", + "account_not_locked_warning_link": "gesperrt", + "attachments_sensitive": "Anhänge als heikel markieren", + "content_type": { + "text/plain": "Nur Text" + }, + "content_warning": "Betreff (optional)", + "default": "Sitze gerade im Hofbräuhaus.", + "direct_warning": "Dieser Beitrag wird nur für die erwähnten Nutzer sichtbar sein.", + "posting": "Veröffentlichen", + "scope": { + "direct": "Direkt - Beitrag nur an erwähnte Profile", + "private": "Nur Follower - Beitrag nur für Follower sichtbar", + "public": "Öffentlich - Beitrag an öffentliche Zeitleisten", + "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" + } + }, + "registration": { + "bio": "Bio", + "email": "Email", + "fullname": "Angezeigter Name", + "password_confirm": "Passwort bestätigen", + "registration": "Registrierung", + "token": "Einladungsschlüssel", + "captcha": "CAPTCHA", + "new_captcha": "Zum Erstellen eines neuen Captcha auf das Bild klicken.", + "validations": { + "username_required": "darf nicht leer sein", + "fullname_required": "darf nicht leer sein", + "email_required": "darf nicht leer sein", + "password_required": "darf nicht leer sein", + "password_confirmation_required": "darf nicht leer sein", + "password_confirmation_match": "sollte mit dem Passwort identisch sein." + } + }, + "settings": { + "attachmentRadius": "Anhänge", + "attachments": "Anhänge", + "autoload": "Aktiviere automatisches Laden von älteren Beiträgen beim scrollen", + "avatar": "Avatar", + "avatarAltRadius": "Avatare (Benachrichtigungen)", + "avatarRadius": "Avatare", + "background": "Hintergrund", + "bio": "Bio", + "btnRadius": "Buttons", + "cBlue": "Blau (Antworten, Folgt dir)", + "cGreen": "Grün (Retweet)", + "cOrange": "Orange (Favorisieren)", + "cRed": "Rot (Abbrechen)", + "change_password": "Passwort ändern", + "change_password_error": "Es gab ein Problem bei der Änderung des Passworts.", + "changed_password": "Passwort erfolgreich geändert!", + "collapse_subject": "Beiträge mit Betreff einklappen", + "composing": "Verfassen", + "confirm_new_password": "Neues Passwort bestätigen", + "current_avatar": "Dein derzeitiger Avatar", + "current_password": "Aktuelles Passwort", + "current_profile_banner": "Der derzeitige Banner deines Profils", + "data_import_export_tab": "Datenimport/-export", + "default_vis": "Standard-Sichtbarkeitsumfang", + "delete_account": "Account löschen", + "delete_account_description": "Lösche deinen Account und alle deine Nachrichten unwiderruflich.", + "delete_account_error": "Es ist ein Fehler beim Löschen deines Accounts aufgetreten. Tritt dies weiterhin auf, wende dich an den Administrator der Instanz.", + "delete_account_instructions": "Tippe dein Passwort unten in das Feld ein, um die Löschung deines Accounts zu bestätigen.", + "discoverable": "Erlaubnis für automatisches Suchen nach diesem Account", + "avatar_size_instruction": "Die empfohlene minimale Größe für Avatare ist 150x150 Pixel.", + "pad_emoji": "Emojis mit Leerzeichen umrahmen", + "export_theme": "Farbschema speichern", + "filtering": "Filtern", + "filtering_explanation": "Alle Beiträge die diese Wörter enthalten werden ausgeblendet. Ein Wort pro Zeile.", + "follow_export": "Follower exportieren", + "follow_export_button": "Exportiere deine Follows in eine csv-Datei", + "follow_export_processing": "In Bearbeitung. Die Liste steht gleich zum herunterladen bereit.", + "follow_import": "Followers importieren", + "follow_import_error": "Fehler beim importieren der Follower", + "follows_imported": "Followers importiert! Die Bearbeitung kann eine Zeit lang dauern.", + "foreground": "Vordergrund", + "general": "Allgemein", + "hide_attachments_in_convo": "Anhänge in Unterhaltungen ausblenden", + "hide_attachments_in_tl": "Anhänge in der Zeitleiste ausblenden", + "hide_muted_posts": "Verberge Beiträge stummgeschalteter Nutzer", + "max_thumbnails": "Maximale Anzahl von Vorschaubildern pro Beitrag", + "hide_isp": "Instanz-spezifisches Panel ausblenden", + "preload_images": "Bilder vorausladen", + "use_one_click_nsfw": "Heikle Anhänge mit nur einem Klick öffnen", + "hide_post_stats": "Beitragsstatistiken verbergen (z.B. die Anzahl der Favoriten)", + "hide_user_stats": "Benutzerstatistiken verbergen (z.B. die Anzahl der Follower)", + "hide_filtered_statuses": "Gefilterte Beiträge verbergen", + "import_followers_from_a_csv_file": "Importiere Follower, denen du folgen möchtest, aus einer CSV-Datei", + "import_theme": "Farbschema laden", + "inputRadius": "Eingabefelder", + "checkboxRadius": "Auswahlfelder", + "instance_default": "(Standard: {value})", + "instance_default_simple": "(Standard)", + "interface": "Oberfläche", + "interfaceLanguage": "Sprache der Oberfläche", + "invalid_theme_imported": "Die ausgewählte Datei ist kein unterstütztes Pleroma-Theme. Keine Änderungen wurden vorgenommen.", + "limited_availability": "In deinem Browser nicht verfügbar", + "links": "Links", + "lock_account_description": "Sperre deinen Account, um neue Follower zu genehmigen oder abzulehnen", + "loop_video": "Videos wiederholen", + "loop_video_silent_only": "Nur Videos ohne Ton wiederholen (z.B. Mastodons \"gifs\")", + "mutes_tab": "Mutes", + "play_videos_in_modal": "Videos in größerem Medienfenster abspielen", + "use_contain_fit": "Vorschaubilder nicht zuschneiden", + "name": "Name", + "name_bio": "Name & Bio", + "new_password": "Neues Passwort", + "notification_visibility": "Benachrichtigungstypen, die angezeigt werden sollen", + "notification_visibility_follows": "Follows", + "notification_visibility_likes": "Favoriten", + "notification_visibility_mentions": "Erwähnungen", + "notification_visibility_repeats": "Wiederholungen", + "no_rich_text_description": "Rich-Text Formatierungen von allen Beiträgen entfernen", + "hide_follows_description": "Zeige nicht, wem ich folge", + "hide_followers_description": "Zeige nicht, wer mir folgt", + "hide_follows_count_description": "Verberge die Anzahl deiner Gefolgten", + "hide_followers_count_description": "Verberge die Anzahl deiner Folgenden", + "nsfw_clickthrough": "Aktiviere ausblendbares Overlay für Anhänge, die als NSFW markiert sind", + "oauth_tokens": "OAuth-Token", + "token": "Zeichen", + "refresh_token": "Token aktualisieren", + "valid_until": "Gültig bis", + "revoke_token": "Widerrufen", + "panelRadius": "Panel", + "pause_on_unfocused": "Streaming pausieren, wenn das Tab nicht fokussiert ist", + "presets": "Voreinstellungen", + "profile_background": "Profilhintergrund", + "profile_banner": "Profilbanner", + "profile_tab": "Profil", + "radii_help": "Kantenrundung (in Pixel) der Oberfläche anpassen", + "replies_in_timeline": "Antworten in der Zeitleiste", + "reply_link_preview": "Antwortlink-Vorschau beim Überfahren mit der Maus aktivieren", + "reply_visibility_all": "Alle Antworten zeigen", + "reply_visibility_following": "Zeige nur Antworten an mich oder an Benutzer, denen ich folge", + "reply_visibility_self": "Nur Antworten an mich anzeigen", + "autohide_floating_post_button": "Automatisches Verbergen des Knopfs für neue Beiträge (mobil)", + "saving_err": "Fehler beim Speichern der Einstellungen", + "saving_ok": "Einstellungen gespeichert", + "security_tab": "Sicherheit", + "scope_copy": "Reichweite beim Antworten übernehmen (Direktnachrichten werden immer kopiert)", + "minimal_scopes_mode": "Minimiere Reichweitenoptionen", + "set_new_avatar": "Setze einen neuen Avatar", + "set_new_profile_background": "Setze einen neuen Hintergrund für dein Profil", + "set_new_profile_banner": "Setze einen neuen Banner für dein Profil", + "settings": "Einstellungen", + "subject_input_always_show": "Betreff-Feld immer anzeigen", + "subject_line_behavior": "Betreff beim Antworten kopieren", + "subject_line_email": "Wie Email: \"re: Betreff\"", + "subject_line_mastodon": "Wie Mastodon: unverändert kopieren", + "subject_line_noop": "Nicht kopieren", + "post_status_content_type": "Beitragsart", + "stop_gifs": "Animationen nur beim Darüberfahren abspielen", + "streaming": "Aktiviere automatisches Laden (Streaming) von neuen Beiträgen", + "text": "Text", + "theme": "Farbschema", + "theme_help": "Benutze HTML-Farbcodes (#rrggbb) um dein Farbschema anzupassen", + "theme_help_v2_1": "Du kannst auch die Farben und die Deckkraft bestimmter Komponenten überschreiben, indem du das Kontrollkästchen umschaltest. Verwende die Schaltfläche \"Alle löschen\", um alle Überschreibungen zurückzusetzen.", + "theme_help_v2_2": "Unter einigen Einträgen befinden sich Symbole für Hintergrund-/Textkontrastindikatoren, für detaillierte Informationen fahre mit der Maus darüber. Bitte beachte, dass bei der Verwendung von Transparenz Kontrastindikatoren den schlechtest möglichen Fall darstellen.", + "tooltipRadius": "Tooltips/Warnungen", + "user_settings": "Benutzereinstellungen", + "values": { + "false": "nein", + "true": "Ja" + }, + "notifications": "Benachrichtigungen", + "enable_web_push_notifications": "Web-Pushbenachrichtigungen aktivieren", "style": { - "switcher": { - "keep_color": "Farben beibehalten", - "keep_shadows": "Schatten beibehalten", - "keep_opacity": "Deckkraft beibehalten", - "keep_roundness": "Abrundungen beibehalten", - "keep_fonts": "Schriften beibehalten", - "save_load_hint": "Die \"Beibehalten\"-Optionen behalten die aktuell eingestellten Optionen beim Auswählen oder Laden von Designs bei, sie speichern diese Optionen auch beim Exportieren eines Designs. Wenn alle Kontrollkästchen deaktiviert sind, wird beim Exportieren des Designs alles gespeichert.", - "reset": "Zurücksetzen", - "clear_all": "Alles leeren", - "clear_opacity": "Deckkraft leeren" - }, - "common": { - "color": "Farbe", - "opacity": "Deckkraft", - "contrast": { - "hint": "Das Kontrastverhältnis ist {ratio}, es {level} {context}", - "level": { - "aa": "entspricht Level AA Richtlinie (minimum)", - "aaa": "entspricht Level AAA Richtlinie (empfohlen)", - "bad": "entspricht keiner Richtlinien zur Barrierefreiheit" - }, - "context": { - "18pt": "für großen (18pt+) Text", - "text": "für Text" - } + "switcher": { + "keep_color": "Farben beibehalten", + "keep_shadows": "Schatten beibehalten", + "keep_opacity": "Deckkraft beibehalten", + "keep_roundness": "Abrundungen beibehalten", + "keep_fonts": "Schriften beibehalten", + "save_load_hint": "Die \"Beibehalten\"-Optionen behalten die aktuell eingestellten Optionen beim Auswählen oder Laden von Designs bei, sie speichern diese Optionen auch beim Exportieren eines Designs. Wenn alle Kontrollkästchen deaktiviert sind, wird beim Exportieren des Designs alles gespeichert.", + "reset": "Zurücksetzen", + "clear_all": "Alles leeren", + "clear_opacity": "Deckkraft leeren" + }, + "common": { + "color": "Farbe", + "opacity": "Deckkraft", + "contrast": { + "hint": "Das Kontrastverhältnis ist {ratio}, es {level} {context}", + "level": { + "aa": "entspricht Level AA Richtlinie (minimum)", + "aaa": "entspricht Level AAA Richtlinie (empfohlen)", + "bad": "entspricht keiner Richtlinien zur Barrierefreiheit" + }, + "context": { + "18pt": "für großen (18pt+) Text", + "text": "für Text" + } + } + }, + "common_colors": { + "_tab_label": "Allgemein", + "main": "Allgemeine Farben", + "foreground_hint": "Siehe Reiter \"Erweitert\" für eine detailliertere Einstellungen", + "rgbo": "Symbole, Betonungen, Kennzeichnungen" + }, + "advanced_colors": { + "_tab_label": "Erweitert", + "alert": "Warnhinweis-Hintergrund", + "alert_error": "Fehler", + "badge": "Kennzeichnungs-Hintergrund", + "badge_notification": "Benachrichtigung", + "panel_header": "Panel-Kopf", + "top_bar": "Obere Leiste", + "borders": "Rahmen", + "buttons": "Schaltflächen", + "inputs": "Eingabefelder", + "faint_text": "Verblasster Text" + }, + "radii": { + "_tab_label": "Abrundungen" + }, + "shadows": { + "_tab_label": "Schatten und Beleuchtung", + "component": "Komponente", + "override": "Überschreiben", + "shadow_id": "Schatten #{value}", + "blur": "Unschärfe", + "spread": "Streuung", + "inset": "Einsatz", + "hint": "Für Schatten kannst du auch --variable als Farbwert verwenden, um CSS3-Variablen zu verwenden. Bitte beachte, dass die Einstellung der Deckkraft in diesem Fall nicht funktioniert.", + "filter_hint": { + "always_drop_shadow": "Achtung, dieser Schatten verwendet immer {0}, wenn der Browser dies unterstützt.", + "drop_shadow_syntax": "{0} unterstützt Parameter {1} und Schlüsselwort {2} nicht.", + "avatar_inset": "Bitte beachte, dass die Kombination von eingesetzten und nicht eingesetzten Schatten auf Avataren zu unerwarteten Ergebnissen bei transparenten Avataren führen kann.", + "spread_zero": "Schatten mit einer Streuung > 0 erscheinen so, als ob sie auf Null gesetzt wären.", + "inset_classic": "Eingesetzte Schatten werden mit {0} verwendet" + }, + "components": { + "panel": "Panel", + "panelHeader": "Panel-Kopf", + "topBar": "Obere Leiste", + "avatar": "Benutzer-Avatar (in der Profilansicht)", + "avatarStatus": "Benutzer-Avatar (in der Beitragsanzeige)", + "popup": "Dialogfenster und Hinweistexte", + "button": "Schaltfläche", + "buttonHover": "Schaltfläche (hover)", + "buttonPressed": "Schaltfläche (gedrückt)", + "buttonPressedHover": "Schaltfläche (gedrückt+hover)", + "input": "Input field" + } + }, + "fonts": { + "_tab_label": "Schriften", + "help": "Wähl die Schriftart, die für Elemente der Benutzeroberfläche verwendet werden soll. Für \" Benutzerdefiniert\" musst du den genauen Schriftnamen eingeben, wie er im System angezeigt wird.", + "components": { + "interface": "Oberfläche", + "input": "Eingabefelder", + "post": "Beitragstext", + "postCode": "Dicktengleicher Text in einem Beitrag (Rich-Text)" + }, + "family": "Schriftname", + "size": "Größe (in px)", + "weight": "Gewicht (Dicke)", + "custom": "Benutzerdefiniert" + }, + "preview": { + "header": "Vorschau", + "content": "Inhalt", + "error": "Beispielfehler", + "button": "Schaltfläche", + "text": "Ein Haufen mehr von {0} und {1}", + "mono": "Inhalt", + "input": "Sitze gerade im Hofbräuhaus.", + "faint_link": "Hilfreiche Anleitung", + "fine_print": "Lies unser {0}, um nichts Nützliches zu lernen!", + "header_faint": "Das ist in Ordnung", + "checkbox": "Ich habe die Allgemeinen Geschäftsbedingungen überflogen", + "link": "ein netter kleiner Link" + } } - }, - "common_colors": { - "_tab_label": "Allgemein", - "main": "Allgemeine Farben", - "foreground_hint": "Siehe Reiter \"Erweitert\" für eine detailliertere Einstellungen", - "rgbo": "Symbole, Betonungen, Kennzeichnungen" - }, - "advanced_colors": { - "_tab_label": "Erweitert", - "alert": "Warnhinweis-Hintergrund", - "alert_error": "Fehler", - "badge": "Kennzeichnungs-Hintergrund", - "badge_notification": "Benachrichtigung", - "panel_header": "Panel-Kopf", - "top_bar": "Obere Leiste", - "borders": "Rahmen", - "buttons": "Schaltflächen", - "inputs": "Eingabefelder", - "faint_text": "Verblasster Text" - }, - "radii": { - "_tab_label": "Abrundungen" - }, - "shadows": { - "_tab_label": "Schatten und Beleuchtung", - "component": "Komponente", - "override": "Überschreiben", - "shadow_id": "Schatten #{value}", - "blur": "Unschärfe", - "spread": "Streuung", - "inset": "Einsatz", - "hint": "Für Schatten kannst du auch --variable als Farbwert verwenden, um CSS3-Variablen zu verwenden. Bitte beachte, dass die Einstellung der Deckkraft in diesem Fall nicht funktioniert.", - "filter_hint": { - "always_drop_shadow": "Achtung, dieser Schatten verwendet immer {0}, wenn der Browser dies unterstützt.", - "drop_shadow_syntax": "{0} unterstützt Parameter {1} und Schlüsselwort {2} nicht.", - "avatar_inset": "Bitte beachte, dass die Kombination von eingesetzten und nicht eingesetzten Schatten auf Avataren zu unerwarteten Ergebnissen bei transparenten Avataren führen kann.", - "spread_zero": "Schatten mit einer Streuung > 0 erscheinen so, als ob sie auf Null gesetzt wären.", - "inset_classic": "Eingesetzte Schatten werden mit {0} verwendet" - }, - "components": { - "panel": "Panel", - "panelHeader": "Panel-Kopf", - "topBar": "Obere Leiste", - "avatar": "Benutzer-Avatar (in der Profilansicht)", - "avatarStatus": "Benutzer-Avatar (in der Beitragsanzeige)", - "popup": "Dialogfenster und Hinweistexte", - "button": "Schaltfläche", - "buttonHover": "Schaltfläche (hover)", - "buttonPressed": "Schaltfläche (gedrückt)", - "buttonPressedHover": "Schaltfläche (gedrückt+hover)", - "input": "Input field" - } - }, - "fonts": { - "_tab_label": "Schriften", - "help": "Wähl die Schriftart, die für Elemente der Benutzeroberfläche verwendet werden soll. Für \" Benutzerdefiniert\" musst du den genauen Schriftnamen eingeben, wie er im System angezeigt wird.", - "components": { - "interface": "Oberfläche", - "input": "Eingabefelder", - "post": "Beitragstext", - "postCode": "Dicktengleicher Text in einem Beitrag (Rich-Text)" - }, - "family": "Schriftname", - "size": "Größe (in px)", - "weight": "Gewicht (Dicke)", - "custom": "Benutzerdefiniert" - }, - "preview": { - "header": "Vorschau", - "content": "Inhalt", - "error": "Beispielfehler", - "button": "Schaltfläche", - "text": "Ein Haufen mehr von {0} und {1}", - "mono": "Inhalt", - "input": "Sitze gerade im Hofbräuhaus.", - "faint_link": "Hilfreiche Anleitung", - "fine_print": "Lies unser {0}, um nichts Nützliches zu lernen!", - "header_faint": "Das ist in Ordnung", - "checkbox": "Ich habe die Allgemeinen Geschäftsbedingungen überflogen", - "link": "ein netter kleiner Link" - } - } - }, - "timeline": { - "collapse": "Einklappen", - "conversation": "Unterhaltung", - "error_fetching": "Fehler beim Laden", - "load_older": "Lade ältere Beiträge", - "no_retweet_hint": "Der Beitrag ist als nur-für-Follower oder als Direktnachricht markiert und kann nicht wiederholt werden.", - "repeated": "wiederholte", - "show_new": "Zeige Neuere", - "up_to_date": "Aktuell" - }, - "user_card": { - "approve": "Genehmigen", - "block": "Blockieren", - "blocked": "Blockiert!", - "deny": "Ablehnen", - "follow": "Folgen", - "follow_sent": "Anfrage gesendet!", - "follow_progress": "Anfragen…", - "follow_again": "Anfrage erneut senden?", - "follow_unfollow": "Folgen beenden", - "followees": "Folgt", - "followers": "Followers", - "following": "Folgst du!", - "follows_you": "Folgt dir!", - "its_you": "Das bist du!", - "mute": "Stummschalten", - "muted": "Stummgeschaltet", - "per_day": "pro Tag", - "remote_follow": "Folgen", - "statuses": "Beiträge" - }, - "user_profile": { - "timeline_title": "Beiträge" - }, - "who_to_follow": { - "more": "Mehr", - "who_to_follow": "Wem soll ich folgen" - }, - "tool_tip": { - "media_upload": "Medien hochladen", - "repeat": "Wiederholen", - "reply": "Antworten", - "favorite": "Favorisieren", - "user_settings": "Benutzereinstellungen" - }, - "upload":{ - "error": { - "base": "Hochladen fehlgeschlagen.", - "file_too_big": "Datei ist zu groß [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "Bitte versuche es später erneut" }, - "file_size_units": { - "B": "B", - "KiB": "KiB", - "MiB": "MiB", - "GiB": "GiB", - "TiB": "TiB" + "timeline": { + "collapse": "Einklappen", + "conversation": "Unterhaltung", + "error_fetching": "Fehler beim Laden", + "load_older": "Lade ältere Beiträge", + "no_retweet_hint": "Der Beitrag ist als nur-für-Follower oder als Direktnachricht markiert und kann nicht wiederholt werden.", + "repeated": "wiederholte", + "show_new": "Zeige Neuere", + "up_to_date": "Aktuell" + }, + "user_card": { + "approve": "Genehmigen", + "block": "Blockieren", + "blocked": "Blockiert!", + "deny": "Ablehnen", + "follow": "Folgen", + "follow_sent": "Anfrage gesendet!", + "follow_progress": "Anfragen…", + "follow_again": "Anfrage erneut senden?", + "follow_unfollow": "Folgen beenden", + "followees": "Folgt", + "followers": "Followers", + "following": "Folgst du!", + "follows_you": "Folgt dir!", + "its_you": "Das bist du!", + "mute": "Stummschalten", + "muted": "Stummgeschaltet", + "per_day": "pro Tag", + "remote_follow": "Folgen", + "statuses": "Beiträge" + }, + "user_profile": { + "timeline_title": "Beiträge" + }, + "who_to_follow": { + "more": "Mehr", + "who_to_follow": "Wem soll ich folgen" + }, + "tool_tip": { + "media_upload": "Medien hochladen", + "repeat": "Wiederholen", + "reply": "Antworten", + "favorite": "Favorisieren", + "user_settings": "Benutzereinstellungen" + }, + "upload": { + "error": { + "base": "Hochladen fehlgeschlagen.", + "file_too_big": "Datei ist zu groß [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", + "default": "Bitte versuche es später erneut" + }, + "file_size_units": { + "B": "B", + "KiB": "KiB", + "MiB": "MiB", + "GiB": "GiB", + "TiB": "TiB" + } + }, + "search": { + "people": "Leute", + "hashtags": "Hashtags", + "person_talking": "{count} Person spricht darüber", + "people_talking": "{count} Leute sprechen darüber", + "no_results": "Keine Ergebnisse" + }, + "password_reset": { + "forgot_password": "Passwort vergessen?", + "password_reset": "Password zurücksetzen", + "instruction": "Wenn du hier deinen Benutznamen oder die zugehörige E-Mail-Adresse eingibst, kann dir der Server einen Link zum Passwortzurücksetzen zuschicken.", + "placeholder": "Dein Benutzername oder die zugehörige E-Mail-Adresse", + "check_email": "Im E-Mail-Posteingang des angebenen Kontos müsste sich jetzt (oder zumindest in Kürze) die E-Mail mit dem Link zum Passwortzurücksetzen befinden.", + "return_home": "Zurück zur Heimseite", + "not_found": "Benutzername/E-Mail-Adresse nicht gefunden. Vertippt?", + "too_many_requests": "Kurze Pause. Zu viele Versuche. Bitte, später nochmal probieren.", + "password_reset_disabled": "Passwortzurücksetzen deaktiviert. Bitte Administrator kontaktieren.", + "password_reset_required": "Passwortzurücksetzen erforderlich", + "password_reset_required_but_mailer_is_disabled": "Passwortzurücksetzen wäre erforderlich, ist aber deaktiviert. Bitte Administrator kontaktieren." + }, + "about": { + "mrf": { + "federation": "Föderation", + "mrf_policies": "Aktivierte MRF Richtlinien", + "simple": { + "simple_policies": "Instanzspezifische Richtlinien", + "accept": "Akzeptieren", + "reject": "Ablehnen", + "reject_desc": "Diese Instanz akzeptiert keine Nachrichten der folgenden Instanzen:", + "quarantine": "Quarantäne", + "ftl_removal": "Von der Zeitleiste \"Das gesamte bekannte Netzwerk\" entfernen", + "media_removal": "Medienentfernung", + "media_removal_desc": "Diese Instanz entfernt Medien von den Beiträgen der folgenden Instanzen:", + "media_nsfw": "Erzwingen Medien als heikel zu makieren", + "media_nsfw_desc": "Diese Instanz makiert die Medien in Beiträgen der folgenden Instanzen als heikel:", + "accept_desc": "Diese Instanz akzeptiert nur Nachrichten von den folgenden Instanzen:", + "quarantine_desc": "Diese Instanz sendet nur öffentliche Beiträge zu den folgenden Instanzen:", + "ftl_removal_desc": "Dieser Instanz entfernt folgende Instanzen von der \"Das gesamte bekannte Netzwerk\" Zeitleiste:" + }, + "keyword": { + "keyword_policies": "Keyword Richtlinien", + "reject": "Ablehnen", + "replace": "Ersetzen", + "is_replaced_by": "→", + "ftl_removal": "Von der Zeitleiste \"Das gesamte bekannte Netzwerk\" entfernen" + }, + "mrf_policies_desc": "MRF Richtlinien manipulieren das Föderationsverhalten dieser Instanz. Die folgenden Richtlinien sind aktiv:" + }, + "staff": "Mitarbeiter" + }, + "domain_mute_card": { + "mute": "Stummschalten", + "mute_progress": "Wird stummgeschaltet..", + "unmute": "Stummschaltung aufheben", + "unmute_progress": "Stummschaltung wird aufgehoben.." + }, + "exporter": { + "export": "Exportieren", + "processing": "Verarbeitung läuft, bald wird Du dazu aufgefordert, deine Datei herunterzuladen" + }, + "image_cropper": { + "crop_picture": "Bild zuschneiden", + "save": "Speichern", + "cancel": "Abbrechen", + "save_without_cropping": "Ohne Zuschneiden speichern" + }, + "importer": { + "submit": "Absenden", + "success": "Erfolgreich importiert.", + "error": "Ein Fehler ist beim Verabeiten der Datei aufgetreten." + }, + "media_modal": { + "previous": "Zurück", + "next": "Weiter" + }, + "polls": { + "add_poll": "Umfrage hinzufügen", + "add_option": "Option hinzufügen", + "option": "Option", + "votes": "Stimmen", + "vote": "Abstimmen", + "type": "Umfragetyp", + "multiple_choices": "Mehrere Auswahlmöglichkeiten", + "single_choice": "Eine Auswahlmöglichkeit", + "expiry": "Alter der Umfrage", + "expired": "Die Umfrage endete vor {0}", + "not_enough_options": "Zu wenig einzigartige Auswahlmöglichkeiten in der Umfrage", + "expires_in": "Die Umfrage endet in {0}" + }, + "emoji": { + "stickers": "Sticker", + "emoji": "Emoji", + "search_emoji": "Nach einem Emoji suchen", + "custom": "Benutzerdefinierter Emoji", + "keep_open": "Auswahlfenster offen halten", + "add_emoji": "Emoji einfügen" } - }, - "search": { - "people": "Leute", - "hashtags": "Hashtags", - "person_talking": "{count} Person spricht darüber", - "people_talking": "{count} Leute sprechen darüber", - "no_results": "Keine Ergebnisse" - }, - "password_reset": { - "forgot_password": "Passwort vergessen?", - "password_reset": "Password zurücksetzen", - "instruction": "Wenn du hier deinen Benutznamen oder die zugehörige E-Mail-Adresse eingibst, kann dir der Server einen Link zum Passwortzurücksetzen zuschicken.", - "placeholder": "Dein Benutzername oder die zugehörige E-Mail-Adresse", - "check_email": "Im E-Mail-Posteingang des angebenen Kontos müsste sich jetzt (oder zumindest in Kürze) die E-Mail mit dem Link zum Passwortzurücksetzen befinden.", - "return_home": "Zurück zur Heimseite", - "not_found": "Benutzername/E-Mail-Adresse nicht gefunden. Vertippt?", - "too_many_requests": "Kurze Pause. Zu viele Versuche. Bitte, später nochmal probieren.", - "password_reset_disabled": "Passwortzurücksetzen deaktiviert. Bitte Administrator kontaktieren.", - "password_reset_required": "Passwortzurücksetzen erforderlich", - "password_reset_required_but_mailer_is_disabled": "Passwortzurücksetzen wäre erforderlich, ist aber deaktiviert. Bitte Administrator kontaktieren." - } } From 21ecca4c62eb465d364155dd0ca415878ec28ab0 Mon Sep 17 00:00:00 2001 From: Ben Is <srsbzns@cock.li> Date: Wed, 13 May 2020 17:42:56 +0000 Subject: [PATCH 36/95] Translated using Weblate (Italian) Currently translated at 28.3% (174 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 117 +++++++++++++++++++++++++---------------------- 1 file changed, 63 insertions(+), 54 deletions(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index 3a49d96f..817a6465 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -5,34 +5,34 @@ }, "nav": { "mentions": "Menzioni", - "public_tl": "Sequenza temporale pubblica", - "timeline": "Sequenza temporale", - "twkn": "L'intera rete conosciuta", - "chat": "Chat Locale", - "friend_requests": "Richieste di Seguirti" + "public_tl": "Sequenza pubblica", + "timeline": "Sequenza personale", + "twkn": "Tutte le stanze accessibili", + "chat": "Chat della stanza", + "friend_requests": "Vogliono seguirti" }, "notifications": { "followed_you": "ti segue", "notifications": "Notifiche", - "read": "Leggi!", + "read": "Letto!", "broken_favorite": "Stato sconosciuto, lo sto cercando...", - "favorited_you": "ha messo mi piace al tuo stato", - "load_older": "Carica notifiche più vecchie", - "repeated_you": "ha condiviso il tuo stato" + "favorited_you": "ha gradito il tuo messaggio", + "load_older": "Carica notifiche precedenti", + "repeated_you": "ha condiviso il tuo messaggio" }, "settings": { "attachments": "Allegati", - "autoload": "Abilita caricamento automatico quando si raggiunge fondo pagina", - "avatar": "Avatar", + "autoload": "Abilita caricamento automatico quando si raggiunge il fondo pagina", + "avatar": "Icona utente", "bio": "Introduzione", - "current_avatar": "Il tuo avatar attuale", - "current_profile_banner": "Il tuo banner attuale", + "current_avatar": "La tua icona attuale", + "current_profile_banner": "Il tuo stendardo attuale", "filtering": "Filtri", - "filtering_explanation": "Tutti i post contenenti queste parole saranno silenziati, uno per linea", + "filtering_explanation": "Tutti i post contenenti queste parole saranno silenziati, una per linea", "hide_attachments_in_convo": "Nascondi gli allegati presenti nelle conversazioni", - "hide_attachments_in_tl": "Nascondi gli allegati presenti nella sequenza temporale", + "hide_attachments_in_tl": "Nascondi gli allegati presenti nelle sequenze", "name": "Nome", - "name_bio": "Nome & Introduzione", + "name_bio": "Nome ed introduzione", "nsfw_clickthrough": "Abilita il click per visualizzare gli allegati segnati come NSFW", "profile_background": "Sfondo della tua pagina", "profile_banner": "Banner del tuo profilo", @@ -44,55 +44,55 @@ "theme": "Tema", "user_settings": "Impostazioni Utente", "attachmentRadius": "Allegati", - "avatarAltRadius": "Avatar (Notifiche)", - "avatarRadius": "Avatar", + "avatarAltRadius": "Icona utente (Notifiche)", + "avatarRadius": "Icone utente", "background": "Sfondo", "btnRadius": "Pulsanti", - "cBlue": "Blu (Rispondere, seguire)", - "cGreen": "Verde (Condividi)", - "cOrange": "Arancio (Mi piace)", - "cRed": "Rosso (Annulla)", + "cBlue": "Blu (risposte, seguire)", + "cGreen": "Verde (ripeti)", + "cOrange": "Arancio (gradire)", + "cRed": "Rosso (annulla)", "change_password": "Cambia Password", "change_password_error": "C'è stato un problema durante il cambiamento della password.", "changed_password": "Password cambiata correttamente!", - "collapse_subject": "Riduci post che hanno un oggetto", + "collapse_subject": "Collassa messaggi con Oggetto", "confirm_new_password": "Conferma la nuova password", - "current_password": "Password attuale", - "data_import_export_tab": "Importa / Esporta Dati", - "default_vis": "Visibilità predefinita dei post", - "delete_account": "Elimina Account", - "delete_account_description": "Elimina definitivamente il tuo account e tutti i tuoi messaggi.", - "delete_account_error": "C'è stato un problema durante l'eliminazione del tuo account. Se il problema persiste contatta l'amministratore della tua istanza.", - "delete_account_instructions": "Digita la tua password nel campo sottostante per confermare l'eliminazione dell'account.", - "export_theme": "Salva settaggi", + "current_password": "La tua password attuale", + "data_import_export_tab": "Importa o esporta dati", + "default_vis": "Visibilità predefinita dei messaggi", + "delete_account": "Elimina profilo", + "delete_account_description": "Elimina definitivamente il tuo profilo e tutti i tuoi messaggi.", + "delete_account_error": "C'è stato un problema durante l'eliminazione del tuo profilo. Se il problema persiste contatta l'amministratore della tua stanza.", + "delete_account_instructions": "Digita la tua password nel campo sottostante per confermare l'eliminazione del tuo profilo.", + "export_theme": "Salva impostazioni", "follow_export": "Esporta la lista di chi segui", "follow_export_button": "Esporta la lista di chi segui in un file csv", "follow_export_processing": "Sto elaborando, presto ti sarà chiesto di scaricare il tuo file", "follow_import": "Importa la lista di chi segui", "follow_import_error": "Errore nell'importazione della lista di chi segui", "follows_imported": "Importazione riuscita! L'elaborazione richiederà un po' di tempo.", - "foreground": "In primo piano", + "foreground": "Primo piano", "general": "Generale", - "hide_post_stats": "Nascondi statistiche dei post (es. il numero di mi piace)", - "hide_user_stats": "Nascondi statistiche dell'utente (es. il numero di chi ti segue)", + "hide_post_stats": "Nascondi statistiche dei messaggi (es. il numero di preferenze)", + "hide_user_stats": "Nascondi statistiche dell'utente (es. il numero dei tuoi seguaci)", "import_followers_from_a_csv_file": "Importa una lista di chi segui da un file csv", - "import_theme": "Carica settaggi", + "import_theme": "Carica impostazioni", "inputRadius": "Campi di testo", "instance_default": "(predefinito: {value})", - "interfaceLanguage": "Linguaggio dell'interfaccia", - "invalid_theme_imported": "Il file selezionato non è un file di tema per Pleroma supportato. Il tuo tema non è stato modificato.", + "interfaceLanguage": "Lingua dell'interfaccia", + "invalid_theme_imported": "Il file selezionato non è un tema supportato da Pleroma. Il tuo tema non è stato modificato.", "limited_availability": "Non disponibile nel tuo browser", "links": "Collegamenti", - "lock_account_description": "Limita il tuo account solo per contatti approvati", + "lock_account_description": "Limita il tuo account solo a seguaci approvati", "loop_video": "Riproduci video in ciclo continuo", - "loop_video_silent_only": "Riproduci solo video senza audio in ciclo continuo (es. le gif di Mastodon)", + "loop_video_silent_only": "Riproduci solo video senza audio in ciclo continuo (es. le \"gif\" di Mastodon)", "new_password": "Nuova password", "notification_visibility": "Tipi di notifiche da mostrare", "notification_visibility_follows": "Nuove persone ti seguono", - "notification_visibility_likes": "Mi piace", + "notification_visibility_likes": "Preferiti", "notification_visibility_mentions": "Menzioni", "notification_visibility_repeats": "Condivisioni", - "no_rich_text_description": "Togli la formattazione del testo da tutti i post", + "no_rich_text_description": "Togli l'impaginazione del testo da tutti i messaggi", "oauth_tokens": "Token OAuth", "token": "Token", "refresh_token": "Aggiorna token", @@ -152,9 +152,9 @@ "features_panel": { "chat": "Chat", "gopher": "Gopher", - "media_proxy": "Media proxy", - "scope_options": "Opzioni di visibilità", - "text_limit": "Lunghezza limite", + "media_proxy": "Proxy multimedia", + "scope_options": "Opzioni raggio d'azione", + "text_limit": "Lunghezza massima", "title": "Caratteristiche", "who_to_follow": "Chi seguire" }, @@ -171,21 +171,21 @@ "username": "Nome utente" }, "post_status": { - "account_not_locked_warning": "Il tuo account non è {0}. Chiunque può seguirti e vedere i tuoi post riservati a chi ti segue.", - "account_not_locked_warning_link": "bloccato", - "attachments_sensitive": "Segna allegati come sensibili", + "account_not_locked_warning": "Il tuo profilo non è {0}. Chiunque può seguirti e vedere i tuoi messaggi riservati ai tuoi seguaci.", + "account_not_locked_warning_link": "protetto", + "attachments_sensitive": "Nascondi gli allegati", "content_type": { "text/plain": "Testo normale" }, "content_warning": "Oggetto (facoltativo)", - "default": "Appena atterrato in L.A.", + "default": "Sono appena atterrato a Fiumicino.", "direct_warning": "Questo post sarà visibile solo dagli utenti menzionati.", - "posting": "Pubblica", + "posting": "Sto pubblicando", "scope": { - "direct": "Diretto - Pubblicato solo per gli utenti menzionati", - "private": "Solo per chi ti segue - Visibile solo da chi ti segue", - "public": "Pubblico - Visibile sulla sequenza temporale pubblica", - "unlisted": "Non elencato - Non visibile sulla sequenza temporale pubblica" + "direct": "Diretto - Visibile solo agli utenti menzionati", + "private": "Solo per seguaci - Visibile solo dai tuoi seguaci", + "public": "Pubblico - Visibile sulla sequenza pubblica", + "unlisted": "Non elencato - Non visibile sulla sequenza pubblica" } }, "registration": { @@ -205,7 +205,16 @@ }, "about": { "mrf": { - "federation": "Federazione" + "federation": "Federazione", + "keyword": { + "reject": "Rifiuta", + "replace": "Sostituisci", + "is_replaced_by": "→" + }, + "simple": { + "reject": "Rifiuta", + "accept": "Accetta" + } } } } From 8ac78e92f8ce2306d03e922412183f0377dcbc01 Mon Sep 17 00:00:00 2001 From: rinpatch <rinpatch@sdf.org> Date: Wed, 13 May 2020 17:17:13 +0000 Subject: [PATCH 37/95] Translated using Weblate (Russian) Currently translated at 59.3% (364 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 46 +++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index a34c2e3f..790f2f3c 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -13,7 +13,10 @@ "disable": "Оключить", "enable": "Включить", "confirm": "Подтвердить", - "verify": "Проверить" + "verify": "Проверить", + "more": "Больше", + "generic_error": "Произошла ошибка", + "optional": "не обязательно" }, "login": { "login": "Войти", @@ -415,14 +418,47 @@ "mrf": { "federation": "Федерация", "simple": { - "accept_desc": "" + "accept_desc": "Данный сервер принимает сообщения только со следующих серверов:", + "ftl_removal_desc": "Данный сервер скрывает следующие сервера с федеративной ленты:", + "media_nsfw_desc": "Данный сервер принужденно помечает вложения со следущих серверов как NSFW:", + "simple_policies": "Правила для определенных серверов", + "accept": "Принимаемые сообщения", + "reject": "Отклоняемые сообщения", + "reject_desc": "Данный сервер не принимает сообщения со следующих серверов:", + "quarantine": "Зона карантина", + "quarantine_desc": "Данный сервер отправляет только публичные посты следующим серверам:", + "ftl_removal": "Скрытие с федеративной ленты", + "media_removal": "Удаление вложений", + "media_removal_desc": "Данный сервер удаляет вложения со следующих серверов:", + "media_nsfw": "Принужденно помеченно как NSFW" }, "keyword": { - "ftl_removal": "Убраны из федеративной ленты", + "ftl_removal": "Убрать из федеративной ленты", "reject": "Отклонить", - "keyword_policies": "Действия на ключевые слова" - } + "keyword_policies": "Действия на ключевые слова", + "replace": "Заменить", + "is_replaced_by": "→" + }, + "mrf_policies": "Активные правила MRF (модуль переписывания сообщений)", + "mrf_policies_desc": "Правила MRF (модуль переписывания сообщений) влияют на федерацию данного сервера. Следующие правила активны:" }, "staff": "Администрация" + }, + "domain_mute_card": { + "mute": "Игнорировать", + "mute_progress": "В процессе...", + "unmute": "Прекратить игнорирование", + "unmute_progress": "В процессе..." + }, + "exporter": { + "export": "Экспорт", + "processing": "Запрос в обработке, вам скоро будет предложено загрузить файл" + }, + "features_panel": { + "chat": "Чат", + "media_proxy": "Прокси для внешних вложений", + "text_limit": "Лимит символов", + "title": "Особенности", + "gopher": "Gopher" } } From bc215d70f5047539bae2f61f1298e3c282970c34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Sidor?= <pleromeme@meekchopp.es> Date: Wed, 13 May 2020 16:41:19 +0000 Subject: [PATCH 38/95] Translated using Weblate (Polish) Currently translated at 100.0% (613 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/pl/ --- src/i18n/pl.json | 1462 +++++++++++++++++++++++----------------------- 1 file changed, 735 insertions(+), 727 deletions(-) diff --git a/src/i18n/pl.json b/src/i18n/pl.json index 4a4b1e31..89f2fdc2 100644 --- a/src/i18n/pl.json +++ b/src/i18n/pl.json @@ -1,735 +1,743 @@ { - "about": { - "mrf": { - "federation": "Federacja", - "keyword": { - "keyword_policies": "Zasady słów kluczowych", - "ftl_removal": "Usunięcie z \"Całej znanej sieci\"", - "reject": "Odrzucanie", - "replace": "Zastąpienie", - "is_replaced_by": "→" - }, - "mrf_policies": "Włączone zasady MRF", - "mrf_policies_desc": "Zasady MRF zmieniają zachowanie federowania instancji. Następujące zasady są włączone:", - "simple": { - "simple_policies": "Zasady specyficzne dla instancji", - "accept": "Akceptowanie", - "accept_desc": "Ta instancja akceptuje tylko posty z wymienionych instancji:", - "reject": "Odrzucanie", - "reject_desc": "Ta instancja odrzuca posty z wymienionych instancji:", - "quarantine": "Kwarantanna", - "quarantine_desc": "Ta instancja wysyła tylko publiczne posty do wymienionych instancji:", - "ftl_removal": "Usunięcie z \"Całej znanej sieci\"", - "ftl_removal_desc": "Ta instancja usuwa te instancje z \"Całej znanej sieci\"", - "media_removal": "Usuwanie multimediów", - "media_removal_desc": "Ta instancja usuwa multimedia z postów od wymienionych instancji:", - "media_nsfw": "Multimedia ustawione jako wrażliwe", - "media_nsfw_desc": "Ta instancja wymusza, by multimedia z wymienionych instancji były ustawione jako wrażliwe:" - } - }, - "staff": "Obsługa" - }, - "chat": { - "title": "Czat" - }, - "domain_mute_card": { - "mute": "Wycisz", - "mute_progress": "Wyciszam...", - "unmute": "Odcisz", - "unmute_progress": "Odciszam..." - }, - "exporter": { - "export": "Eksportuj", - "processing": "Przetwarzam, za chwilę zostaniesz zapytany o ściągnięcie pliku" - }, - "features_panel": { - "chat": "Czat", - "gopher": "Gopher", - "media_proxy": "Proxy mediów", - "scope_options": "Ustawienia zakresu", - "text_limit": "Limit tekstu", - "title": "Funkcje", - "who_to_follow": "Propozycje obserwacji" - }, - "finder": { - "error_fetching_user": "Błąd przy pobieraniu profilu", - "find_user": "Znajdź użytkownika" - }, - "general": { - "apply": "Zastosuj", - "submit": "Wyślij", - "more": "Więcej", - "generic_error": "Wystąpił błąd", - "optional": "nieobowiązkowe", - "show_more": "Pokaż więcej", - "show_less": "Pokaż mniej", - "dismiss": "Odrzuć", - "cancel": "Anuluj", - "disable": "Wyłącz", - "enable": "Włącz", - "confirm": "Potwierdź", - "verify": "Zweryfikuj" - }, - "image_cropper": { - "crop_picture": "Przytnij obrazek", - "save": "Zapisz", - "save_without_cropping": "Zapisz bez przycinania", - "cancel": "Anuluj" - }, - "importer": { - "submit": "Wyślij", - "success": "Zaimportowano pomyślnie", - "error": "Wystąpił błąd podczas importowania pliku." - }, - "login": { - "login": "Zaloguj", - "description": "Zaloguj używając OAuth", - "logout": "Wyloguj", - "password": "Hasło", - "placeholder": "n.p. lain", - "register": "Zarejestruj", - "username": "Użytkownik", - "hint": "Zaloguj się, aby dołączyć do dyskusji", - "authentication_code": "Kod weryfikacyjny", - "enter_recovery_code": "Wprowadź kod zapasowy", - "enter_two_factor_code": "Wprowadź kod weryfikacyjny", - "recovery_code": "Kod zapasowy", - "heading" : { - "totp" : "Weryfikacja dwuetapowa", - "recovery" : "Zapasowa weryfikacja dwuetapowa" - } - }, - "media_modal": { - "previous": "Poprzednie", - "next": "Następne" - }, - "nav": { - "about": "O nas", - "administration": "Administracja", - "back": "Wróć", - "chat": "Lokalny czat", - "friend_requests": "Prośby o możliwość obserwacji", - "mentions": "Wzmianki", - "interactions": "Interakcje", - "dms": "Wiadomości prywatne", - "public_tl": "Publiczna oś czasu", - "timeline": "Oś czasu", - "twkn": "Cała znana sieć", - "user_search": "Wyszukiwanie użytkowników", - "search": "Wyszukiwanie", - "who_to_follow": "Sugestie obserwacji", - "preferences": "Preferencje" - }, - "notifications": { - "broken_favorite": "Nieznany status, szukam go…", - "favorited_you": "dodał(-a) twój status do ulubionych", - "followed_you": "obserwuje cię", - "load_older": "Załaduj starsze powiadomienia", - "notifications": "Powiadomienia", - "read": "Przeczytane!", - "repeated_you": "powtórzył(-a) twój status", - "no_more_notifications": "Nie masz więcej powiadomień", - "migrated_to": "wyemigrował do", - "reacted_with": "zareagował z {0}" - }, - "polls": { - "add_poll": "Dodaj ankietę", - "add_option": "Dodaj opcję", - "option": "Opcja", - "votes": "głosów", - "vote": "Głosuj", - "type": "Typ ankiety", - "single_choice": "jednokrotnego wyboru", - "multiple_choices": "wielokrotnego wyboru", - "expiry": "Czas trwania ankiety", - "expires_in": "Ankieta kończy się za{0}", - "expired": "Ankieta skończyła się {0} temu", - "not_enough_options": "Zbyt mało unikalnych opcji w ankiecie" - }, - "emoji": { - "stickers": "Naklejki", - "emoji": "Emoji", - "keep_open": "Zostaw selektor otwarty", - "search_emoji": "Wyszukaj emoji", - "add_emoji": "Wstaw emoji", - "custom": "Niestandardowe emoji", - "unicode": "Emoji unicode", - "load_all_hint": "Załadowano pierwsze {saneAmount} emoji, Załadowanie wszystkich emoji może spowodować problemy z wydajnością.", - "load_all": "Ładuję wszystkie {emojiAmount} emoji" - }, - "interactions": { - "favs_repeats": "Powtórzenia i ulubione", - "follows": "Nowi obserwujący", - "moves": "Użytkownik migruje", - "load_older": "Załaduj starsze interakcje" - }, - "post_status": { - "new_status": "Dodaj nowy status", - "account_not_locked_warning": "Twoje konto nie jest {0}. Każdy może cię zaobserwować aby zobaczyć wpisy tylko dla obserwujących.", - "account_not_locked_warning_link": "zablokowane", - "attachments_sensitive": "Oznacz załączniki jako wrażliwe", - "content_type": { - "text/plain": "Czysty tekst", - "text/html": "HTML", - "text/markdown": "Markdown", - "text/bbcode": "BBCode" - }, - "content_warning": "Temat (nieobowiązkowy)", - "default": "Właśnie wróciłem z kościoła", - "direct_warning_to_all": "Ten wpis zobaczą wszystkie osoby, o których wspomniałeś(-aś).", - "direct_warning_to_first_only": "Ten wpis zobaczą tylko te osoby, o których wspomniałeś(-aś) na początku wiadomości.", - "posting": "Wysyłanie", - "scope_notice": { - "public": "Ten post będzie widoczny dla każdego", - "private": "Ten post będzie widoczny tylko dla twoich obserwujących", - "unlisted": "Ten post nie będzie widoczny na publicznej osi czasu i całej znanej sieci" - }, - "scope": { - "direct": "Bezpośredni – Tylko dla wspomnianych użytkowników", - "private": "Tylko dla obserwujących – Umieść dla osób, które cię obserwują", - "public": "Publiczny – Umieść na publicznych osiach czasu", - "unlisted": "Niewidoczny – Nie umieszczaj na publicznych osiach czasu" - } - }, - "registration": { - "bio": "Bio", - "email": "E-mail", - "fullname": "Wyświetlana nazwa profilu", - "password_confirm": "Potwierdzenie hasła", - "registration": "Rejestracja", - "token": "Token zaproszenia", - "captcha": "CAPTCHA", - "new_captcha": "Naciśnij na obrazek, aby dostać nowy kod captcha", - "username_placeholder": "np. lain", - "fullname_placeholder": "np. Lain Iwakura", - "bio_placeholder": "e.g.\nCześć, jestem Lain.\nJestem dziewczynką z anime żyjącą na peryferiach Japonii. Możesz znać mnie z Wired.", - "validations": { - "username_required": "nie może być pusta", - "fullname_required": "nie może być pusta", - "email_required": "nie może być pusty", - "password_required": "nie może być puste", - "password_confirmation_required": "nie może być puste", - "password_confirmation_match": "musi być takie jak hasło" - } - }, - "remote_user_resolver": { - "remote_user_resolver": "Wyszukiwarka użytkowników nietutejszych", - "searching_for": "Szukam", - "error": "Nie znaleziono." - }, - "selectable_list": { - "select_all": "Zaznacz wszystko" - }, - "settings": { - "app_name": "Nazwa aplikacji", - "security": "Bezpieczeństwo", - "enter_current_password_to_confirm": "Wprowadź obecne hasło, by potwierdzić twoją tożsamość", - "mfa": { - "otp" : "OTP", - "setup_otp" : "Ustaw OTP", - "wait_pre_setup_otp" : "początkowe ustawianie OTP", - "confirm_and_enable" : "Potwierdź i włącz OTP", - "title": "Weryfikacja dwuetapowa", - "generate_new_recovery_codes" : "Wygeneruj nowe kody zapasowe", - "warning_of_generate_new_codes" : "Po tym gdy generujesz nowe kody zapasowe, stare przestaną działać.", - "recovery_codes" : "Kody zapasowe.", - "waiting_a_recovery_codes": "Otrzymuję kody zapasowe...", - "recovery_codes_warning" : "Spisz kody na kartce papieru, albo zapisz je w bezpiecznym miejscu - inaczej nie zobaczysz ich już nigdy. Jeśli stracisz dostęp do twojej aplikacji 2FA i kodów zapasowych, nie będziesz miał dostępu do swojego konta.", - "authentication_methods" : "Metody weryfikacji", - "scan": { - "title": "Skanuj", - "desc": "Zeskanuj ten kod QR używając twojej aplikacji 2FA albo wpisz ten klucz:", - "secret_code": "Klucz" - }, - "verify": { - "desc": "By włączyć weryfikację dwuetapową, wpisz kod z twojej aplikacji 2FA:" - } - }, - "allow_following_move": "Zezwalaj na automatyczną obserwację gdy obserwowane konto migruje", - "attachmentRadius": "Załączniki", - "attachments": "Załączniki", - "autoload": "Włącz automatyczne ładowanie po przewinięciu do końca strony", - "avatar": "Awatar", - "avatarAltRadius": "Awatary (powiadomienia)", - "avatarRadius": "Awatary", - "background": "Tło", - "bio": "Bio", - "block_export": "Eksport blokad", - "block_export_button": "Eksportuj twoje blokady do pliku .csv", - "block_import": "Import blokad", - "block_import_error": "Wystąpił błąd podczas importowania blokad", - "blocks_imported": "Zaimportowano blokady, przetwarzanie może zająć trochę czasu.", - "blocks_tab": "Bloki", - "btnRadius": "Przyciski", - "cBlue": "Niebieski (odpowiedz, obserwuj)", - "cGreen": "Zielony (powtórzenia)", - "cOrange": "Pomarańczowy (ulubione)", - "cRed": "Czerwony (anuluj)", - "change_email": "Zmień email", - "change_email_error": "Wystąpił problem podczas zmiany emaila.", - "changed_email": "Pomyślnie zmieniono email!", - "change_password": "Zmień hasło", - "change_password_error": "Podczas zmiany hasła wystąpił problem.", - "changed_password": "Pomyślnie zmieniono hasło!", - "collapse_subject": "Zwijaj posty z tematami", - "composing": "Pisanie", - "confirm_new_password": "Potwierdź nowe hasło", - "current_avatar": "Twój obecny awatar", - "current_password": "Obecne hasło", - "current_profile_banner": "Twój obecny banner profilu", - "data_import_export_tab": "Import/eksport danych", - "default_vis": "Domyślny zakres widoczności", - "delete_account": "Usuń konto", - "delete_account_description": "Trwale usuń konto i wszystkie posty.", - "delete_account_error": "Wystąpił problem z usuwaniem twojego konta. Jeżeli problem powtarza się, poinformuj administratora swojej instancji.", - "delete_account_instructions": "Wprowadź swoje hasło w poniższe pole aby potwierdzić usunięcie konta.", - "discoverable": "Zezwól na odkrywanie tego konta w wynikach wyszukiwania i innych usługa.", - "domain_mutes": "Domeny", - "avatar_size_instruction": "Zalecany minimalny rozmiar awatarów to 150x150 pikseli.", - "pad_emoji": "Dodaj odstęp z obu stron emoji podczas dodawania selektorem", - "emoji_reactions_on_timeline": "Pokaż reakcje emoji na osi czasu", - "export_theme": "Zapisz motyw", - "filtering": "Filtrowanie", - "filtering_explanation": "Wszystkie statusy zawierające te słowa będą wyciszone. Jedno słowo na linijkę.", - "follow_export": "Eksport obserwowanych", - "follow_export_button": "Eksportuj swoją listę obserwowanych do pliku CSV", - "follow_import": "Import obserwowanych", - "follow_import_error": "Błąd przy importowaniu obserwowanych", - "follows_imported": "Obserwowani zaimportowani! Przetwarzanie może trochę potrwać.", - "accent": "Akcent", - "foreground": "Pierwszy plan", - "general": "Ogólne", - "hide_attachments_in_convo": "Ukrywaj załączniki w rozmowach", - "hide_attachments_in_tl": "Ukrywaj załączniki w osi czasu", - "hide_muted_posts": "Ukrywaj wpisy wyciszonych użytkowników", - "max_thumbnails": "Maksymalna liczba miniatur w poście", - "hide_isp": "Ukryj panel informacji o instancji", - "preload_images": "Ładuj wstępnie obrazy", - "use_one_click_nsfw": "Otwieraj załączniki NSFW jednym kliknięciem", - "hide_post_stats": "Ukrywaj statysyki postów (np. liczbę polubień)", - "hide_user_stats": "Ukrywaj statysyki użytkowników (np. liczbę obserwujących)", - "hide_filtered_statuses": "Ukrywaj filtrowane statusy", - "import_blocks_from_a_csv_file": "Importuj blokady z pliku CSV", - "import_followers_from_a_csv_file": "Importuj obserwowanych z pliku CSV", - "import_theme": "Załaduj motyw", - "inputRadius": "Pola tekstowe", - "checkboxRadius": "Pola wyboru", - "instance_default": "(domyślny: {value})", - "instance_default_simple": "(domyślny)", - "interface": "Interfejs", - "interfaceLanguage": "Język interfejsu", - "invalid_theme_imported": "Wybrany plik nie jest obsługiwanym motywem Pleromy. Nie dokonano zmian w twoim motywie.", - "limited_availability": "Niedostępne w twojej przeglądarce", - "links": "Łącza", - "lock_account_description": "Ogranicz swoje konto dla zatwierdzonych obserwowanych", - "loop_video": "Zapętlaj filmy", - "loop_video_silent_only": "Zapętlaj tylko filmy bez dźwięku (np. mastodonowe „gify”)", - "mutes_tab": "Wyciszenia", - "play_videos_in_modal": "Odtwarzaj filmy bezpośrednio w przeglądarce mediów", - "use_contain_fit": "Nie przycinaj załączników na miniaturach", - "name": "Imię", - "name_bio": "Imię i bio", - "new_email": "Nowy email", - "new_password": "Nowe hasło", - "notification_visibility": "Rodzaje powiadomień do wyświetlania", - "notification_visibility_follows": "Obserwacje", - "notification_visibility_likes": "Ulubione", - "notification_visibility_mentions": "Wzmianki", - "notification_visibility_repeats": "Powtórzenia", - "notification_visibility_moves": "Użytkownik migruje", - "notification_visibility_emoji_reactions": "Reakcje", - "no_rich_text_description": "Usuwaj formatowanie ze wszystkich postów", - "no_blocks": "Bez blokad", - "no_mutes": "Bez wyciszeń", - "hide_follows_description": "Nie pokazuj kogo obserwuję", - "hide_followers_description": "Nie pokazuj kto mnie obserwuje", - "hide_follows_count_description": "Nie pokazuj licznika obserwowanych", - "hide_followers_count_description": "Nie pokazuj licznika obserwujących", - "show_admin_badge": "Pokazuj odznakę Administrator na moim profilu", - "show_moderator_badge": "Pokazuj odznakę Moderator na moim profilu", - "nsfw_clickthrough": "Włącz domyślne ukrywanie załączników o treści nieprzyzwoitej (NSFW)", - "oauth_tokens": "Tokeny OAuth", - "token": "Token", - "refresh_token": "Odśwież token", - "valid_until": "Ważne do", - "revoke_token": "Odwołać", - "panelRadius": "Panele", - "pause_on_unfocused": "Wstrzymuj strumieniowanie kiedy karta nie jest aktywna", - "presets": "Gotowe motywy", - "profile_background": "Tło profilu", - "profile_banner": "Banner profilu", - "profile_tab": "Profil", - "radii_help": "Ustaw zaokrąglenie krawędzi interfejsu (w pikselach)", - "replies_in_timeline": "Odpowiedzi na osi czasu", - "reply_link_preview": "Włącz dymek z podglądem postu po najechaniu na znak odpowiedzi", - "reply_visibility_all": "Pokazuj wszystkie odpowiedzi", - "reply_visibility_following": "Pokazuj tylko odpowiedzi skierowane do mnie i osób które obserwuję", - "reply_visibility_self": "Pokazuj tylko odpowiedzi skierowane do mnie", - "autohide_floating_post_button": "Ukryj automatycznie przycisk \"Nowy post\" (mobile)", - "saving_err": "Nie udało się zapisać ustawień", - "saving_ok": "Zapisano ustawienia", - "search_user_to_block": "Wyszukaj kogo chcesz zablokować", - "search_user_to_mute": "Wyszukaj kogo chcesz wyciszyć", - "security_tab": "Bezpieczeństwo", - "scope_copy": "Kopiuj zakres podczas odpowiadania (DM-y zawsze są kopiowane)", - "minimal_scopes_mode": "Zminimalizuj opcje wyboru zakresu postów", - "set_new_avatar": "Ustaw nowy awatar", - "set_new_profile_background": "Ustaw nowe tło profilu", - "set_new_profile_banner": "Ustaw nowy banner profilu", - "settings": "Ustawienia", - "subject_input_always_show": "Zawsze pokazuj pole tematu", - "subject_line_behavior": "Kopiuj temat podczas odpowiedzi", - "subject_line_email": "Jak w mailach – „re: temat”", - "subject_line_mastodon": "Jak na Mastodonie – po prostu kopiuj", - "subject_line_noop": "Nie kopiuj", - "post_status_content_type": "Post status content type", - "stop_gifs": "Odtwarzaj GIFy po najechaniu kursorem", - "streaming": "Włącz automatycznie strumieniowanie nowych postów gdy jesteś na początku strony", - "user_mutes": "Users", - "useStreamingApi": "Otrzymuj posty i powiadomienia w czasie rzeczywistym", - "useStreamingApiWarning": "(Niezalecane, eksperymentalne, pomija posty)", - "text": "Tekst", - "theme": "Motyw", - "theme_help": "Użyj kolorów w notacji szesnastkowej (#rrggbb), by stworzyć swój motyw.", - "theme_help_v2_1": "Możesz też zastąpić kolory i widoczność poszczególnych komponentów przełączając pola wyboru, użyj „Wyczyść wszystko” aby usunąć wszystkie zastąpienia.", - "theme_help_v2_2": "Ikony pod niektórych wpisami są wskaźnikami kontrastu pomiędzy tłem a tekstem, po najechaniu na nie otrzymasz szczegółowe informacje. Zapamiętaj, że jeżeli używasz przezroczystości, wskaźniki pokazują najgorszy możliwy przypadek.", - "tooltipRadius": "Etykiety/alerty", - "type_domains_to_mute": "Wpisz domeny, które chcesz wyciszyć", - "upload_a_photo": "Wyślij zdjęcie", - "user_settings": "Ustawienia użytkownika", - "values": { - "false": "nie", - "true": "tak" - }, - "fun": "Zabawa", - "greentext": "Memiczne strzałki", - "notifications": "Powiadomienia", - "notification_setting": "Otrzymuj powiadomienia od:", - "notification_setting_follows": "Ludzi których obserwujesz", - "notification_setting_non_follows": "Ludzi których nie obserwujesz", - "notification_setting_followers": "Ludzi którzy obserwują ciebie", - "notification_setting_non_followers": "Ludzi którzy nie obserwują ciebie", - "notification_mutes": "By przestać otrzymywać powiadomienia od jednego użytkownika, wycisz go", - "notification_blocks": "Blokowanie uzytkownika zatrzymuje wszystkie powiadomienia i odsubskrybowuje go.", - "enable_web_push_notifications": "Włącz powiadomienia push", - "style": { - "switcher": { - "keep_color": "Zachowaj kolory", - "keep_shadows": "Zachowaj cienie", - "keep_opacity": "Zachowaj widoczność", - "keep_roundness": "Zachowaj zaokrąglenie", - "keep_fonts": "Zachowaj czcionki", - "save_load_hint": "Opcje „zachowaj” pozwalają na pozostanie przy obecnych opcjach po wybraniu lub załadowaniu motywu, jak i przechowywanie ich podczas eksportowania motywu. Jeżeli wszystkie są odznaczone, eksportowanie motywu spowoduje zapisanie wszystkiego.", - "reset": "Wyzeruj", - "clear_all": "Wyczyść wszystko", - "clear_opacity": "Wyczyść widoczność", - "load_theme": "Załaduj motyw", - "keep_as_is": "Zostaw po staremu", - "use_snapshot": "Stara wersja", - "use_source": "Nowa wersja", - "help": { - "upgraded_from_v2": "PleromaFE zostało zaaktualizowane, motyw może wyglądać nieco inaczej niż sobie zapamiętałeś.", - "v2_imported": "Plik który zaimportowałeś został stworzony dla starszego FE. Próbujemy zwiększyć kompatybiliność, lecz wciąż mogą występować rozbieżności.", - "future_version_imported": "Plik który zaimportowałeś został stworzony w nowszej wersji FE.", - "older_version_imported": "Plik który zaimportowałeś został stworzony w starszej wersji FE.", - "snapshot_present": "Migawka motywu jest załadowana, więc wszystkie wartości zostały nadpisane. Zamiast tego, możesz załadować właściwe dane motywu", - "snapshot_missing": "Nie znaleziono migawki motywu w pliku, więc motyw może wyglądać inaczej niż pierwotnie zaplanowano.", - "fe_upgraded": "Silnik motywów PleromaFE został zaaktualizowany.", - "fe_downgraded": "Wersja PleromaFE została cofnięta.", - "migration_snapshot_ok": "Żeby być bezpiecznym, migawka motywu została załadowana. Możesz spróbować załadować dane motywu.", - "migration_napshot_gone": "Z jakiegoś powodu migawka zniknęła, niektóre rzeczy mogą wyglądać inaczej niż sobie zapamiętałeś.", - "snapshot_source_mismatch": "Konflikt wersji: najprawdopodobniej FE zostało cofnięte do poprzedniej wersji i zaaktualizowane ponownie, jeśli zmieniłeś motyw używając starszej wersji FE, najprawdopodobniej chcesz używać starszej wersji, w przeciwnym razie użyj nowej wersji." - } - }, - "common": { - "color": "Kolor", - "opacity": "Widoczność", - "contrast": { - "hint": "Współczynnik kontrastu wynosi {ratio}, {level} {context}", - "level": { - "aa": "spełnia wymogi poziomu AA (minimalne)", - "aaa": "spełnia wymogi poziomu AAA (zalecane)", - "bad": "nie spełnia żadnych wymogów dostępności" - }, - "context": { - "18pt": "dla dużego tekstu (18pt+)", - "text": "dla tekstu" - } - } - }, - "common_colors": { - "_tab_label": "Ogólne", - "main": "Ogólne kolory", - "foreground_hint": "Zajrzyj do karty „Zaawansowane”, aby uzyskać dokładniejszą kontrolę", - "rgbo": "Ikony, wyróżnienia, odznaki" - }, - "advanced_colors": { - "_tab_label": "Zaawansowane", - "alert": "Tło alertu", - "alert_error": "Błąd", - "alert_warning": "Ostrzeżenie", - "alert_neutral": "Neutralne", - "post": "Posty/Bio użytkowników", - "badge": "Tło odznaki", - "popover": "Etykiety, menu, popovery", - "badge_notification": "Powiadomienie", - "panel_header": "Nagłówek panelu", - "top_bar": "Górny pasek", - "borders": "Granice", - "buttons": "Przyciski", - "inputs": "Pola wejścia", - "faint_text": "Zanikający tekst", - "underlay": "Podkład", - "poll": "Wykres ankiety", - "icons": "Ikony", - "highlight": "Podświetlone elementy", - "pressed": "Naciśnięte", - "selectedPost": "Wybrany post", - "selectedMenu": "Wybrany element menu", - "disabled": "Wyłączone", - "toggled": "Przełączone", - "tabs": "Karty" - }, - "radii": { - "_tab_label": "Zaokrąglenie" - }, - "shadows": { - "_tab_label": "Cień i podświetlenie", - "component": "Komponent", - "override": "Zastąp", - "shadow_id": "Cień #{value}", - "blur": "Rozmycie", - "spread": "Szerokość", - "inset": "Inset", - "hintV3": "Dla cieni możesz również użyć notacji {0} by użyć inny slot koloru.", - "filter_hint": { - "always_drop_shadow": "Ostrzeżenie, ten cień zawsze używa {0} jeżeli to obsługiwane przez przeglądarkę.", - "drop_shadow_syntax": "{0} nie obsługuje parametru {1} i słowa kluczowego {2}.", - "avatar_inset": "Pamiętaj że użycie jednocześnie cieni inset i nie inset na awatarach może daćnieoczekiwane wyniki z przezroczystymi awatarami.", - "spread_zero": "Cienie o ujemnej szerokości będą widoczne tak, jakby wynosiła ona zero", - "inset_classic": "Cienie inset będą używały {0}" + "about": { + "mrf": { + "federation": "Federacja", + "keyword": { + "keyword_policies": "Zasady słów kluczowych", + "ftl_removal": "Usunięcie z \"Całej znanej sieci\"", + "reject": "Odrzucanie", + "replace": "Zastąpienie", + "is_replaced_by": "→" + }, + "mrf_policies": "Włączone zasady MRF", + "mrf_policies_desc": "Zasady MRF zmieniają zachowanie federowania instancji. Następujące zasady są włączone:", + "simple": { + "simple_policies": "Zasady specyficzne dla instancji", + "accept": "Akceptowanie", + "accept_desc": "Ta instancja akceptuje tylko posty z wymienionych instancji:", + "reject": "Odrzucanie", + "reject_desc": "Ta instancja odrzuca posty z wymienionych instancji:", + "quarantine": "Kwarantanna", + "quarantine_desc": "Ta instancja wysyła tylko publiczne posty do wymienionych instancji:", + "ftl_removal": "Usunięcie z \"Całej znanej sieci\"", + "ftl_removal_desc": "Ta instancja usuwa wymienionych instancje z \"Całej znanej sieci\":", + "media_removal": "Usuwanie multimediów", + "media_removal_desc": "Ta instancja usuwa multimedia z postów od wymienionych instancji:", + "media_nsfw": "Multimedia ustawione jako wrażliwe", + "media_nsfw_desc": "Ta instancja wymusza, by multimedia z wymienionych instancji były ustawione jako wrażliwe:" + } }, - "components": { - "panel": "Panel", - "panelHeader": "Nagłówek panelu", - "topBar": "Górny pasek", - "avatar": "Awatar użytkownika (w widoku profilu)", - "avatarStatus": "Awatar użytkownika (w widoku wpisu)", - "popup": "Wyskakujące okna i podpowiedzi", - "button": "Przycisk", - "buttonHover": "Przycisk (po najechaniu)", - "buttonPressed": "Przycisk (naciśnięty)", - "buttonPressedHover": "Przycisk(naciśnięty+najechany)", - "input": "Pole wejścia" + "staff": "Obsługa" + }, + "chat": { + "title": "Czat" + }, + "domain_mute_card": { + "mute": "Wycisz", + "mute_progress": "Wyciszam...", + "unmute": "Odcisz", + "unmute_progress": "Odciszam..." + }, + "exporter": { + "export": "Eksportuj", + "processing": "Przetwarzam, za chwilę zostaniesz zapytany o ściągnięcie pliku" + }, + "features_panel": { + "chat": "Czat", + "gopher": "Gopher", + "media_proxy": "Proxy mediów", + "scope_options": "Ustawienia zakresu", + "text_limit": "Limit tekstu", + "title": "Funkcje", + "who_to_follow": "Propozycje obserwacji" + }, + "finder": { + "error_fetching_user": "Błąd przy pobieraniu profilu", + "find_user": "Znajdź użytkownika" + }, + "general": { + "apply": "Zastosuj", + "submit": "Wyślij", + "more": "Więcej", + "generic_error": "Wystąpił błąd", + "optional": "nieobowiązkowe", + "show_more": "Pokaż więcej", + "show_less": "Pokaż mniej", + "dismiss": "Odrzuć", + "cancel": "Anuluj", + "disable": "Wyłącz", + "enable": "Włącz", + "confirm": "Potwierdź", + "verify": "Zweryfikuj" + }, + "image_cropper": { + "crop_picture": "Przytnij obrazek", + "save": "Zapisz", + "save_without_cropping": "Zapisz bez przycinania", + "cancel": "Anuluj" + }, + "importer": { + "submit": "Wyślij", + "success": "Zaimportowano pomyślnie.", + "error": "Wystąpił błąd podczas importowania pliku." + }, + "login": { + "login": "Zaloguj", + "description": "Zaloguj używając OAuth", + "logout": "Wyloguj", + "password": "Hasło", + "placeholder": "n.p. lain", + "register": "Zarejestruj", + "username": "Użytkownik", + "hint": "Zaloguj się, aby dołączyć do dyskusji", + "authentication_code": "Kod weryfikacyjny", + "enter_recovery_code": "Wprowadź kod zapasowy", + "enter_two_factor_code": "Wprowadź kod weryfikacyjny", + "recovery_code": "Kod zapasowy", + "heading": { + "totp": "Weryfikacja dwuetapowa", + "recovery": "Zapasowa weryfikacja dwuetapowa" } - }, - "fonts": { - "_tab_label": "Czcionki", - "help": "Wybierz czcionkę używaną przez elementy UI. Jeżeli wybierzesz niestandardową, musisz wpisać dokładnie tę nazwę, pod którą pojawia się w systemie.", - "components": { - "interface": "Interfejs", - "input": "Pola wejścia", - "post": "Tekst postu", - "postCode": "Tekst o stałej szerokości znaków w sformatowanym poście" + }, + "media_modal": { + "previous": "Poprzednie", + "next": "Następne" + }, + "nav": { + "about": "O nas", + "administration": "Administracja", + "back": "Wróć", + "chat": "Lokalny czat", + "friend_requests": "Prośby o możliwość obserwacji", + "mentions": "Wzmianki", + "interactions": "Interakcje", + "dms": "Wiadomości prywatne", + "public_tl": "Publiczna oś czasu", + "timeline": "Oś czasu", + "twkn": "Cała znana sieć", + "user_search": "Wyszukiwanie użytkowników", + "search": "Wyszukiwanie", + "who_to_follow": "Sugestie obserwacji", + "preferences": "Preferencje" + }, + "notifications": { + "broken_favorite": "Nieznany status, szukam go…", + "favorited_you": "dodał(-a) twój status do ulubionych", + "followed_you": "obserwuje cię", + "load_older": "Załaduj starsze powiadomienia", + "notifications": "Powiadomienia", + "read": "Przeczytane!", + "repeated_you": "powtórzył(-a) twój status", + "no_more_notifications": "Nie masz więcej powiadomień", + "migrated_to": "wyemigrował do", + "reacted_with": "zareagował z {0}", + "follow_request": "chce cię obserwować" + }, + "polls": { + "add_poll": "Dodaj ankietę", + "add_option": "Dodaj opcję", + "option": "Opcja", + "votes": "głosów", + "vote": "Głosuj", + "type": "Typ ankiety", + "single_choice": "jednokrotnego wyboru", + "multiple_choices": "wielokrotnego wyboru", + "expiry": "Czas trwania ankiety", + "expires_in": "Ankieta kończy się za{0}", + "expired": "Ankieta skończyła się {0} temu", + "not_enough_options": "Zbyt mało unikalnych opcji w ankiecie" + }, + "emoji": { + "stickers": "Naklejki", + "emoji": "Emoji", + "keep_open": "Zostaw selektor otwarty", + "search_emoji": "Wyszukaj emoji", + "add_emoji": "Wstaw emoji", + "custom": "Niestandardowe emoji", + "unicode": "Emoji unicode", + "load_all_hint": "Załadowano pierwsze {saneAmount} emoji, Załadowanie wszystkich emoji może spowodować problemy z wydajnością.", + "load_all": "Ładuję wszystkie {emojiAmount} emoji" + }, + "interactions": { + "favs_repeats": "Powtórzenia i ulubione", + "follows": "Nowi obserwujący", + "moves": "Użytkownik migruje", + "load_older": "Załaduj starsze interakcje" + }, + "post_status": { + "new_status": "Dodaj nowy status", + "account_not_locked_warning": "Twoje konto nie jest {0}. Każdy może cię zaobserwować aby zobaczyć wpisy tylko dla obserwujących.", + "account_not_locked_warning_link": "zablokowane", + "attachments_sensitive": "Oznacz załączniki jako wrażliwe", + "content_type": { + "text/plain": "Czysty tekst", + "text/html": "HTML", + "text/markdown": "Markdown", + "text/bbcode": "BBCode" }, - "family": "Nazwa czcionki", - "size": "Rozmiar (w pikselach)", - "weight": "Grubość", - "custom": "Niestandardowa" - }, - "preview": { - "header": "Podgląd", - "content": "Zawartość", - "error": "Przykładowy błąd", - "button": "Przycisk", - "text": "Trochę więcej {0} i {1}", - "mono": "treści", - "input": "Właśnie wróciłem z kościoła", - "faint_link": "pomocny podręcznik", - "fine_print": "Przeczytaj nasz {0}, aby nie nauczyć się niczego przydatnego!", - "header_faint": "W porządku", - "checkbox": "Przeleciałem przez zasady użytkowania", - "link": "i fajny mały odnośnik" - } + "content_warning": "Temat (nieobowiązkowy)", + "default": "Właśnie wróciłem z kościoła", + "direct_warning_to_all": "Ten wpis zobaczą wszystkie osoby, o których wspomniałeś(-aś).", + "direct_warning_to_first_only": "Ten wpis zobaczą tylko te osoby, o których wspomniałeś(-aś) na początku wiadomości.", + "posting": "Wysyłanie", + "scope_notice": { + "public": "Ten post będzie widoczny dla każdego", + "private": "Ten post będzie widoczny tylko dla twoich obserwujących", + "unlisted": "Ten post nie będzie widoczny na publicznej osi czasu i całej znanej sieci" + }, + "scope": { + "direct": "Bezpośredni – Tylko dla wspomnianych użytkowników", + "private": "Tylko dla obserwujących – Umieść dla osób, które cię obserwują", + "public": "Publiczny – Umieść na publicznych osiach czasu", + "unlisted": "Niewidoczny – Nie umieszczaj na publicznych osiach czasu" + } }, - "version": { - "title": "Wersja", - "backend_version": "Wersja back-endu", - "frontend_version": "Wersja front-endu" - } - }, - "time": { - "day": "{0} dzień", - "days": "{0} dni", - "day_short": "{0}d", - "days_short": "{0}d", - "hour": "{0} godzina", - "hours": "{0} godzin", - "hour_short": "{0} godz.", - "hours_short": "{0} godz.", - "in_future": "za {0}", - "in_past": "{0} temu", - "minute": "{0} minuta", - "minutes": "{0} minut", - "minute_short": "{0}min", - "minutes_short": "{0}min", - "month": "{0} miesiąc", - "months": "{0} miesięcy", - "month_short": "{0} mies.", - "months_short": "{0} mies.", - "now": "teraz", - "now_short": "teraz", - "second": "{0} sekunda", - "seconds": "{0} sekund", - "second_short": "{0}s", - "seconds_short": "{0}s", - "week": "{0} tydzień", - "weeks": "{0} tygodni", - "week_short": "{0} tydz.", - "weeks_short": "{0} tyg.", - "year": "{0} rok", - "years": "{0} lata", - "year_short": "{0} r.", - "years_short": "{0} lata" - }, - "timeline": { - "collapse": "Zwiń", - "conversation": "Rozmowa", - "error_fetching": "Błąd pobierania", - "load_older": "Załaduj starsze statusy", - "no_retweet_hint": "Wpis oznaczony jako tylko dla obserwujących lub bezpośredni nie może zostać powtórzony", - "repeated": "powtórzył(-a)", - "show_new": "Pokaż nowe", - "up_to_date": "Na bieżąco", - "no_more_statuses": "Brak kolejnych statusów", - "no_statuses": "Brak statusów" - }, - "status": { - "favorites": "Ulubione", - "repeats": "Powtórzenia", - "delete": "Usuń status", - "pin": "Przypnij na profilu", - "unpin": "Odepnij z profilu", - "pinned": "Przypnięte", - "delete_confirm": "Czy naprawdę chcesz usunąć ten status?", - "reply_to": "Odpowiedź dla", - "replies_list": "Odpowiedzi:", - "mute_conversation": "Wycisz konwersację", - "unmute_conversation": "Odcisz konwersację" - }, - "user_card": { - "approve": "Przyjmij", - "block": "Zablokuj", - "blocked": "Zablokowany!", - "deny": "Odrzuć", - "favorites": "Ulubione", - "follow": "Obserwuj", - "follow_sent": "Wysłano prośbę!", - "follow_progress": "Wysyłam prośbę…", - "follow_again": "Wysłać prośbę ponownie?", - "follow_unfollow": "Przestań obserwować", - "followees": "Obserwowani", - "followers": "Obserwujący", - "following": "Obserwowany!", - "follows_you": "Obserwuje cię!", - "hidden": "Ukryte", - "its_you": "To ty!", - "media": "Media", - "mention": "Wspomnienie", - "mute": "Wycisz", - "muted": "Wyciszony(-a)", - "per_day": "dziennie", - "remote_follow": "Zdalna obserwacja", - "report": "Raportuj", - "statuses": "Statusy", - "subscribe": "Subskrybuj", - "unsubscribe": "Odsubskrybuj", - "unblock": "Odblokuj", - "unblock_progress": "Odblokowuję…", - "block_progress": "Blokuję…", - "unmute": "Cofnij wyciszenie", - "unmute_progress": "Cofam wyciszenie…", - "mute_progress": "Wyciszam…", - "hide_repeats": "Ukryj powtórzenia", - "show_repeats": "Pokaż powtórzenia", - "admin_menu": { - "moderation": "Moderacja", - "grant_admin": "Przyznaj admina", - "revoke_admin": "Odwołaj admina", - "grant_moderator": "Przyznaj moderatora", - "revoke_moderator": "Odwołaj moderatora", - "activate_account": "Aktywuj konto", - "deactivate_account": "Dezaktywuj konto", - "delete_account": "Usuń konto", - "force_nsfw": "Oznacz wszystkie posty jako NSFW", - "strip_media": "Usuń multimedia z postów", - "force_unlisted": "Wymuś posty na niepubliczne", - "sandbox": "Wymuś by posty były tylko dla obserwujących", - "disable_remote_subscription": "Zakaż obserwowania użytkownika ze zdalnych instancji", - "disable_any_subscription": "Zakaż całkowicie obserwowania użytkownika", - "quarantine": "Zakaż federowania postów od tego użytkownika", - "delete_user": "Usuń użytkownika", - "delete_user_confirmation": "Czy jesteś absolutnie pewny? Ta operacja nie może być cofnięta." - } - }, - "user_profile": { - "timeline_title": "Oś czasu użytkownika", - "profile_does_not_exist": "Przepraszamy, ten profil nie istnieje.", - "profile_loading_error": "Przepraszamy, wystąpił błąd podczas ładowania tego profilu." - }, - "user_reporting": { - "title": "Raportowanie {0}", - "add_comment_description": "Raport zostanie wysłany do moderatorów instancji. Możesz dodać powód dlaczego raportujesz to konto poniżej:", - "additional_comments": "Dodatkowe komentarze", - "forward_description": "To konto jest z innego serwera. Wysłać również tam kopię raportu?", - "forward_to": "Przekaż do{0}", - "submit": "Wyślij", - "generic_error": "Wystąpił błąd podczas przetwarzania twojej prośby." - }, - "who_to_follow": { - "more": "Więcej", - "who_to_follow": "Propozycje obserwacji" - }, - "tool_tip": { - "media_upload": "Wyślij media", - "repeat": "Powtórz", - "reply": "Odpowiedz", - "favorite": "Dodaj do ulubionych", - "add_reaction": "Dodaj reakcję", - "user_settings": "Ustawienia użytkownika" - }, - "upload":{ - "error": { - "base": "Wysyłanie nie powiodło się.", - "file_too_big": "Zbyt duży plik [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "Spróbuj ponownie później" + "registration": { + "bio": "Bio", + "email": "E-mail", + "fullname": "Wyświetlana nazwa profilu", + "password_confirm": "Potwierdzenie hasła", + "registration": "Rejestracja", + "token": "Token zaproszenia", + "captcha": "CAPTCHA", + "new_captcha": "Naciśnij na obrazek, aby dostać nowy kod captcha", + "username_placeholder": "np. lain", + "fullname_placeholder": "np. Lain Iwakura", + "bio_placeholder": "e.g.\nCześć, jestem Lain.\nJestem dziewczynką z anime żyjącą na peryferiach Japonii. Możesz znać mnie z Wired.", + "validations": { + "username_required": "nie może być pusta", + "fullname_required": "nie może być pusta", + "email_required": "nie może być pusty", + "password_required": "nie może być puste", + "password_confirmation_required": "nie może być puste", + "password_confirmation_match": "musi być takie jak hasło" + } }, - "file_size_units": { - "B": "B", - "KiB": "KiB", - "MiB": "MiB", - "GiB": "GiB", - "TiB": "TiB" + "remote_user_resolver": { + "remote_user_resolver": "Wyszukiwarka użytkowników nietutejszych", + "searching_for": "Szukam", + "error": "Nie znaleziono." + }, + "selectable_list": { + "select_all": "Zaznacz wszystko" + }, + "settings": { + "app_name": "Nazwa aplikacji", + "security": "Bezpieczeństwo", + "enter_current_password_to_confirm": "Wprowadź obecne hasło, by potwierdzić twoją tożsamość", + "mfa": { + "otp": "OTP", + "setup_otp": "Ustaw OTP", + "wait_pre_setup_otp": "początkowe ustawianie OTP", + "confirm_and_enable": "Potwierdź i włącz OTP", + "title": "Weryfikacja dwuetapowa", + "generate_new_recovery_codes": "Wygeneruj nowe kody zapasowe", + "warning_of_generate_new_codes": "Po tym gdy generujesz nowe kody zapasowe, stare przestaną działać.", + "recovery_codes": "Kody zapasowe.", + "waiting_a_recovery_codes": "Otrzymuję kody zapasowe...", + "recovery_codes_warning": "Spisz kody na kartce papieru, albo zapisz je w bezpiecznym miejscu - inaczej nie zobaczysz ich już nigdy. Jeśli stracisz dostęp do twojej aplikacji 2FA i kodów zapasowych, nie będziesz miał dostępu do swojego konta.", + "authentication_methods": "Metody weryfikacji", + "scan": { + "title": "Skanuj", + "desc": "Zeskanuj ten kod QR używając twojej aplikacji 2FA albo wpisz ten klucz:", + "secret_code": "Klucz" + }, + "verify": { + "desc": "By włączyć weryfikację dwuetapową, wpisz kod z twojej aplikacji 2FA:" + } + }, + "allow_following_move": "Zezwalaj na automatyczną obserwację gdy obserwowane konto migruje", + "attachmentRadius": "Załączniki", + "attachments": "Załączniki", + "autoload": "Włącz automatyczne ładowanie po przewinięciu do końca strony", + "avatar": "Awatar", + "avatarAltRadius": "Awatary (powiadomienia)", + "avatarRadius": "Awatary", + "background": "Tło", + "bio": "Bio", + "block_export": "Eksport blokad", + "block_export_button": "Eksportuj twoje blokady do pliku .csv", + "block_import": "Import blokad", + "block_import_error": "Wystąpił błąd podczas importowania blokad", + "blocks_imported": "Zaimportowano blokady, przetwarzanie może zająć trochę czasu.", + "blocks_tab": "Bloki", + "btnRadius": "Przyciski", + "cBlue": "Niebieski (odpowiedz, obserwuj)", + "cGreen": "Zielony (powtórzenia)", + "cOrange": "Pomarańczowy (ulubione)", + "cRed": "Czerwony (anuluj)", + "change_email": "Zmień email", + "change_email_error": "Wystąpił problem podczas zmiany emaila.", + "changed_email": "Pomyślnie zmieniono email!", + "change_password": "Zmień hasło", + "change_password_error": "Podczas zmiany hasła wystąpił problem.", + "changed_password": "Pomyślnie zmieniono hasło!", + "collapse_subject": "Zwijaj posty z tematami", + "composing": "Pisanie", + "confirm_new_password": "Potwierdź nowe hasło", + "current_avatar": "Twój obecny awatar", + "current_password": "Obecne hasło", + "current_profile_banner": "Twój obecny banner profilu", + "data_import_export_tab": "Import/eksport danych", + "default_vis": "Domyślny zakres widoczności", + "delete_account": "Usuń konto", + "delete_account_description": "Trwale usuń konto i wszystkie posty.", + "delete_account_error": "Wystąpił problem z usuwaniem twojego konta. Jeżeli problem powtarza się, poinformuj administratora swojej instancji.", + "delete_account_instructions": "Wprowadź swoje hasło w poniższe pole aby potwierdzić usunięcie konta.", + "discoverable": "Zezwól na odkrywanie tego konta w wynikach wyszukiwania i innych usługach", + "domain_mutes": "Domeny", + "avatar_size_instruction": "Zalecany minimalny rozmiar awatarów to 150x150 pikseli.", + "pad_emoji": "Dodaj odstęp z obu stron emoji podczas dodawania selektorem", + "emoji_reactions_on_timeline": "Pokaż reakcje emoji na osi czasu", + "export_theme": "Zapisz motyw", + "filtering": "Filtrowanie", + "filtering_explanation": "Wszystkie statusy zawierające te słowa będą wyciszone. Jedno słowo na linijkę.", + "follow_export": "Eksport obserwowanych", + "follow_export_button": "Eksportuj swoją listę obserwowanych do pliku CSV", + "follow_import": "Import obserwowanych", + "follow_import_error": "Błąd przy importowaniu obserwowanych", + "follows_imported": "Obserwowani zaimportowani! Przetwarzanie może trochę potrwać.", + "accent": "Akcent", + "foreground": "Pierwszy plan", + "general": "Ogólne", + "hide_attachments_in_convo": "Ukrywaj załączniki w rozmowach", + "hide_attachments_in_tl": "Ukrywaj załączniki w osi czasu", + "hide_muted_posts": "Ukrywaj wpisy wyciszonych użytkowników", + "max_thumbnails": "Maksymalna liczba miniatur w poście", + "hide_isp": "Ukryj panel informacji o instancji", + "preload_images": "Ładuj wstępnie obrazy", + "use_one_click_nsfw": "Otwieraj załączniki NSFW jednym kliknięciem", + "hide_post_stats": "Ukrywaj statysyki postów (np. liczbę polubień)", + "hide_user_stats": "Ukrywaj statysyki użytkowników (np. liczbę obserwujących)", + "hide_filtered_statuses": "Ukrywaj filtrowane statusy", + "import_blocks_from_a_csv_file": "Importuj blokady z pliku CSV", + "import_followers_from_a_csv_file": "Importuj obserwowanych z pliku CSV", + "import_theme": "Załaduj motyw", + "inputRadius": "Pola tekstowe", + "checkboxRadius": "Pola wyboru", + "instance_default": "(domyślny: {value})", + "instance_default_simple": "(domyślny)", + "interface": "Interfejs", + "interfaceLanguage": "Język interfejsu", + "invalid_theme_imported": "Wybrany plik nie jest obsługiwanym motywem Pleromy. Nie dokonano zmian w twoim motywie.", + "limited_availability": "Niedostępne w twojej przeglądarce", + "links": "Łącza", + "lock_account_description": "Ogranicz swoje konto dla zatwierdzonych obserwowanych", + "loop_video": "Zapętlaj filmy", + "loop_video_silent_only": "Zapętlaj tylko filmy bez dźwięku (np. mastodonowe „gify”)", + "mutes_tab": "Wyciszenia", + "play_videos_in_modal": "Odtwarzaj filmy bezpośrednio w przeglądarce mediów", + "use_contain_fit": "Nie przycinaj załączników na miniaturach", + "name": "Imię", + "name_bio": "Imię i bio", + "new_email": "Nowy email", + "new_password": "Nowe hasło", + "notification_visibility": "Rodzaje powiadomień do wyświetlania", + "notification_visibility_follows": "Obserwacje", + "notification_visibility_likes": "Ulubione", + "notification_visibility_mentions": "Wzmianki", + "notification_visibility_repeats": "Powtórzenia", + "notification_visibility_moves": "Użytkownik migruje", + "notification_visibility_emoji_reactions": "Reakcje", + "no_rich_text_description": "Usuwaj formatowanie ze wszystkich postów", + "no_blocks": "Bez blokad", + "no_mutes": "Bez wyciszeń", + "hide_follows_description": "Nie pokazuj kogo obserwuję", + "hide_followers_description": "Nie pokazuj kto mnie obserwuje", + "hide_follows_count_description": "Nie pokazuj licznika obserwowanych", + "hide_followers_count_description": "Nie pokazuj licznika obserwujących", + "show_admin_badge": "Pokazuj odznakę Administrator na moim profilu", + "show_moderator_badge": "Pokazuj odznakę Moderator na moim profilu", + "nsfw_clickthrough": "Włącz domyślne ukrywanie załączników o treści nieprzyzwoitej (NSFW)", + "oauth_tokens": "Tokeny OAuth", + "token": "Token", + "refresh_token": "Odśwież token", + "valid_until": "Ważne do", + "revoke_token": "Odwołać", + "panelRadius": "Panele", + "pause_on_unfocused": "Wstrzymuj strumieniowanie kiedy karta nie jest aktywna", + "presets": "Gotowe motywy", + "profile_background": "Tło profilu", + "profile_banner": "Banner profilu", + "profile_tab": "Profil", + "radii_help": "Ustaw zaokrąglenie krawędzi interfejsu (w pikselach)", + "replies_in_timeline": "Odpowiedzi na osi czasu", + "reply_link_preview": "Włącz dymek z podglądem postu po najechaniu na znak odpowiedzi", + "reply_visibility_all": "Pokazuj wszystkie odpowiedzi", + "reply_visibility_following": "Pokazuj tylko odpowiedzi skierowane do mnie i osób które obserwuję", + "reply_visibility_self": "Pokazuj tylko odpowiedzi skierowane do mnie", + "autohide_floating_post_button": "Ukryj automatycznie przycisk \"Nowy post\" (mobile)", + "saving_err": "Nie udało się zapisać ustawień", + "saving_ok": "Zapisano ustawienia", + "search_user_to_block": "Wyszukaj kogo chcesz zablokować", + "search_user_to_mute": "Wyszukaj kogo chcesz wyciszyć", + "security_tab": "Bezpieczeństwo", + "scope_copy": "Kopiuj zakres podczas odpowiadania (DM-y zawsze są kopiowane)", + "minimal_scopes_mode": "Zminimalizuj opcje wyboru zakresu postów", + "set_new_avatar": "Ustaw nowy awatar", + "set_new_profile_background": "Ustaw nowe tło profilu", + "set_new_profile_banner": "Ustaw nowy banner profilu", + "settings": "Ustawienia", + "subject_input_always_show": "Zawsze pokazuj pole tematu", + "subject_line_behavior": "Kopiuj temat podczas odpowiedzi", + "subject_line_email": "Jak w mailach – „re: temat”", + "subject_line_mastodon": "Jak na Mastodonie – po prostu kopiuj", + "subject_line_noop": "Nie kopiuj", + "post_status_content_type": "Post status content type", + "stop_gifs": "Odtwarzaj GIFy po najechaniu kursorem", + "streaming": "Włącz automatycznie strumieniowanie nowych postów gdy jesteś na początku strony", + "user_mutes": "Użytkownicy", + "useStreamingApi": "Otrzymuj posty i powiadomienia w czasie rzeczywistym", + "useStreamingApiWarning": "(Niezalecane, eksperymentalne, pomija posty)", + "text": "Tekst", + "theme": "Motyw", + "theme_help": "Użyj kolorów w notacji szesnastkowej (#rrggbb), by stworzyć swój motyw.", + "theme_help_v2_1": "Możesz też zastąpić kolory i widoczność poszczególnych komponentów przełączając pola wyboru, użyj „Wyczyść wszystko” aby usunąć wszystkie zastąpienia.", + "theme_help_v2_2": "Ikony pod niektórych wpisami są wskaźnikami kontrastu pomiędzy tłem a tekstem, po najechaniu na nie otrzymasz szczegółowe informacje. Zapamiętaj, że jeżeli używasz przezroczystości, wskaźniki pokazują najgorszy możliwy przypadek.", + "tooltipRadius": "Etykiety/alerty", + "type_domains_to_mute": "Wpisz domeny, które chcesz wyciszyć", + "upload_a_photo": "Wyślij zdjęcie", + "user_settings": "Ustawienia użytkownika", + "values": { + "false": "nie", + "true": "tak" + }, + "fun": "Zabawa", + "greentext": "Memiczne strzałki", + "notifications": "Powiadomienia", + "notification_setting": "Otrzymuj powiadomienia od:", + "notification_setting_follows": "Ludzi których obserwujesz", + "notification_setting_non_follows": "Ludzi których nie obserwujesz", + "notification_setting_followers": "Ludzi którzy obserwują ciebie", + "notification_setting_non_followers": "Ludzi którzy nie obserwują ciebie", + "notification_mutes": "By przestać otrzymywać powiadomienia od jednego użytkownika, wycisz go.", + "notification_blocks": "Blokowanie uzytkownika zatrzymuje wszystkie powiadomienia i odsubskrybowuje go.", + "enable_web_push_notifications": "Włącz powiadomienia push", + "style": { + "switcher": { + "keep_color": "Zachowaj kolory", + "keep_shadows": "Zachowaj cienie", + "keep_opacity": "Zachowaj widoczność", + "keep_roundness": "Zachowaj zaokrąglenie", + "keep_fonts": "Zachowaj czcionki", + "save_load_hint": "Opcje „zachowaj” pozwalają na pozostanie przy obecnych opcjach po wybraniu lub załadowaniu motywu, jak i przechowywanie ich podczas eksportowania motywu. Jeżeli wszystkie są odznaczone, eksportowanie motywu spowoduje zapisanie wszystkiego.", + "reset": "Wyzeruj", + "clear_all": "Wyczyść wszystko", + "clear_opacity": "Wyczyść widoczność", + "load_theme": "Załaduj motyw", + "keep_as_is": "Zostaw po staremu", + "use_snapshot": "Stara wersja", + "use_source": "Nowa wersja", + "help": { + "upgraded_from_v2": "PleromaFE zostało zaaktualizowane, motyw może wyglądać nieco inaczej niż sobie zapamiętałeś.", + "v2_imported": "Plik który zaimportowałeś został stworzony dla starszego FE. Próbujemy zwiększyć kompatybiliność, lecz wciąż mogą występować rozbieżności.", + "future_version_imported": "Plik który zaimportowałeś został stworzony w nowszej wersji FE.", + "older_version_imported": "Plik który zaimportowałeś został stworzony w starszej wersji FE.", + "snapshot_present": "Migawka motywu jest załadowana, więc wszystkie wartości zostały nadpisane. Zamiast tego możesz załadować właściwe dane motywu.", + "snapshot_missing": "Nie znaleziono migawki motywu w pliku, więc motyw może wyglądać inaczej niż pierwotnie zaplanowano.", + "fe_upgraded": "Silnik motywów PleromaFE został zaaktualizowany.", + "fe_downgraded": "Wersja PleromaFE została cofnięta.", + "migration_snapshot_ok": "Żeby być bezpiecznym, migawka motywu została załadowana. Możesz spróbować załadować dane motywu.", + "migration_napshot_gone": "Z jakiegoś powodu migawka zniknęła, niektóre rzeczy mogą wyglądać inaczej niż sobie zapamiętałeś.", + "snapshot_source_mismatch": "Konflikt wersji: najprawdopodobniej FE zostało cofnięte do poprzedniej wersji i zaaktualizowane ponownie, jeśli zmieniłeś motyw używając starszej wersji FE, najprawdopodobniej chcesz używać starszej wersji, w przeciwnym razie użyj nowej wersji." + } + }, + "common": { + "color": "Kolor", + "opacity": "Widoczność", + "contrast": { + "hint": "Współczynnik kontrastu wynosi {ratio}, {level} {context}", + "level": { + "aa": "spełnia wymogi poziomu AA (minimalne)", + "aaa": "spełnia wymogi poziomu AAA (zalecane)", + "bad": "nie spełnia żadnych wymogów dostępności" + }, + "context": { + "18pt": "dla dużego tekstu (18pt+)", + "text": "dla tekstu" + } + } + }, + "common_colors": { + "_tab_label": "Ogólne", + "main": "Ogólne kolory", + "foreground_hint": "Zajrzyj do karty „Zaawansowane”, aby uzyskać dokładniejszą kontrolę", + "rgbo": "Ikony, wyróżnienia, odznaki" + }, + "advanced_colors": { + "_tab_label": "Zaawansowane", + "alert": "Tło alertu", + "alert_error": "Błąd", + "alert_warning": "Ostrzeżenie", + "alert_neutral": "Neutralne", + "post": "Posty/Bio użytkowników", + "badge": "Tło odznaki", + "popover": "Etykiety, menu, popovery", + "badge_notification": "Powiadomienie", + "panel_header": "Nagłówek panelu", + "top_bar": "Górny pasek", + "borders": "Granice", + "buttons": "Przyciski", + "inputs": "Pola wejścia", + "faint_text": "Zanikający tekst", + "underlay": "Podkład", + "poll": "Wykres ankiety", + "icons": "Ikony", + "highlight": "Podświetlone elementy", + "pressed": "Naciśnięte", + "selectedPost": "Wybrany post", + "selectedMenu": "Wybrany element menu", + "disabled": "Wyłączone", + "toggled": "Przełączone", + "tabs": "Karty" + }, + "radii": { + "_tab_label": "Zaokrąglenie" + }, + "shadows": { + "_tab_label": "Cień i podświetlenie", + "component": "Komponent", + "override": "Zastąp", + "shadow_id": "Cień #{value}", + "blur": "Rozmycie", + "spread": "Szerokość", + "inset": "Inset", + "hintV3": "Dla cieni możesz również użyć notacji {0} by użyć inny slot koloru.", + "filter_hint": { + "always_drop_shadow": "Ostrzeżenie, ten cień zawsze używa {0} jeżeli to obsługiwane przez przeglądarkę.", + "drop_shadow_syntax": "{0} nie obsługuje parametru {1} i słowa kluczowego {2}.", + "avatar_inset": "Pamiętaj że użycie jednocześnie cieni inset i nie inset na awatarach może daćnieoczekiwane wyniki z przezroczystymi awatarami.", + "spread_zero": "Cienie o ujemnej szerokości będą widoczne tak, jakby wynosiła ona zero", + "inset_classic": "Cienie inset będą używały {0}" + }, + "components": { + "panel": "Panel", + "panelHeader": "Nagłówek panelu", + "topBar": "Górny pasek", + "avatar": "Awatar użytkownika (w widoku profilu)", + "avatarStatus": "Awatar użytkownika (w widoku wpisu)", + "popup": "Wyskakujące okna i podpowiedzi", + "button": "Przycisk", + "buttonHover": "Przycisk (po najechaniu)", + "buttonPressed": "Przycisk (naciśnięty)", + "buttonPressedHover": "Przycisk(naciśnięty+najechany)", + "input": "Pole wejścia" + } + }, + "fonts": { + "_tab_label": "Czcionki", + "help": "Wybierz czcionkę używaną przez elementy UI. Jeżeli wybierzesz niestandardową, musisz wpisać dokładnie tę nazwę, pod którą pojawia się w systemie.", + "components": { + "interface": "Interfejs", + "input": "Pola wejścia", + "post": "Tekst postu", + "postCode": "Tekst o stałej szerokości znaków w sformatowanym poście" + }, + "family": "Nazwa czcionki", + "size": "Rozmiar (w pikselach)", + "weight": "Grubość", + "custom": "Niestandardowa" + }, + "preview": { + "header": "Podgląd", + "content": "Zawartość", + "error": "Przykładowy błąd", + "button": "Przycisk", + "text": "Trochę więcej {0} i {1}", + "mono": "treści", + "input": "Właśnie wróciłem z kościoła", + "faint_link": "pomocny podręcznik", + "fine_print": "Przeczytaj nasz {0}, aby nie nauczyć się niczego przydatnego!", + "header_faint": "W porządku", + "checkbox": "Przeleciałem przez zasady użytkowania", + "link": "i fajny mały odnośnik" + } + }, + "version": { + "title": "Wersja", + "backend_version": "Wersja back-endu", + "frontend_version": "Wersja front-endu" + }, + "notification_setting_privacy": "Prywatność", + "notification_setting_filters": "Filtry", + "notification_setting_privacy_option": "Ukryj nadawcę i zawartość powiadomień push" + }, + "time": { + "day": "{0} dzień", + "days": "{0} dni", + "day_short": "{0}d", + "days_short": "{0}d", + "hour": "{0} godzina", + "hours": "{0} godzin", + "hour_short": "{0} godz.", + "hours_short": "{0} godz.", + "in_future": "za {0}", + "in_past": "{0} temu", + "minute": "{0} minuta", + "minutes": "{0} minut", + "minute_short": "{0}min", + "minutes_short": "{0}min", + "month": "{0} miesiąc", + "months": "{0} miesięcy", + "month_short": "{0} mies.", + "months_short": "{0} mies.", + "now": "teraz", + "now_short": "teraz", + "second": "{0} sekunda", + "seconds": "{0} sekund", + "second_short": "{0}s", + "seconds_short": "{0}s", + "week": "{0} tydzień", + "weeks": "{0} tygodni", + "week_short": "{0} tydz.", + "weeks_short": "{0} tyg.", + "year": "{0} rok", + "years": "{0} lata", + "year_short": "{0} r.", + "years_short": "{0} lata" + }, + "timeline": { + "collapse": "Zwiń", + "conversation": "Rozmowa", + "error_fetching": "Błąd pobierania", + "load_older": "Załaduj starsze statusy", + "no_retweet_hint": "Wpis oznaczony jako tylko dla obserwujących lub bezpośredni nie może zostać powtórzony", + "repeated": "powtórzył(-a)", + "show_new": "Pokaż nowe", + "up_to_date": "Na bieżąco", + "no_more_statuses": "Brak kolejnych statusów", + "no_statuses": "Brak statusów" + }, + "status": { + "favorites": "Ulubione", + "repeats": "Powtórzenia", + "delete": "Usuń status", + "pin": "Przypnij na profilu", + "unpin": "Odepnij z profilu", + "pinned": "Przypnięte", + "delete_confirm": "Czy naprawdę chcesz usunąć ten status?", + "reply_to": "Odpowiedź dla", + "replies_list": "Odpowiedzi:", + "mute_conversation": "Wycisz konwersację", + "unmute_conversation": "Odcisz konwersację", + "status_unavailable": "Status niedostępny", + "copy_link": "Kopiuj link do statusu" + }, + "user_card": { + "approve": "Przyjmij", + "block": "Zablokuj", + "blocked": "Zablokowany!", + "deny": "Odrzuć", + "favorites": "Ulubione", + "follow": "Obserwuj", + "follow_sent": "Wysłano prośbę!", + "follow_progress": "Wysyłam prośbę…", + "follow_again": "Wysłać prośbę ponownie?", + "follow_unfollow": "Przestań obserwować", + "followees": "Obserwowani", + "followers": "Obserwujący", + "following": "Obserwowany!", + "follows_you": "Obserwuje cię!", + "hidden": "Ukryte", + "its_you": "To ty!", + "media": "Media", + "mention": "Wspomnienie", + "mute": "Wycisz", + "muted": "Wyciszony(-a)", + "per_day": "dziennie", + "remote_follow": "Zdalna obserwacja", + "report": "Raportuj", + "statuses": "Statusy", + "subscribe": "Subskrybuj", + "unsubscribe": "Odsubskrybuj", + "unblock": "Odblokuj", + "unblock_progress": "Odblokowuję…", + "block_progress": "Blokuję…", + "unmute": "Cofnij wyciszenie", + "unmute_progress": "Cofam wyciszenie…", + "mute_progress": "Wyciszam…", + "hide_repeats": "Ukryj powtórzenia", + "show_repeats": "Pokaż powtórzenia", + "admin_menu": { + "moderation": "Moderacja", + "grant_admin": "Przyznaj admina", + "revoke_admin": "Odwołaj admina", + "grant_moderator": "Przyznaj moderatora", + "revoke_moderator": "Odwołaj moderatora", + "activate_account": "Aktywuj konto", + "deactivate_account": "Dezaktywuj konto", + "delete_account": "Usuń konto", + "force_nsfw": "Oznacz wszystkie posty jako NSFW", + "strip_media": "Usuń multimedia z postów", + "force_unlisted": "Wymuś posty na niepubliczne", + "sandbox": "Wymuś by posty były tylko dla obserwujących", + "disable_remote_subscription": "Zakaż obserwowania użytkownika ze zdalnych instancji", + "disable_any_subscription": "Zakaż całkowicie obserwowania użytkownika", + "quarantine": "Zakaż federowania postów od tego użytkownika", + "delete_user": "Usuń użytkownika", + "delete_user_confirmation": "Czy jesteś absolutnie pewny? Ta operacja nie może być cofnięta." + } + }, + "user_profile": { + "timeline_title": "Oś czasu użytkownika", + "profile_does_not_exist": "Przepraszamy, ten profil nie istnieje.", + "profile_loading_error": "Przepraszamy, wystąpił błąd podczas ładowania tego profilu." + }, + "user_reporting": { + "title": "Raportowanie {0}", + "add_comment_description": "Raport zostanie wysłany do moderatorów instancji. Możesz dodać powód dlaczego raportujesz to konto poniżej:", + "additional_comments": "Dodatkowe komentarze", + "forward_description": "To konto jest z innego serwera. Wysłać również tam kopię raportu?", + "forward_to": "Przekaż do{0}", + "submit": "Wyślij", + "generic_error": "Wystąpił błąd podczas przetwarzania twojej prośby." + }, + "who_to_follow": { + "more": "Więcej", + "who_to_follow": "Propozycje obserwacji" + }, + "tool_tip": { + "media_upload": "Wyślij media", + "repeat": "Powtórz", + "reply": "Odpowiedz", + "favorite": "Dodaj do ulubionych", + "add_reaction": "Dodaj reakcję", + "user_settings": "Ustawienia użytkownika", + "accept_follow_request": "Akceptuj prośbę o możliwość obserwacji", + "reject_follow_request": "Odrzuć prośbę o możliwość obserwacji" + }, + "upload": { + "error": { + "base": "Wysyłanie nie powiodło się.", + "file_too_big": "Zbyt duży plik [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", + "default": "Spróbuj ponownie później" + }, + "file_size_units": { + "B": "B", + "KiB": "KiB", + "MiB": "MiB", + "GiB": "GiB", + "TiB": "TiB" + } + }, + "search": { + "people": "Ludzie", + "hashtags": "Hasztagi", + "person_talking": "{count} osoba rozmawia o tym", + "people_talking": "{count} osób rozmawia o tym", + "no_results": "Brak wyników" + }, + "password_reset": { + "forgot_password": "Zapomniałeś hasła?", + "password_reset": "Reset hasła", + "instruction": "Wprowadź swój adres email lub nazwę użytkownika. Wyślemy ci link z którym możesz zresetować hasło.", + "placeholder": "Twój email lub nazwa użytkownika", + "check_email": "Sprawdź pocztę, aby uzyskać link do zresetowania hasła.", + "return_home": "Wróć do strony głównej", + "not_found": "Nie mogliśmy znaleźć tego emaila lub nazwy użytkownika.", + "too_many_requests": "Przekroczyłeś limit prób, spróbuj ponownie później.", + "password_reset_disabled": "Resetowanie hasła jest wyłączone. Proszę skontaktuj się z administratorem tej instancji.", + "password_reset_required": "Musisz zresetować hasło, by się zalogować.", + "password_reset_required_but_mailer_is_disabled": "Musisz zresetować hasło, ale resetowanie hasła jest wyłączone. Proszę skontaktuj się z administratorem tej instancji." } - }, - "search": { - "people": "Ludzie", - "hashtags": "Hasztagi", - "person_talking": "{count} osoba rozmawia o tym", - "people_talking": "{count} osób rozmawia o tym", - "no_results": "Brak wyników" - }, - "password_reset": { - "forgot_password": "Zapomniałeś hasła?", - "password_reset": "Reset hasła", - "instruction": "Wprowadź swój adres email lub nazwę użytkownika. Wyślemy ci link z którym możesz zresetować hasło.", - "placeholder": "Twój email lub nazwa użytkownika", - "check_email": "Sprawdź pocztę, aby uzyskać link do zresetowania hasła.", - "return_home": "Wróć do strony głównej", - "not_found": "Nie mogliśmy znaleźć tego emaila lub nazwy użytkownika.", - "too_many_requests": "Przekroczyłeś limit prób, spróbuj ponownie później.", - "password_reset_disabled": "Resetowanie hasła jest wyłączone. Proszę skontaktuj się z administratorem tej instancji.", - "password_reset_required": "Musisz zresetować hasło, by się zalogować.", - "password_reset_required_but_mailer_is_disabled": "Musisz zresetować hasło, ale resetowanie hasła jest wyłączone. Proszę skontaktuj się z administratorem tej instancji." - } } From c2bba3f5addf4c6b851bd2d2e7e53d7e897c0115 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:28:35 -0500 Subject: [PATCH 39/95] Remove unused noAttachmentLinks option --- src/boot/after_store.js | 1 - src/modules/instance.js | 1 - static/config.json | 1 - 3 files changed, 3 deletions(-) diff --git a/src/boot/after_store.js b/src/boot/after_store.js index 34f6d6e7..abdba305 100644 --- a/src/boot/after_store.js +++ b/src/boot/after_store.js @@ -108,7 +108,6 @@ const setSettings = async ({ apiConfig, staticConfig, store }) => { copyInstanceOption('subjectLineBehavior') copyInstanceOption('postContentType') copyInstanceOption('alwaysShowSubjectInput') - copyInstanceOption('noAttachmentLinks') copyInstanceOption('showFeaturesPanel') copyInstanceOption('hideSitename') diff --git a/src/modules/instance.js b/src/modules/instance.js index ffece311..0f430e81 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -32,7 +32,6 @@ const defaultState = { hideSitename: false, nsfwCensorImage: undefined, vapidPublicKey: undefined, - noAttachmentLinks: false, showFeaturesPanel: true, minimalScopesMode: false, greentext: false, diff --git a/static/config.json b/static/config.json index c8267869..0ce85f99 100644 --- a/static/config.json +++ b/static/config.json @@ -16,7 +16,6 @@ "hideUserStats": false, "loginMethod": "password", "webPushNotifications": false, - "noAttachmentLinks": false, "nsfwCensorImage": "", "showFeaturesPanel": true, "minimalScopesMode": false From eea6d772ad53665ea926d714ed2df6059dec197d Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:31:00 -0500 Subject: [PATCH 40/95] Also remove from docs --- docs/CONFIGURATION.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index 0a9bbd7a..f9de664d 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -68,9 +68,6 @@ Hide counters for posts and users respectively, i.e. hiding repeats/favorites co ### `webPushNotifications` Enables [PushAPI](https://developer.mozilla.org/en-US/docs/Web/API/Push_API) - based notifications for users. Instance-default. -### `noAttachmentLinks` -**TODO Currently doesn't seem to be doing anything code-wise**, but implication is to disable adding links for attachments, which looks nicer but breaks compatibility with old GNU/Social servers. - ### `nsfwCensorImage` Use custom image for NSFW'd images From 98d332793ccb8b73a8b5f6ec8893d0459412b242 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:40:46 -0500 Subject: [PATCH 41/95] alpha sort --- src/modules/instance.js | 47 ++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/src/modules/instance.js b/src/modules/instance.js index ffece311..eeee115c 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -5,37 +5,36 @@ import { instanceDefaultProperties } from './config.js' const defaultState = { // Stuff from static/config.json and apiConfig + alwaysShowSubjectInput: true, + background: '/static/aurora_borealis.jpg', + collapseMessageWithSubject: false, + disableChat: false, + greentext: false, + hideFilteredStatuses: false, + hideMutedPosts: false, + hidePostStats: false, + hideSitename: false, + hideUserStats: false, + logo: '/static/logo.png', + logoMargin: '.2em', + logoMask: true, + minimalScopesMode: false, name: 'Pleroma FE', + nsfwCensorImage: undefined, + postContentType: 'text/plain', + redirectRootLogin: '/main/friends', + redirectRootNoLogin: '/main/all', registrationOpen: true, safeDM: true, - textlimit: 5000, + scopeCopy: true, server: 'http://localhost:4040/', + showFeaturesPanel: true, + showInstanceSpecificPanel: false, + subjectLineBehavior: 'email', + textlimit: 5000, theme: 'pleroma-dark', themeData: undefined, - background: '/static/aurora_borealis.jpg', - logo: '/static/logo.png', - logoMask: true, - logoMargin: '.2em', - redirectRootNoLogin: '/main/all', - redirectRootLogin: '/main/friends', - showInstanceSpecificPanel: false, - alwaysShowSubjectInput: true, - hideMutedPosts: false, - collapseMessageWithSubject: false, - hidePostStats: false, - hideUserStats: false, - hideFilteredStatuses: false, - disableChat: false, - scopeCopy: true, - subjectLineBehavior: 'email', - postContentType: 'text/plain', - hideSitename: false, - nsfwCensorImage: undefined, vapidPublicKey: undefined, - noAttachmentLinks: false, - showFeaturesPanel: true, - minimalScopesMode: false, - greentext: false, // Nasty stuff pleromaBackend: true, From a4a25105babae42b04d173b44dcb8a2d797b87fc Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:43:36 -0500 Subject: [PATCH 42/95] Separate the user configurable section --- src/modules/instance.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/modules/instance.js b/src/modules/instance.js index eeee115c..1b04032b 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -4,6 +4,9 @@ import { CURRENT_VERSION } from '../services/theme_data/theme_data.service.js' import { instanceDefaultProperties } from './config.js' const defaultState = { + // not user configurable + name: 'Pleroma FE', + // Stuff from static/config.json and apiConfig alwaysShowSubjectInput: true, background: '/static/aurora_borealis.jpg', @@ -19,7 +22,6 @@ const defaultState = { logoMargin: '.2em', logoMask: true, minimalScopesMode: false, - name: 'Pleroma FE', nsfwCensorImage: undefined, postContentType: 'text/plain', redirectRootLogin: '/main/friends', From 62e0fda5978c8cf592fb0cdf28e485e87378f467 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:46:31 -0500 Subject: [PATCH 43/95] loginMethod was missing --- src/modules/instance.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/modules/instance.js b/src/modules/instance.js index 1b04032b..8be8ba63 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -18,6 +18,7 @@ const defaultState = { hidePostStats: false, hideSitename: false, hideUserStats: false, + loginMethod: 'password', logo: '/static/logo.png', logoMargin: '.2em', logoMask: true, From 1db2fc3f41207c2af363c2017efb633a60e9a042 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:52:21 -0500 Subject: [PATCH 44/95] alpha sort --- static/config.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/static/config.json b/static/config.json index c8267869..9aeed8f1 100644 --- a/static/config.json +++ b/static/config.json @@ -1,23 +1,23 @@ { - "theme": "pleroma-dark", - "background": "/static/aurora_borealis.jpg", - "logo": "/static/logo.png", - "logoMask": true, - "logoMargin": ".1em", - "redirectRootNoLogin": "/main/all", - "redirectRootLogin": "/main/friends", - "showInstanceSpecificPanel": false, - "collapseMessageWithSubject": false, - "scopeCopy": true, - "subjectLineBehavior": "email", - "postContentType": "text/plain", "alwaysShowSubjectInput": true, + "background": "/static/aurora_borealis.jpg", + "collapseMessageWithSubject": false, "hidePostStats": false, "hideUserStats": false, "loginMethod": "password", - "webPushNotifications": false, + "logo": "/static/logo.png", + "logoMargin": ".1em", + "logoMask": true, + "minimalScopesMode": false, "noAttachmentLinks": false, "nsfwCensorImage": "", + "postContentType": "text/plain", + "redirectRootLogin": "/main/friends", + "redirectRootNoLogin": "/main/all", + "scopeCopy": true, "showFeaturesPanel": true, - "minimalScopesMode": false + "showInstanceSpecificPanel": false, + "subjectLineBehavior": "email", + "theme": "pleroma-dark", + "webPushNotifications": false } From 0ef5965b3bfb6e9f8a305714f60a54b43066473a Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 14:52:48 -0500 Subject: [PATCH 45/95] Add missing settings: disableChat, greentext, hideFilteredStatuses, hideMutedPosts, hidePostStats, hideSitename --- static/config.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/static/config.json b/static/config.json index 9aeed8f1..727dde73 100644 --- a/static/config.json +++ b/static/config.json @@ -2,7 +2,12 @@ "alwaysShowSubjectInput": true, "background": "/static/aurora_borealis.jpg", "collapseMessageWithSubject": false, + "disableChat": false, + "greentext": false, + "hideFilteredStatuses": false, + "hideMutedPosts": false, "hidePostStats": false, + "hideSitename": false, "hideUserStats": false, "loginMethod": "password", "logo": "/static/logo.png", From fc12f44f7a13581ec08d6440f1cebbb230cfc32f Mon Sep 17 00:00:00 2001 From: Shpuld Shpuldson <shp@cock.li> Date: Wed, 13 May 2020 18:41:08 +0000 Subject: [PATCH 46/95] Translated using Weblate (Finnish) Currently translated at 100.0% (613 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/fi/ --- src/i18n/fi.json | 192 ++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 175 insertions(+), 17 deletions(-) diff --git a/src/i18n/fi.json b/src/i18n/fi.json index 386578fb..7248c049 100644 --- a/src/i18n/fi.json +++ b/src/i18n/fi.json @@ -289,7 +289,15 @@ "warning_of_generate_new_codes": "Luodessasi uudet palautuskoodit, vanhat koodisi lakkaavat toimimasta.", "recovery_codes": "Palautuskoodit.", "waiting_a_recovery_codes": "Odotetaan palautuskoodeja...", - "recovery_codes_warning": "Kirjoita koodit ylös tai tallenna ne turvallisesti, muuten et näe niitä uudestaan. Jos et voi käyttää monivaihetodennusta ja sinulla ei ole palautuskoodeja, et voi enää kirjautua sisään tilillesi." + "recovery_codes_warning": "Kirjoita koodit ylös tai tallenna ne turvallisesti, muuten et näe niitä uudestaan. Jos et voi käyttää monivaihetodennusta ja sinulla ei ole palautuskoodeja, et voi enää kirjautua sisään tilillesi.", + "scan": { + "title": "Skannaa", + "secret_code": "Avain", + "desc": "Käytä monivaihetodennus-sovellusta skannakksesi tämän QR-kooding, tai syötä avain:" + }, + "verify": { + "desc": "Kytkeäksesi päälle monivaihetodennuksen, syötä koodi monivaihetodennussovellksesta:" + } }, "allow_following_move": "Salli automaattinen seuraaminen kun käyttäjä siirtää tilinsä", "block_export": "Estojen vienti", @@ -375,7 +383,12 @@ "poll": "Äänestyksen kuvaaja", "icons": "Ikonit", "highlight": "Korostetut elementit", - "pressed": "Painettu" + "pressed": "Painettu", + "selectedMenu": "Valikon valinta", + "disabled": "Pois käytöstä", + "toggled": "Kytketty", + "tabs": "Välilehdet", + "popover": "Työkaluvinkit, valikot, ponnahdusviestit" }, "common": { "color": "Väri", @@ -398,6 +411,67 @@ "main": "Yleiset värit", "foreground_hint": "Löydät \"Edistynyt\"-välilehdeltä tarkemmat asetukset", "rgbo": "Ikonit, korostukset, merkit" + }, + "shadows": { + "filter_hint": { + "always_drop_shadow": "Varoitus, tämä varjo käyttää aina {0} kun selain tukee sitä.", + "avatar_inset": "Huom. sisennettyjen ja ei-sisennettyjen varjojen yhdistelmät saattavat luoda ei-odotettuja lopputuloksia läpinäkyvillä profiilikuvilla.", + "drop_shadow_syntax": "{0} ei tue {1} parametria ja {2} avainsanaa.", + "spread_zero": "Varjot joiden levitys > 0 näyttävät samalta kuin se olisi nolla", + "inset_classic": "Sisennetyt varjot käyttävät {0}" + }, + "components": { + "buttonPressedHover": "Nappi (painettu ja kohdistettu)", + "panel": "Ruutu", + "panelHeader": "Ruudun otsikko", + "topBar": "Yläpalkki", + "avatar": "Profiilikuva (profiilinäkymässä)", + "avatarStatus": "Profiilikuva (viestin yhtyedessä)", + "popup": "Ponnahdusviestit ja työkaluvinkit", + "button": "Nappi", + "buttonHover": "Nappi (kohdistus)", + "buttonPressed": "Nappi (painettu)", + "input": "Syöttökenttä" + }, + "hintV3": "Voit käyttää {0} merkintää varjoille käyttääksesi väriä toisesta asetuksesta.", + "_tab_label": "Valo ja varjostus", + "component": "Komponentti", + "override": "Ylikirjoita", + "shadow_id": "Varjo #{value}", + "blur": "Sumennus", + "spread": "Levitys", + "inset": "Sisennys" + }, + "fonts": { + "help": "Valitse fontti käyttöliittymälle. \"Oma\"-vaihtohdolle on syötettävä fontin nimi tarkalleen samana kuin se on järjestelmässäsi.", + "_tab_label": "Fontit", + "components": { + "interface": "Käyttöliittymä", + "input": "Syöttökentät", + "post": "Viestin teksti", + "postCode": "Tasavälistetty teksti viestissä" + }, + "family": "Fontin nimi", + "size": "Koko (pikseleissä)", + "weight": "Painostus (paksuus)", + "custom": "Oma" + }, + "preview": { + "input": "Tulin juuri saunasta.", + "header": "Esikatselu", + "content": "Sisältö", + "error": "Esimerkkivirhe", + "button": "Nappi", + "text": "Vähän lisää {0} ja {1}", + "mono": "sisältöä", + "faint_link": "manuaali", + "fine_print": "Lue meidän {0} vaikka huvin vuoksi!", + "header_faint": "Tämä on OK", + "checkbox": "Olen silmäillyt käyttöehdot", + "link": "kiva linkki" + }, + "radii": { + "_tab_label": "Pyöristys" } }, "enter_current_password_to_confirm": "Syötä nykyinen salasanasi todentaaksesi henkilöllisyytesi", @@ -411,7 +485,12 @@ "notification_setting_non_followers": "Käyttäjät jotka eivät seuraa sinua", "notification_setting_privacy": "Yksityisyys", "notification_mutes": "Jos et halua ilmoituksia joltain käyttäjältä, käytä mykistystä.", - "notification_blocks": "Estäminen pysäyttää kaikki ilmoitukset käyttäjältä ja poistaa seurauksen." + "notification_blocks": "Estäminen pysäyttää kaikki ilmoitukset käyttäjältä ja poistaa seurauksen.", + "version": { + "title": "Versio", + "backend_version": "Palvelimen versio", + "frontend_version": "Käyttöliittymän versio" + } }, "time": { "day": "{0} päivä", @@ -432,8 +511,8 @@ "months": "{0} kuukautta", "month_short": "{0}kk", "months_short": "{0}kk", - "now": "nyt", - "now_short": "juuri nyt", + "now": "juuri nyt", + "now_short": "nyt", "second": "{0} sekunti", "seconds": "{0} sekuntia", "second_short": "{0}s", @@ -456,7 +535,8 @@ "repeated": "toisti", "show_new": "Näytä uudet", "up_to_date": "Ajantasalla", - "no_more_statuses": "Ei enempää viestejä" + "no_more_statuses": "Ei enempää viestejä", + "no_statuses": "Ei viestejä" }, "status": { "favorites": "Tykkäykset", @@ -468,9 +548,10 @@ "delete_confirm": "Haluatko varmasti postaa viestin?", "reply_to": "Vastaus", "replies_list": "Vastaukset:", - "mute_conversation": "Hiljennä keskustelu", - "unmute_conversation": "Poista hiljennys", - "status_unavailable": "Viesti ei saatavissa" + "mute_conversation": "Mykistä keskustelu", + "unmute_conversation": "Poista mykistys", + "status_unavailable": "Viesti ei saatavissa", + "copy_link": "Kopioi linkki" }, "user_card": { "approve": "Hyväksy", @@ -479,7 +560,7 @@ "deny": "Älä hyväksy", "follow": "Seuraa", "follow_sent": "Pyyntö lähetetty!", - "follow_progress": "Pyydetään...", + "follow_progress": "Pyydetään…", "follow_again": "Lähetä pyyntö uudestaan", "follow_unfollow": "Älä seuraa", "followees": "Seuraa", @@ -487,14 +568,50 @@ "following": "Seuraat!", "follows_you": "Seuraa sinua!", "its_you": "Sinun tili!", - "mute": "Hiljennä", - "muted": "Hiljennetty", + "mute": "Mykistä", + "muted": "Mykistetty", "per_day": "päivässä", "remote_follow": "Seuraa muualta", - "statuses": "Viestit" + "statuses": "Viestit", + "hidden": "Piilotettu", + "media": "Media", + "block_progress": "Estetään...", + "admin_menu": { + "grant_admin": "Anna Ylläpitöoikeudet", + "force_nsfw": "Merkitse kaikki viestit NSFW:nä", + "disable_any_subscription": "Estä käyttäjän seuraaminen", + "moderation": "Moderaatio", + "revoke_admin": "Poista Ylläpitöoikeudet", + "grant_moderator": "Anna Moderaattorioikeudet", + "revoke_moderator": "Poista Moderaattorioikeudet", + "activate_account": "Aktivoi tili", + "deactivate_account": "Deaktivoi tili", + "delete_account": "Poista tili", + "strip_media": "Poista media viesteistä", + "force_unlisted": "Pakota viestit listaamattomiksi", + "sandbox": "Pakota viestit vain seuraajille", + "disable_remote_subscription": "Estä seuraaminen ulkopuolisilta sivuilta", + "quarantine": "Estä käyttäjän viestin federoituminen", + "delete_user": "Poista käyttäjä", + "delete_user_confirmation": "Oletko aivan varma? Tätä ei voi kumota." + }, + "favorites": "Tykkäykset", + "mention": "Mainitse", + "report": "Ilmianna", + "subscribe": "Tilaa", + "unsubscribe": "Poista tilaus", + "unblock": "Poista esto", + "unblock_progress": "Postetaan estoa...", + "unmute": "Poista mykistys", + "unmute_progress": "Poistetaan mykistystä...", + "mute_progress": "Mykistetään...", + "hide_repeats": "Piilota toistot", + "show_repeats": "Näytä toistot" }, "user_profile": { - "timeline_title": "Käyttäjän aikajana" + "timeline_title": "Käyttäjän aikajana", + "profile_does_not_exist": "Tätä profiilia ei ole.", + "profile_loading_error": "Virhe ladatessa profiilia." }, "who_to_follow": { "more": "Lisää", @@ -505,7 +622,10 @@ "repeat": "Toista", "reply": "Vastaa", "favorite": "Tykkää", - "user_settings": "Käyttäjäasetukset" + "user_settings": "Käyttäjäasetukset", + "add_reaction": "Lisää Reaktio", + "accept_follow_request": "Hyväksy seurauspyyntö", + "reject_follow_request": "Hylkää seurauspyyntö" }, "upload": { "error": { @@ -535,10 +655,19 @@ "reject": "Hylkää", "quarantine": "Karanteeni", "ftl_removal": "Poisto \"Koko Tunnettu Verkosto\" -aikajanalta", - "media_removal": "Media-tiedostojen poisto" + "media_removal": "Media-tiedostojen poisto", + "simple_policies": "Palvelinkohtaiset Säännöt", + "accept_desc": "Tämä palvelin hyväksyy viestit vain seuraavilta palvelimilta:", + "reject_desc": "Tämä palvelin ei hyväksy viestejä seuraavilta palvelimilta:", + "quarantine_desc": "Tämä palvelin lähettää vain julkisia viestejä seuraaville palvelimille:", + "ftl_removal_desc": "Tämä palvelin poistaa nämä palvelimet \"Koko Tunnettu Verkosto\"-aikajanalta:", + "media_removal_desc": "Tämä palvelin postaa mediatiedostot viesteistä seuraavilta palvelimilta:", + "media_nsfw": "Pakota Media Arkaluontoiseksi", + "media_nsfw_desc": "Tämä palvelin pakottaa mediatiedostot arkaluonteisiksi seuraavilta palvelimilta:" }, "federation": "Federaatio", - "mrf_policies": "Aktivoidut MRF-säännöt" + "mrf_policies": "Aktivoidut MRF-säännöt", + "mrf_policies_desc": "MRF-säännöt muuttavat federaation toimintaa sivulla. Seuraavat säännöt ovat kytketty päälle:" }, "staff": "Henkilökunta" }, @@ -585,5 +714,34 @@ }, "selectable_list": { "select_all": "Valitse kaikki" + }, + "password_reset": { + "check_email": "Tarkista sähköpostisi salasanannollausta varten.", + "instruction": "Syötä sähköpostiosoite tai käyttäjänimi. Lähetämme linkin salasanan nollausta varten.", + "password_reset_disabled": "Salasanan nollaus ei käytössä. Ota yhteyttä sivun ylläpitäjään.", + "password_reset_required_but_mailer_is_disabled": "Sinun täytyy vaihtaa salasana, mutta salasanan nollaus on pois käytöstä. Ota yhteyttä sivun ylläpitäjään.", + "forgot_password": "Unohditko salasanan?", + "password_reset": "Salasanan nollaus", + "placeholder": "Sähköpostiosoite tai käyttäjänimi", + "return_home": "Palaa etusivulle", + "not_found": "Sähköpostiosoitetta tai käyttäjänimeä ei löytynyt.", + "too_many_requests": "Olet käyttänyt kaikki yritykset, yritä uudelleen myöhemmin.", + "password_reset_required": "Sinun täytyy vaihtaa salasana kirjautuaksesi." + }, + "user_reporting": { + "add_comment_description": "Tämä raportti lähetetään sivun moderaattoreille. Voit antaa selityksen miksi ilmiannoit tilin:", + "title": "Ilmiannetaan {0}", + "additional_comments": "Lisäkommentit", + "forward_description": "Tämä tili on toiselta palvelimelta. Lähetä kopio ilmiannosta sinnekin?", + "forward_to": "Lähetä eteenpäin: {0}", + "submit": "Lähetä", + "generic_error": "Virhe käsitellessä pyyntöä." + }, + "search": { + "people": "Käyttäjät", + "hashtags": "Aihetunnisteet", + "people_talking": "{0} käyttäjää puhuvat", + "person_talking": "{0} käyttäjä puhuu", + "no_results": "Ei tuloksia" } } From 1f53f0a844eed940d40005fe64bc88d7434031d7 Mon Sep 17 00:00:00 2001 From: Ben Is <srsbzns@cock.li> Date: Wed, 13 May 2020 18:43:07 +0000 Subject: [PATCH 47/95] Translated using Weblate (Italian) Currently translated at 28.3% (174 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index 817a6465..8e35d4f9 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -33,13 +33,13 @@ "hide_attachments_in_tl": "Nascondi gli allegati presenti nelle sequenze", "name": "Nome", "name_bio": "Nome ed introduzione", - "nsfw_clickthrough": "Abilita il click per visualizzare gli allegati segnati come NSFW", + "nsfw_clickthrough": "Fai click per visualizzare gli allegati nascosti", "profile_background": "Sfondo della tua pagina", - "profile_banner": "Banner del tuo profilo", - "reply_link_preview": "Abilita il link per la risposta al passaggio del mouse", - "set_new_avatar": "Scegli un nuovo avatar", + "profile_banner": "Stendardo del tuo profilo", + "reply_link_preview": "Visualizza le risposte al passaggio del cursore", + "set_new_avatar": "Scegli una nuova icona", "set_new_profile_background": "Scegli un nuovo sfondo per la tua pagina", - "set_new_profile_banner": "Scegli un nuovo banner per il tuo profilo", + "set_new_profile_banner": "Scegli un nuovo stendardo per il tuo profilo", "settings": "Impostazioni", "theme": "Tema", "user_settings": "Impostazioni Utente", @@ -92,48 +92,48 @@ "notification_visibility_likes": "Preferiti", "notification_visibility_mentions": "Menzioni", "notification_visibility_repeats": "Condivisioni", - "no_rich_text_description": "Togli l'impaginazione del testo da tutti i messaggi", + "no_rich_text_description": "Togli la formattazione del testo da tutti i messaggi", "oauth_tokens": "Token OAuth", "token": "Token", "refresh_token": "Aggiorna token", "valid_until": "Valido fino a", - "revoke_token": "Revocare", + "revoke_token": "Revoca", "panelRadius": "Pannelli", - "pause_on_unfocused": "Metti in pausa l'aggiornamento continuo quando la scheda non è in primo piano", + "pause_on_unfocused": "Interrompi l'aggiornamento continuo mentre la scheda è in secondo piano", "presets": "Valori predefiniti", "profile_tab": "Profilo", - "radii_help": "Imposta l'arrotondamento dei bordi (in pixel)", - "replies_in_timeline": "Risposte nella sequenza temporale", + "radii_help": "Imposta il raggio dei bordi (in pixel)", + "replies_in_timeline": "Risposte nella sequenza personale", "reply_visibility_all": "Mostra tutte le risposte", - "reply_visibility_following": "Mostra solo le risposte dirette a me o agli utenti che seguo", - "reply_visibility_self": "Mostra solo risposte dirette a me", + "reply_visibility_following": "Mostra solo le risposte rivolte a me o agli utenti che seguo", + "reply_visibility_self": "Mostra solo risposte rivolte a me", "saving_err": "Errore nel salvataggio delle impostazioni", "saving_ok": "Impostazioni salvate", "security_tab": "Sicurezza", - "stop_gifs": "Riproduci GIF al passaggio del cursore del mouse", - "streaming": "Abilita aggiornamento automatico dei nuovi post quando si è in alto alla pagina", + "stop_gifs": "Riproduci GIF al passaggio del cursore", + "streaming": "Mostra automaticamente i nuovi messaggi quando sei in cima alla pagina", "text": "Testo", "theme_help": "Usa codici colore esadecimali (#rrggbb) per personalizzare il tuo schema di colori.", "tooltipRadius": "Descrizioni/avvisi", "values": { "false": "no", - "true": "si" + "true": "sì" } }, "timeline": { - "error_fetching": "Errore nel prelievo aggiornamenti", + "error_fetching": "Errore nell'aggiornamento", "load_older": "Carica messaggi più vecchi", "show_new": "Mostra nuovi", "up_to_date": "Aggiornato", "collapse": "Riduci", "conversation": "Conversazione", - "no_retweet_hint": "La visibilità del post è impostata solo per chi ti segue o messaggio diretto e non può essere condiviso", + "no_retweet_hint": "Il messaggio è diretto o solo per seguaci e non può essere condiviso", "repeated": "condiviso" }, "user_card": { "follow": "Segui", "followees": "Chi stai seguendo", - "followers": "Chi ti segue", + "followers": "Seguaci", "following": "Lo stai seguendo!", "follows_you": "Ti segue!", "mute": "Silenzia", @@ -197,10 +197,10 @@ "token": "Codice d'invito" }, "user_profile": { - "timeline_title": "Sequenza Temporale dell'Utente" + "timeline_title": "Sequenza dell'Utente" }, "who_to_follow": { - "more": "Più", + "more": "Altro", "who_to_follow": "Chi seguire" }, "about": { From 346f3a285abe2b0f548b9eef7b393305a9b5f63b Mon Sep 17 00:00:00 2001 From: rinpatch <rinpatch@sdf.org> Date: Wed, 13 May 2020 18:43:12 +0000 Subject: [PATCH 48/95] Translated using Weblate (Russian) Currently translated at 61.0% (374 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index 790f2f3c..3c52416c 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -42,7 +42,8 @@ "public_tl": "Публичная лента", "timeline": "Лента", "twkn": "Федеративная лента", - "search": "Поиск" + "search": "Поиск", + "friend_requests": "Запросы на чтение" }, "notifications": { "broken_favorite": "Неизвестный статус, ищем...", @@ -51,7 +52,8 @@ "load_older": "Загрузить старые уведомления", "notifications": "Уведомления", "read": "Прочесть", - "repeated_you": "повторил(а) ваш статус" + "repeated_you": "повторил(а) ваш статус", + "follow_request": "хочет читать вас" }, "interactions": { "favs_repeats": "Повторы и фавориты", @@ -59,7 +61,7 @@ "load_older": "Загрузить старые взаимодействия" }, "post_status": { - "account_not_locked_warning": "Ваш аккаунт не {0}. Кто угодно может зафоловить вас чтобы прочитать посты только для подписчиков.", + "account_not_locked_warning": "Ваш аккаунт не {0}. Кто угодно может начать читать вас чтобы видеть посты только для подписчиков.", "account_not_locked_warning_link": "залочен", "attachments_sensitive": "Вложения содержат чувствительный контент", "content_warning": "Тема (не обязательно)", @@ -207,7 +209,7 @@ "replies_in_timeline": "Ответы в ленте", "reply_link_preview": "Включить предварительный просмотр ответа при наведении мыши", "reply_visibility_all": "Показывать все ответы", - "reply_visibility_following": "Показывать только ответы мне и тех на кого я подписан", + "reply_visibility_following": "Показывать только ответы мне или тех на кого я подписан", "reply_visibility_self": "Показывать только ответы мне", "autohide_floating_post_button": "Автоматически скрывать кнопку постинга (в мобильной версии)", "saving_err": "Не удалось сохранить настройки", @@ -343,7 +345,13 @@ "checkbox": "Я подтверждаю что не было ни единого разрыва", "link": "ссылка" } - } + }, + "notification_setting_non_followers": "Не читающие вас", + "allow_following_move": "Разрешить автоматически читать новый аккаунт при перемещении на другой сервер", + "hide_user_stats": "Не показывать статистику пользователей (например количество читателей)", + "notification_setting_followers": "Читающие вас", + "notification_setting_follows": "Читаемые вами", + "notification_setting_non_follows": "Не читаемые вами" }, "timeline": { "collapse": "Свернуть", @@ -362,12 +370,12 @@ "follow": "Читать", "follow_sent": "Запрос отправлен!", "follow_progress": "Запрашиваем…", - "follow_again": "Запросить еще заново?", + "follow_again": "Запросить еще раз?", "follow_unfollow": "Перестать читать", "followees": "Читаемые", "followers": "Читатели", - "following": "Читаю", - "follows_you": "Читает вас", + "following": "Читаю!", + "follows_you": "Читает вас!", "mute": "Игнорировать", "muted": "Игнорирую", "per_day": "в день", @@ -385,9 +393,9 @@ "force_nsfw": "Отмечать посты пользователя как NSFW", "strip_media": "Убирать вложения из постов пользователя", "force_unlisted": "Не добавлять посты в публичные ленты", - "sandbox": "Посты доступны только для подписчиков", - "disable_remote_subscription": "Запретить подписываться с удаленных серверов", - "disable_any_subscription": "Запретить подписываться на пользователя", + "sandbox": "Принудить видимость постов только читателям", + "disable_remote_subscription": "Запретить читать с удаленных серверов", + "disable_any_subscription": "Запретить читать пользователя", "quarantine": "Не федерировать посты пользователя", "delete_user": "Удалить пользователя", "delete_user_confirmation": "Вы уверены? Это действие нельзя отменить." @@ -460,5 +468,9 @@ "text_limit": "Лимит символов", "title": "Особенности", "gopher": "Gopher" + }, + "tool_tip": { + "accept_follow_request": "Принять запрос на чтение", + "reject_follow_request": "Отклонить запрос на чтение" } } From cad40133d2919d012c30ba728bfd02b3491d478f Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 15:29:38 -0500 Subject: [PATCH 49/95] Alpha sort docs, add missing options --- docs/CONFIGURATION.md | 78 +++++++++++++++++++++++++------------------ 1 file changed, 46 insertions(+), 32 deletions(-) diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index 0a9bbd7a..d6a66d0b 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -19,32 +19,66 @@ There's currently no mechanism for user-settings synchronization across several ## Options -### `theme` -Default theme used for new users. De-facto instance-default, user can change theme. +### `alwaysShowSubjectInput` +`true` - will always show subject line input, `false` - only show when it's not empty (i.e. replying). To hide subject line input completely, set it to `false` and `subjectLineBehavior` to `"noop"` ### `background` Default image background. Be aware of using too big images as they may take longer to load. Currently image is fitted with `background-size: cover` which means "scaled and cropped", currently left-aligned. De-facto instance default, user can choose their own background, if they remove their own background, instance default will be used instead. +### `collapseMessageWithSubject` +Collapse post content when post has a subject line (content warning). Instance-default. + +### `disableChat` +hides the chat (TODO: even if it's enabled on backend) + +### `greentext` +Changes lines prefixed with the `>` character to have a green text color + +### `hideFilteredStatuses` +Removes filtered statuses from timelines. + +### `hideMutedPosts` +Removes muted statuses from timelines. + +### `hidePostStats` +Hide repeats/favorites counters for posts. + +### `hideSitename` +Hide instance name in header. + +### `hideUserStats` +Hide followers/friends counters for users. + +### `loginMethod` +`"password"` - show simple password field +`"token"` - show button to log in with external method (will redirect to login form, more details in BE documentation) + ### `logo`, `logoMask`, `logoMargin` Instance `logo`, could be any image, including svg. By default it assumes logo used will be monochrome-with-alpha one, this is done to be compatible with both light and dark themes, so that white logo designed with dark theme in mind won't be invisible over light theme, this is done via [CSS3 Masking](https://www.html5rocks.com/en/tutorials/masking/adobe/). Basically - it will take alpha channel of the image and fill non-transparent areas of it with solid color. If you really want colorful logo - it can be done by setting `logoMask` to `false`. `logoMargin` allows you to adjust vertical margins between logo boundary and navbar borders. The idea is that to have logo's image without any extra margins and instead adjust them to your need in layout. +### `minimalScopesMode` +Limit scope selection to *Direct*, *User default* and *Scope of post replying to*. This also makes it impossible to reply to a DM with a non-DM post from PleromaFE. + +### `nsfwCensorImage` +Use custom image for NSFW'd images + +### `postContentType` +Default post formatting option (markdown/bbcode/plaintext/etc...) + ### `redirectRootNoLogin`, `redirectRootLogin` These two settings should point to where FE should redirect visitor when they login/open up website root -### `chatDisabled` -hides the chat (TODO: even if it's enabled on backend) +### `scopeCopy` +Copy post scope (visibility) when replying to a post. Instance-default. + +### `showFeaturesPanel` +Show panel showcasing instance features/settings to logged-out visitors ### `showInstanceSpecificPanel` This allows you to include arbitrary HTML content in a panel below navigation menu. PleromaFE looks for an html page `instance/panel.html`, by default it's not provided in FE, but BE bundles some [default one](https://git.pleroma.social/pleroma/pleroma/blob/develop/priv/static/instance/panel.html). De-facto instance-defaults, since user can hide instance-specific panel. -### `collapseMessageWithSubject` -Collapse post content when post has a subject line (content warning). Instance-default. - -### `scopeCopy` -Copy post scope (visibility) when replying to a post. Instance-default. - ### `subjectLineBehavior` How to handle subject line (CW) when replying to a post. * `"email"` - like EMail - prepend `re: ` to subject line if it doesn't already start with it. @@ -52,33 +86,13 @@ How to handle subject line (CW) when replying to a post. * `"noop"` - do not copy Instance-default. -### `postContentType` -Default post formatting option (markdown/bbcode/plaintext/etc...) - -### `alwaysShowSubjectInput` -`true` - will always show subject line input, `false` - only show when it's not empty (i.e. replying). To hide subject line input completely, set it to `false` and `subjectLineBehavior` to `"noop"` - -### `hidePostStats` and `hideUserStats` -Hide counters for posts and users respectively, i.e. hiding repeats/favorites counts for posts, hiding followers/friends counts for users. This is just cosmetic and aimed to ease pressure and bias imposed by stat numbers of people and/or posts. (as an example: so that people care less about how many followers someone has since they can't see that info) - -### `loginMethod` -`"password"` - show simple password field -`"token"` - show button to log in with external method (will redirect to login form, more details in BE documentation) +### `theme` +Default theme used for new users. De-facto instance-default, user can change theme. ### `webPushNotifications` Enables [PushAPI](https://developer.mozilla.org/en-US/docs/Web/API/Push_API) - based notifications for users. Instance-default. -### `noAttachmentLinks` -**TODO Currently doesn't seem to be doing anything code-wise**, but implication is to disable adding links for attachments, which looks nicer but breaks compatibility with old GNU/Social servers. -### `nsfwCensorImage` -Use custom image for NSFW'd images - -### `showFeaturesPanel` -Show panel showcasing instance features/settings to logged-out visitors - -### `hideSitename` -Hide instance name in header ## Indirect configuration Some features are configured depending on how backend is configured. In general the approach is "if backend allows it there's no need to hide it, if backend doesn't allow it there's no need to show it. From 55fe6e4703fd8587744ee0ef5a8e3b4213f08432 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 15:30:54 -0500 Subject: [PATCH 50/95] Alpha sort indirect section --- docs/CONFIGURATION.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index d6a66d0b..003efc7a 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -100,12 +100,12 @@ Some features are configured depending on how backend is configured. In general ### Chat **TODO somewhat broken, see: chatDisabled** chat can be disabled by disabling it in backend +### Private Mode +If the `private` instance setting is enabled in the backend, features that are not accessible without authentication, such as the timelines and search will be disabled for unauthenticated users. + ### Rich text formatting in post formatting Rich text formatting options are displayed depending on how many formatting options are enabled on backend, if you don't want your users to use rich text at all you can only allow "text/plain" one, frontend then will only display post text format as a label instead of dropdown (just so that users know for example if you only allow Markdown, only BBCode or only Plain text) -### Who to follow -This is a panel intended for users to find people to follow based on randomness or on post contents. Being potentially privacy unfriendly feature it needs to be enabled and configured in backend to be enabled. - ### Safe DM message display Setting this will change the warning text that is displayed for direct messages. @@ -114,5 +114,6 @@ ATTENTION: If you actually want the behavior to change. You will need to set the DO NOT activate this without checking the backend configuration first! -### Private Mode -If the `private` instance setting is enabled in the backend, features that are not accessible without authentication, such as the timelines and search will be disabled for unauthenticated users. +### Who to follow +This is a panel intended for users to find people to follow based on randomness or on post contents. Being potentially privacy unfriendly feature it needs to be enabled and configured in backend to be enabled. + From 0ebf1bebb4aac0800a57f9d4be64dda0a2a07e61 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 15:32:02 -0500 Subject: [PATCH 51/95] SafeDM is enabled by default and won't take effect if BE not enabled anyway. --- docs/CONFIGURATION.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index 003efc7a..7100d260 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -106,14 +106,6 @@ If the `private` instance setting is enabled in the backend, features that are n ### Rich text formatting in post formatting Rich text formatting options are displayed depending on how many formatting options are enabled on backend, if you don't want your users to use rich text at all you can only allow "text/plain" one, frontend then will only display post text format as a label instead of dropdown (just so that users know for example if you only allow Markdown, only BBCode or only Plain text) -### Safe DM message display - -Setting this will change the warning text that is displayed for direct messages. - -ATTENTION: If you actually want the behavior to change. You will need to set the appropriate option at the backend. See the backend documentation for information about that. - -DO NOT activate this without checking the backend configuration first! - ### Who to follow This is a panel intended for users to find people to follow based on randomness or on post contents. Being potentially privacy unfriendly feature it needs to be enabled and configured in backend to be enabled. From d91f5189ef6bf540e9ba34a5650be52afb746235 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 15:33:01 -0500 Subject: [PATCH 52/95] Config setting is actually called disableChat --- docs/CONFIGURATION.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index 7100d260..39a2840d 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -98,7 +98,7 @@ Enables [PushAPI](https://developer.mozilla.org/en-US/docs/Web/API/Push_API) - b Some features are configured depending on how backend is configured. In general the approach is "if backend allows it there's no need to hide it, if backend doesn't allow it there's no need to show it. ### Chat -**TODO somewhat broken, see: chatDisabled** chat can be disabled by disabling it in backend +**TODO somewhat broken, see: disableChat** chat can be disabled by disabling it in backend ### Private Mode If the `private` instance setting is enabled in the backend, features that are not accessible without authentication, such as the timelines and search will be disabled for unauthenticated users. From e80fa3ff6d620dfe09ca373e7761b6c2f1775a12 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 15:40:13 -0500 Subject: [PATCH 53/95] Split apiConfig options from static/config.json options; Move safeDM to nasty section, alpha sort things --- src/modules/instance.js | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/modules/instance.js b/src/modules/instance.js index 8be8ba63..a8029dc1 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -4,10 +4,16 @@ import { CURRENT_VERSION } from '../services/theme_data/theme_data.service.js' import { instanceDefaultProperties } from './config.js' const defaultState = { - // not user configurable + // not configurable name: 'Pleroma FE', - // Stuff from static/config.json and apiConfig + // Stuff from apiConfig + server: 'http://localhost:4040/', + textlimit: 5000, + themeData: undefined, + vapidPublicKey: undefined, + + // Stuff from static/config.json alwaysShowSubjectInput: true, background: '/static/aurora_borealis.jpg', collapseMessageWithSubject: false, @@ -28,29 +34,25 @@ const defaultState = { redirectRootLogin: '/main/friends', redirectRootNoLogin: '/main/all', registrationOpen: true, - safeDM: true, scopeCopy: true, - server: 'http://localhost:4040/', showFeaturesPanel: true, showInstanceSpecificPanel: false, subjectLineBehavior: 'email', - textlimit: 5000, theme: 'pleroma-dark', - themeData: undefined, - vapidPublicKey: undefined, // Nasty stuff - pleromaBackend: true, - emoji: [], - emojiFetched: false, customEmoji: [], customEmojiFetched: false, - restrictedNicknames: [], + emoji: [], + emojiFetched: false, + pleromaBackend: true, postFormats: [], + restrictedNicknames: [], + safeDM: true, // Feature-set, apparently, not everything here is reported... - mediaProxyAvailable: false, chatAvailable: false, + mediaProxyAvailable: false, gopherAvailable: false, suggestionsEnabled: false, suggestionsWeb: '', From 03318b64aacbbb48d15c94ada5ade4b38752a734 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 15:48:21 -0500 Subject: [PATCH 54/95] Really alpha sort this --- src/modules/instance.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/instance.js b/src/modules/instance.js index a8029dc1..278a93ab 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -52,8 +52,8 @@ const defaultState = { // Feature-set, apparently, not everything here is reported... chatAvailable: false, - mediaProxyAvailable: false, gopherAvailable: false, + mediaProxyAvailable: false, suggestionsEnabled: false, suggestionsWeb: '', From 79c53b849ed8d5abac978ed675488bf53ea8fb06 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 16:46:58 -0500 Subject: [PATCH 55/95] registrationOpen is not an FE setting --- src/modules/instance.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/instance.js b/src/modules/instance.js index 278a93ab..beea424b 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -8,6 +8,7 @@ const defaultState = { name: 'Pleroma FE', // Stuff from apiConfig + registrationOpen: true, server: 'http://localhost:4040/', textlimit: 5000, themeData: undefined, @@ -33,7 +34,6 @@ const defaultState = { postContentType: 'text/plain', redirectRootLogin: '/main/friends', redirectRootNoLogin: '/main/all', - registrationOpen: true, scopeCopy: true, showFeaturesPanel: true, showInstanceSpecificPanel: false, From 229bf79d9016d19e1482f5e02f2f03e5d8b078e2 Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 13 May 2020 17:20:35 -0500 Subject: [PATCH 56/95] name setting should be with apiConfig section --- src/modules/instance.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/modules/instance.js b/src/modules/instance.js index beea424b..94d4176b 100644 --- a/src/modules/instance.js +++ b/src/modules/instance.js @@ -4,10 +4,8 @@ import { CURRENT_VERSION } from '../services/theme_data/theme_data.service.js' import { instanceDefaultProperties } from './config.js' const defaultState = { - // not configurable - name: 'Pleroma FE', - // Stuff from apiConfig + name: 'Pleroma FE', registrationOpen: true, server: 'http://localhost:4040/', textlimit: 5000, From e50857d0ffecf7639f14c7dba150e55ef9d2fe74 Mon Sep 17 00:00:00 2001 From: Sergey Suprunenko <suprunenko.s@gmail.com> Date: Wed, 13 May 2020 22:58:08 +0200 Subject: [PATCH 57/95] Show "it's you" label and hide follow btn for current user --- src/components/follow_card/follow_card.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/follow_card/follow_card.vue b/src/components/follow_card/follow_card.vue index 76a70730..fe2d8ab8 100644 --- a/src/components/follow_card/follow_card.vue +++ b/src/components/follow_card/follow_card.vue @@ -2,7 +2,7 @@ <basic-user-card :user="user"> <div class="follow-card-content-container"> <span - v-if="!noFollowsYou && relationship.followed_by" + v-if="isMe || !noFollowsYou && relationship.followed_by" class="faint" > {{ isMe ? $t('user_card.its_you') : $t('user_card.follows_you') }} @@ -15,7 +15,7 @@ <RemoteFollow :user="user" /> </div> </template> - <template v-else> + <template v-else-if="!isMe"> <FollowButton :relationship="relationship" :label-following="$t('user_card.follow_unfollow')" From db8dd1223c124e8461806a219d77817ba495794c Mon Sep 17 00:00:00 2001 From: Sergey Suprunenko <suprunenko.s@gmail.com> Date: Thu, 14 May 2020 09:27:58 +0200 Subject: [PATCH 58/95] Make a condition clear and unambiguous --- src/components/follow_card/follow_card.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/follow_card/follow_card.vue b/src/components/follow_card/follow_card.vue index fe2d8ab8..b503783f 100644 --- a/src/components/follow_card/follow_card.vue +++ b/src/components/follow_card/follow_card.vue @@ -2,7 +2,7 @@ <basic-user-card :user="user"> <div class="follow-card-content-container"> <span - v-if="isMe || !noFollowsYou && relationship.followed_by" + v-if="isMe || (!noFollowsYou && relationship.followed_by)" class="faint" > {{ isMe ? $t('user_card.its_you') : $t('user_card.follows_you') }} From 9d2935e72f5244f078d3ebb95957b024dad22643 Mon Sep 17 00:00:00 2001 From: Fristi <fristi@subcon.town> Date: Thu, 14 May 2020 07:59:08 +0000 Subject: [PATCH 59/95] Translated using Weblate (Dutch) Currently translated at 77.6% (476 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/nl/ --- src/i18n/nl.json | 959 +++++++++++++++++++++++++++++------------------ 1 file changed, 589 insertions(+), 370 deletions(-) diff --git a/src/i18n/nl.json b/src/i18n/nl.json index 7e2f0604..e5cf8bf8 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -1,377 +1,596 @@ { - "chat": { - "title": "Chat" - }, - "features_panel": { - "chat": "Chat", - "gopher": "Gopher", - "media_proxy": "Media proxy", - "scope_options": "Zichtbaarheidsopties", - "text_limit": "Tekst limiet", - "title": "Features", - "who_to_follow": "Wie te volgen" - }, - "finder": { - "error_fetching_user": "Fout tijdens ophalen gebruiker", - "find_user": "Gebruiker zoeken" - }, - "general": { - "apply": "toepassen", - "submit": "Verzend" - }, - "login": { - "login": "Log in", - "description": "Log in met OAuth", - "logout": "Log uit", - "password": "Wachtwoord", - "placeholder": "bv. lain", - "register": "Registreer", - "username": "Gebruikersnaam" - }, - "nav": { - "about": "Over", - "back": "Terug", - "chat": "Locale Chat", - "friend_requests": "Volgverzoek", - "mentions": "Vermeldingen", - "dms": "Directe Berichten", - "public_tl": "Publieke Tijdlijn", - "timeline": "Tijdlijn", - "twkn": "Het Geheel Gekende Netwerk", - "user_search": "Zoek Gebruiker", - "who_to_follow": "Wie te volgen", - "preferences": "Voorkeuren" - }, - "notifications": { - "broken_favorite": "Onbekende status, aan het zoeken...", - "favorited_you": "vond je status leuk", - "followed_you": "volgt jou", - "load_older": "Laad oudere meldingen", - "notifications": "Meldingen", - "read": "Gelezen!", - "repeated_you": "Herhaalde je status" - }, - "post_status": { - "new_status": "Post nieuwe status", - "account_not_locked_warning": "Je account is niet {0}. Iedereen die je volgt kan enkel-volgers posts lezen.", - "account_not_locked_warning_link": "gesloten", - "attachments_sensitive": "Markeer bijlage als gevoelig", - "content_type": { - "text/plain": "Gewone tekst" + "chat": { + "title": "Chat" }, - "content_warning": "Onderwerp (optioneel)", - "default": "Tijd voor een pauze!", - "direct_warning": "Deze post zal enkel zichtbaar zijn voor de personen die genoemd zijn.", - "posting": "Plaatsen", - "scope": { - "direct": "Direct - Post enkel naar genoemde gebruikers", - "private": "Enkel volgers - Post enkel naar volgers", - "public": "Publiek - Post op publieke tijdlijnen", - "unlisted": "Unlisted - Toon niet op publieke tijdlijnen" - } - }, - "registration": { - "bio": "Bio", - "email": "Email", - "fullname": "Weergave naam", - "password_confirm": "Wachtwoord bevestiging", - "registration": "Registratie", - "token": "Uitnodigingstoken", - "captcha": "CAPTCHA", - "new_captcha": "Klik op de afbeelding voor een nieuwe captcha", - "validations": { - "username_required": "moet ingevuld zijn", - "fullname_required": "moet ingevuld zijn", - "email_required": "moet ingevuld zijn", - "password_required": "moet ingevuld zijn", - "password_confirmation_required": "moet ingevuld zijn", - "password_confirmation_match": "komt niet overeen met het wachtwoord" - } - }, - "settings": { - "attachmentRadius": "Bijlages", - "attachments": "Bijlages", - "autoload": "Automatisch laden wanneer tot de bodem gescrold inschakelen", - "avatar": "Avatar", - "avatarAltRadius": "Avatars (Meldingen)", - "avatarRadius": "Avatars", - "background": "Achtergrond", - "bio": "Bio", - "btnRadius": "Knoppen", - "cBlue": "Blauw (Antwoord, volgen)", - "cGreen": "Groen (Herhaal)", - "cOrange": "Oranje (Vind ik leuk)", - "cRed": "Rood (Annuleer)", - "change_password": "Verander Wachtwoord", - "change_password_error": "Er was een probleem bij het aanpassen van je wachtwoord.", - "changed_password": "Wachtwoord succesvol aangepast!", - "collapse_subject": "Klap posts met onderwerp in", - "composing": "Samenstellen", - "confirm_new_password": "Bevestig nieuw wachtwoord", - "current_avatar": "Je huidige avatar", - "current_password": "Huidig wachtwoord", - "current_profile_banner": "Je huidige profiel banner", - "data_import_export_tab": "Data Import / Export", - "default_vis": "Standaard zichtbaarheidsscope", - "delete_account": "Verwijder Account", - "delete_account_description": "Verwijder je account en berichten permanent.", - "delete_account_error": "Er was een probleem bij het verwijderen van je account. Indien dit probleem blijft, gelieve de administratie van deze instantie te verwittigen.", - "delete_account_instructions": "Typ je wachtwoord in de input hieronder om het verwijderen van je account te bevestigen.", - "export_theme": "Sla preset op", - "filtering": "Filtering", - "filtering_explanation": "Alle statussen die deze woorden bevatten worden genegeerd, één filter per lijn.", - "follow_export": "Volgers export", - "follow_export_button": "Exporteer je volgers naar een csv file", - "follow_export_processing": "Aan het verwerken, binnen enkele ogenblikken wordt je gevraagd je bestand te downloaden", - "follow_import": "Volgers import", - "follow_import_error": "Fout bij importeren volgers", - "follows_imported": "Volgers geïmporteerd! Het kan even duren om ze allemaal te verwerken.", - "foreground": "Voorgrond", - "general": "Algemeen", - "hide_attachments_in_convo": "Verberg bijlages in conversaties", - "hide_attachments_in_tl": "Verberg bijlages in de tijdlijn", - "hide_isp": "Verberg instantie-specifiek paneel", - "preload_images": "Afbeeldingen voorladen", - "hide_post_stats": "Verberg post statistieken (bv. het aantal vind-ik-leuks)", - "hide_user_stats": "Verberg post statistieken (bv. het aantal volgers)", - "import_followers_from_a_csv_file": "Importeer volgers uit een csv file", - "import_theme": "Laad preset", - "inputRadius": "Invoer velden", - "checkboxRadius": "Checkboxen", - "instance_default": "(standaard: {value})", - "instance_default_simple": "(standaard)", - "interface": "Interface", - "interfaceLanguage": "Interface taal", - "invalid_theme_imported": "Het geselecteerde thema is geen door Pleroma ondersteund thema. Er zijn geen aanpassingen gedaan.", - "limited_availability": "Onbeschikbaar in je browser", - "links": "Links", - "lock_account_description": "Laat volgers enkel toe na expliciete toestemming", - "loop_video": "Speel videos af in een lus", - "loop_video_silent_only": "Speel enkel videos zonder geluid af in een lus (bv. Mastodon's \"gifs\")", - "name": "Naam", - "name_bio": "Naam & Bio", - "new_password": "Nieuw wachtwoord", - "notification_visibility": "Type meldingen die getoond worden", - "notification_visibility_follows": "Volgers", - "notification_visibility_likes": "Vind-ik-leuks", - "notification_visibility_mentions": "Vermeldingen", - "notification_visibility_repeats": "Herhalingen", - "no_rich_text_description": "Strip rich text formattering van alle posts", - "hide_network_description": "Toon niet wie mij volgt en wie ik volg.", - "nsfw_clickthrough": "Schakel doorklikbaar verbergen van NSFW bijlages in", - "oauth_tokens": "OAuth-tokens", - "token": "Token", - "refresh_token": "Token vernieuwen", - "valid_until": "Geldig tot", - "revoke_token": "Intrekken", - "panelRadius": "Panelen", - "pause_on_unfocused": "Pauzeer streamen wanneer de tab niet gefocused is", - "presets": "Presets", - "profile_background": "Profiel Achtergrond", - "profile_banner": "Profiel Banner", - "profile_tab": "Profiel", - "radii_help": "Stel afronding van hoeken in de interface in (in pixels)", - "replies_in_timeline": "Antwoorden in tijdlijn", - "reply_link_preview": "Schakel antwoordlink preview in bij over zweven met muisaanwijzer", - "reply_visibility_all": "Toon alle antwoorden", - "reply_visibility_following": "Toon enkel antwoorden naar mij of andere gebruikers gericht", - "reply_visibility_self": "Toon enkel antwoorden naar mij gericht", - "saving_err": "Fout tijdens opslaan van instellingen", - "saving_ok": "Instellingen opgeslagen", - "security_tab": "Veiligheid", - "scope_copy": "Neem scope over bij antwoorden (Directe Berichten blijven altijd Direct)", - "set_new_avatar": "Zet nieuwe avatar", - "set_new_profile_background": "Zet nieuwe profiel achtergrond", - "set_new_profile_banner": "Zet nieuwe profiel banner", - "settings": "Instellingen", - "subject_input_always_show": "Maak onderwerpveld altijd zichtbaar", - "subject_line_behavior": "Kopieer onderwerp bij antwoorden", - "subject_line_email": "Zoals email: \"re: onderwerp\"", - "subject_line_mastodon": "Zoals Mastodon: kopieer zoals het is", - "subject_line_noop": "Kopieer niet", - "stop_gifs": "Speel GIFs af bij zweven", - "streaming": "Schakel automatisch streamen van posts in wanneer tot boven gescrold.", - "text": "Tekst", - "theme": "Thema", - "theme_help": "Gebruik hex color codes (#rrggbb) om je kleurschema te wijzigen.", - "theme_help_v2_1": "Je kan ook de kleur en transparantie van bepaalde componenten overschrijven door de checkbox aan te vinken, gebruik de \"Wis alles\" knop om alle overschrijvingen te annuleren.", - "theme_help_v2_2": "Iconen onder sommige items zijn achtergrond/tekst contrast indicators, zweef er over voor gedetailleerde info. Hou er rekening mee dat bij doorzichtigheid de ergst mogelijke situatie wordt weer gegeven.", - "tooltipRadius": "Gereedschapstips/alarmen", - "user_settings": "Gebruikers Instellingen", - "values": { - "false": "nee", - "true": "ja" + "features_panel": { + "chat": "Chat", + "gopher": "Gopher", + "media_proxy": "Media proxy", + "scope_options": "Zichtbaarheidsopties", + "text_limit": "Tekst limiet", + "title": "Features", + "who_to_follow": "Wie te volgen" }, - "notifications": "Meldingen", - "enable_web_push_notifications": "Schakel web push meldingen in", - "style": { - "switcher": { - "keep_color": "Behoud kleuren", - "keep_shadows": "Behoud schaduwen", - "keep_opacity": "Behoud transparantie", - "keep_roundness": "Behoud afrondingen", - "keep_fonts": "Behoud lettertypes", - "save_load_hint": "\"Behoud\" opties behouden de momenteel ingestelde opties bij het selecteren of laden van thema's, maar slaan ook de genoemde opties op bij het exporteren van een thema. Wanneer alle selectievakjes zijn uitgeschakeld, zal het exporteren van thema's alles opslaan.", - "reset": "Reset", - "clear_all": "Wis alles", - "clear_opacity": "Wis transparantie" - }, - "common": { - "color": "Kleur", - "opacity": "Transparantie", - "contrast": { - "hint": "Contrast ratio is {ratio}, {level} {context}", - "level": { - "aa": "voldoet aan de richtlijn van niveau AA (minimum)", - "aaa": "voldoet aan de richtlijn van niveau AAA (aangeraden)", - "bad": "voldoet aan geen enkele toegankelijkheidsrichtlijn" - }, - "context": { - "18pt": "voor grote (18pt+) tekst", - "text": "voor tekst" - } + "finder": { + "error_fetching_user": "Fout tijdens ophalen gebruiker", + "find_user": "Gebruiker zoeken" + }, + "general": { + "apply": "toepassen", + "submit": "Verzend", + "more": "Meer", + "optional": "optioneel", + "show_more": "Bekijk meer", + "show_less": "Bekijk minder", + "dismiss": "Opheffen", + "cancel": "Annuleren", + "disable": "Uitschakelen", + "enable": "Inschakelen", + "confirm": "Bevestigen", + "verify": "Verifiëren", + "generic_error": "Er is een fout opgetreden" + }, + "login": { + "login": "Log in", + "description": "Log in met OAuth", + "logout": "Log uit", + "password": "Wachtwoord", + "placeholder": "bv. lain", + "register": "Registreer", + "username": "Gebruikersnaam", + "hint": "Log in om deel te nemen aan de discussie", + "authentication_code": "Authenticatie code", + "enter_recovery_code": "Voer een herstelcode in", + "enter_two_factor_code": "Voer een twee-factor code in", + "recovery_code": "Herstelcode", + "heading": { + "totp": "Twee-factor authenticatie", + "recovery": "Twee-factor herstelling" } - }, - "common_colors": { - "_tab_label": "Gemeenschappelijk", - "main": "Gemeenschappelijke kleuren", - "foreground_hint": "Zie \"Geavanceerd\" tab voor meer gedetailleerde controle", - "rgbo": "Iconen, accenten, badges" - }, - "advanced_colors": { - "_tab_label": "Geavanceerd", - "alert": "Alarm achtergrond", - "alert_error": "Fout", - "badge": "Badge achtergrond", - "badge_notification": "Meldingen", - "panel_header": "Paneel hoofding", - "top_bar": "Top bar", - "borders": "Randen", - "buttons": "Knoppen", - "inputs": "Invoervelden", - "faint_text": "Vervaagde tekst" - }, - "radii": { - "_tab_label": "Rondheid" - }, - "shadows": { - "_tab_label": "Schaduw en belichting", - "component": "Component", - "override": "Overschrijven", - "shadow_id": "Schaduw #{value}", - "blur": "Vervagen", - "spread": "Spreid", - "inset": "Inzet", - "hint": "Voor schaduw kan je ook --variable gebruiken als een kleur waarde om CSS3 variabelen te gebruiken. Houd er rekening mee dat het instellen van opaciteit in dit geval niet werkt.", - "filter_hint": { - "always_drop_shadow": "Waarschuwing, deze schaduw gebruikt altijd {0} als de browser dit ondersteund.", - "drop_shadow_syntax": "{0} ondersteund niet de {1} parameter en {2} sleutelwoord.", - "avatar_inset": "Houd er rekening mee dat het combineren van zowel inzet and niet-inzet schaduwen op transparante avatars onverwachte resultaten kan opleveren.", - "spread_zero": "Schaduw met spreiding > 0 worden weergegeven alsof ze op nul staan", - "inset_classic": "Inzet schaduw zal {0} gebruiken" - }, - "components": { - "panel": "Paneel", - "panelHeader": "Paneel hoofding", - "topBar": "Top bar", - "avatar": "Gebruiker avatar (in profiel weergave)", - "avatarStatus": "Gebruiker avatar (in post weergave)", - "popup": "Popups en gereedschapstips", - "button": "Knop", - "buttonHover": "Knop (zweven)", - "buttonPressed": "Knop (ingedrukt)", - "buttonPressedHover": "Knop (ingedrukt+zweven)", - "input": "Invoerveld" - } - }, - "fonts": { - "_tab_label": "Lettertypes", - "help": "Selecteer het lettertype om te gebruiken voor elementen van de UI.Voor \"aangepast\" moet je de exacte naam van het lettertype invoeren zoals die in het systeem wordt weergegeven.", - "components": { - "interface": "Interface", - "input": "Invoervelden", - "post": "Post tekst", - "postCode": "Monospaced tekst in een post (rich text)" - }, - "family": "Naam lettertype", - "size": "Grootte (in px)", - "weight": "Gewicht (vetheid)", - "custom": "Aangepast" - }, - "preview": { - "header": "Voorvertoning", - "content": "Inhoud", - "error": "Voorbeeld fout", - "button": "Knop", - "text": "Nog een boel andere {0} en {1}", - "mono": "inhoud", - "input": "Tijd voor een pauze!", - "faint_link": "handige gebruikershandleiding", - "fine_print": "Lees onze {0} om niets nuttig te leren!", - "header_faint": "Alles komt goed", - "checkbox": "Ik heb de gebruikersvoorwaarden eens van ver bekeken", - "link": "een link" - } - } - }, - "timeline": { - "collapse": "Inklappen", - "conversation": "Conversatie", - "error_fetching": "Fout bij ophalen van updates", - "load_older": "Laad oudere Statussen", - "no_retweet_hint": "Post is gemarkeerd als enkel volgers of direct en kan niet worden herhaald", - "repeated": "herhaalde", - "show_new": "Toon nieuwe", - "up_to_date": "Up-to-date" - }, - "user_card": { - "approve": "Goedkeuren", - "block": "Blokkeren", - "blocked": "Geblokkeerd!", - "deny": "Ontzeggen", - "favorites": "Vind-ik-leuks", - "follow": "Volgen", - "follow_sent": "Aanvraag verzonden!", - "follow_progress": "Aanvragen…", - "follow_again": "Aanvraag opnieuw zenden?", - "follow_unfollow": "Stop volgen", - "followees": "Aan het volgen", - "followers": "Volgers", - "following": "Aan het volgen!", - "follows_you": "Volgt jou!", - "its_you": "'t is jij!", - "mute": "Dempen", - "muted": "Gedempt", - "per_day": "per dag", - "remote_follow": "Volg vanop afstand", - "statuses": "Statussen" - }, - "user_profile": { - "timeline_title": "Gebruikers Tijdlijn" - }, - "who_to_follow": { - "more": "Meer", - "who_to_follow": "Wie te volgen" - }, - "tool_tip": { - "media_upload": "Upload Media", - "repeat": "Herhaal", - "reply": "Antwoord", - "favorite": "Vind-ik-leuk", - "user_settings": "Gebruikers Instellingen" - }, - "upload":{ - "error": { - "base": "Upload gefaald.", - "file_too_big": "Bestand is te groot [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "Probeer later opnieuw" }, - "file_size_units": { - "B": "B", - "KiB": "KiB", - "MiB": "MiB", - "GiB": "GiB", - "TiB": "TiB" + "nav": { + "about": "Over", + "back": "Terug", + "chat": "Locale Chat", + "friend_requests": "Volgverzoek", + "mentions": "Vermeldingen", + "dms": "Directe Berichten", + "public_tl": "Publieke Tijdlijn", + "timeline": "Tijdlijn", + "twkn": "Het Geheel Gekende Netwerk", + "user_search": "Zoek Gebruiker", + "who_to_follow": "Wie te volgen", + "preferences": "Voorkeuren", + "administration": "Administratie", + "search": "Zoeken", + "interactions": "Interacties" + }, + "notifications": { + "broken_favorite": "Onbekende status, aan het zoeken...", + "favorited_you": "vond je status leuk", + "followed_you": "volgt jou", + "load_older": "Laad oudere meldingen", + "notifications": "Meldingen", + "read": "Gelezen!", + "repeated_you": "Herhaalde je status", + "no_more_notifications": "Geen notificaties meer", + "migrated_to": "is gemigreerd naar", + "follow_request": "wil je volgen", + "reacted_with": "reageerde met {0}" + }, + "post_status": { + "new_status": "Post nieuwe status", + "account_not_locked_warning": "Je account is niet {0}. Iedereen die je volgt kan enkel-volgers posts lezen.", + "account_not_locked_warning_link": "gesloten", + "attachments_sensitive": "Markeer bijlage als gevoelig", + "content_type": { + "text/plain": "Gewone tekst", + "text/html": "HTML", + "text/markdown": "Markdown", + "text/bbcode": "BBCode" + }, + "content_warning": "Onderwerp (optioneel)", + "default": "Tijd voor een pauze!", + "direct_warning": "Deze post zal enkel zichtbaar zijn voor de personen die genoemd zijn.", + "posting": "Plaatsen", + "scope": { + "direct": "Direct - Post enkel naar genoemde gebruikers", + "private": "Enkel volgers - Post enkel naar volgers", + "public": "Publiek - Post op publieke tijdlijnen", + "unlisted": "Unlisted - Toon niet op publieke tijdlijnen" + }, + "direct_warning_to_all": "Dit bericht zal zichtbaar zijn voor alle vermelde gebruikers.", + "direct_warning_to_first_only": "Dit bericht zal alleen zichtbaar zijn voor de vermelde gebruikers aan het begin van het bericht.", + "scope_notice": { + "public": "Dit bericht zal voor iedereen zichtbaar zijn", + "unlisted": "Dit bericht zal niet zichtbaar zijn in de Publieke Tijdlijn en Het Geheel Gekende Netwerk", + "private": "Dit bericht zal voor alleen je volgers zichtbaar zijn" + } + }, + "registration": { + "bio": "Bio", + "email": "Email", + "fullname": "Weergave naam", + "password_confirm": "Wachtwoord bevestiging", + "registration": "Registratie", + "token": "Uitnodigingstoken", + "captcha": "CAPTCHA", + "new_captcha": "Klik op de afbeelding voor een nieuwe captcha", + "validations": { + "username_required": "moet ingevuld zijn", + "fullname_required": "moet ingevuld zijn", + "email_required": "moet ingevuld zijn", + "password_required": "moet ingevuld zijn", + "password_confirmation_required": "moet ingevuld zijn", + "password_confirmation_match": "komt niet overeen met het wachtwoord" + }, + "username_placeholder": "bijv. lain", + "fullname_placeholder": "bijv. Lain Iwakura", + "bio_placeholder": "bijv.\nHallo, ik ben Lain.\nIk ben een anime meisje woonachtig in een buitenwijk in Japan. Je kent me misschien van the Wired." + }, + "settings": { + "attachmentRadius": "Bijlages", + "attachments": "Bijlages", + "autoload": "Automatisch laden wanneer tot de bodem gescrold inschakelen", + "avatar": "Avatar", + "avatarAltRadius": "Avatars (Meldingen)", + "avatarRadius": "Avatars", + "background": "Achtergrond", + "bio": "Bio", + "btnRadius": "Knoppen", + "cBlue": "Blauw (Antwoord, volgen)", + "cGreen": "Groen (Herhaal)", + "cOrange": "Oranje (Vind ik leuk)", + "cRed": "Rood (Annuleer)", + "change_password": "Verander Wachtwoord", + "change_password_error": "Er was een probleem bij het aanpassen van je wachtwoord.", + "changed_password": "Wachtwoord succesvol aangepast!", + "collapse_subject": "Klap posts met onderwerp in", + "composing": "Samenstellen", + "confirm_new_password": "Bevestig nieuw wachtwoord", + "current_avatar": "Je huidige avatar", + "current_password": "Huidig wachtwoord", + "current_profile_banner": "Je huidige profiel banner", + "data_import_export_tab": "Data Import / Export", + "default_vis": "Standaard zichtbaarheidsscope", + "delete_account": "Verwijder Account", + "delete_account_description": "Verwijder je account en berichten permanent.", + "delete_account_error": "Er was een probleem bij het verwijderen van je account. Indien dit probleem blijft, gelieve de administratie van deze instantie te verwittigen.", + "delete_account_instructions": "Typ je wachtwoord in de input hieronder om het verwijderen van je account te bevestigen.", + "export_theme": "Sla preset op", + "filtering": "Filtering", + "filtering_explanation": "Alle statussen die deze woorden bevatten worden genegeerd, één filter per lijn.", + "follow_export": "Volgers exporteren", + "follow_export_button": "Exporteer je volgers naar een csv file", + "follow_export_processing": "Aan het verwerken, binnen enkele ogenblikken wordt je gevraagd je bestand te downloaden", + "follow_import": "Volgers importeren", + "follow_import_error": "Fout bij importeren volgers", + "follows_imported": "Volgers geïmporteerd! Het kan even duren voordat deze verwerkt zijn.", + "foreground": "Voorgrond", + "general": "Algemeen", + "hide_attachments_in_convo": "Verberg bijlages in conversaties", + "hide_attachments_in_tl": "Verberg bijlages in de tijdlijn", + "hide_isp": "Verberg instantie-specifiek paneel", + "preload_images": "Afbeeldingen voorladen", + "hide_post_stats": "Verberg post statistieken (bv. het aantal vind-ik-leuks)", + "hide_user_stats": "Verberg post statistieken (bv. het aantal volgers)", + "import_followers_from_a_csv_file": "Importeer volgers uit een csv file", + "import_theme": "Laad preset", + "inputRadius": "Invoer velden", + "checkboxRadius": "Checkboxen", + "instance_default": "(standaard: {value})", + "instance_default_simple": "(standaard)", + "interface": "Interface", + "interfaceLanguage": "Interface taal", + "invalid_theme_imported": "Het geselecteerde thema is geen door Pleroma ondersteund thema. Er zijn geen aanpassingen gedaan.", + "limited_availability": "Onbeschikbaar in je browser", + "links": "Links", + "lock_account_description": "Laat volgers enkel toe na expliciete toestemming", + "loop_video": "Speel videos af in een lus", + "loop_video_silent_only": "Speel enkel videos zonder geluid af in een lus (bv. Mastodon's \"gifs\")", + "name": "Naam", + "name_bio": "Naam & Bio", + "new_password": "Nieuw wachtwoord", + "notification_visibility": "Type meldingen die getoond worden", + "notification_visibility_follows": "Volgers", + "notification_visibility_likes": "Vind-ik-leuks", + "notification_visibility_mentions": "Vermeldingen", + "notification_visibility_repeats": "Herhalingen", + "no_rich_text_description": "Strip rich text formattering van alle posts", + "hide_network_description": "Toon niet wie mij volgt en wie ik volg.", + "nsfw_clickthrough": "Schakel doorklikbaar verbergen van NSFW bijlages in", + "oauth_tokens": "OAuth-tokens", + "token": "Token", + "refresh_token": "Token vernieuwen", + "valid_until": "Geldig tot", + "revoke_token": "Intrekken", + "panelRadius": "Panelen", + "pause_on_unfocused": "Pauzeer streamen wanneer de tab niet gefocused is", + "presets": "Presets", + "profile_background": "Profiel Achtergrond", + "profile_banner": "Profiel Banner", + "profile_tab": "Profiel", + "radii_help": "Stel afronding van hoeken in de interface in (in pixels)", + "replies_in_timeline": "Antwoorden in tijdlijn", + "reply_link_preview": "Schakel antwoordlink preview in bij over zweven met muisaanwijzer", + "reply_visibility_all": "Toon alle antwoorden", + "reply_visibility_following": "Toon enkel antwoorden naar mij of andere gebruikers gericht", + "reply_visibility_self": "Toon enkel antwoorden naar mij gericht", + "saving_err": "Fout tijdens opslaan van instellingen", + "saving_ok": "Instellingen opgeslagen", + "security_tab": "Veiligheid", + "scope_copy": "Neem scope over bij antwoorden (Directe Berichten blijven altijd Direct)", + "set_new_avatar": "Zet nieuwe avatar", + "set_new_profile_background": "Zet nieuwe profiel achtergrond", + "set_new_profile_banner": "Zet nieuwe profiel banner", + "settings": "Instellingen", + "subject_input_always_show": "Maak onderwerpveld altijd zichtbaar", + "subject_line_behavior": "Kopieer onderwerp bij antwoorden", + "subject_line_email": "Zoals email: \"re: onderwerp\"", + "subject_line_mastodon": "Zoals Mastodon: kopieer zoals het is", + "subject_line_noop": "Kopieer niet", + "stop_gifs": "Speel GIFs af bij zweven", + "streaming": "Schakel automatisch streamen van posts in wanneer tot boven gescrold.", + "text": "Tekst", + "theme": "Thema", + "theme_help": "Gebruik hex color codes (#rrggbb) om je kleurschema te wijzigen.", + "theme_help_v2_1": "Je kan ook de kleur en transparantie van bepaalde componenten overschrijven door de checkbox aan te vinken, gebruik de \"Wis alles\" knop om alle overschrijvingen te annuleren.", + "theme_help_v2_2": "Iconen onder sommige items zijn achtergrond/tekst contrast indicators, zweef er over voor gedetailleerde info. Hou er rekening mee dat bij doorzichtigheid de ergst mogelijke situatie wordt weer gegeven.", + "tooltipRadius": "Gereedschapstips/alarmen", + "user_settings": "Gebruikers Instellingen", + "values": { + "false": "nee", + "true": "ja" + }, + "notifications": "Meldingen", + "enable_web_push_notifications": "Schakel web push meldingen in", + "style": { + "switcher": { + "keep_color": "Behoud kleuren", + "keep_shadows": "Behoud schaduwen", + "keep_opacity": "Behoud transparantie", + "keep_roundness": "Behoud afrondingen", + "keep_fonts": "Behoud lettertypes", + "save_load_hint": "\"Behoud\" opties behouden de momenteel ingestelde opties bij het selecteren of laden van thema's, maar slaan ook de genoemde opties op bij het exporteren van een thema. Wanneer alle selectievakjes zijn uitgeschakeld, zal het exporteren van thema's alles opslaan.", + "reset": "Reset", + "clear_all": "Wis alles", + "clear_opacity": "Wis transparantie", + "keep_as_is": "Houdt zoals het is", + "use_snapshot": "Oude versie", + "use_source": "Nieuwe versie", + "help": { + "future_version_imported": "Het geïmporteerde bestand is gemaakt voor een nieuwere versie van FE.", + "older_version_imported": "Het geïmporteerde bestand is gemaakt voor een oudere versie van FE.", + "upgraded_from_v2": "PleromaFE is bijgewerkt, het thema kan iets anders uitzien dan dat je gewend bent.", + "v2_imported": "Het geïmporteerde bestand is gemaakt voor een oudere FE. We proberen compatibiliteit te maximaliseren, maar het kan toch voorkomen dat er inconsistenties zijn." + }, + "load_theme": "Thema laden" + }, + "common": { + "color": "Kleur", + "opacity": "Transparantie", + "contrast": { + "hint": "Contrast ratio is {ratio}, {level} {context}", + "level": { + "aa": "voldoet aan de richtlijn van niveau AA (minimum)", + "aaa": "voldoet aan de richtlijn van niveau AAA (aangeraden)", + "bad": "voldoet aan geen enkele toegankelijkheidsrichtlijn" + }, + "context": { + "18pt": "voor grote (18pt+) tekst", + "text": "voor tekst" + } + } + }, + "common_colors": { + "_tab_label": "Gemeenschappelijk", + "main": "Gemeenschappelijke kleuren", + "foreground_hint": "Zie \"Geavanceerd\" tab voor meer gedetailleerde controle", + "rgbo": "Iconen, accenten, badges" + }, + "advanced_colors": { + "_tab_label": "Geavanceerd", + "alert": "Alarm achtergrond", + "alert_error": "Fout", + "badge": "Badge achtergrond", + "badge_notification": "Meldingen", + "panel_header": "Paneel hoofding", + "top_bar": "Top bar", + "borders": "Randen", + "buttons": "Knoppen", + "inputs": "Invoervelden", + "faint_text": "Vervaagde tekst" + }, + "radii": { + "_tab_label": "Rondheid" + }, + "shadows": { + "_tab_label": "Schaduw en belichting", + "component": "Component", + "override": "Overschrijven", + "shadow_id": "Schaduw #{value}", + "blur": "Vervagen", + "spread": "Spreid", + "inset": "Inzet", + "hint": "Voor schaduw kan je ook --variable gebruiken als een kleur waarde om CSS3 variabelen te gebruiken. Houd er rekening mee dat het instellen van opaciteit in dit geval niet werkt.", + "filter_hint": { + "always_drop_shadow": "Waarschuwing, deze schaduw gebruikt altijd {0} als de browser dit ondersteund.", + "drop_shadow_syntax": "{0} ondersteund niet de {1} parameter en {2} sleutelwoord.", + "avatar_inset": "Houd er rekening mee dat het combineren van zowel inzet and niet-inzet schaduwen op transparante avatars onverwachte resultaten kan opleveren.", + "spread_zero": "Schaduw met spreiding > 0 worden weergegeven alsof ze op nul staan", + "inset_classic": "Inzet schaduw zal {0} gebruiken" + }, + "components": { + "panel": "Paneel", + "panelHeader": "Paneel hoofding", + "topBar": "Top bar", + "avatar": "Gebruiker avatar (in profiel weergave)", + "avatarStatus": "Gebruiker avatar (in post weergave)", + "popup": "Popups en gereedschapstips", + "button": "Knop", + "buttonHover": "Knop (zweven)", + "buttonPressed": "Knop (ingedrukt)", + "buttonPressedHover": "Knop (ingedrukt+zweven)", + "input": "Invoerveld" + } + }, + "fonts": { + "_tab_label": "Lettertypes", + "help": "Selecteer het lettertype om te gebruiken voor elementen van de UI.Voor \"aangepast\" moet je de exacte naam van het lettertype invoeren zoals die in het systeem wordt weergegeven.", + "components": { + "interface": "Interface", + "input": "Invoervelden", + "post": "Post tekst", + "postCode": "Monospaced tekst in een post (rich text)" + }, + "family": "Naam lettertype", + "size": "Grootte (in px)", + "weight": "Gewicht (vetheid)", + "custom": "Aangepast" + }, + "preview": { + "header": "Voorvertoning", + "content": "Inhoud", + "error": "Voorbeeld fout", + "button": "Knop", + "text": "Nog een boel andere {0} en {1}", + "mono": "inhoud", + "input": "Tijd voor een pauze!", + "faint_link": "handige gebruikershandleiding", + "fine_print": "Lees onze {0} om niets nuttig te leren!", + "header_faint": "Alles komt goed", + "checkbox": "Ik heb de gebruikersvoorwaarden eens van ver bekeken", + "link": "een link" + } + }, + "notification_setting_follows": "Gebruikers die je volgt", + "notification_setting_non_follows": "Gebruikers die je niet volgt", + "notification_setting_followers": "Gebruikers die je volgen", + "notification_setting_privacy": "Privacy", + "notification_setting_privacy_option": "Verberg de afzender en inhoud van push notificaties", + "notification_mutes": "Om niet langer notificaties te ontvangen van een specifieke gebruiker, kun je deze dempen.", + "app_name": "App naam", + "security": "Beveiliging", + "enter_current_password_to_confirm": "Voer je huidige wachtwoord in om je identiteit te bevestigen", + "mfa": { + "otp": "OTP", + "setup_otp": "OTP instellen", + "wait_pre_setup_otp": "OTP voorinstellen", + "confirm_and_enable": "Bevestig en schakel OTP in", + "title": "Twee-factor Authenticatie", + "generate_new_recovery_codes": "Genereer nieuwe herstelcodes", + "recovery_codes": "Herstelcodes.", + "waiting_a_recovery_codes": "Backup codes ontvangen...", + "authentication_methods": "Authenticatie methodes", + "scan": { + "title": "Scannen", + "desc": "Scan de QR code of voer een sleutel in met je twee-factor applicatie:", + "secret_code": "Sleutel" + }, + "verify": { + "desc": "Voer de code van je twee-factor applicatie in om twee-factor authenticatie in te schakelen:" + }, + "warning_of_generate_new_codes": "Wanneer je nieuwe herstelcodes genereert, zullen je oude code niet langer werken.", + "recovery_codes_warning": "Schrijf de codes op of sla ze op een veilige locatie op - anders kun je ze niet meer inzien. Als je toegang tot je 2FA app en herstelcodes verliest, zal je buitengesloten zijn uit je account." + }, + "allow_following_move": "Auto-volgen toestaan wanneer een gevolgd account migreert", + "block_export": "Geblokkeerde gebruikers exporteren", + "block_import": "Geblokkeerde gebruikers importeren", + "blocks_imported": "Geblokkeerde gebruikers geïmporteerd! Het kan even duren voordat deze verwerkt zijn.", + "blocks_tab": "Geblokkeerde gebruikers", + "change_email": "Email wijzigen", + "change_email_error": "Er is een probleem opgetreden tijdens het wijzigen van je email.", + "changed_email": "Email succesvol gewijzigd!", + "domain_mutes": "Domeinen", + "avatar_size_instruction": "De aangeraden minimale afmeting voor avatar afbeeldingen is 150x150 pixels.", + "pad_emoji": "Vul emoji op met spaties wanneer deze met de picker ingevoegd worden", + "emoji_reactions_on_timeline": "Toon emoji reacties op de tijdlijn", + "accent": "Accent", + "hide_muted_posts": "Verberg berichten van gedempte gebruikers", + "max_thumbnails": "Maximaal aantal miniaturen per bericht", + "use_one_click_nsfw": "Open gevoelige bijlagen met slechts één klik", + "hide_filtered_statuses": "Verberg gefilterde statussen", + "import_blocks_from_a_csv_file": "Importeer geblokkeerde gebruikers van een csv bestand", + "mutes_tab": "Gedempte gebruikers", + "play_videos_in_modal": "Speel video's af in een popup frame", + "new_email": "Nieuwe Email", + "notification_visibility_emoji_reactions": "Reacties", + "no_blocks": "Geen geblokkeerde gebruikers", + "no_mutes": "Geen gedempte gebruikers", + "hide_followers_description": "Niet tonen wie mij volgt", + "hide_followers_count_description": "Niet mijn volgers aantal tonen", + "hide_follows_count_description": "Niet mijn gevolgde aantal tonen", + "show_admin_badge": "Admin badge tonen in mijn profiel", + "autohide_floating_post_button": "Nieuw Bericht knop automatisch verbergen (mobiel)", + "search_user_to_block": "Zoek wie je wilt blokkeren", + "search_user_to_mute": "Zoek wie je wilt dempen", + "minimal_scopes_mode": "Bericht bereik-opties minimaliseren", + "post_status_content_type": "Bericht status content type", + "user_mutes": "Gebruikers", + "useStreamingApi": "Berichten en notificatie in real-time ontvangen", + "useStreamingApiWarning": "(Afgeraden, experimenteel, kan berichten overslaan)", + "type_domains_to_mute": "Voer domeinen in om te dempen", + "upload_a_photo": "Upload een foto", + "fun": "Plezier", + "greentext": "Meme pijlen", + "notification_setting": "Ontvang notificaties van:", + "block_export_button": "Exporteer je geblokkeerde gebruikers naar een csv bestand", + "block_import_error": "Fout bij importeren geblokkeerde gebruikers", + "discoverable": "Sta toe dat dit account ontdekt kan worden in zoekresultaten en andere diensten", + "use_contain_fit": "Bijlage in miniaturen niet bijsnijden", + "notification_visibility_moves": "Gebruiker Migraties", + "hide_follows_description": "Niet tonen wie ik volg", + "show_moderator_badge": "Moderator badge tonen in mijn profiel", + "notification_setting_filters": "Filters", + "notification_setting_non_followers": "Gebruikers die je niet volgen", + "notification_blocks": "Door een gebruiker te blokkeren, ontvang je geen notificaties meer van de gebruiker en wordt je abonnement op de gebruiker opgeheven." + }, + "timeline": { + "collapse": "Inklappen", + "conversation": "Conversatie", + "error_fetching": "Fout bij ophalen van updates", + "load_older": "Laad oudere Statussen", + "no_retweet_hint": "Post is gemarkeerd als enkel volgers of direct en kan niet worden herhaald", + "repeated": "herhaalde", + "show_new": "Toon nieuwe", + "up_to_date": "Up-to-date" + }, + "user_card": { + "approve": "Goedkeuren", + "block": "Blokkeren", + "blocked": "Geblokkeerd!", + "deny": "Ontzeggen", + "favorites": "Vind-ik-leuks", + "follow": "Volgen", + "follow_sent": "Aanvraag verzonden!", + "follow_progress": "Aanvragen…", + "follow_again": "Aanvraag opnieuw zenden?", + "follow_unfollow": "Stop volgen", + "followees": "Aan het volgen", + "followers": "Volgers", + "following": "Aan het volgen!", + "follows_you": "Volgt jou!", + "its_you": "'t is jij!", + "mute": "Dempen", + "muted": "Gedempt", + "per_day": "per dag", + "remote_follow": "Volg vanop afstand", + "statuses": "Statussen" + }, + "user_profile": { + "timeline_title": "Gebruikers Tijdlijn" + }, + "who_to_follow": { + "more": "Meer", + "who_to_follow": "Wie te volgen" + }, + "tool_tip": { + "media_upload": "Upload Media", + "repeat": "Herhaal", + "reply": "Antwoord", + "favorite": "Vind-ik-leuk", + "user_settings": "Gebruikers Instellingen" + }, + "upload": { + "error": { + "base": "Upload gefaald.", + "file_too_big": "Bestand is te groot [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", + "default": "Probeer later opnieuw" + }, + "file_size_units": { + "B": "B", + "KiB": "KiB", + "MiB": "MiB", + "GiB": "GiB", + "TiB": "TiB" + } + }, + "about": { + "mrf": { + "federation": "Federatie", + "keyword": { + "reject": "Afwijzen", + "replace": "Vervangen", + "is_replaced_by": "→", + "keyword_policies": "Zoekwoord Beleid" + }, + "mrf_policies_desc": "MRF beleidsregels beïnvloeden het federatie gedrag van de instantie. De volgende beleidsregels zijn ingeschakeld:", + "mrf_policies": "Ingeschakelde MRF Beleidsregels", + "simple": { + "simple_policies": "Instantie-specifieke Beleidsregels", + "accept": "Accepteren", + "accept_desc": "Deze instantie accepteert alleen berichten van de volgende instanties:", + "reject": "Afwijzen", + "reject_desc": "Deze instantie zal geen berichten accepteren van de volgende instanties:", + "quarantine": "Quarantaine", + "quarantine_desc": "Deze instantie zal alleen publieke berichten sturen naar de volgende instanties:", + "ftl_removal_desc": "Deze instantie verwijdert de volgende instanties van \"Het Geheel Gekende Netwerk\" tijdlijn:", + "media_removal_desc": "Deze instantie verwijdert media van berichten van de volgende instanties:", + "media_nsfw_desc": "Deze instantie stelt media in als gevoelig in berichten van de volgende instanties:" + } + }, + "staff": "Personeel" + }, + "domain_mute_card": { + "mute": "Dempen", + "mute_progress": "Dempen...", + "unmute": "Dempen opheffen", + "unmute_progress": "Dempen wordt opgeheven..." + }, + "exporter": { + "export": "Exporteren", + "processing": "Verwerken, er wordt zo gevraagd om je bestand te downloaden" + }, + "image_cropper": { + "save": "Opslaan", + "save_without_cropping": "Opslaan zonder bijsnijden", + "cancel": "Annuleren", + "crop_picture": "Afbeelding bijsnijden" + }, + "importer": { + "submit": "Verzenden", + "success": "Succesvol geïmporteerd.", + "error": "Er is een fout opgetreden bij het importeren van dit bestand." + }, + "media_modal": { + "previous": "Vorige", + "next": "Volgende" + }, + "polls": { + "add_poll": "Poll Toevoegen", + "add_option": "Optie Toevoegen", + "option": "Optie", + "votes": "stemmen", + "vote": "Stem", + "single_choice": "Enkelkeuze", + "multiple_choices": "Meerkeuze", + "expiry": "Poll leeftijd", + "expires_in": "Poll eindigt in {0}", + "expired": "Poll is {0} geleden beëindigd", + "not_enough_options": "Te weinig opties in poll", + "type": "Poll type" + }, + "emoji": { + "emoji": "Emoji", + "keep_open": "Houdt picker open", + "search_emoji": "Zoek voor een emoji", + "add_emoji": "Emoji invoegen", + "unicode": "Unicode emoji", + "load_all": "Alle {emojiAmount} emoji worden geladen", + "stickers": "Stickers", + "load_all_hint": "Eerste {saneAmount} emoji geladen, alle emoji tegelijk laden kan prestatie problemen veroorzaken." + }, + "interactions": { + "favs_repeats": "Herhalingen en Favorieten", + "follows": "Nieuwe volgers", + "moves": "Gebruiker migreert", + "load_older": "Oudere interacties laden" + }, + "remote_user_resolver": { + "searching_for": "Zoeken naar", + "error": "Niet gevonden." + }, + "selectable_list": { + "select_all": "Alles selecteren" } - } } From f2bcaec8dcfe7474409430d9fcf42a7ee94d6253 Mon Sep 17 00:00:00 2001 From: Fristi <fristi@subcon.town> Date: Thu, 14 May 2020 16:30:29 +0000 Subject: [PATCH 60/95] Translated using Weblate (Dutch) Currently translated at 77.8% (477 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/nl/ --- src/i18n/nl.json | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/i18n/nl.json b/src/i18n/nl.json index e5cf8bf8..7c87dadd 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -514,10 +514,10 @@ "is_replaced_by": "→", "keyword_policies": "Zoekwoord Beleid" }, - "mrf_policies_desc": "MRF beleidsregels beïnvloeden het federatie gedrag van de instantie. De volgende beleidsregels zijn ingeschakeld:", - "mrf_policies": "Ingeschakelde MRF Beleidsregels", + "mrf_policies_desc": "MRF regels beïnvloeden het federatie gedrag van de instantie. De volgende regels zijn ingeschakeld:", + "mrf_policies": "Ingeschakelde MRF Regels", "simple": { - "simple_policies": "Instantie-specifieke Beleidsregels", + "simple_policies": "Instantie-specifieke Regels", "accept": "Accepteren", "accept_desc": "Deze instantie accepteert alleen berichten van de volgende instanties:", "reject": "Afwijzen", @@ -526,7 +526,9 @@ "quarantine_desc": "Deze instantie zal alleen publieke berichten sturen naar de volgende instanties:", "ftl_removal_desc": "Deze instantie verwijdert de volgende instanties van \"Het Geheel Gekende Netwerk\" tijdlijn:", "media_removal_desc": "Deze instantie verwijdert media van berichten van de volgende instanties:", - "media_nsfw_desc": "Deze instantie stelt media in als gevoelig in berichten van de volgende instanties:" + "media_nsfw_desc": "Deze instantie stelt media in als gevoelig in berichten van de volgende instanties:", + "ftl_removal": "Verwijderen van \"Het Geheel Bekende Netwerk\" Tijdlijn", + "media_removal": "Media Verwijdering" } }, "staff": "Personeel" From 9c62b90212e1915bc0bb60adfc8b2da4bf37bf46 Mon Sep 17 00:00:00 2001 From: Fristi <fristi@subcon.town> Date: Thu, 14 May 2020 16:49:22 +0000 Subject: [PATCH 61/95] Translated using Weblate (Dutch) Currently translated at 77.8% (477 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/nl/ --- src/i18n/nl.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/nl.json b/src/i18n/nl.json index 7c87dadd..bac7e62c 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -8,7 +8,7 @@ "media_proxy": "Media proxy", "scope_options": "Zichtbaarheidsopties", "text_limit": "Tekst limiet", - "title": "Features", + "title": "Kenmerken", "who_to_follow": "Wie te volgen" }, "finder": { From 7a0f27f3b06eb73dc974e3cededddbc6ac3c5902 Mon Sep 17 00:00:00 2001 From: Ben Is <srsbzns@cock.li> Date: Wed, 13 May 2020 23:17:23 +0000 Subject: [PATCH 62/95] Translated using Weblate (Italian) Currently translated at 35.0% (215 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 87 +++++++++++++++++++++++++++++++++++++----------- 1 file changed, 68 insertions(+), 19 deletions(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index 8e35d4f9..6fc2be74 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -1,13 +1,24 @@ { "general": { "submit": "Invia", - "apply": "Applica" + "apply": "Applica", + "more": "Altro", + "generic_error": "Errore", + "optional": "facoltativo", + "show_more": "Mostra tutto", + "show_less": "Ripiega", + "dismiss": "Chiudi", + "cancel": "Annulla", + "disable": "Disabilita", + "enable": "Abilita", + "confirm": "Conferma", + "verify": "Verifica" }, "nav": { "mentions": "Menzioni", "public_tl": "Sequenza pubblica", "timeline": "Sequenza personale", - "twkn": "Tutte le stanze accessibili", + "twkn": "Sequenza globale", "chat": "Chat della stanza", "friend_requests": "Vogliono seguirti" }, @@ -22,13 +33,13 @@ }, "settings": { "attachments": "Allegati", - "autoload": "Abilita caricamento automatico quando si raggiunge il fondo pagina", + "autoload": "Abilita caricamento automatico quando raggiungi il fondo pagina", "avatar": "Icona utente", "bio": "Introduzione", "current_avatar": "La tua icona attuale", "current_profile_banner": "Il tuo stendardo attuale", "filtering": "Filtri", - "filtering_explanation": "Tutti i post contenenti queste parole saranno silenziati, una per linea", + "filtering_explanation": "Tutti i post contenenti queste parole saranno silenziati, una per riga", "hide_attachments_in_convo": "Nascondi gli allegati presenti nelle conversazioni", "hide_attachments_in_tl": "Nascondi gli allegati presenti nelle sequenze", "name": "Nome", @@ -44,18 +55,18 @@ "theme": "Tema", "user_settings": "Impostazioni Utente", "attachmentRadius": "Allegati", - "avatarAltRadius": "Icona utente (Notifiche)", + "avatarAltRadius": "Icone utente (Notifiche)", "avatarRadius": "Icone utente", "background": "Sfondo", "btnRadius": "Pulsanti", "cBlue": "Blu (risposte, seguire)", "cGreen": "Verde (ripeti)", - "cOrange": "Arancio (gradire)", + "cOrange": "Arancione (gradire)", "cRed": "Rosso (annulla)", - "change_password": "Cambia Password", + "change_password": "Cambia password", "change_password_error": "C'è stato un problema durante il cambiamento della password.", "changed_password": "Password cambiata correttamente!", - "collapse_subject": "Collassa messaggi con Oggetto", + "collapse_subject": "Ripiega messaggi con Oggetto", "confirm_new_password": "Conferma la nuova password", "current_password": "La tua password attuale", "data_import_export_tab": "Importa o esporta dati", @@ -66,7 +77,7 @@ "delete_account_instructions": "Digita la tua password nel campo sottostante per confermare l'eliminazione del tuo profilo.", "export_theme": "Salva impostazioni", "follow_export": "Esporta la lista di chi segui", - "follow_export_button": "Esporta la lista di chi segui in un file csv", + "follow_export_button": "Esporta la lista di chi segui in un file CSV", "follow_export_processing": "Sto elaborando, presto ti sarà chiesto di scaricare il tuo file", "follow_import": "Importa la lista di chi segui", "follow_import_error": "Errore nell'importazione della lista di chi segui", @@ -75,7 +86,7 @@ "general": "Generale", "hide_post_stats": "Nascondi statistiche dei messaggi (es. il numero di preferenze)", "hide_user_stats": "Nascondi statistiche dell'utente (es. il numero dei tuoi seguaci)", - "import_followers_from_a_csv_file": "Importa una lista di chi segui da un file csv", + "import_followers_from_a_csv_file": "Importa una lista di chi segui da un file CSV", "import_theme": "Carica impostazioni", "inputRadius": "Campi di testo", "instance_default": "(predefinito: {value})", @@ -102,7 +113,7 @@ "pause_on_unfocused": "Interrompi l'aggiornamento continuo mentre la scheda è in secondo piano", "presets": "Valori predefiniti", "profile_tab": "Profilo", - "radii_help": "Imposta il raggio dei bordi (in pixel)", + "radii_help": "Imposta il raggio degli angoli (in pixel)", "replies_in_timeline": "Risposte nella sequenza personale", "reply_visibility_all": "Mostra tutte le risposte", "reply_visibility_following": "Mostra solo le risposte rivolte a me o agli utenti che seguo", @@ -134,7 +145,7 @@ "follow": "Segui", "followees": "Chi stai seguendo", "followers": "Seguaci", - "following": "Lo stai seguendo!", + "following": "Seguìto!", "follows_you": "Ti segue!", "mute": "Silenzia", "muted": "Silenziato", @@ -153,7 +164,7 @@ "chat": "Chat", "gopher": "Gopher", "media_proxy": "Proxy multimedia", - "scope_options": "Opzioni raggio d'azione", + "scope_options": "Opzioni visibilità", "text_limit": "Lunghezza massima", "title": "Caratteristiche", "who_to_follow": "Chi seguire" @@ -166,9 +177,10 @@ "login": "Accedi", "logout": "Disconnettiti", "password": "Password", - "placeholder": "es. lain", + "placeholder": "es. Lupo Lucio", "register": "Registrati", - "username": "Nome utente" + "username": "Nome utente", + "description": "Accedi con OAuth" }, "post_status": { "account_not_locked_warning": "Il tuo profilo non è {0}. Chiunque può seguirti e vedere i tuoi messaggi riservati ai tuoi seguaci.", @@ -209,12 +221,49 @@ "keyword": { "reject": "Rifiuta", "replace": "Sostituisci", - "is_replaced_by": "→" + "is_replaced_by": "→", + "keyword_policies": "Regole per parole chiave", + "ftl_removal": "Rimozione dalla sequenza globale" }, "simple": { "reject": "Rifiuta", - "accept": "Accetta" - } - } + "accept": "Accetta", + "simple_policies": "Regole specifiche alla stanza", + "accept_desc": "Questa stanza accetta messaggi solo dalle seguenti stanze:", + "reject_desc": "Questa stanza non accetterà messaggi dalle stanze seguenti:", + "quarantine": "Quarantena", + "quarantine_desc": "Questa stanza inoltrerà solo messaggi pubblici alle seguenti stanze:", + "ftl_removal": "Rimozione dalla sequenza globale", + "ftl_removal_desc": "Questa stanza rimuove le seguenti stanze dalla sequenza globale:", + "media_removal": "Rimozione multimedia", + "media_removal_desc": "Questa istanza rimuove gli allegati dalle seguenti stanze:", + "media_nsfw": "Allegati oscurati forzatamente", + "media_nsfw_desc": "Questa stanza oscura gli allegati dei messaggi provenienti da queste stanze:" + }, + "mrf_policies": "Regole RM abilitate", + "mrf_policies_desc": "Le regole RM cambiano il comportamento federativo della stanza. Vigono le seguenti regole:" + }, + "staff": "Equipaggio" + }, + "domain_mute_card": { + "mute": "Zittisci", + "mute_progress": "Zittisco...", + "unmute": "Ascolta", + "unmute_progress": "Procedo..." + }, + "exporter": { + "export": "Esporta", + "processing": "In elaborazione, il tuo file sarà scaricabile a breve" + }, + "image_cropper": { + "crop_picture": "Ritaglia immagine", + "save": "Salva", + "save_without_cropping": "Salva senza ritagliare", + "cancel": "Annulla" + }, + "importer": { + "submit": "Invia", + "success": "Importato.", + "error": "L'importazione non è andata a buon fine." } } From 8db7cba9e16cbacf7ae180e90c9b6bacbe277345 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Thu, 14 May 2020 11:09:26 +0000 Subject: [PATCH 63/95] Translated using Weblate (English) Currently translated at 100.0% (613 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/en/ --- src/i18n/en.json | 1470 +++++++++++++++++++++++----------------------- 1 file changed, 735 insertions(+), 735 deletions(-) diff --git a/src/i18n/en.json b/src/i18n/en.json index d5748719..4ae81bfa 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -1,743 +1,743 @@ { - "about": { - "mrf": { - "federation": "Federation", - "keyword": { - "keyword_policies": "Keyword Policies", - "ftl_removal": "Removal from \"The Whole Known Network\" Timeline", - "reject": "Reject", - "replace": "Replace", - "is_replaced_by": "→" - }, - "mrf_policies": "Enabled MRF Policies", - "mrf_policies_desc": "MRF policies manipulate the federation behaviour of the instance. The following policies are enabled:", - "simple": { - "simple_policies": "Instance-specific Policies", - "accept": "Accept", - "accept_desc": "This instance only accepts messages from the following instances:", - "reject": "Reject", - "reject_desc": "This instance will not accept messages from the following instances:", - "quarantine": "Quarantine", - "quarantine_desc": "This instance will send only public posts to the following instances:", - "ftl_removal": "Removal from \"The Whole Known Network\" Timeline", - "ftl_removal_desc": "This instance removes these instances from \"The Whole Known Network\" timeline:", - "media_removal": "Media Removal", - "media_removal_desc": "This instance removes media from posts on the following instances:", - "media_nsfw": "Media Force-set As Sensitive", - "media_nsfw_desc": "This instance forces media to be set sensitive in posts on the following instances:" - } - }, - "staff": "Staff" - }, - "chat": { - "title": "Chat" - }, - "domain_mute_card": { - "mute": "Mute", - "mute_progress": "Muting...", - "unmute": "Unmute", - "unmute_progress": "Unmuting..." - }, - "exporter": { - "export": "Export", - "processing": "Processing, you'll soon be asked to download your file" - }, - "features_panel": { - "chat": "Chat", - "gopher": "Gopher", - "media_proxy": "Media proxy", - "scope_options": "Scope options", - "text_limit": "Text limit", - "title": "Features", - "who_to_follow": "Who to follow" - }, - "finder": { - "error_fetching_user": "Error fetching user", - "find_user": "Find user" - }, - "general": { - "apply": "Apply", - "submit": "Submit", - "more": "More", - "generic_error": "An error occured", - "optional": "optional", - "show_more": "Show more", - "show_less": "Show less", - "dismiss": "Dismiss", - "cancel": "Cancel", - "disable": "Disable", - "enable": "Enable", - "confirm": "Confirm", - "verify": "Verify" - }, - "image_cropper": { - "crop_picture": "Crop picture", - "save": "Save", - "save_without_cropping": "Save without cropping", - "cancel": "Cancel" - }, - "importer": { - "submit": "Submit", - "success": "Imported successfully.", - "error": "An error occured while importing this file." - }, - "login": { - "login": "Log in", - "description": "Log in with OAuth", - "logout": "Log out", - "password": "Password", - "placeholder": "e.g. lain", - "register": "Register", - "username": "Username", - "hint": "Log in to join the discussion", - "authentication_code": "Authentication code", - "enter_recovery_code": "Enter a recovery code", - "enter_two_factor_code": "Enter a two-factor code", - "recovery_code": "Recovery code", - "heading" : { - "totp" : "Two-factor authentication", - "recovery" : "Two-factor recovery" - } - }, - "media_modal": { - "previous": "Previous", - "next": "Next" - }, - "nav": { - "about": "About", - "administration": "Administration", - "back": "Back", - "chat": "Local Chat", - "friend_requests": "Follow Requests", - "mentions": "Mentions", - "interactions": "Interactions", - "dms": "Direct Messages", - "public_tl": "Public Timeline", - "timeline": "Timeline", - "twkn": "The Whole Known Network", - "user_search": "User Search", - "search": "Search", - "who_to_follow": "Who to follow", - "preferences": "Preferences" - }, - "notifications": { - "broken_favorite": "Unknown status, searching for it...", - "favorited_you": "favorited your status", - "followed_you": "followed you", - "follow_request": "wants to follow you", - "load_older": "Load older notifications", - "notifications": "Notifications", - "read": "Read!", - "repeated_you": "repeated your status", - "no_more_notifications": "No more notifications", - "migrated_to": "migrated to", - "reacted_with": "reacted with {0}" - }, - "polls": { - "add_poll": "Add Poll", - "add_option": "Add Option", - "option": "Option", - "votes": "votes", - "vote": "Vote", - "type": "Poll type", - "single_choice": "Single choice", - "multiple_choices": "Multiple choices", - "expiry": "Poll age", - "expires_in": "Poll ends in {0}", - "expired": "Poll ended {0} ago", - "not_enough_options": "Too few unique options in poll" - }, - "emoji": { - "stickers": "Stickers", - "emoji": "Emoji", - "keep_open": "Keep picker open", - "search_emoji": "Search for an emoji", - "add_emoji": "Insert emoji", - "custom": "Custom emoji", - "unicode": "Unicode emoji", - "load_all_hint": "Loaded first {saneAmount} emoji, loading all emoji may cause performance issues.", - "load_all": "Loading all {emojiAmount} emoji" - }, - "interactions": { - "favs_repeats": "Repeats and Favorites", - "follows": "New follows", - "moves": "User migrates", - "load_older": "Load older interactions" - }, - "post_status": { - "new_status": "Post new status", - "account_not_locked_warning": "Your account is not {0}. Anyone can follow you to view your follower-only posts.", - "account_not_locked_warning_link": "locked", - "attachments_sensitive": "Mark attachments as sensitive", - "content_type": { - "text/plain": "Plain text", - "text/html": "HTML", - "text/markdown": "Markdown", - "text/bbcode": "BBCode" - }, - "content_warning": "Subject (optional)", - "default": "Just landed in L.A.", - "direct_warning_to_all": "This post will be visible to all the mentioned users.", - "direct_warning_to_first_only": "This post will only be visible to the mentioned users at the beginning of the message.", - "posting": "Posting", - "scope_notice": { - "public": "This post will be visible to everyone", - "private": "This post will be visible to your followers only", - "unlisted": "This post will not be visible in Public Timeline and The Whole Known Network" - }, - "scope": { - "direct": "Direct - Post to mentioned users only", - "private": "Followers-only - Post to followers only", - "public": "Public - Post to public timelines", - "unlisted": "Unlisted - Do not post to public timelines" - } - }, - "registration": { - "bio": "Bio", - "email": "Email", - "fullname": "Display name", - "password_confirm": "Password confirmation", - "registration": "Registration", - "token": "Invite token", - "captcha": "CAPTCHA", - "new_captcha": "Click the image to get a new captcha", - "username_placeholder": "e.g. lain", - "fullname_placeholder": "e.g. Lain Iwakura", - "bio_placeholder": "e.g.\nHi, I'm Lain.\nI’m an anime girl living in suburban Japan. You may know me from the Wired.", - "validations": { - "username_required": "cannot be left blank", - "fullname_required": "cannot be left blank", - "email_required": "cannot be left blank", - "password_required": "cannot be left blank", - "password_confirmation_required": "cannot be left blank", - "password_confirmation_match": "should be the same as password" - } - }, - "remote_user_resolver": { - "remote_user_resolver": "Remote user resolver", - "searching_for": "Searching for", - "error": "Not found." - }, - "selectable_list": { - "select_all": "Select all" - }, - "settings": { - "app_name": "App name", - "security": "Security", - "enter_current_password_to_confirm": "Enter your current password to confirm your identity", - "mfa": { - "otp" : "OTP", - "setup_otp" : "Setup OTP", - "wait_pre_setup_otp" : "presetting OTP", - "confirm_and_enable" : "Confirm & enable OTP", - "title": "Two-factor Authentication", - "generate_new_recovery_codes" : "Generate new recovery codes", - "warning_of_generate_new_codes" : "When you generate new recovery codes, your old codes won’t work anymore.", - "recovery_codes" : "Recovery codes.", - "waiting_a_recovery_codes": "Receiving backup codes...", - "recovery_codes_warning" : "Write the codes down or save them somewhere secure - otherwise you won't see them again. If you lose access to your 2FA app and recovery codes you'll be locked out of your account.", - "authentication_methods" : "Authentication methods", - "scan": { - "title": "Scan", - "desc": "Using your two-factor app, scan this QR code or enter text key:", - "secret_code": "Key" - }, - "verify": { - "desc": "To enable two-factor authentication, enter the code from your two-factor app:" - } - }, - "allow_following_move": "Allow auto-follow when following account moves", - "attachmentRadius": "Attachments", - "attachments": "Attachments", - "autoload": "Enable automatic loading when scrolled to the bottom", - "avatar": "Avatar", - "avatarAltRadius": "Avatars (Notifications)", - "avatarRadius": "Avatars", - "background": "Background", - "bio": "Bio", - "block_export": "Block export", - "block_export_button": "Export your blocks to a csv file", - "block_import": "Block import", - "block_import_error": "Error importing blocks", - "blocks_imported": "Blocks imported! Processing them will take a while.", - "blocks_tab": "Blocks", - "btnRadius": "Buttons", - "cBlue": "Blue (Reply, follow)", - "cGreen": "Green (Retweet)", - "cOrange": "Orange (Favorite)", - "cRed": "Red (Cancel)", - "change_email": "Change Email", - "change_email_error": "There was an issue changing your email.", - "changed_email": "Email changed successfully!", - "change_password": "Change Password", - "change_password_error": "There was an issue changing your password.", - "changed_password": "Password changed successfully!", - "collapse_subject": "Collapse posts with subjects", - "composing": "Composing", - "confirm_new_password": "Confirm new password", - "current_avatar": "Your current avatar", - "current_password": "Current password", - "current_profile_banner": "Your current profile banner", - "data_import_export_tab": "Data Import / Export", - "default_vis": "Default visibility scope", - "delete_account": "Delete Account", - "delete_account_description": "Permanently delete your account and all your messages.", - "delete_account_error": "There was an issue deleting your account. If this persists please contact your instance administrator.", - "delete_account_instructions": "Type your password in the input below to confirm account deletion.", - "discoverable": "Allow discovery of this account in search results and other services", - "domain_mutes": "Domains", - "avatar_size_instruction": "The recommended minimum size for avatar images is 150x150 pixels.", - "pad_emoji": "Pad emoji with spaces when adding from picker", - "emoji_reactions_on_timeline": "Show emoji reactions on timeline", - "export_theme": "Save preset", - "filtering": "Filtering", - "filtering_explanation": "All statuses containing these words will be muted, one per line", - "follow_export": "Follow export", - "follow_export_button": "Export your follows to a csv file", - "follow_import": "Follow import", - "follow_import_error": "Error importing followers", - "follows_imported": "Follows imported! Processing them will take a while.", - "accent": "Accent", - "foreground": "Foreground", - "general": "General", - "hide_attachments_in_convo": "Hide attachments in conversations", - "hide_attachments_in_tl": "Hide attachments in timeline", - "hide_muted_posts": "Hide posts of muted users", - "max_thumbnails": "Maximum amount of thumbnails per post", - "hide_isp": "Hide instance-specific panel", - "preload_images": "Preload images", - "use_one_click_nsfw": "Open NSFW attachments with just one click", - "hide_post_stats": "Hide post statistics (e.g. the number of favorites)", - "hide_user_stats": "Hide user statistics (e.g. the number of followers)", - "hide_filtered_statuses": "Hide filtered statuses", - "import_blocks_from_a_csv_file": "Import blocks from a csv file", - "import_followers_from_a_csv_file": "Import follows from a csv file", - "import_theme": "Load preset", - "inputRadius": "Input fields", - "checkboxRadius": "Checkboxes", - "instance_default": "(default: {value})", - "instance_default_simple": "(default)", - "interface": "Interface", - "interfaceLanguage": "Interface language", - "invalid_theme_imported": "The selected file is not a supported Pleroma theme. No changes to your theme were made.", - "limited_availability": "Unavailable in your browser", - "links": "Links", - "lock_account_description": "Restrict your account to approved followers only", - "loop_video": "Loop videos", - "loop_video_silent_only": "Loop only videos without sound (i.e. Mastodon's \"gifs\")", - "mutes_tab": "Mutes", - "play_videos_in_modal": "Play videos in a popup frame", - "use_contain_fit": "Don't crop the attachment in thumbnails", - "name": "Name", - "name_bio": "Name & Bio", - "new_email": "New Email", - "new_password": "New password", - "notification_visibility": "Types of notifications to show", - "notification_visibility_follows": "Follows", - "notification_visibility_likes": "Likes", - "notification_visibility_mentions": "Mentions", - "notification_visibility_repeats": "Repeats", - "notification_visibility_moves": "User Migrates", - "notification_visibility_emoji_reactions": "Reactions", - "no_rich_text_description": "Strip rich text formatting from all posts", - "no_blocks": "No blocks", - "no_mutes": "No mutes", - "hide_follows_description": "Don't show who I'm following", - "hide_followers_description": "Don't show who's following me", - "hide_follows_count_description": "Don't show follow count", - "hide_followers_count_description": "Don't show follower count", - "show_admin_badge": "Show Admin badge in my profile", - "show_moderator_badge": "Show Moderator badge in my profile", - "nsfw_clickthrough": "Enable clickthrough NSFW attachment hiding", - "oauth_tokens": "OAuth tokens", - "token": "Token", - "refresh_token": "Refresh Token", - "valid_until": "Valid Until", - "revoke_token": "Revoke", - "panelRadius": "Panels", - "pause_on_unfocused": "Pause streaming when tab is not focused", - "presets": "Presets", - "profile_background": "Profile Background", - "profile_banner": "Profile Banner", - "profile_tab": "Profile", - "radii_help": "Set up interface edge rounding (in pixels)", - "replies_in_timeline": "Replies in timeline", - "reply_link_preview": "Enable reply-link preview on mouse hover", - "reply_visibility_all": "Show all replies", - "reply_visibility_following": "Only show replies directed at me or users I'm following", - "reply_visibility_self": "Only show replies directed at me", - "autohide_floating_post_button": "Automatically hide New Post button (mobile)", - "saving_err": "Error saving settings", - "saving_ok": "Settings saved", - "search_user_to_block": "Search whom you want to block", - "search_user_to_mute": "Search whom you want to mute", - "security_tab": "Security", - "scope_copy": "Copy scope when replying (DMs are always copied)", - "minimal_scopes_mode": "Minimize post scope selection options", - "set_new_avatar": "Set new avatar", - "set_new_profile_background": "Set new profile background", - "set_new_profile_banner": "Set new profile banner", - "settings": "Settings", - "subject_input_always_show": "Always show subject field", - "subject_line_behavior": "Copy subject when replying", - "subject_line_email": "Like email: \"re: subject\"", - "subject_line_mastodon": "Like mastodon: copy as is", - "subject_line_noop": "Do not copy", - "post_status_content_type": "Post status content type", - "stop_gifs": "Play-on-hover GIFs", - "streaming": "Enable automatic streaming of new posts when scrolled to the top", - "user_mutes": "Users", - "useStreamingApi": "Receive posts and notifications real-time", - "useStreamingApiWarning": "(Not recommended, experimental, known to skip posts)", - "text": "Text", - "theme": "Theme", - "theme_help": "Use hex color codes (#rrggbb) to customize your color theme.", - "theme_help_v2_1": "You can also override certain component's colors and opacity by toggling the checkbox, use \"Clear all\" button to clear all overrides.", - "theme_help_v2_2": "Icons underneath some entries are background/text contrast indicators, hover over for detailed info. Please keep in mind that when using transparency contrast indicators show the worst possible case.", - "tooltipRadius": "Tooltips/alerts", - "type_domains_to_mute": "Type in domains to mute", - "upload_a_photo": "Upload a photo", - "user_settings": "User Settings", - "values": { - "false": "no", - "true": "yes" - }, - "fun": "Fun", - "greentext": "Meme arrows", - "notifications": "Notifications", - "notification_setting_filters": "Filters", - "notification_setting": "Receive notifications from:", - "notification_setting_follows": "Users you follow", - "notification_setting_non_follows": "Users you do not follow", - "notification_setting_followers": "Users who follow you", - "notification_setting_non_followers": "Users who do not follow you", - "notification_setting_privacy": "Privacy", - "notification_setting_privacy_option": "Hide the sender and contents of push notifications", - "notification_mutes": "To stop receiving notifications from a specific user, use a mute.", - "notification_blocks": "Blocking a user stops all notifications as well as unsubscribes them.", - "enable_web_push_notifications": "Enable web push notifications", - "style": { - "switcher": { - "keep_color": "Keep colors", - "keep_shadows": "Keep shadows", - "keep_opacity": "Keep opacity", - "keep_roundness": "Keep roundness", - "keep_fonts": "Keep fonts", - "save_load_hint": "\"Keep\" options preserve currently set options when selecting or loading themes, it also stores said options when exporting a theme. When all checkboxes unset, exporting theme will save everything.", - "reset": "Reset", - "clear_all": "Clear all", - "clear_opacity": "Clear opacity", - "load_theme": "Load theme", - "keep_as_is": "Keep as is", - "use_snapshot": "Old version", - "use_source": "New version", - "help": { - "upgraded_from_v2": "PleromaFE has been upgraded, theme could look a little bit different than you remember.", - "v2_imported": "File you imported was made for older FE. We try to maximize compatibility but there still could be inconsitencies.", - "future_version_imported": "File you imported was made in newer version of FE.", - "older_version_imported": "File you imported was made in older version of FE.", - "snapshot_present": "Theme snapshot is loaded, so all values are overriden. You can load theme's actual data instead.", - "snapshot_missing": "No theme snapshot was in the file so it could look different than originally envisioned.", - "fe_upgraded": "PleromaFE's theme engine upgraded after version update.", - "fe_downgraded": "PleromaFE's version rolled back.", - "migration_snapshot_ok": "Just to be safe, theme snapshot loaded. You can try loading theme data.", - "migration_napshot_gone": "For whatever reason snapshot was missing, some stuff could look different than you remember.", - "snapshot_source_mismatch": "Versions conflict: most likely FE was rolled back and updated again, if you changed theme using older version of FE you most likely want to use old version, otherwise use new version." - } - }, - "common": { - "color": "Color", - "opacity": "Opacity", - "contrast": { - "hint": "Contrast ratio is {ratio}, it {level} {context}", - "level": { - "aa": "meets Level AA guideline (minimal)", - "aaa": "meets Level AAA guideline (recommended)", - "bad": "doesn't meet any accessibility guidelines" - }, - "context": { - "18pt": "for large (18pt+) text", - "text": "for text" - } - } - }, - "common_colors": { - "_tab_label": "Common", - "main": "Common colors", - "foreground_hint": "See \"Advanced\" tab for more detailed control", - "rgbo": "Icons, accents, badges" - }, - "advanced_colors": { - "_tab_label": "Advanced", - "alert": "Alert background", - "alert_error": "Error", - "alert_warning": "Warning", - "alert_neutral": "Neutral", - "post": "Posts/User bios", - "badge": "Badge background", - "popover": "Tooltips, menus, popovers", - "badge_notification": "Notification", - "panel_header": "Panel header", - "top_bar": "Top bar", - "borders": "Borders", - "buttons": "Buttons", - "inputs": "Input fields", - "faint_text": "Faded text", - "underlay": "Underlay", - "poll": "Poll graph", - "icons": "Icons", - "highlight": "Highlighted elements", - "pressed": "Pressed", - "selectedPost": "Selected post", - "selectedMenu": "Selected menu item", - "disabled": "Disabled", - "toggled": "Toggled", - "tabs": "Tabs" - }, - "radii": { - "_tab_label": "Roundness" - }, - "shadows": { - "_tab_label": "Shadow and lighting", - "component": "Component", - "override": "Override", - "shadow_id": "Shadow #{value}", - "blur": "Blur", - "spread": "Spread", - "inset": "Inset", - "hintV3": "For shadows you can also use the {0} notation to use other color slot.", - "filter_hint": { - "always_drop_shadow": "Warning, this shadow always uses {0} when browser supports it.", - "drop_shadow_syntax": "{0} does not support {1} parameter and {2} keyword.", - "avatar_inset": "Please note that combining both inset and non-inset shadows on avatars might give unexpected results with transparent avatars.", - "spread_zero": "Shadows with spread > 0 will appear as if it was set to zero", - "inset_classic": "Inset shadows will be using {0}" + "about": { + "mrf": { + "federation": "Federation", + "keyword": { + "keyword_policies": "Keyword Policies", + "ftl_removal": "Removal from \"The Whole Known Network\" Timeline", + "reject": "Reject", + "replace": "Replace", + "is_replaced_by": "→" + }, + "mrf_policies": "Enabled MRF Policies", + "mrf_policies_desc": "MRF policies manipulate the federation behaviour of the instance. The following policies are enabled:", + "simple": { + "simple_policies": "Instance-specific Policies", + "accept": "Accept", + "accept_desc": "This instance only accepts messages from the following instances:", + "reject": "Reject", + "reject_desc": "This instance will not accept messages from the following instances:", + "quarantine": "Quarantine", + "quarantine_desc": "This instance will send only public posts to the following instances:", + "ftl_removal": "Removal from \"The Whole Known Network\" Timeline", + "ftl_removal_desc": "This instance removes these instances from \"The Whole Known Network\" timeline:", + "media_removal": "Media Removal", + "media_removal_desc": "This instance removes media from posts on the following instances:", + "media_nsfw": "Media Force-set As Sensitive", + "media_nsfw_desc": "This instance forces media to be set sensitive in posts on the following instances:" + } }, - "components": { - "panel": "Panel", - "panelHeader": "Panel header", - "topBar": "Top bar", - "avatar": "User avatar (in profile view)", - "avatarStatus": "User avatar (in post display)", - "popup": "Popups and tooltips", - "button": "Button", - "buttonHover": "Button (hover)", - "buttonPressed": "Button (pressed)", - "buttonPressedHover": "Button (pressed+hover)", - "input": "Input field" + "staff": "Staff" + }, + "chat": { + "title": "Chat" + }, + "domain_mute_card": { + "mute": "Mute", + "mute_progress": "Muting...", + "unmute": "Unmute", + "unmute_progress": "Unmuting..." + }, + "exporter": { + "export": "Export", + "processing": "Processing, you'll soon be asked to download your file" + }, + "features_panel": { + "chat": "Chat", + "gopher": "Gopher", + "media_proxy": "Media proxy", + "scope_options": "Scope options", + "text_limit": "Text limit", + "title": "Features", + "who_to_follow": "Who to follow" + }, + "finder": { + "error_fetching_user": "Error fetching user", + "find_user": "Find user" + }, + "general": { + "apply": "Apply", + "submit": "Submit", + "more": "More", + "generic_error": "An error occured", + "optional": "optional", + "show_more": "Show more", + "show_less": "Show less", + "dismiss": "Dismiss", + "cancel": "Cancel", + "disable": "Disable", + "enable": "Enable", + "confirm": "Confirm", + "verify": "Verify" + }, + "image_cropper": { + "crop_picture": "Crop picture", + "save": "Save", + "save_without_cropping": "Save without cropping", + "cancel": "Cancel" + }, + "importer": { + "submit": "Submit", + "success": "Imported successfully.", + "error": "An error occured while importing this file." + }, + "login": { + "login": "Log in", + "description": "Log in with OAuth", + "logout": "Log out", + "password": "Password", + "placeholder": "e.g. lain", + "register": "Register", + "username": "Username", + "hint": "Log in to join the discussion", + "authentication_code": "Authentication code", + "enter_recovery_code": "Enter a recovery code", + "enter_two_factor_code": "Enter a two-factor code", + "recovery_code": "Recovery code", + "heading": { + "totp": "Two-factor authentication", + "recovery": "Two-factor recovery" } - }, - "fonts": { - "_tab_label": "Fonts", - "help": "Select font to use for elements of UI. For \"custom\" you have to enter exact font name as it appears in system.", - "components": { - "interface": "Interface", - "input": "Input fields", - "post": "Post text", - "postCode": "Monospaced text in a post (rich text)" + }, + "media_modal": { + "previous": "Previous", + "next": "Next" + }, + "nav": { + "about": "About", + "administration": "Administration", + "back": "Back", + "chat": "Local Chat", + "friend_requests": "Follow Requests", + "mentions": "Mentions", + "interactions": "Interactions", + "dms": "Direct Messages", + "public_tl": "Public Timeline", + "timeline": "Timeline", + "twkn": "The Whole Known Network", + "user_search": "User Search", + "search": "Search", + "who_to_follow": "Who to follow", + "preferences": "Preferences" + }, + "notifications": { + "broken_favorite": "Unknown status, searching for it...", + "favorited_you": "favorited your status", + "followed_you": "followed you", + "follow_request": "wants to follow you", + "load_older": "Load older notifications", + "notifications": "Notifications", + "read": "Read!", + "repeated_you": "repeated your status", + "no_more_notifications": "No more notifications", + "migrated_to": "migrated to", + "reacted_with": "reacted with {0}" + }, + "polls": { + "add_poll": "Add Poll", + "add_option": "Add Option", + "option": "Option", + "votes": "votes", + "vote": "Vote", + "type": "Poll type", + "single_choice": "Single choice", + "multiple_choices": "Multiple choices", + "expiry": "Poll age", + "expires_in": "Poll ends in {0}", + "expired": "Poll ended {0} ago", + "not_enough_options": "Too few unique options in poll" + }, + "emoji": { + "stickers": "Stickers", + "emoji": "Emoji", + "keep_open": "Keep picker open", + "search_emoji": "Search for an emoji", + "add_emoji": "Insert emoji", + "custom": "Custom emoji", + "unicode": "Unicode emoji", + "load_all_hint": "Loaded first {saneAmount} emoji, loading all emoji may cause performance issues.", + "load_all": "Loading all {emojiAmount} emoji" + }, + "interactions": { + "favs_repeats": "Repeats and Favorites", + "follows": "New follows", + "moves": "User migrates", + "load_older": "Load older interactions" + }, + "post_status": { + "new_status": "Post new status", + "account_not_locked_warning": "Your account is not {0}. Anyone can follow you to view your follower-only posts.", + "account_not_locked_warning_link": "locked", + "attachments_sensitive": "Mark attachments as sensitive", + "content_type": { + "text/plain": "Plain text", + "text/html": "HTML", + "text/markdown": "Markdown", + "text/bbcode": "BBCode" }, - "family": "Font name", - "size": "Size (in px)", - "weight": "Weight (boldness)", - "custom": "Custom" - }, - "preview": { - "header": "Preview", - "content": "Content", - "error": "Example error", - "button": "Button", - "text": "A bunch of more {0} and {1}", - "mono": "content", - "input": "Just landed in L.A.", - "faint_link": "helpful manual", - "fine_print": "Read our {0} to learn nothing useful!", - "header_faint": "This is fine", - "checkbox": "I have skimmed over terms and conditions", - "link": "a nice lil' link" - } + "content_warning": "Subject (optional)", + "default": "Just landed in L.A.", + "direct_warning_to_all": "This post will be visible to all the mentioned users.", + "direct_warning_to_first_only": "This post will only be visible to the mentioned users at the beginning of the message.", + "posting": "Posting", + "scope_notice": { + "public": "This post will be visible to everyone", + "private": "This post will be visible to your followers only", + "unlisted": "This post will not be visible in Public Timeline and The Whole Known Network" + }, + "scope": { + "direct": "Direct - Post to mentioned users only", + "private": "Followers-only - Post to followers only", + "public": "Public - Post to public timelines", + "unlisted": "Unlisted - Do not post to public timelines" + } }, - "version": { - "title": "Version", - "backend_version": "Backend Version", - "frontend_version": "Frontend Version" - } - }, - "time": { - "day": "{0} day", - "days": "{0} days", - "day_short": "{0}d", - "days_short": "{0}d", - "hour": "{0} hour", - "hours": "{0} hours", - "hour_short": "{0}h", - "hours_short": "{0}h", - "in_future": "in {0}", - "in_past": "{0} ago", - "minute": "{0} minute", - "minutes": "{0} minutes", - "minute_short": "{0}min", - "minutes_short": "{0}min", - "month": "{0} month", - "months": "{0} months", - "month_short": "{0}mo", - "months_short": "{0}mo", - "now": "just now", - "now_short": "now", - "second": "{0} second", - "seconds": "{0} seconds", - "second_short": "{0}s", - "seconds_short": "{0}s", - "week": "{0} week", - "weeks": "{0} weeks", - "week_short": "{0}w", - "weeks_short": "{0}w", - "year": "{0} year", - "years": "{0} years", - "year_short": "{0}y", - "years_short": "{0}y" - }, - "timeline": { - "collapse": "Collapse", - "conversation": "Conversation", - "error_fetching": "Error fetching updates", - "load_older": "Load older statuses", - "no_retweet_hint": "Post is marked as followers-only or direct and cannot be repeated", - "repeated": "repeated", - "show_new": "Show new", - "up_to_date": "Up-to-date", - "no_more_statuses": "No more statuses", - "no_statuses": "No statuses" - }, - "status": { - "favorites": "Favorites", - "repeats": "Repeats", - "delete": "Delete status", - "pin": "Pin on profile", - "unpin": "Unpin from profile", - "pinned": "Pinned", - "delete_confirm": "Do you really want to delete this status?", - "reply_to": "Reply to", - "replies_list": "Replies:", - "mute_conversation": "Mute conversation", - "unmute_conversation": "Unmute conversation", - "status_unavailable": "Status unavailable", - "copy_link": "Copy link to status" - }, - "user_card": { - "approve": "Approve", - "block": "Block", - "blocked": "Blocked!", - "deny": "Deny", - "favorites": "Favorites", - "follow": "Follow", - "follow_sent": "Request sent!", - "follow_progress": "Requesting…", - "follow_again": "Send request again?", - "follow_unfollow": "Unfollow", - "followees": "Following", - "followers": "Followers", - "following": "Following!", - "follows_you": "Follows you!", - "hidden": "Hidden", - "its_you": "It's you!", - "media": "Media", - "mention": "Mention", - "mute": "Mute", - "muted": "Muted", - "per_day": "per day", - "remote_follow": "Remote follow", - "report": "Report", - "statuses": "Statuses", - "subscribe": "Subscribe", - "unsubscribe": "Unsubscribe", - "unblock": "Unblock", - "unblock_progress": "Unblocking...", - "block_progress": "Blocking...", - "unmute": "Unmute", - "unmute_progress": "Unmuting...", - "mute_progress": "Muting...", - "hide_repeats": "Hide repeats", - "show_repeats": "Show repeats", - "admin_menu": { - "moderation": "Moderation", - "grant_admin": "Grant Admin", - "revoke_admin": "Revoke Admin", - "grant_moderator": "Grant Moderator", - "revoke_moderator": "Revoke Moderator", - "activate_account": "Activate account", - "deactivate_account": "Deactivate account", - "delete_account": "Delete account", - "force_nsfw": "Mark all posts as NSFW", - "strip_media": "Remove media from posts", - "force_unlisted": "Force posts to be unlisted", - "sandbox": "Force posts to be followers-only", - "disable_remote_subscription": "Disallow following user from remote instances", - "disable_any_subscription": "Disallow following user at all", - "quarantine": "Disallow user posts from federating", - "delete_user": "Delete user", - "delete_user_confirmation": "Are you absolutely sure? This action cannot be undone." - } - }, - "user_profile": { - "timeline_title": "User Timeline", - "profile_does_not_exist": "Sorry, this profile does not exist.", - "profile_loading_error": "Sorry, there was an error loading this profile." - }, - "user_reporting": { - "title": "Reporting {0}", - "add_comment_description": "The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:", - "additional_comments": "Additional comments", - "forward_description": "The account is from another server. Send a copy of the report there as well?", - "forward_to": "Forward to {0}", - "submit": "Submit", - "generic_error": "An error occurred while processing your request." - }, - "who_to_follow": { - "more": "More", - "who_to_follow": "Who to follow" - }, - "tool_tip": { - "media_upload": "Upload Media", - "repeat": "Repeat", - "reply": "Reply", - "favorite": "Favorite", - "add_reaction": "Add Reaction", - "user_settings": "User Settings", - "accept_follow_request": "Accept follow request", - "reject_follow_request": "Reject follow request" - }, - "upload":{ - "error": { - "base": "Upload failed.", - "file_too_big": "File too big [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "Try again later" + "registration": { + "bio": "Bio", + "email": "Email", + "fullname": "Display name", + "password_confirm": "Password confirmation", + "registration": "Registration", + "token": "Invite token", + "captcha": "CAPTCHA", + "new_captcha": "Click the image to get a new captcha", + "username_placeholder": "e.g. lain", + "fullname_placeholder": "e.g. Lain Iwakura", + "bio_placeholder": "e.g.\nHi, I'm Lain.\nI’m an anime girl living in suburban Japan. You may know me from the Wired.", + "validations": { + "username_required": "cannot be left blank", + "fullname_required": "cannot be left blank", + "email_required": "cannot be left blank", + "password_required": "cannot be left blank", + "password_confirmation_required": "cannot be left blank", + "password_confirmation_match": "should be the same as password" + } }, - "file_size_units": { - "B": "B", - "KiB": "KiB", - "MiB": "MiB", - "GiB": "GiB", - "TiB": "TiB" + "remote_user_resolver": { + "remote_user_resolver": "Remote user resolver", + "searching_for": "Searching for", + "error": "Not found." + }, + "selectable_list": { + "select_all": "Select all" + }, + "settings": { + "app_name": "App name", + "security": "Security", + "enter_current_password_to_confirm": "Enter your current password to confirm your identity", + "mfa": { + "otp": "OTP", + "setup_otp": "Setup OTP", + "wait_pre_setup_otp": "presetting OTP", + "confirm_and_enable": "Confirm & enable OTP", + "title": "Two-factor Authentication", + "generate_new_recovery_codes": "Generate new recovery codes", + "warning_of_generate_new_codes": "When you generate new recovery codes, your old codes won’t work anymore.", + "recovery_codes": "Recovery codes.", + "waiting_a_recovery_codes": "Receiving backup codes...", + "recovery_codes_warning": "Write the codes down or save them somewhere secure - otherwise you won't see them again. If you lose access to your 2FA app and recovery codes you'll be locked out of your account.", + "authentication_methods": "Authentication methods", + "scan": { + "title": "Scan", + "desc": "Using your two-factor app, scan this QR code or enter text key:", + "secret_code": "Key" + }, + "verify": { + "desc": "To enable two-factor authentication, enter the code from your two-factor app:" + } + }, + "allow_following_move": "Allow auto-follow when following account moves", + "attachmentRadius": "Attachments", + "attachments": "Attachments", + "autoload": "Enable automatic loading when scrolled to the bottom", + "avatar": "Avatar", + "avatarAltRadius": "Avatars (Notifications)", + "avatarRadius": "Avatars", + "background": "Background", + "bio": "Bio", + "block_export": "Block export", + "block_export_button": "Export your blocks to a csv file", + "block_import": "Block import", + "block_import_error": "Error importing blocks", + "blocks_imported": "Blocks imported! Processing them will take a while.", + "blocks_tab": "Blocks", + "btnRadius": "Buttons", + "cBlue": "Blue (Reply, follow)", + "cGreen": "Green (Retweet)", + "cOrange": "Orange (Favorite)", + "cRed": "Red (Cancel)", + "change_email": "Change Email", + "change_email_error": "There was an issue changing your email.", + "changed_email": "Email changed successfully!", + "change_password": "Change Password", + "change_password_error": "There was an issue changing your password.", + "changed_password": "Password changed successfully!", + "collapse_subject": "Collapse posts with subjects", + "composing": "Composing", + "confirm_new_password": "Confirm new password", + "current_avatar": "Your current avatar", + "current_password": "Current password", + "current_profile_banner": "Your current profile banner", + "data_import_export_tab": "Data Import / Export", + "default_vis": "Default visibility scope", + "delete_account": "Delete Account", + "delete_account_description": "Permanently delete your account and all your messages.", + "delete_account_error": "There was an issue deleting your account. If this persists please contact your instance administrator.", + "delete_account_instructions": "Type your password in the input below to confirm account deletion.", + "discoverable": "Allow discovery of this account in search results and other services", + "domain_mutes": "Domains", + "avatar_size_instruction": "The recommended minimum size for avatar images is 150x150 pixels.", + "pad_emoji": "Pad emoji with spaces when adding from picker", + "emoji_reactions_on_timeline": "Show emoji reactions on timeline", + "export_theme": "Save preset", + "filtering": "Filtering", + "filtering_explanation": "All statuses containing these words will be muted, one per line", + "follow_export": "Follow export", + "follow_export_button": "Export your follows to a csv file", + "follow_import": "Follow import", + "follow_import_error": "Error importing followers", + "follows_imported": "Follows imported! Processing them will take a while.", + "accent": "Accent", + "foreground": "Foreground", + "general": "General", + "hide_attachments_in_convo": "Hide attachments in conversations", + "hide_attachments_in_tl": "Hide attachments in timeline", + "hide_muted_posts": "Hide posts of muted users", + "max_thumbnails": "Maximum amount of thumbnails per post", + "hide_isp": "Hide instance-specific panel", + "preload_images": "Preload images", + "use_one_click_nsfw": "Open NSFW attachments with just one click", + "hide_post_stats": "Hide post statistics (e.g. the number of favorites)", + "hide_user_stats": "Hide user statistics (e.g. the number of followers)", + "hide_filtered_statuses": "Hide filtered statuses", + "import_blocks_from_a_csv_file": "Import blocks from a csv file", + "import_followers_from_a_csv_file": "Import follows from a csv file", + "import_theme": "Load preset", + "inputRadius": "Input fields", + "checkboxRadius": "Checkboxes", + "instance_default": "(default: {value})", + "instance_default_simple": "(default)", + "interface": "Interface", + "interfaceLanguage": "Interface language", + "invalid_theme_imported": "The selected file is not a supported Pleroma theme. No changes to your theme were made.", + "limited_availability": "Unavailable in your browser", + "links": "Links", + "lock_account_description": "Restrict your account to approved followers only", + "loop_video": "Loop videos", + "loop_video_silent_only": "Loop only videos without sound (i.e. Mastodon's \"gifs\")", + "mutes_tab": "Mutes", + "play_videos_in_modal": "Play videos in a popup frame", + "use_contain_fit": "Don't crop the attachment in thumbnails", + "name": "Name", + "name_bio": "Name & Bio", + "new_email": "New Email", + "new_password": "New password", + "notification_visibility": "Types of notifications to show", + "notification_visibility_follows": "Follows", + "notification_visibility_likes": "Likes", + "notification_visibility_mentions": "Mentions", + "notification_visibility_repeats": "Repeats", + "notification_visibility_moves": "User Migrates", + "notification_visibility_emoji_reactions": "Reactions", + "no_rich_text_description": "Strip rich text formatting from all posts", + "no_blocks": "No blocks", + "no_mutes": "No mutes", + "hide_follows_description": "Don't show who I'm following", + "hide_followers_description": "Don't show who's following me", + "hide_follows_count_description": "Don't show follow count", + "hide_followers_count_description": "Don't show follower count", + "show_admin_badge": "Show Admin badge in my profile", + "show_moderator_badge": "Show Moderator badge in my profile", + "nsfw_clickthrough": "Enable clickthrough NSFW attachment hiding", + "oauth_tokens": "OAuth tokens", + "token": "Token", + "refresh_token": "Refresh Token", + "valid_until": "Valid Until", + "revoke_token": "Revoke", + "panelRadius": "Panels", + "pause_on_unfocused": "Pause streaming when tab is not focused", + "presets": "Presets", + "profile_background": "Profile Background", + "profile_banner": "Profile Banner", + "profile_tab": "Profile", + "radii_help": "Set up interface edge rounding (in pixels)", + "replies_in_timeline": "Replies in timeline", + "reply_link_preview": "Enable reply-link preview on mouse hover", + "reply_visibility_all": "Show all replies", + "reply_visibility_following": "Only show replies directed at me or users I'm following", + "reply_visibility_self": "Only show replies directed at me", + "autohide_floating_post_button": "Automatically hide New Post button (mobile)", + "saving_err": "Error saving settings", + "saving_ok": "Settings saved", + "search_user_to_block": "Search whom you want to block", + "search_user_to_mute": "Search whom you want to mute", + "security_tab": "Security", + "scope_copy": "Copy scope when replying (DMs are always copied)", + "minimal_scopes_mode": "Minimize post scope selection options", + "set_new_avatar": "Set new avatar", + "set_new_profile_background": "Set new profile background", + "set_new_profile_banner": "Set new profile banner", + "settings": "Settings", + "subject_input_always_show": "Always show subject field", + "subject_line_behavior": "Copy subject when replying", + "subject_line_email": "Like email: \"re: subject\"", + "subject_line_mastodon": "Like mastodon: copy as is", + "subject_line_noop": "Do not copy", + "post_status_content_type": "Post status content type", + "stop_gifs": "Play-on-hover GIFs", + "streaming": "Enable automatic streaming of new posts when scrolled to the top", + "user_mutes": "Users", + "useStreamingApi": "Receive posts and notifications real-time", + "useStreamingApiWarning": "(Not recommended, experimental, known to skip posts)", + "text": "Text", + "theme": "Theme", + "theme_help": "Use hex color codes (#rrggbb) to customize your color theme.", + "theme_help_v2_1": "You can also override certain component's colors and opacity by toggling the checkbox, use \"Clear all\" button to clear all overrides.", + "theme_help_v2_2": "Icons underneath some entries are background/text contrast indicators, hover over for detailed info. Please keep in mind that when using transparency contrast indicators show the worst possible case.", + "tooltipRadius": "Tooltips/alerts", + "type_domains_to_mute": "Type in domains to mute", + "upload_a_photo": "Upload a photo", + "user_settings": "User Settings", + "values": { + "false": "no", + "true": "yes" + }, + "fun": "Fun", + "greentext": "Meme arrows", + "notifications": "Notifications", + "notification_setting_filters": "Filters", + "notification_setting": "Receive notifications from:", + "notification_setting_follows": "Users you follow", + "notification_setting_non_follows": "Users you do not follow", + "notification_setting_followers": "Users who follow you", + "notification_setting_non_followers": "Users who do not follow you", + "notification_setting_privacy": "Privacy", + "notification_setting_privacy_option": "Hide the sender and contents of push notifications", + "notification_mutes": "To stop receiving notifications from a specific user, use a mute.", + "notification_blocks": "Blocking a user stops all notifications as well as unsubscribes them.", + "enable_web_push_notifications": "Enable web push notifications", + "style": { + "switcher": { + "keep_color": "Keep colors", + "keep_shadows": "Keep shadows", + "keep_opacity": "Keep opacity", + "keep_roundness": "Keep roundness", + "keep_fonts": "Keep fonts", + "save_load_hint": "\"Keep\" options preserve currently set options when selecting or loading themes, it also stores said options when exporting a theme. When all checkboxes unset, exporting theme will save everything.", + "reset": "Reset", + "clear_all": "Clear all", + "clear_opacity": "Clear opacity", + "load_theme": "Load theme", + "keep_as_is": "Keep as is", + "use_snapshot": "Old version", + "use_source": "New version", + "help": { + "upgraded_from_v2": "PleromaFE has been upgraded, theme could look a little bit different than you remember.", + "v2_imported": "File you imported was made for older FE. We try to maximize compatibility but there still could be inconsistencies.", + "future_version_imported": "File you imported was made in newer version of FE.", + "older_version_imported": "File you imported was made in older version of FE.", + "snapshot_present": "Theme snapshot is loaded, so all values are overriden. You can load theme's actual data instead.", + "snapshot_missing": "No theme snapshot was in the file so it could look different than originally envisioned.", + "fe_upgraded": "PleromaFE's theme engine upgraded after version update.", + "fe_downgraded": "PleromaFE's version rolled back.", + "migration_snapshot_ok": "Just to be safe, theme snapshot loaded. You can try loading theme data.", + "migration_napshot_gone": "For whatever reason snapshot was missing, some stuff could look different than you remember.", + "snapshot_source_mismatch": "Versions conflict: most likely FE was rolled back and updated again, if you changed theme using older version of FE you most likely want to use old version, otherwise use new version." + } + }, + "common": { + "color": "Color", + "opacity": "Opacity", + "contrast": { + "hint": "Contrast ratio is {ratio}, it {level} {context}", + "level": { + "aa": "meets Level AA guideline (minimal)", + "aaa": "meets Level AAA guideline (recommended)", + "bad": "doesn't meet any accessibility guidelines" + }, + "context": { + "18pt": "for large (18pt+) text", + "text": "for text" + } + } + }, + "common_colors": { + "_tab_label": "Common", + "main": "Common colors", + "foreground_hint": "See \"Advanced\" tab for more detailed control", + "rgbo": "Icons, accents, badges" + }, + "advanced_colors": { + "_tab_label": "Advanced", + "alert": "Alert background", + "alert_error": "Error", + "alert_warning": "Warning", + "alert_neutral": "Neutral", + "post": "Posts/User bios", + "badge": "Badge background", + "popover": "Tooltips, menus, popovers", + "badge_notification": "Notification", + "panel_header": "Panel header", + "top_bar": "Top bar", + "borders": "Borders", + "buttons": "Buttons", + "inputs": "Input fields", + "faint_text": "Faded text", + "underlay": "Underlay", + "poll": "Poll graph", + "icons": "Icons", + "highlight": "Highlighted elements", + "pressed": "Pressed", + "selectedPost": "Selected post", + "selectedMenu": "Selected menu item", + "disabled": "Disabled", + "toggled": "Toggled", + "tabs": "Tabs" + }, + "radii": { + "_tab_label": "Roundness" + }, + "shadows": { + "_tab_label": "Shadow and lighting", + "component": "Component", + "override": "Override", + "shadow_id": "Shadow #{value}", + "blur": "Blur", + "spread": "Spread", + "inset": "Inset", + "hintV3": "For shadows you can also use the {0} notation to use other color slot.", + "filter_hint": { + "always_drop_shadow": "Warning, this shadow always uses {0} when browser supports it.", + "drop_shadow_syntax": "{0} does not support {1} parameter and {2} keyword.", + "avatar_inset": "Please note that combining both inset and non-inset shadows on avatars might give unexpected results with transparent avatars.", + "spread_zero": "Shadows with spread > 0 will appear as if it was set to zero", + "inset_classic": "Inset shadows will be using {0}" + }, + "components": { + "panel": "Panel", + "panelHeader": "Panel header", + "topBar": "Top bar", + "avatar": "User avatar (in profile view)", + "avatarStatus": "User avatar (in post display)", + "popup": "Popups and tooltips", + "button": "Button", + "buttonHover": "Button (hover)", + "buttonPressed": "Button (pressed)", + "buttonPressedHover": "Button (pressed+hover)", + "input": "Input field" + } + }, + "fonts": { + "_tab_label": "Fonts", + "help": "Select font to use for elements of UI. For \"custom\" you have to enter exact font name as it appears in system.", + "components": { + "interface": "Interface", + "input": "Input fields", + "post": "Post text", + "postCode": "Monospaced text in a post (rich text)" + }, + "family": "Font name", + "size": "Size (in px)", + "weight": "Weight (boldness)", + "custom": "Custom" + }, + "preview": { + "header": "Preview", + "content": "Content", + "error": "Example error", + "button": "Button", + "text": "A bunch of more {0} and {1}", + "mono": "content", + "input": "Just landed in L.A.", + "faint_link": "helpful manual", + "fine_print": "Read our {0} to learn nothing useful!", + "header_faint": "This is fine", + "checkbox": "I have skimmed over terms and conditions", + "link": "a nice lil' link" + } + }, + "version": { + "title": "Version", + "backend_version": "Backend Version", + "frontend_version": "Frontend Version" + } + }, + "time": { + "day": "{0} day", + "days": "{0} days", + "day_short": "{0}d", + "days_short": "{0}d", + "hour": "{0} hour", + "hours": "{0} hours", + "hour_short": "{0}h", + "hours_short": "{0}h", + "in_future": "in {0}", + "in_past": "{0} ago", + "minute": "{0} minute", + "minutes": "{0} minutes", + "minute_short": "{0}min", + "minutes_short": "{0}min", + "month": "{0} month", + "months": "{0} months", + "month_short": "{0}mo", + "months_short": "{0}mo", + "now": "just now", + "now_short": "now", + "second": "{0} second", + "seconds": "{0} seconds", + "second_short": "{0}s", + "seconds_short": "{0}s", + "week": "{0} week", + "weeks": "{0} weeks", + "week_short": "{0}w", + "weeks_short": "{0}w", + "year": "{0} year", + "years": "{0} years", + "year_short": "{0}y", + "years_short": "{0}y" + }, + "timeline": { + "collapse": "Collapse", + "conversation": "Conversation", + "error_fetching": "Error fetching updates", + "load_older": "Load older statuses", + "no_retweet_hint": "Post is marked as followers-only or direct and cannot be repeated", + "repeated": "repeated", + "show_new": "Show new", + "up_to_date": "Up-to-date", + "no_more_statuses": "No more statuses", + "no_statuses": "No statuses" + }, + "status": { + "favorites": "Favorites", + "repeats": "Repeats", + "delete": "Delete status", + "pin": "Pin on profile", + "unpin": "Unpin from profile", + "pinned": "Pinned", + "delete_confirm": "Do you really want to delete this status?", + "reply_to": "Reply to", + "replies_list": "Replies:", + "mute_conversation": "Mute conversation", + "unmute_conversation": "Unmute conversation", + "status_unavailable": "Status unavailable", + "copy_link": "Copy link to status" + }, + "user_card": { + "approve": "Approve", + "block": "Block", + "blocked": "Blocked!", + "deny": "Deny", + "favorites": "Favorites", + "follow": "Follow", + "follow_sent": "Request sent!", + "follow_progress": "Requesting…", + "follow_again": "Send request again?", + "follow_unfollow": "Unfollow", + "followees": "Following", + "followers": "Followers", + "following": "Following!", + "follows_you": "Follows you!", + "hidden": "Hidden", + "its_you": "It's you!", + "media": "Media", + "mention": "Mention", + "mute": "Mute", + "muted": "Muted", + "per_day": "per day", + "remote_follow": "Remote follow", + "report": "Report", + "statuses": "Statuses", + "subscribe": "Subscribe", + "unsubscribe": "Unsubscribe", + "unblock": "Unblock", + "unblock_progress": "Unblocking...", + "block_progress": "Blocking...", + "unmute": "Unmute", + "unmute_progress": "Unmuting...", + "mute_progress": "Muting...", + "hide_repeats": "Hide repeats", + "show_repeats": "Show repeats", + "admin_menu": { + "moderation": "Moderation", + "grant_admin": "Grant Admin", + "revoke_admin": "Revoke Admin", + "grant_moderator": "Grant Moderator", + "revoke_moderator": "Revoke Moderator", + "activate_account": "Activate account", + "deactivate_account": "Deactivate account", + "delete_account": "Delete account", + "force_nsfw": "Mark all posts as NSFW", + "strip_media": "Remove media from posts", + "force_unlisted": "Force posts to be unlisted", + "sandbox": "Force posts to be followers-only", + "disable_remote_subscription": "Disallow following user from remote instances", + "disable_any_subscription": "Disallow following user at all", + "quarantine": "Disallow user posts from federating", + "delete_user": "Delete user", + "delete_user_confirmation": "Are you absolutely sure? This action cannot be undone." + } + }, + "user_profile": { + "timeline_title": "User Timeline", + "profile_does_not_exist": "Sorry, this profile does not exist.", + "profile_loading_error": "Sorry, there was an error loading this profile." + }, + "user_reporting": { + "title": "Reporting {0}", + "add_comment_description": "The report will be sent to your instance moderators. You can provide an explanation of why you are reporting this account below:", + "additional_comments": "Additional comments", + "forward_description": "The account is from another server. Send a copy of the report there as well?", + "forward_to": "Forward to {0}", + "submit": "Submit", + "generic_error": "An error occurred while processing your request." + }, + "who_to_follow": { + "more": "More", + "who_to_follow": "Who to follow" + }, + "tool_tip": { + "media_upload": "Upload Media", + "repeat": "Repeat", + "reply": "Reply", + "favorite": "Favorite", + "add_reaction": "Add Reaction", + "user_settings": "User Settings", + "accept_follow_request": "Accept follow request", + "reject_follow_request": "Reject follow request" + }, + "upload": { + "error": { + "base": "Upload failed.", + "file_too_big": "File too big [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", + "default": "Try again later" + }, + "file_size_units": { + "B": "B", + "KiB": "KiB", + "MiB": "MiB", + "GiB": "GiB", + "TiB": "TiB" + } + }, + "search": { + "people": "People", + "hashtags": "Hashtags", + "person_talking": "{count} person talking", + "people_talking": "{count} people talking", + "no_results": "No results" + }, + "password_reset": { + "forgot_password": "Forgot password?", + "password_reset": "Password reset", + "instruction": "Enter your email address or username. We will send you a link to reset your password.", + "placeholder": "Your email or username", + "check_email": "Check your email for a link to reset your password.", + "return_home": "Return to the home page", + "not_found": "We couldn't find that email or username.", + "too_many_requests": "You have reached the limit of attempts, try again later.", + "password_reset_disabled": "Password reset is disabled. Please contact your instance administrator.", + "password_reset_required": "You must reset your password to log in.", + "password_reset_required_but_mailer_is_disabled": "You must reset your password, but password reset is disabled. Please contact your instance administrator." } - }, - "search": { - "people": "People", - "hashtags": "Hashtags", - "person_talking": "{count} person talking", - "people_talking": "{count} people talking", - "no_results": "No results" - }, - "password_reset": { - "forgot_password": "Forgot password?", - "password_reset": "Password reset", - "instruction": "Enter your email address or username. We will send you a link to reset your password.", - "placeholder": "Your email or username", - "check_email": "Check your email for a link to reset your password.", - "return_home": "Return to the home page", - "not_found": "We couldn't find that email or username.", - "too_many_requests": "You have reached the limit of attempts, try again later.", - "password_reset_disabled": "Password reset is disabled. Please contact your instance administrator.", - "password_reset_required": "You must reset your password to log in.", - "password_reset_required_but_mailer_is_disabled": "You must reset your password, but password reset is disabled. Please contact your instance administrator." - } } From 4aaa3f87d8ed375d3ec20ad6d9867357f0e6a95c Mon Sep 17 00:00:00 2001 From: Mark Felder <feld@FreeBSD.org> Date: Wed, 20 May 2020 12:16:43 -0500 Subject: [PATCH 64/95] Document the sidebarRight feature --- docs/CONFIGURATION.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/CONFIGURATION.md b/docs/CONFIGURATION.md index 39a2840d..14b0428f 100644 --- a/docs/CONFIGURATION.md +++ b/docs/CONFIGURATION.md @@ -73,6 +73,9 @@ These two settings should point to where FE should redirect visitor when they lo ### `scopeCopy` Copy post scope (visibility) when replying to a post. Instance-default. +### `sidebarRight` +Change alignment of sidebar and panels to the right. Defaults to `false`. + ### `showFeaturesPanel` Show panel showcasing instance features/settings to logged-out visitors From 3cd6bc9cfb7ed29c97c3a5cdc4a35e9808a47e2e Mon Sep 17 00:00:00 2001 From: Fristi <fristi@subcon.town> Date: Thu, 14 May 2020 19:38:31 +0000 Subject: [PATCH 65/95] Translated using Weblate (Dutch) Currently translated at 77.9% (478 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/nl/ --- src/i18n/nl.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/nl.json b/src/i18n/nl.json index bac7e62c..9be89109 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -580,7 +580,8 @@ "unicode": "Unicode emoji", "load_all": "Alle {emojiAmount} emoji worden geladen", "stickers": "Stickers", - "load_all_hint": "Eerste {saneAmount} emoji geladen, alle emoji tegelijk laden kan prestatie problemen veroorzaken." + "load_all_hint": "Eerste {saneAmount} emoji geladen, alle emoji tegelijk laden kan prestatie problemen veroorzaken.", + "custom": "Gepersonaliseerde emoji" }, "interactions": { "favs_repeats": "Herhalingen en Favorieten", From 7f7919bf6ffd58fc0ed312831f25dfc5f39f18ca Mon Sep 17 00:00:00 2001 From: Ben Is <srsbzns@cock.li> Date: Thu, 14 May 2020 18:17:30 +0000 Subject: [PATCH 66/95] Translated using Weblate (Italian) Currently translated at 36.2% (222 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index 6fc2be74..5554620c 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -180,7 +180,16 @@ "placeholder": "es. Lupo Lucio", "register": "Registrati", "username": "Nome utente", - "description": "Accedi con OAuth" + "description": "Accedi con OAuth", + "hint": "Accedi per partecipare alla discussione", + "authentication_code": "Codice di autenticazione", + "enter_recovery_code": "Inserisci un codice di recupero", + "enter_two_factor_code": "Inserisci un codice two-factor", + "recovery_code": "Codice di recupero", + "heading": { + "totp": "Autenticazione two-factor", + "recovery": "Recupero two-factor" + } }, "post_status": { "account_not_locked_warning": "Il tuo profilo non è {0}. Chiunque può seguirti e vedere i tuoi messaggi riservati ai tuoi seguaci.", From a62d504fabe10b8443203c84a6d7de4909dc101d Mon Sep 17 00:00:00 2001 From: Fristi <fristi@subcon.town> Date: Thu, 14 May 2020 19:51:25 +0000 Subject: [PATCH 67/95] Translated using Weblate (Dutch) Currently translated at 78.1% (479 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/nl/ --- src/i18n/nl.json | 182 +++++++++++++++++++++++------------------------ 1 file changed, 91 insertions(+), 91 deletions(-) diff --git a/src/i18n/nl.json b/src/i18n/nl.json index 9be89109..15216244 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -90,20 +90,20 @@ "text/bbcode": "BBCode" }, "content_warning": "Onderwerp (optioneel)", - "default": "Tijd voor een pauze!", + "default": "Zojuist geland in L.A.", "direct_warning": "Deze post zal enkel zichtbaar zijn voor de personen die genoemd zijn.", "posting": "Plaatsen", "scope": { - "direct": "Direct - Post enkel naar genoemde gebruikers", + "direct": "Direct - Post enkel naar vermelde gebruikers", "private": "Enkel volgers - Post enkel naar volgers", "public": "Publiek - Post op publieke tijdlijnen", - "unlisted": "Unlisted - Toon niet op publieke tijdlijnen" + "unlisted": "Niet Vermelden - Niet tonen op publieke tijdlijnen" }, "direct_warning_to_all": "Dit bericht zal zichtbaar zijn voor alle vermelde gebruikers.", "direct_warning_to_first_only": "Dit bericht zal alleen zichtbaar zijn voor de vermelde gebruikers aan het begin van het bericht.", "scope_notice": { "public": "Dit bericht zal voor iedereen zichtbaar zijn", - "unlisted": "Dit bericht zal niet zichtbaar zijn in de Publieke Tijdlijn en Het Geheel Gekende Netwerk", + "unlisted": "Dit bericht zal niet zichtbaar zijn in de Publieke Tijdlijn en Het Geheel Bekende Netwerk", "private": "Dit bericht zal voor alleen je volgers zichtbaar zijn" } }, @@ -113,7 +113,7 @@ "fullname": "Weergave naam", "password_confirm": "Wachtwoord bevestiging", "registration": "Registratie", - "token": "Uitnodigingstoken", + "token": "Uitnodigings-token", "captcha": "CAPTCHA", "new_captcha": "Klik op de afbeelding voor een nieuwe captcha", "validations": { @@ -131,37 +131,37 @@ "settings": { "attachmentRadius": "Bijlages", "attachments": "Bijlages", - "autoload": "Automatisch laden wanneer tot de bodem gescrold inschakelen", + "autoload": "Automatisch laden inschakelen wanneer tot de bodem gescrold wordt", "avatar": "Avatar", "avatarAltRadius": "Avatars (Meldingen)", "avatarRadius": "Avatars", "background": "Achtergrond", "bio": "Bio", "btnRadius": "Knoppen", - "cBlue": "Blauw (Antwoord, volgen)", - "cGreen": "Groen (Herhaal)", - "cOrange": "Oranje (Vind ik leuk)", - "cRed": "Rood (Annuleer)", - "change_password": "Verander Wachtwoord", - "change_password_error": "Er was een probleem bij het aanpassen van je wachtwoord.", - "changed_password": "Wachtwoord succesvol aangepast!", - "collapse_subject": "Klap posts met onderwerp in", - "composing": "Samenstellen", - "confirm_new_password": "Bevestig nieuw wachtwoord", + "cBlue": "Blauw (Beantwoorden, volgen)", + "cGreen": "Groen (Herhalen)", + "cOrange": "Oranje (Favoriet)", + "cRed": "Rood (Annuleren)", + "change_password": "Wachtwoord Wijzigen", + "change_password_error": "Er is een fout opgetreden bij het wijzigen van je wachtwoord.", + "changed_password": "Wachtwoord succesvol gewijzigd!", + "collapse_subject": "Klap berichten met een onderwerp in", + "composing": "Opstellen", + "confirm_new_password": "Nieuw wachtwoord bevestigen", "current_avatar": "Je huidige avatar", "current_password": "Huidig wachtwoord", "current_profile_banner": "Je huidige profiel banner", "data_import_export_tab": "Data Import / Export", - "default_vis": "Standaard zichtbaarheidsscope", - "delete_account": "Verwijder Account", - "delete_account_description": "Verwijder je account en berichten permanent.", - "delete_account_error": "Er was een probleem bij het verwijderen van je account. Indien dit probleem blijft, gelieve de administratie van deze instantie te verwittigen.", - "delete_account_instructions": "Typ je wachtwoord in de input hieronder om het verwijderen van je account te bevestigen.", - "export_theme": "Sla preset op", + "default_vis": "Standaard zichtbaarheidsbereik", + "delete_account": "Account Verwijderen", + "delete_account_description": "Permanent je account en al je berichten verwijderen.", + "delete_account_error": "Er is een fout opgetreden bij het verwijderen van je account. Indien dit probleem zich voor blijft doen, neem dan contact op met de beheerder van deze instantie.", + "delete_account_instructions": "Voer je wachtwoord in het onderstaande invoerveld in om het verwijderen van je account te bevestigen.", + "export_theme": "Preset opslaan", "filtering": "Filtering", - "filtering_explanation": "Alle statussen die deze woorden bevatten worden genegeerd, één filter per lijn.", + "filtering_explanation": "Alle statussen die deze woorden bevatten worden genegeerd, één filter per lijn", "follow_export": "Volgers exporteren", - "follow_export_button": "Exporteer je volgers naar een csv file", + "follow_export_button": "Exporteer je volgers naar een csv bestand", "follow_export_processing": "Aan het verwerken, binnen enkele ogenblikken wordt je gevraagd je bestand te downloaden", "follow_import": "Volgers importeren", "follow_import_error": "Fout bij importeren volgers", @@ -171,91 +171,91 @@ "hide_attachments_in_convo": "Verberg bijlages in conversaties", "hide_attachments_in_tl": "Verberg bijlages in de tijdlijn", "hide_isp": "Verberg instantie-specifiek paneel", - "preload_images": "Afbeeldingen voorladen", - "hide_post_stats": "Verberg post statistieken (bv. het aantal vind-ik-leuks)", - "hide_user_stats": "Verberg post statistieken (bv. het aantal volgers)", - "import_followers_from_a_csv_file": "Importeer volgers uit een csv file", - "import_theme": "Laad preset", - "inputRadius": "Invoer velden", + "preload_images": "Afbeeldingen vooraf laden", + "hide_post_stats": "Verberg bericht statistieken (bijv. het aantal favorieten)", + "hide_user_stats": "Verberg bericht statistieken (bijv. het aantal volgers)", + "import_followers_from_a_csv_file": "Importeer volgers uit een csv bestand", + "import_theme": "Preset laden", + "inputRadius": "Invoervelden", "checkboxRadius": "Checkboxen", "instance_default": "(standaard: {value})", "instance_default_simple": "(standaard)", "interface": "Interface", "interfaceLanguage": "Interface taal", - "invalid_theme_imported": "Het geselecteerde thema is geen door Pleroma ondersteund thema. Er zijn geen aanpassingen gedaan.", - "limited_availability": "Onbeschikbaar in je browser", + "invalid_theme_imported": "Het geselecteerde bestand is geen door Pleroma ondersteund thema. Er zijn geen aanpassingen gedaan.", + "limited_availability": "Niet beschikbaar in je browser", "links": "Links", "lock_account_description": "Laat volgers enkel toe na expliciete toestemming", - "loop_video": "Speel videos af in een lus", - "loop_video_silent_only": "Speel enkel videos zonder geluid af in een lus (bv. Mastodon's \"gifs\")", + "loop_video": "Herhaal video's", + "loop_video_silent_only": "Herhaal enkel video's zonder geluid (bijv. Mastodon's \"gifs\")", "name": "Naam", "name_bio": "Naam & Bio", "new_password": "Nieuw wachtwoord", "notification_visibility": "Type meldingen die getoond worden", - "notification_visibility_follows": "Volgers", + "notification_visibility_follows": "Volgingen", "notification_visibility_likes": "Vind-ik-leuks", "notification_visibility_mentions": "Vermeldingen", "notification_visibility_repeats": "Herhalingen", - "no_rich_text_description": "Strip rich text formattering van alle posts", + "no_rich_text_description": "Verwijder rich text formattering van alle berichten", "hide_network_description": "Toon niet wie mij volgt en wie ik volg.", - "nsfw_clickthrough": "Schakel doorklikbaar verbergen van NSFW bijlages in", + "nsfw_clickthrough": "Doorklikbaar verbergen van gevoelige bijlages inschakelen", "oauth_tokens": "OAuth-tokens", "token": "Token", - "refresh_token": "Token vernieuwen", + "refresh_token": "Token Vernieuwen", "valid_until": "Geldig tot", "revoke_token": "Intrekken", "panelRadius": "Panelen", - "pause_on_unfocused": "Pauzeer streamen wanneer de tab niet gefocused is", + "pause_on_unfocused": "Streamen pauzeren wanneer de tab niet in focus is", "presets": "Presets", "profile_background": "Profiel Achtergrond", "profile_banner": "Profiel Banner", "profile_tab": "Profiel", "radii_help": "Stel afronding van hoeken in de interface in (in pixels)", "replies_in_timeline": "Antwoorden in tijdlijn", - "reply_link_preview": "Schakel antwoordlink preview in bij over zweven met muisaanwijzer", - "reply_visibility_all": "Toon alle antwoorden", - "reply_visibility_following": "Toon enkel antwoorden naar mij of andere gebruikers gericht", - "reply_visibility_self": "Toon enkel antwoorden naar mij gericht", + "reply_link_preview": "Antwoord-link weergave inschakelen bij aanwijzen met muisaanwijzer", + "reply_visibility_all": "Alle antwoorden tonen", + "reply_visibility_following": "Enkel antwoorden tonen die aan mij of gevolgde gebruikers gericht zijn", + "reply_visibility_self": "Enkel antwoorden tonen die aan mij gericht zijn", "saving_err": "Fout tijdens opslaan van instellingen", "saving_ok": "Instellingen opgeslagen", - "security_tab": "Veiligheid", - "scope_copy": "Neem scope over bij antwoorden (Directe Berichten blijven altijd Direct)", - "set_new_avatar": "Zet nieuwe avatar", - "set_new_profile_background": "Zet nieuwe profiel achtergrond", - "set_new_profile_banner": "Zet nieuwe profiel banner", + "security_tab": "Beveiliging", + "scope_copy": "Neem bereik over bij beantwoorden (Directe Berichten blijven altijd Direct)", + "set_new_avatar": "Nieuwe avatar instellen", + "set_new_profile_background": "Nieuwe profiel achtergrond instellen", + "set_new_profile_banner": "Nieuwe profiel banner instellen", "settings": "Instellingen", - "subject_input_always_show": "Maak onderwerpveld altijd zichtbaar", - "subject_line_behavior": "Kopieer onderwerp bij antwoorden", + "subject_input_always_show": "Altijd onderwerpveld tonen", + "subject_line_behavior": "Onderwerp kopiëren bij antwoorden", "subject_line_email": "Zoals email: \"re: onderwerp\"", - "subject_line_mastodon": "Zoals Mastodon: kopieer zoals het is", - "subject_line_noop": "Kopieer niet", - "stop_gifs": "Speel GIFs af bij zweven", - "streaming": "Schakel automatisch streamen van posts in wanneer tot boven gescrold.", + "subject_line_mastodon": "Zoals mastodon: kopieer zoals het is", + "subject_line_noop": "Niet kopiëren", + "stop_gifs": "GIFs afspelen bij zweven", + "streaming": "Automatisch streamen van nieuwe berichten inschakelen wanneer tot boven gescrold is", "text": "Tekst", "theme": "Thema", "theme_help": "Gebruik hex color codes (#rrggbb) om je kleurschema te wijzigen.", - "theme_help_v2_1": "Je kan ook de kleur en transparantie van bepaalde componenten overschrijven door de checkbox aan te vinken, gebruik de \"Wis alles\" knop om alle overschrijvingen te annuleren.", - "theme_help_v2_2": "Iconen onder sommige items zijn achtergrond/tekst contrast indicators, zweef er over voor gedetailleerde info. Hou er rekening mee dat bij doorzichtigheid de ergst mogelijke situatie wordt weer gegeven.", - "tooltipRadius": "Gereedschapstips/alarmen", - "user_settings": "Gebruikers Instellingen", + "theme_help_v2_1": "Je kan ook de kleur en transparantie van bepaalde componenten overschrijven door de checkbox aan te vinken, gebruik de \"Alles wissen\" knop om alle overschrijvingen te annuleren.", + "theme_help_v2_2": "Iconen onder sommige onderdelen zijn achtergrond/tekst contrast indicatoren, zweef er over voor gedetailleerde info. Hou er rekening mee dat bij doorzichtigheid de ergst mogelijke situatie wordt weer gegeven.", + "tooltipRadius": "Tooltips/alarmen", + "user_settings": "Gebruikersinstellingen", "values": { "false": "nee", "true": "ja" }, "notifications": "Meldingen", - "enable_web_push_notifications": "Schakel web push meldingen in", + "enable_web_push_notifications": "Web push meldingen inschakelen", "style": { "switcher": { - "keep_color": "Behoud kleuren", - "keep_shadows": "Behoud schaduwen", - "keep_opacity": "Behoud transparantie", - "keep_roundness": "Behoud afrondingen", - "keep_fonts": "Behoud lettertypes", + "keep_color": "Kleuren behouden", + "keep_shadows": "Schaduwen behouden", + "keep_opacity": "Transparantie behouden", + "keep_roundness": "Rondingen behouden", + "keep_fonts": "Lettertypes behouden", "save_load_hint": "\"Behoud\" opties behouden de momenteel ingestelde opties bij het selecteren of laden van thema's, maar slaan ook de genoemde opties op bij het exporteren van een thema. Wanneer alle selectievakjes zijn uitgeschakeld, zal het exporteren van thema's alles opslaan.", "reset": "Reset", - "clear_all": "Wis alles", - "clear_opacity": "Wis transparantie", - "keep_as_is": "Houdt zoals het is", + "clear_all": "Alles wissen", + "clear_opacity": "Transparantie wissen", + "keep_as_is": "Hou zoals het is", "use_snapshot": "Oude versie", "use_source": "Nieuwe versie", "help": { @@ -367,8 +367,8 @@ "notification_setting_non_follows": "Gebruikers die je niet volgt", "notification_setting_followers": "Gebruikers die je volgen", "notification_setting_privacy": "Privacy", - "notification_setting_privacy_option": "Verberg de afzender en inhoud van push notificaties", - "notification_mutes": "Om niet langer notificaties te ontvangen van een specifieke gebruiker, kun je deze dempen.", + "notification_setting_privacy_option": "Verberg de afzender en inhoud van push meldingen", + "notification_mutes": "Om niet langer meldingen te ontvangen van een specifieke gebruiker, kun je deze negeren.", "app_name": "App naam", "security": "Beveiliging", "enter_current_password_to_confirm": "Voer je huidige wachtwoord in om je identiteit te bevestigen", @@ -393,57 +393,57 @@ "warning_of_generate_new_codes": "Wanneer je nieuwe herstelcodes genereert, zullen je oude code niet langer werken.", "recovery_codes_warning": "Schrijf de codes op of sla ze op een veilige locatie op - anders kun je ze niet meer inzien. Als je toegang tot je 2FA app en herstelcodes verliest, zal je buitengesloten zijn uit je account." }, - "allow_following_move": "Auto-volgen toestaan wanneer een gevolgd account migreert", - "block_export": "Geblokkeerde gebruikers exporteren", - "block_import": "Geblokkeerde gebruikers importeren", - "blocks_imported": "Geblokkeerde gebruikers geïmporteerd! Het kan even duren voordat deze verwerkt zijn.", - "blocks_tab": "Geblokkeerde gebruikers", + "allow_following_move": "Automatisch volgen toestaan wanneer een gevolgd account migreert", + "block_export": "Blokkades exporteren", + "block_import": "Blokkades importeren", + "blocks_imported": "Blokkades geïmporteerd! Het kan even duren voordat deze verwerkt zijn.", + "blocks_tab": "Blokkades", "change_email": "Email wijzigen", - "change_email_error": "Er is een probleem opgetreden tijdens het wijzigen van je email.", + "change_email_error": "Er is een fout opgetreden tijdens het wijzigen van je email.", "changed_email": "Email succesvol gewijzigd!", "domain_mutes": "Domeinen", "avatar_size_instruction": "De aangeraden minimale afmeting voor avatar afbeeldingen is 150x150 pixels.", - "pad_emoji": "Vul emoji op met spaties wanneer deze met de picker ingevoegd worden", + "pad_emoji": "Vul emoji aan met spaties wanneer deze met de picker ingevoegd worden", "emoji_reactions_on_timeline": "Toon emoji reacties op de tijdlijn", "accent": "Accent", - "hide_muted_posts": "Verberg berichten van gedempte gebruikers", + "hide_muted_posts": "Verberg berichten van genegeerde gebruikers", "max_thumbnails": "Maximaal aantal miniaturen per bericht", "use_one_click_nsfw": "Open gevoelige bijlagen met slechts één klik", - "hide_filtered_statuses": "Verberg gefilterde statussen", - "import_blocks_from_a_csv_file": "Importeer geblokkeerde gebruikers van een csv bestand", - "mutes_tab": "Gedempte gebruikers", + "hide_filtered_statuses": "Gefilterde statussen verbergen", + "import_blocks_from_a_csv_file": "Importeer blokkades van een csv bestand", + "mutes_tab": "Negeringen", "play_videos_in_modal": "Speel video's af in een popup frame", "new_email": "Nieuwe Email", "notification_visibility_emoji_reactions": "Reacties", - "no_blocks": "Geen geblokkeerde gebruikers", - "no_mutes": "Geen gedempte gebruikers", + "no_blocks": "Geen blokkades", + "no_mutes": "Geen negeringen", "hide_followers_description": "Niet tonen wie mij volgt", "hide_followers_count_description": "Niet mijn volgers aantal tonen", "hide_follows_count_description": "Niet mijn gevolgde aantal tonen", - "show_admin_badge": "Admin badge tonen in mijn profiel", + "show_admin_badge": "Beheerders badge tonen in mijn profiel", "autohide_floating_post_button": "Nieuw Bericht knop automatisch verbergen (mobiel)", "search_user_to_block": "Zoek wie je wilt blokkeren", - "search_user_to_mute": "Zoek wie je wilt dempen", + "search_user_to_mute": "Zoek wie je wilt negeren", "minimal_scopes_mode": "Bericht bereik-opties minimaliseren", "post_status_content_type": "Bericht status content type", "user_mutes": "Gebruikers", - "useStreamingApi": "Berichten en notificatie in real-time ontvangen", + "useStreamingApi": "Berichten en meldingen in real-time ontvangen", "useStreamingApiWarning": "(Afgeraden, experimenteel, kan berichten overslaan)", - "type_domains_to_mute": "Voer domeinen in om te dempen", + "type_domains_to_mute": "Voer domeinen in om te negeren", "upload_a_photo": "Upload een foto", "fun": "Plezier", "greentext": "Meme pijlen", - "notification_setting": "Ontvang notificaties van:", + "notification_setting": "Ontvang meldingen van:", "block_export_button": "Exporteer je geblokkeerde gebruikers naar een csv bestand", - "block_import_error": "Fout bij importeren geblokkeerde gebruikers", + "block_import_error": "Fout bij importeren blokkades", "discoverable": "Sta toe dat dit account ontdekt kan worden in zoekresultaten en andere diensten", - "use_contain_fit": "Bijlage in miniaturen niet bijsnijden", + "use_contain_fit": "Snij bijlage in miniaturen niet bij", "notification_visibility_moves": "Gebruiker Migraties", "hide_follows_description": "Niet tonen wie ik volg", - "show_moderator_badge": "Moderator badge tonen in mijn profiel", + "show_moderator_badge": "Moderators badge tonen in mijn profiel", "notification_setting_filters": "Filters", "notification_setting_non_followers": "Gebruikers die je niet volgen", - "notification_blocks": "Door een gebruiker te blokkeren, ontvang je geen notificaties meer van de gebruiker en wordt je abonnement op de gebruiker opgeheven." + "notification_blocks": "Door een gebruiker te blokkeren, ontvang je geen meldingen meer van de gebruiker en wordt je abonnement op de gebruiker opgeheven." }, "timeline": { "collapse": "Inklappen", From 00b4b1f4f62276b94b578db1b0d25bfe23b7f779 Mon Sep 17 00:00:00 2001 From: Ben Is <srsbzns@cock.li> Date: Thu, 14 May 2020 19:53:48 +0000 Subject: [PATCH 68/95] Translated using Weblate (Italian) Currently translated at 40.6% (249 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index 5554620c..d4c4cb74 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -20,7 +20,16 @@ "timeline": "Sequenza personale", "twkn": "Sequenza globale", "chat": "Chat della stanza", - "friend_requests": "Vogliono seguirti" + "friend_requests": "Vogliono seguirti", + "about": "Informazioni", + "administration": "Amministrazione", + "back": "Indietro", + "interactions": "Interazioni", + "dms": "Messaggi diretti", + "user_search": "Ricerca utenti", + "search": "Ricerca", + "who_to_follow": "Chi seguire", + "preferences": "Preferenze" }, "notifications": { "followed_you": "ti segue", @@ -29,7 +38,11 @@ "broken_favorite": "Stato sconosciuto, lo sto cercando...", "favorited_you": "ha gradito il tuo messaggio", "load_older": "Carica notifiche precedenti", - "repeated_you": "ha condiviso il tuo messaggio" + "repeated_you": "ha condiviso il tuo messaggio", + "follow_request": "vuole seguirti", + "no_more_notifications": "Fine delle notifiche", + "migrated_to": "è migrato verso", + "reacted_with": "ha reagito con" }, "settings": { "attachments": "Allegati", @@ -274,5 +287,23 @@ "submit": "Invia", "success": "Importato.", "error": "L'importazione non è andata a buon fine." + }, + "media_modal": { + "previous": "Precedente", + "next": "Prossimo" + }, + "polls": { + "add_poll": "Sondaggio", + "add_option": "Alternativa", + "option": "Opzione", + "votes": "voti", + "vote": "Vota", + "type": "Tipo di sondaggio", + "single_choice": "Scelta singola", + "multiple_choices": "Scelta multipla", + "expiry": "Scadenza", + "expires_in": "Scade fra {0}", + "expired": "Scaduto {0} fa", + "not_enough_options": "Aggiungi altre risposte" } } From b994bde3e21e69bf5a32576779496e6f38251252 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:20:46 +0000 Subject: [PATCH 69/95] Translated using Weblate (German) Currently translated at 68.3% (419 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 4037b4b3..e242f364 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -84,7 +84,10 @@ "account_not_locked_warning_link": "gesperrt", "attachments_sensitive": "Anhänge als heikel markieren", "content_type": { - "text/plain": "Nur Text" + "text/plain": "Nur Text", + "text/bbcode": "BBCode", + "text/markdown": "Markdown", + "text/html": "HTML" }, "content_warning": "Betreff (optional)", "default": "Sitze gerade im Hofbräuhaus.", @@ -95,7 +98,8 @@ "private": "Nur Follower - Beitrag nur für Follower sichtbar", "public": "Öffentlich - Beitrag an öffentliche Zeitleisten", "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" - } + }, + "direct_warning_to_all": "Dieser Post wird für alle erwähnten User sichtbar sein." }, "registration": { "bio": "Bio", @@ -511,6 +515,14 @@ "search_emoji": "Nach einem Emoji suchen", "custom": "Benutzerdefinierter Emoji", "keep_open": "Auswahlfenster offen halten", - "add_emoji": "Emoji einfügen" + "add_emoji": "Emoji einfügen", + "load_all": "Lade alle {emojiAmount} Emoji", + "load_all_hint": "Erfolgreich erste {saneAmount} Emoji geladen, alle Emojis zu laden würde Leistungsprobleme hervorrufen.", + "unicode": "Unicode Emoji" + }, + "interactions": { + "load_older": "Lade ältere Interaktionen", + "follows": "Neue Follows", + "favs_repeats": "Wiederholungen und Favoriten" } } From 9e306efe2edb104a74a0543feb61697659330266 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:24:51 +0000 Subject: [PATCH 70/95] Translated using Weblate (German) Currently translated at 68.3% (419 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index e242f364..6359b608 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -523,6 +523,7 @@ "interactions": { "load_older": "Lade ältere Interaktionen", "follows": "Neue Follows", - "favs_repeats": "Wiederholungen und Favoriten" + "favs_repeats": "Wiederholungen und Favoriten", + "moves": "Benutzer migriert zu" } } From ab4790034bbd452f3e5408d1e5f2814af30c262b Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:27:02 +0000 Subject: [PATCH 71/95] Translated using Weblate (German) Currently translated at 68.5% (420 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 6359b608..c68edb43 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -99,7 +99,7 @@ "public": "Öffentlich - Beitrag an öffentliche Zeitleisten", "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" }, - "direct_warning_to_all": "Dieser Post wird für alle erwähnten User sichtbar sein." + "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein." }, "registration": { "bio": "Bio", From 9374002de09fcfb23fb8fb1ba7684d0a1d8f0254 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:27:09 +0000 Subject: [PATCH 72/95] Translated using Weblate (German) Currently translated at 68.5% (420 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index c68edb43..ea5dfb91 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -99,7 +99,8 @@ "public": "Öffentlich - Beitrag an öffentliche Zeitleisten", "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" }, - "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein." + "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein.", + "direct_warning_to_first_only": "Dieser Post wird für alle User, die am Anfang der Nachricht erwähnt wurden, sichtbar sein." }, "registration": { "bio": "Bio", From 14ac5a5fdb706174b9a4611bb1414106af79fc82 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:27:26 +0000 Subject: [PATCH 73/95] Translated using Weblate (German) Currently translated at 68.6% (421 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index ea5dfb91..9688695f 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -100,7 +100,7 @@ "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" }, "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein.", - "direct_warning_to_first_only": "Dieser Post wird für alle User, die am Anfang der Nachricht erwähnt wurden, sichtbar sein." + "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein." }, "registration": { "bio": "Bio", From f22d3c18cfaf587c8014e8718e8bdcbb4d14a7b0 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:27:57 +0000 Subject: [PATCH 74/95] Translated using Weblate (German) Currently translated at 68.6% (421 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 9688695f..1a60505e 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -100,7 +100,10 @@ "unlisted": "Nicht gelistet - Nicht in öffentlichen Zeitleisten anzeigen" }, "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein.", - "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein." + "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein.", + "scope_notice": { + "public": "Dieser Post wird für alle sichtbar sein" + } }, "registration": { "bio": "Bio", From f91bb4dc7cfa32c06711fc1ca0f38b30712f7fb5 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:28:07 +0000 Subject: [PATCH 75/95] Translated using Weblate (German) Currently translated at 68.8% (422 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 1a60505e..1344ed1b 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -102,7 +102,7 @@ "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein.", "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein.", "scope_notice": { - "public": "Dieser Post wird für alle sichtbar sein" + "public": "Dieser Beitrag wird für alle sichtbar sein" } }, "registration": { From 1179a6687a87f57018eebbebda7568efbe9326bd Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:28:12 +0000 Subject: [PATCH 76/95] Translated using Weblate (German) Currently translated at 68.8% (422 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 1344ed1b..f0f4cbaa 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -102,7 +102,8 @@ "direct_warning_to_all": "Dieser Beitrag wird für alle erwähnten Benutzer sichtbar sein.", "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein.", "scope_notice": { - "public": "Dieser Beitrag wird für alle sichtbar sein" + "public": "Dieser Beitrag wird für alle sichtbar sein", + "private": "Dieser Post wird nur für deine Follower sichtbar sein" } }, "registration": { From 9e43a83c487d7182da15992142ede01612e9832a Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:28:22 +0000 Subject: [PATCH 77/95] Translated using Weblate (German) Currently translated at 69.0% (423 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index f0f4cbaa..f0b715aa 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -103,7 +103,7 @@ "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein.", "scope_notice": { "public": "Dieser Beitrag wird für alle sichtbar sein", - "private": "Dieser Post wird nur für deine Follower sichtbar sein" + "private": "Dieser Beitrag wird nur für deine Follower sichtbar sein" } }, "registration": { From e7fd793438b87674d6d27ed5e6446b08d3f2aef8 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:28:34 +0000 Subject: [PATCH 78/95] Translated using Weblate (German) Currently translated at 69.0% (423 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index f0b715aa..71f4eb49 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -103,7 +103,8 @@ "direct_warning_to_first_only": "Dieser Beitrag wird für alle Benutzer, die am Anfang der Nachricht erwähnt wurden, sichtbar sein.", "scope_notice": { "public": "Dieser Beitrag wird für alle sichtbar sein", - "private": "Dieser Beitrag wird nur für deine Follower sichtbar sein" + "private": "Dieser Beitrag wird nur für deine Follower sichtbar sein", + "unlisted": "Dieser Post wird weder in der öffentlichen Zeitleiste noch im gesamten bekannten Netzwerk sichtbar sein" } }, "registration": { From f141fa2a6609cdea0ea22b0b83fe2563de0d1006 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:28:45 +0000 Subject: [PATCH 79/95] Translated using Weblate (German) Currently translated at 70.3% (431 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 71f4eb49..eaf7bef1 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -104,7 +104,7 @@ "scope_notice": { "public": "Dieser Beitrag wird für alle sichtbar sein", "private": "Dieser Beitrag wird nur für deine Follower sichtbar sein", - "unlisted": "Dieser Post wird weder in der öffentlichen Zeitleiste noch im gesamten bekannten Netzwerk sichtbar sein" + "unlisted": "Dieser Beitrag wird weder in der öffentlichen Zeitleiste noch im gesamten bekannten Netzwerk sichtbar sein" } }, "registration": { @@ -531,5 +531,8 @@ "follows": "Neue Follows", "favs_repeats": "Wiederholungen und Favoriten", "moves": "Benutzer migriert zu" + }, + "selectable_list": { + "select_all": "Alle auswählen" } } From 7bd0f1a5f10db69bebb98ea991e051bce62183b6 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:28:54 +0000 Subject: [PATCH 80/95] Translated using Weblate (German) Currently translated at 70.3% (431 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index eaf7bef1..ee09f1f3 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -123,7 +123,10 @@ "password_required": "darf nicht leer sein", "password_confirmation_required": "darf nicht leer sein", "password_confirmation_match": "sollte mit dem Passwort identisch sein." - } + }, + "bio_placeholder": "z.B.\nHallo, ich bin Lain.\nIch bin ein Anime Mödchen aus dem vorstädtischen Japan. Du kennst mich vielleicht vom Wired.", + "fullname_placeholder": "z.B. Lain Iwakura", + "username_placeholder": "z.B. lain" }, "settings": { "attachmentRadius": "Anhänge", @@ -365,7 +368,13 @@ "checkbox": "Ich habe die Allgemeinen Geschäftsbedingungen überflogen", "link": "ein netter kleiner Link" } - } + }, + "app_name": "Anwendungsname", + "mfa": { + "otp": "OTP" + }, + "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", + "security": "Sicherheit" }, "timeline": { "collapse": "Einklappen", From c1834b31569aa67f4dfa0a2680b2f8e76c484285 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:31:31 +0000 Subject: [PATCH 81/95] Translated using Weblate (German) Currently translated at 71.2% (437 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index ee09f1f3..e14492d0 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -371,7 +371,12 @@ }, "app_name": "Anwendungsname", "mfa": { - "otp": "OTP" + "otp": "OTP", + "recovery_codes_warning": "Schreibe dir die Codes auf oder speichere sie an einem sicheren Ort - ansonsten wirst du sie nicht wieder finden. Wenn du den Zugriff zu deiner 2FA App und die Wiederherstellungs-Codes verlierst, wirst du aus deinem Account ausgeschlossen sein.", + "recovery_codes": "Wiederherstellungs-Codes.", + "warning_of_generate_new_codes": "Wenn du neue Wiederherstellungs-Codes generierst, werden die alten Codes nicht mehr funktionieren.", + "generate_new_recovery_codes": "Generiere neue Wiederherstellungs-Codes", + "title": "Zwei-Faktor Authentifizierung" }, "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", "security": "Sicherheit" From 495b3d819cae106462e1d7af16efea2758db8f26 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:33:16 +0000 Subject: [PATCH 82/95] Translated using Weblate (German) Currently translated at 71.2% (437 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index e14492d0..a34c604b 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -376,7 +376,8 @@ "recovery_codes": "Wiederherstellungs-Codes.", "warning_of_generate_new_codes": "Wenn du neue Wiederherstellungs-Codes generierst, werden die alten Codes nicht mehr funktionieren.", "generate_new_recovery_codes": "Generiere neue Wiederherstellungs-Codes", - "title": "Zwei-Faktor Authentifizierung" + "title": "Zwei-Faktor Authentifizierung", + "waiting_a_recovery_codes": "Erhalte Wiederherstellungscodes..." }, "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", "security": "Sicherheit" From 9202eeef4b10c935b511a53abbd596b89f581f7b Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:34:19 +0000 Subject: [PATCH 83/95] Translated using Weblate (German) Currently translated at 71.4% (438 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index a34c604b..884e31d1 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -372,7 +372,7 @@ "app_name": "Anwendungsname", "mfa": { "otp": "OTP", - "recovery_codes_warning": "Schreibe dir die Codes auf oder speichere sie an einem sicheren Ort - ansonsten wirst du sie nicht wieder finden. Wenn du den Zugriff zu deiner 2FA App und die Wiederherstellungs-Codes verlierst, wirst du aus deinem Account ausgeschlossen sein.", + "recovery_codes_warning": "Schreibe dir die Codes auf oder speichere sie an einem sicheren Ort - ansonsten wirst du sie nicht wiederfinden. Wenn du den Zugriff zu deiner 2FA App und die Wiederherstellungs-Codes verlierst, wirst du aus deinem Account ausgeschlossen sein.", "recovery_codes": "Wiederherstellungs-Codes.", "warning_of_generate_new_codes": "Wenn du neue Wiederherstellungs-Codes generierst, werden die alten Codes nicht mehr funktionieren.", "generate_new_recovery_codes": "Generiere neue Wiederherstellungs-Codes", From c8cf939cddbb173be67544025b53e24b7abd8376 Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:34:35 +0000 Subject: [PATCH 84/95] Translated using Weblate (German) Currently translated at 71.4% (438 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 884e31d1..b50bd72a 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -377,7 +377,8 @@ "warning_of_generate_new_codes": "Wenn du neue Wiederherstellungs-Codes generierst, werden die alten Codes nicht mehr funktionieren.", "generate_new_recovery_codes": "Generiere neue Wiederherstellungs-Codes", "title": "Zwei-Faktor Authentifizierung", - "waiting_a_recovery_codes": "Erhalte Wiederherstellungscodes..." + "waiting_a_recovery_codes": "Erhalte Wiederherstellungscodes...", + "authentication_methods": "Authentifizierungs-Methoden" }, "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", "security": "Sicherheit" From 53b2ae0f73a40fb7dbe2522edbd78e6b2d7349e9 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:34:42 +0000 Subject: [PATCH 85/95] Translated using Weblate (German) Currently translated at 73.0% (448 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index b50bd72a..979566d6 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -378,10 +378,14 @@ "generate_new_recovery_codes": "Generiere neue Wiederherstellungs-Codes", "title": "Zwei-Faktor Authentifizierung", "waiting_a_recovery_codes": "Erhalte Wiederherstellungscodes...", - "authentication_methods": "Authentifizierungs-Methoden" + "authentication_methods": "Authentifizierungsmethoden", + "scan": { + "title": "Scan" + } }, "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", - "security": "Sicherheit" + "security": "Sicherheit", + "allow_following_move": "Erlaube automatisches Folgen, sobald ein gefolgter Nutzer umzieht" }, "timeline": { "collapse": "Einklappen", From 3e260661d0cdbaaaeda8c3fa33756c4e2e9ccc0d Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:37:01 +0000 Subject: [PATCH 86/95] Translated using Weblate (German) Currently translated at 73.0% (448 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 979566d6..ce7c13c5 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -380,12 +380,22 @@ "waiting_a_recovery_codes": "Erhalte Wiederherstellungscodes...", "authentication_methods": "Authentifizierungsmethoden", "scan": { - "title": "Scan" + "title": "Scan", + "secret_code": "Schlüssel", + "desc": "Wenn du deine 2FA App verwendest, scanne diesen QR Code oder gebe den Schlüssel ein:" + }, + "verify": { + "desc": "Um 2FA zu aktivieren, gib den Code von deiner 2FA-App ein:" } }, "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", "security": "Sicherheit", - "allow_following_move": "Erlaube automatisches Folgen, sobald ein gefolgter Nutzer umzieht" + "allow_following_move": "Erlaube automatisches Folgen, sobald ein gefolgter Nutzer umzieht", + "blocks_imported": "Blocks importiert! Die Verarbeitung wird eine kurze Weile brauchen.", + "block_import_error": "Fehler beim Importieren der Blocks", + "block_import": "Block Import", + "block_export_button": "Exportiere deine Blocks in eine csv Datei", + "block_export": "Block Export" }, "timeline": { "collapse": "Einklappen", From 9ede7db8dfe773af93dbfcf82a889f6de63b92ae Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:40:50 +0000 Subject: [PATCH 87/95] Translated using Weblate (German) Currently translated at 74.0% (454 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index ce7c13c5..644682db 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -138,7 +138,7 @@ "background": "Hintergrund", "bio": "Bio", "btnRadius": "Buttons", - "cBlue": "Blau (Antworten, Folgt dir)", + "cBlue": "Blau (Antworten, folgt dir)", "cGreen": "Grün (Retweet)", "cOrange": "Orange (Favorisieren)", "cRed": "Rot (Abbrechen)", @@ -154,10 +154,10 @@ "data_import_export_tab": "Datenimport/-export", "default_vis": "Standard-Sichtbarkeitsumfang", "delete_account": "Account löschen", - "delete_account_description": "Lösche deinen Account und alle deine Nachrichten unwiderruflich.", + "delete_account_description": "Lösche deine Daten und deaktiviere deinen Account unwiderruflich.", "delete_account_error": "Es ist ein Fehler beim Löschen deines Accounts aufgetreten. Tritt dies weiterhin auf, wende dich an den Administrator der Instanz.", "delete_account_instructions": "Tippe dein Passwort unten in das Feld ein, um die Löschung deines Accounts zu bestätigen.", - "discoverable": "Erlaubnis für automatisches Suchen nach diesem Account", + "discoverable": "Erlaube, dass dieser Account in Suchergebnissen auftaucht", "avatar_size_instruction": "Die empfohlene minimale Größe für Avatare ist 150x150 Pixel.", "pad_emoji": "Emojis mit Leerzeichen umrahmen", "export_theme": "Farbschema speichern", @@ -391,7 +391,7 @@ "enter_current_password_to_confirm": "Gib dein aktuelles Passwort ein, um deine Identität zu bestätigen", "security": "Sicherheit", "allow_following_move": "Erlaube automatisches Folgen, sobald ein gefolgter Nutzer umzieht", - "blocks_imported": "Blocks importiert! Die Verarbeitung wird eine kurze Weile brauchen.", + "blocks_imported": "Blocks importiert! Die Verarbeitung wird einen Moment brauchen.", "block_import_error": "Fehler beim Importieren der Blocks", "block_import": "Block Import", "block_export_button": "Exportiere deine Blocks in eine csv Datei", From 91da315af9409c45bd6bea069ba9b32f8200decd Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:42:50 +0000 Subject: [PATCH 88/95] Translated using Weblate (German) Currently translated at 74.0% (454 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 644682db..71e1fd0a 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -395,7 +395,12 @@ "block_import_error": "Fehler beim Importieren der Blocks", "block_import": "Block Import", "block_export_button": "Exportiere deine Blocks in eine csv Datei", - "block_export": "Block Export" + "block_export": "Block Export", + "emoji_reactions_on_timeline": "Zeige Emoji Reaktionen auf der Zeitleiste", + "domain_mutes": "Domains", + "changed_email": "Email Adresse erfolgreich geändert!", + "change_email_error": "Es trat ein Problem auf beim Versuch, deine Email Adresse zu ändern.", + "change_email": "Ändere Email" }, "timeline": { "collapse": "Einklappen", From 1478ff7fc768d5677ee6f43d6903df818160f0b2 Mon Sep 17 00:00:00 2001 From: Toromino <mail@dennisbuchholz.net> Date: Fri, 15 May 2020 09:48:15 +0000 Subject: [PATCH 89/95] Translated using Weblate (German) Currently translated at 75.2% (461 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 71e1fd0a..5490f710 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -122,7 +122,7 @@ "email_required": "darf nicht leer sein", "password_required": "darf nicht leer sein", "password_confirmation_required": "darf nicht leer sein", - "password_confirmation_match": "sollte mit dem Passwort identisch sein." + "password_confirmation_match": "sollte mit dem Passwort identisch sein" }, "bio_placeholder": "z.B.\nHallo, ich bin Lain.\nIch bin ein Anime Mödchen aus dem vorstädtischen Japan. Du kennst mich vielleicht vom Wired.", "fullname_placeholder": "z.B. Lain Iwakura", @@ -162,13 +162,13 @@ "pad_emoji": "Emojis mit Leerzeichen umrahmen", "export_theme": "Farbschema speichern", "filtering": "Filtern", - "filtering_explanation": "Alle Beiträge die diese Wörter enthalten werden ausgeblendet. Ein Wort pro Zeile.", + "filtering_explanation": "Alle Beiträge, welche diese Wörter enthalten, werden ausgeblendet. Ein Wort pro Zeile.", "follow_export": "Follower exportieren", "follow_export_button": "Exportiere deine Follows in eine csv-Datei", "follow_export_processing": "In Bearbeitung. Die Liste steht gleich zum herunterladen bereit.", - "follow_import": "Followers importieren", - "follow_import_error": "Fehler beim importieren der Follower", - "follows_imported": "Followers importiert! Die Bearbeitung kann eine Zeit lang dauern.", + "follow_import": "Follower importieren", + "follow_import_error": "Fehler beim Importieren der Follower", + "follows_imported": "Follower importiert! Die Bearbeitung kann einen Moment dauern.", "foreground": "Vordergrund", "general": "Allgemein", "hide_attachments_in_convo": "Anhänge in Unterhaltungen ausblenden", @@ -181,7 +181,7 @@ "hide_post_stats": "Beitragsstatistiken verbergen (z.B. die Anzahl der Favoriten)", "hide_user_stats": "Benutzerstatistiken verbergen (z.B. die Anzahl der Follower)", "hide_filtered_statuses": "Gefilterte Beiträge verbergen", - "import_followers_from_a_csv_file": "Importiere Follower, denen du folgen möchtest, aus einer CSV-Datei", + "import_followers_from_a_csv_file": "Importiere Follower aus einer CSV-Datei", "import_theme": "Farbschema laden", "inputRadius": "Eingabefelder", "checkboxRadius": "Auswahlfelder", @@ -195,7 +195,7 @@ "lock_account_description": "Sperre deinen Account, um neue Follower zu genehmigen oder abzulehnen", "loop_video": "Videos wiederholen", "loop_video_silent_only": "Nur Videos ohne Ton wiederholen (z.B. Mastodons \"gifs\")", - "mutes_tab": "Mutes", + "mutes_tab": "Stummschaltungen", "play_videos_in_modal": "Videos in größerem Medienfenster abspielen", "use_contain_fit": "Vorschaubilder nicht zuschneiden", "name": "Name", @@ -396,7 +396,7 @@ "block_import": "Block Import", "block_export_button": "Exportiere deine Blocks in eine csv Datei", "block_export": "Block Export", - "emoji_reactions_on_timeline": "Zeige Emoji Reaktionen auf der Zeitleiste", + "emoji_reactions_on_timeline": "Zeige Emoji-Reaktionen auf der Zeitleiste", "domain_mutes": "Domains", "changed_email": "Email Adresse erfolgreich geändert!", "change_email_error": "Es trat ein Problem auf beim Versuch, deine Email Adresse zu ändern.", @@ -423,7 +423,7 @@ "follow_again": "Anfrage erneut senden?", "follow_unfollow": "Folgen beenden", "followees": "Folgt", - "followers": "Followers", + "followers": "Folgende", "following": "Folgst du!", "follows_you": "Folgt dir!", "its_you": "Das bist du!", @@ -431,7 +431,10 @@ "muted": "Stummgeschaltet", "per_day": "pro Tag", "remote_follow": "Folgen", - "statuses": "Beiträge" + "statuses": "Beiträge", + "admin_menu": { + "sandbox": "Erzwinge Beiträge nur für Follower sichtbar zu sein" + } }, "user_profile": { "timeline_title": "Beiträge" @@ -569,5 +572,8 @@ }, "selectable_list": { "select_all": "Alle auswählen" + }, + "remote_user_resolver": { + "searching_for": "Suche nach" } } From 7f9eb23759cffc8462c369e4051e3735b617aa8f Mon Sep 17 00:00:00 2001 From: Anonymous <noreply@weblate.org> Date: Fri, 15 May 2020 09:54:03 +0000 Subject: [PATCH 90/95] Translated using Weblate (German) Currently translated at 75.2% (461 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/de/ --- src/i18n/de.json | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/i18n/de.json b/src/i18n/de.json index 5490f710..d3eedcb6 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -400,7 +400,11 @@ "domain_mutes": "Domains", "changed_email": "Email Adresse erfolgreich geändert!", "change_email_error": "Es trat ein Problem auf beim Versuch, deine Email Adresse zu ändern.", - "change_email": "Ändere Email" + "change_email": "Ändere Email", + "notification_setting_non_followers": "Nutzer, die dir nicht folgen", + "notification_setting_followers": "Nutzer, die dir folgen", + "import_blocks_from_a_csv_file": "Importiere Blocks von einer CSV Datei", + "accent": "Akzent" }, "timeline": { "collapse": "Einklappen", @@ -571,9 +575,10 @@ "moves": "Benutzer migriert zu" }, "selectable_list": { - "select_all": "Alle auswählen" + "select_all": "Wähle alle" }, "remote_user_resolver": { - "searching_for": "Suche nach" + "searching_for": "Suche nach", + "error": "Nicht gefunden." } } From b4f8d91905c37ee95b09ca81e7dbde1491902def Mon Sep 17 00:00:00 2001 From: Fristi <fristi@subcon.town> Date: Fri, 15 May 2020 08:00:54 +0000 Subject: [PATCH 91/95] Translated using Weblate (Dutch) Currently translated at 100.0% (613 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/nl/ --- src/i18n/nl.json | 284 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 216 insertions(+), 68 deletions(-) diff --git a/src/i18n/nl.json b/src/i18n/nl.json index 15216244..472d11ec 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -16,7 +16,7 @@ "find_user": "Gebruiker zoeken" }, "general": { - "apply": "toepassen", + "apply": "Toepassen", "submit": "Verzend", "more": "Meer", "optional": "optioneel", @@ -33,10 +33,10 @@ "login": { "login": "Log in", "description": "Log in met OAuth", - "logout": "Log uit", + "logout": "Uitloggen", "password": "Wachtwoord", - "placeholder": "bv. lain", - "register": "Registreer", + "placeholder": "bijv. lain", + "register": "Registreren", "username": "Gebruikersnaam", "hint": "Log in om deel te nemen aan de discussie", "authentication_code": "Authenticatie code", @@ -51,14 +51,14 @@ "nav": { "about": "Over", "back": "Terug", - "chat": "Locale Chat", - "friend_requests": "Volgverzoek", + "chat": "Lokale Chat", + "friend_requests": "Volgverzoeken", "mentions": "Vermeldingen", "dms": "Directe Berichten", "public_tl": "Publieke Tijdlijn", "timeline": "Tijdlijn", - "twkn": "Het Geheel Gekende Netwerk", - "user_search": "Zoek Gebruiker", + "twkn": "Het Geheel Bekende Netwerk", + "user_search": "Gebruiker Zoeken", "who_to_follow": "Wie te volgen", "preferences": "Voorkeuren", "administration": "Administratie", @@ -73,18 +73,18 @@ "notifications": "Meldingen", "read": "Gelezen!", "repeated_you": "Herhaalde je status", - "no_more_notifications": "Geen notificaties meer", + "no_more_notifications": "Geen meldingen meer", "migrated_to": "is gemigreerd naar", "follow_request": "wil je volgen", "reacted_with": "reageerde met {0}" }, "post_status": { - "new_status": "Post nieuwe status", - "account_not_locked_warning": "Je account is niet {0}. Iedereen die je volgt kan enkel-volgers posts lezen.", + "new_status": "Nieuwe status plaatsen", + "account_not_locked_warning": "Je account is niet {0}. Iedereen kan je volgen om je alleen-volgers berichten te lezen.", "account_not_locked_warning_link": "gesloten", - "attachments_sensitive": "Markeer bijlage als gevoelig", + "attachments_sensitive": "Markeer bijlagen als gevoelig", "content_type": { - "text/plain": "Gewone tekst", + "text/plain": "Platte tekst", "text/html": "HTML", "text/markdown": "Markdown", "text/bbcode": "BBCode" @@ -154,7 +154,7 @@ "data_import_export_tab": "Data Import / Export", "default_vis": "Standaard zichtbaarheidsbereik", "delete_account": "Account Verwijderen", - "delete_account_description": "Permanent je account en al je berichten verwijderen.", + "delete_account_description": "Permanent je gegevens verwijderen en account deactiveren.", "delete_account_error": "Er is een fout opgetreden bij het verwijderen van je account. Indien dit probleem zich voor blijft doen, neem dan contact op met de beheerder van deze instantie.", "delete_account_instructions": "Voer je wachtwoord in het onderstaande invoerveld in om het verwijderen van je account te bevestigen.", "export_theme": "Preset opslaan", @@ -262,7 +262,14 @@ "future_version_imported": "Het geïmporteerde bestand is gemaakt voor een nieuwere versie van FE.", "older_version_imported": "Het geïmporteerde bestand is gemaakt voor een oudere versie van FE.", "upgraded_from_v2": "PleromaFE is bijgewerkt, het thema kan iets anders uitzien dan dat je gewend bent.", - "v2_imported": "Het geïmporteerde bestand is gemaakt voor een oudere FE. We proberen compatibiliteit te maximaliseren, maar het kan toch voorkomen dat er inconsistenties zijn." + "v2_imported": "Het geïmporteerde bestand is gemaakt voor een oudere FE. We proberen compatibiliteit te maximaliseren, maar het kan toch voorkomen dat er inconsistenties zijn.", + "snapshot_source_mismatch": "Versie conflict: waarschijnlijk was FE terug gerold en opnieuw bijgewerkt, indien je het thema aangepast hebt met de oudere versie van FE wil je waarschijnlijk de oude versie gebruiken, gebruik anders de nieuwe versie.", + "migration_napshot_gone": "Voor een onduidelijke reden mist de momentopname, dus sommige dingen kunnen anders uitzien dan je gewend bent.", + "migration_snapshot_ok": "Voor de zekerheid is een momentopname van het thema geladen. Je kunt proberen om de thema gegevens te laden.", + "fe_downgraded": "PleromaFE's versie is terug gerold.", + "fe_upgraded": "De thema-engine van PleromaFE is bijgewerkt na de versie update.", + "snapshot_missing": "Het bestand bevat geen thema momentopname, dus het thema kan anders uitzien dan je oorspronkelijk bedacht had.", + "snapshot_present": "Thema momentopname is geladen, alle waarden zijn overschreven. Je kunt in plaats daarvan ook de daadwerkelijke data van het thema laden." }, "load_theme": "Thema laden" }, @@ -270,7 +277,7 @@ "color": "Kleur", "opacity": "Transparantie", "contrast": { - "hint": "Contrast ratio is {ratio}, {level} {context}", + "hint": "Contrast verhouding is {ratio}, {level} {context}", "level": { "aa": "voldoet aan de richtlijn van niveau AA (minimum)", "aaa": "voldoet aan de richtlijn van niveau AAA (aangeraden)", @@ -283,8 +290,8 @@ } }, "common_colors": { - "_tab_label": "Gemeenschappelijk", - "main": "Gemeenschappelijke kleuren", + "_tab_label": "Algemeen", + "main": "Algemene kleuren", "foreground_hint": "Zie \"Geavanceerd\" tab voor meer gedetailleerde controle", "rgbo": "Iconen, accenten, badges" }, @@ -294,58 +301,73 @@ "alert_error": "Fout", "badge": "Badge achtergrond", "badge_notification": "Meldingen", - "panel_header": "Paneel hoofding", - "top_bar": "Top bar", + "panel_header": "Paneel koptekst", + "top_bar": "Top balk", "borders": "Randen", "buttons": "Knoppen", "inputs": "Invoervelden", - "faint_text": "Vervaagde tekst" + "faint_text": "Vervaagde tekst", + "tabs": "Tabbladen", + "toggled": "Geschakeld", + "disabled": "Uitgeschakeld", + "selectedMenu": "Geselecteerd menu item", + "selectedPost": "Geselecteerd bericht", + "pressed": "Ingedrukt", + "highlight": "Gemarkeerde elementen", + "icons": "Iconen", + "poll": "Poll grafiek", + "underlay": "Onderlaag", + "popover": "Tooltips, menu's, popovers", + "post": "Berichten / Gebruiker bios", + "alert_neutral": "Neutraal", + "alert_warning": "Waarschuwing" }, "radii": { "_tab_label": "Rondheid" }, "shadows": { "_tab_label": "Schaduw en belichting", - "component": "Component", + "component": "Onderdeel", "override": "Overschrijven", "shadow_id": "Schaduw #{value}", "blur": "Vervagen", - "spread": "Spreid", + "spread": "Spreiding", "inset": "Inzet", "hint": "Voor schaduw kan je ook --variable gebruiken als een kleur waarde om CSS3 variabelen te gebruiken. Houd er rekening mee dat het instellen van opaciteit in dit geval niet werkt.", "filter_hint": { "always_drop_shadow": "Waarschuwing, deze schaduw gebruikt altijd {0} als de browser dit ondersteund.", "drop_shadow_syntax": "{0} ondersteund niet de {1} parameter en {2} sleutelwoord.", - "avatar_inset": "Houd er rekening mee dat het combineren van zowel inzet and niet-inzet schaduwen op transparante avatars onverwachte resultaten kan opleveren.", + "avatar_inset": "Houdt er rekening mee dat het combineren van zowel inzet and niet-inzet schaduwen op transparante avatars onverwachte resultaten kan opleveren.", "spread_zero": "Schaduw met spreiding > 0 worden weergegeven alsof ze op nul staan", "inset_classic": "Inzet schaduw zal {0} gebruiken" }, "components": { "panel": "Paneel", - "panelHeader": "Paneel hoofding", - "topBar": "Top bar", - "avatar": "Gebruiker avatar (in profiel weergave)", - "avatarStatus": "Gebruiker avatar (in post weergave)", - "popup": "Popups en gereedschapstips", + "panelHeader": "Paneel koptekst", + "topBar": "Top balk", + "avatar": "Gebruikers avatar (in profiel weergave)", + "avatarStatus": "Gebruikers avatar (in bericht weergave)", + "popup": "Popups en tooltips", "button": "Knop", "buttonHover": "Knop (zweven)", "buttonPressed": "Knop (ingedrukt)", "buttonPressedHover": "Knop (ingedrukt+zweven)", "input": "Invoerveld" - } + }, + "hintV3": "Voor schaduwen kun je ook de {0} notatie gebruiken om de andere kleur invoer te gebruiken." }, "fonts": { "_tab_label": "Lettertypes", - "help": "Selecteer het lettertype om te gebruiken voor elementen van de UI.Voor \"aangepast\" moet je de exacte naam van het lettertype invoeren zoals die in het systeem wordt weergegeven.", + "help": "Selecteer het lettertype om te gebruiken voor elementen van de UI. Voor \"aangepast\" dien je de exacte naam van het lettertype in te voeren zoals die in het systeem wordt weergegeven.", "components": { "interface": "Interface", "input": "Invoervelden", - "post": "Post tekst", - "postCode": "Monospaced tekst in een post (rich text)" + "post": "Bericht tekst", + "postCode": "Monospaced tekst in een bericht (rich text)" }, - "family": "Naam lettertype", + "family": "Lettertype naam", "size": "Grootte (in px)", - "weight": "Gewicht (vetheid)", + "weight": "Gewicht (dikgedruktheid)", "custom": "Aangepast" }, "preview": { @@ -355,12 +377,12 @@ "button": "Knop", "text": "Nog een boel andere {0} en {1}", "mono": "inhoud", - "input": "Tijd voor een pauze!", + "input": "Zojuist geland in L.A.", "faint_link": "handige gebruikershandleiding", "fine_print": "Lees onze {0} om niets nuttig te leren!", "header_faint": "Alles komt goed", - "checkbox": "Ik heb de gebruikersvoorwaarden eens van ver bekeken", - "link": "een link" + "checkbox": "Ik heb de gebruikersvoorwaarden gelezen", + "link": "een leuke kleine link" } }, "notification_setting_follows": "Gebruikers die je volgt", @@ -443,24 +465,31 @@ "show_moderator_badge": "Moderators badge tonen in mijn profiel", "notification_setting_filters": "Filters", "notification_setting_non_followers": "Gebruikers die je niet volgen", - "notification_blocks": "Door een gebruiker te blokkeren, ontvang je geen meldingen meer van de gebruiker en wordt je abonnement op de gebruiker opgeheven." + "notification_blocks": "Door een gebruiker te blokkeren, ontvang je geen meldingen meer van de gebruiker en wordt je abonnement op de gebruiker opgeheven.", + "version": { + "frontend_version": "Frontend Versie", + "backend_version": "Backend Versie", + "title": "Versie" + } }, "timeline": { "collapse": "Inklappen", "conversation": "Conversatie", "error_fetching": "Fout bij ophalen van updates", - "load_older": "Laad oudere Statussen", - "no_retweet_hint": "Post is gemarkeerd als enkel volgers of direct en kan niet worden herhaald", + "load_older": "Oudere statussen laden", + "no_retweet_hint": "Bericht is gemarkeerd als enkel volgers of direct en kan niet worden herhaald", "repeated": "herhaalde", - "show_new": "Toon nieuwe", - "up_to_date": "Up-to-date" + "show_new": "Nieuwe tonen", + "up_to_date": "Up-to-date", + "no_statuses": "Geen statussen", + "no_more_statuses": "Geen statussen meer" }, "user_card": { "approve": "Goedkeuren", "block": "Blokkeren", "blocked": "Geblokkeerd!", - "deny": "Ontzeggen", - "favorites": "Vind-ik-leuks", + "deny": "Weigeren", + "favorites": "Favorieten", "follow": "Volgen", "follow_sent": "Aanvraag verzonden!", "follow_progress": "Aanvragen…", @@ -471,31 +500,69 @@ "following": "Aan het volgen!", "follows_you": "Volgt jou!", "its_you": "'t is jij!", - "mute": "Dempen", - "muted": "Gedempt", + "mute": "Negeren", + "muted": "Genegeerd", "per_day": "per dag", "remote_follow": "Volg vanop afstand", - "statuses": "Statussen" + "statuses": "Statussen", + "admin_menu": { + "delete_user_confirmation": "Weet je het heel zeker? Deze uitvoering kan niet ongedaan worden gemaakt.", + "delete_user": "Gebruiker verwijderen", + "quarantine": "Federeren van gebruikers berichten verbieden", + "disable_any_subscription": "Volgen van gebruiker in zijn geheel verbieden", + "disable_remote_subscription": "Volgen van gebruiker vanaf andere instanties verbieden", + "sandbox": "Berichten forceren om alleen voor volgers zichtbaar te zijn", + "force_unlisted": "Berichten forceren om niet publiekelijk getoond te worden", + "strip_media": "Media van berichten verwijderen", + "force_nsfw": "Alle berichten als gevoelig markeren", + "delete_account": "Account verwijderen", + "deactivate_account": "Account deactiveren", + "activate_account": "Account activeren", + "revoke_moderator": "Moderatorsrechten intrekken", + "grant_moderator": "Moderatorsrechten toekennen", + "revoke_admin": "Beheerdersrechten intrekken", + "grant_admin": "Beheerdersrechten toekennen", + "moderation": "Moderatie" + }, + "show_repeats": "Herhalingen tonen", + "hide_repeats": "Herhalingen verbergen", + "mute_progress": "Negeren...", + "unmute_progress": "Negering opheffen...", + "unmute": "Negering opheffen", + "block_progress": "Blokkeren...", + "unblock_progress": "Blokkade opheffen...", + "unblock": "Blokkade opheffen", + "unsubscribe": "Abonnement opzeggen", + "subscribe": "Abonneren", + "report": "Aangeven", + "mention": "Vermelding", + "media": "Media", + "hidden": "Verborgen" }, "user_profile": { - "timeline_title": "Gebruikers Tijdlijn" + "timeline_title": "Gebruikers Tijdlijn", + "profile_loading_error": "Sorry, er is een fout opgetreden bij het laden van dit profiel.", + "profile_does_not_exist": "Sorry, dit profiel bestaat niet." }, "who_to_follow": { "more": "Meer", "who_to_follow": "Wie te volgen" }, "tool_tip": { - "media_upload": "Upload Media", - "repeat": "Herhaal", - "reply": "Antwoord", - "favorite": "Vind-ik-leuk", - "user_settings": "Gebruikers Instellingen" + "media_upload": "Media Uploaden", + "repeat": "Herhalen", + "reply": "Beantwoorden", + "favorite": "Favoriet maken", + "user_settings": "Gebruikers Instellingen", + "reject_follow_request": "Volg-verzoek afwijzen", + "accept_follow_request": "Volg-aanvraag accepteren", + "add_reaction": "Reactie toevoegen" }, "upload": { "error": { - "base": "Upload gefaald.", + "base": "Upload mislukt.", "file_too_big": "Bestand is te groot [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "Probeer later opnieuw" + "default": "Probeer het later opnieuw" }, "file_size_units": { "B": "B", @@ -512,7 +579,8 @@ "reject": "Afwijzen", "replace": "Vervangen", "is_replaced_by": "→", - "keyword_policies": "Zoekwoord Beleid" + "keyword_policies": "Zoekwoord Beleid", + "ftl_removal": "Verwijdering van \"Het Geheel Bekende Netwerk\" Tijdlijn" }, "mrf_policies_desc": "MRF regels beïnvloeden het federatie gedrag van de instantie. De volgende regels zijn ingeschakeld:", "mrf_policies": "Ingeschakelde MRF Regels", @@ -524,20 +592,21 @@ "reject_desc": "Deze instantie zal geen berichten accepteren van de volgende instanties:", "quarantine": "Quarantaine", "quarantine_desc": "Deze instantie zal alleen publieke berichten sturen naar de volgende instanties:", - "ftl_removal_desc": "Deze instantie verwijdert de volgende instanties van \"Het Geheel Gekende Netwerk\" tijdlijn:", + "ftl_removal_desc": "Deze instantie verwijdert de volgende instanties van \"Het Geheel Bekende Netwerk\" tijdlijn:", "media_removal_desc": "Deze instantie verwijdert media van berichten van de volgende instanties:", "media_nsfw_desc": "Deze instantie stelt media in als gevoelig in berichten van de volgende instanties:", "ftl_removal": "Verwijderen van \"Het Geheel Bekende Netwerk\" Tijdlijn", - "media_removal": "Media Verwijdering" + "media_removal": "Media Verwijdering", + "media_nsfw": "Forceer Media als Gevoelig" } }, "staff": "Personeel" }, "domain_mute_card": { - "mute": "Dempen", - "mute_progress": "Dempen...", - "unmute": "Dempen opheffen", - "unmute_progress": "Dempen wordt opgeheven..." + "mute": "Negeren", + "mute_progress": "Negeren...", + "unmute": "Negering opheffen", + "unmute_progress": "Negering wordt opgeheven..." }, "exporter": { "export": "Exporteren", @@ -564,7 +633,7 @@ "option": "Optie", "votes": "stemmen", "vote": "Stem", - "single_choice": "Enkelkeuze", + "single_choice": "Enkele keuze", "multiple_choices": "Meerkeuze", "expiry": "Poll leeftijd", "expires_in": "Poll eindigt in {0}", @@ -574,26 +643,105 @@ }, "emoji": { "emoji": "Emoji", - "keep_open": "Houdt picker open", + "keep_open": "Picker openhouden", "search_emoji": "Zoek voor een emoji", "add_emoji": "Emoji invoegen", "unicode": "Unicode emoji", "load_all": "Alle {emojiAmount} emoji worden geladen", "stickers": "Stickers", - "load_all_hint": "Eerste {saneAmount} emoji geladen, alle emoji tegelijk laden kan prestatie problemen veroorzaken.", + "load_all_hint": "Eerste {saneAmount} emoji geladen, alle emoji tegelijk laden kan problemen veroorzaken met prestaties.", "custom": "Gepersonaliseerde emoji" }, "interactions": { "favs_repeats": "Herhalingen en Favorieten", - "follows": "Nieuwe volgers", + "follows": "Nieuwe volgingen", "moves": "Gebruiker migreert", "load_older": "Oudere interacties laden" }, "remote_user_resolver": { "searching_for": "Zoeken naar", - "error": "Niet gevonden." + "error": "Niet gevonden.", + "remote_user_resolver": "Externe gebruikers zoeker" }, "selectable_list": { "select_all": "Alles selecteren" + }, + "password_reset": { + "password_reset_required_but_mailer_is_disabled": "Je dient je wachtwoord opnieuw in te stellen, maar wachtwoord reset is uitgeschakeld. Neem contact op met de beheerder van deze instantie.", + "password_reset_required": "Je dient je wachtwoord opnieuw in te stellen om in te kunnen loggen.", + "password_reset_disabled": "Wachtwoord reset is uitgeschakeld. Neem contact op met de beheerder van deze instantie.", + "too_many_requests": "Je hebt het maximaal aantal pogingen bereikt, probeer het later opnieuw.", + "not_found": "We kunnen die email of gebruikersnaam niet vinden.", + "return_home": "Terugkeren naar de home pagina", + "check_email": "Controleer je email inbox voor een link om je wachtwoord opnieuw in te stellen.", + "placeholder": "Je email of gebruikersnaam", + "instruction": "Voer je email adres of gebruikersnaam in. We sturen je een link om je wachtwoord opnieuw in te stellen.", + "password_reset": "Wachtwoord opnieuw instellen", + "forgot_password": "Wachtwoord vergeten?" + }, + "search": { + "no_results": "Geen resultaten", + "people_talking": "{count} personen aan het praten", + "person_talking": "{count} persoon aan het praten", + "hashtags": "Hashtags", + "people": "Personen" + }, + "user_reporting": { + "generic_error": "Er is een fout opgetreden tijdens het verwerken van je verzoek.", + "submit": "Verzenden", + "forward_to": "Doorsturen naar {0}", + "forward_description": "Dit account hoort bij een andere server. Wil je een kopie van het rapport ook daarheen sturen?", + "additional_comments": "Aanvullende opmerkingen", + "add_comment_description": "Het rapport zal naar de moderators van de instantie worden verstuurd. Je kunt hieronder uitleg bijvoegen waarom je dit account wilt aangeven:", + "title": "{0} aangeven" + }, + "status": { + "copy_link": "Link naar status kopiëren", + "status_unavailable": "Status niet beschikbaar", + "unmute_conversation": "Conversatie niet meer negeren", + "mute_conversation": "Conversatie negeren", + "replies_list": "Antwoorden:", + "reply_to": "Antwoorden aan", + "delete_confirm": "Wil je echt deze status verwijderen?", + "pin": "Aan profiel vastmaken", + "pinned": "Vastgezet", + "unpin": "Van profiel losmaken", + "delete": "Status verwijderen", + "repeats": "Herhalingen", + "favorites": "Favorieten" + }, + "time": { + "years_short": "{0}j", + "year_short": "{0}j", + "years": "{0} jaren", + "year": "{0} jaar", + "weeks_short": "{0}w", + "week_short": "{0}w", + "weeks": "{0} weken", + "week": "{0} week", + "seconds_short": "{0}s", + "second_short": "{0}s", + "seconds": "{0} seconden", + "second": "{0} seconde", + "now_short": "nu", + "now": "zojuist", + "months_short": "{0}ma", + "month_short": "{0}ma", + "months": "{0} maanden", + "month": "{0} maand", + "minutes_short": "{0}min", + "minute_short": "{0}min", + "minutes": "{0} minuten", + "minute": "{0} minuut", + "in_past": "{0} geleden", + "in_future": "over {0}", + "hours_short": "{0}u", + "hour_short": "{0}u", + "hours": "{0} uren", + "hour": "{0} uur", + "days_short": "{0}d", + "day_short": "{0}d", + "days": "{0} dagen", + "day": "{0} dag" } } From 0a2aeb5d1a7ce0bf13cc09e57a2a5a877216ace2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Tomaszewski?= <jederow@hotmail.com> Date: Sat, 16 May 2020 13:49:12 +0000 Subject: [PATCH 92/95] Translated using Weblate (Polish) Currently translated at 100.0% (613 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/pl/ --- src/i18n/pl.json | 64 ++++++++++++++++++++++++------------------------ 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/src/i18n/pl.json b/src/i18n/pl.json index 89f2fdc2..101e5d39 100644 --- a/src/i18n/pl.json +++ b/src/i18n/pl.json @@ -27,7 +27,7 @@ "media_nsfw_desc": "Ta instancja wymusza, by multimedia z wymienionych instancji były ustawione jako wrażliwe:" } }, - "staff": "Obsługa" + "staff": "Administracja" }, "chat": { "title": "Czat" @@ -40,7 +40,7 @@ }, "exporter": { "export": "Eksportuj", - "processing": "Przetwarzam, za chwilę zostaniesz zapytany o ściągnięcie pliku" + "processing": "Przetwarzam, za chwilę zostaniesz zapytany(-na) o ściągnięcie pliku" }, "features_panel": { "chat": "Czat", @@ -131,7 +131,7 @@ "no_more_notifications": "Nie masz więcej powiadomień", "migrated_to": "wyemigrował do", "reacted_with": "zareagował z {0}", - "follow_request": "chce cię obserwować" + "follow_request": "chce ciebie obserwować" }, "polls": { "add_poll": "Dodaj ankietę", @@ -143,7 +143,7 @@ "single_choice": "jednokrotnego wyboru", "multiple_choices": "wielokrotnego wyboru", "expiry": "Czas trwania ankiety", - "expires_in": "Ankieta kończy się za{0}", + "expires_in": "Ankieta kończy się za {0}", "expired": "Ankieta skończyła się {0} temu", "not_enough_options": "Zbyt mało unikalnych opcji w ankiecie" }, @@ -232,10 +232,10 @@ "confirm_and_enable": "Potwierdź i włącz OTP", "title": "Weryfikacja dwuetapowa", "generate_new_recovery_codes": "Wygeneruj nowe kody zapasowe", - "warning_of_generate_new_codes": "Po tym gdy generujesz nowe kody zapasowe, stare przestaną działać.", + "warning_of_generate_new_codes": "Po tym gdy wygenerujesz nowe kody zapasowe, stare przestaną działać.", "recovery_codes": "Kody zapasowe.", "waiting_a_recovery_codes": "Otrzymuję kody zapasowe...", - "recovery_codes_warning": "Spisz kody na kartce papieru, albo zapisz je w bezpiecznym miejscu - inaczej nie zobaczysz ich już nigdy. Jeśli stracisz dostęp do twojej aplikacji 2FA i kodów zapasowych, nie będziesz miał dostępu do swojego konta.", + "recovery_codes_warning": "Spisz kody na kartce papieru, albo zapisz je w bezpiecznym miejscu - inaczej nie zobaczysz ich już nigdy. Jeśli stracisz dostęp do twojej aplikacji 2FA i kodów zapasowych, nie będziesz miał(-a) dostępu do swojego konta.", "authentication_methods": "Metody weryfikacji", "scan": { "title": "Skanuj", @@ -281,7 +281,7 @@ "data_import_export_tab": "Import/eksport danych", "default_vis": "Domyślny zakres widoczności", "delete_account": "Usuń konto", - "delete_account_description": "Trwale usuń konto i wszystkie posty.", + "delete_account_description": "Trwale usuń dane i zdezaktywuj konto.", "delete_account_error": "Wystąpił problem z usuwaniem twojego konta. Jeżeli problem powtarza się, poinformuj administratora swojej instancji.", "delete_account_instructions": "Wprowadź swoje hasło w poniższe pole aby potwierdzić usunięcie konta.", "discoverable": "Zezwól na odkrywanie tego konta w wynikach wyszukiwania i innych usługach", @@ -315,14 +315,14 @@ "import_theme": "Załaduj motyw", "inputRadius": "Pola tekstowe", "checkboxRadius": "Pola wyboru", - "instance_default": "(domyślny: {value})", - "instance_default_simple": "(domyślny)", + "instance_default": "(domyślnie: {value})", + "instance_default_simple": "(domyślne)", "interface": "Interfejs", "interfaceLanguage": "Język interfejsu", "invalid_theme_imported": "Wybrany plik nie jest obsługiwanym motywem Pleromy. Nie dokonano zmian w twoim motywie.", "limited_availability": "Niedostępne w twojej przeglądarce", "links": "Łącza", - "lock_account_description": "Ogranicz swoje konto dla zatwierdzonych obserwowanych", + "lock_account_description": "Spraw, by konto mogli wyświetlać tylko zatwierdzeni obserwujący", "loop_video": "Zapętlaj filmy", "loop_video_silent_only": "Zapętlaj tylko filmy bez dźwięku (np. mastodonowe „gify”)", "mutes_tab": "Wyciszenia", @@ -420,7 +420,7 @@ "keep_opacity": "Zachowaj widoczność", "keep_roundness": "Zachowaj zaokrąglenie", "keep_fonts": "Zachowaj czcionki", - "save_load_hint": "Opcje „zachowaj” pozwalają na pozostanie przy obecnych opcjach po wybraniu lub załadowaniu motywu, jak i przechowywanie ich podczas eksportowania motywu. Jeżeli wszystkie są odznaczone, eksportowanie motywu spowoduje zapisanie wszystkiego.", + "save_load_hint": "Opcje „zachowaj” pozwalają na pozostanie przy obecnych opcjach po wybraniu lub załadowaniu motywu, jak i przechowywanie ich podczas eksportowania motywu. Jeżeli wszystkie opcje są odznaczone, eksportowanie motywu spowoduje zapisanie wszystkiego.", "reset": "Wyzeruj", "clear_all": "Wyczyść wszystko", "clear_opacity": "Wyczyść widoczność", @@ -429,17 +429,17 @@ "use_snapshot": "Stara wersja", "use_source": "Nowa wersja", "help": { - "upgraded_from_v2": "PleromaFE zostało zaaktualizowane, motyw może wyglądać nieco inaczej niż sobie zapamiętałeś.", - "v2_imported": "Plik który zaimportowałeś został stworzony dla starszego FE. Próbujemy zwiększyć kompatybiliność, lecz wciąż mogą występować rozbieżności.", - "future_version_imported": "Plik który zaimportowałeś został stworzony w nowszej wersji FE.", - "older_version_imported": "Plik który zaimportowałeś został stworzony w starszej wersji FE.", + "upgraded_from_v2": "PleromaFE zostało zaaktualizowane, motyw może wyglądać nieco inaczej niż zapamiętałeś(-aś).", + "v2_imported": "Plik który zaimportowałeś(-aś) został stworzony dla starszego FE. Próbujemy zwiększyć kompatybilność, lecz wciąż mogą występować rozbieżności.", + "future_version_imported": "Plik który zaimportowałeś(-aś) został stworzony w nowszej wersji FE.", + "older_version_imported": "Plik który zaimportowałeś(-aś) został stworzony w starszej wersji FE.", "snapshot_present": "Migawka motywu jest załadowana, więc wszystkie wartości zostały nadpisane. Zamiast tego możesz załadować właściwe dane motywu.", "snapshot_missing": "Nie znaleziono migawki motywu w pliku, więc motyw może wyglądać inaczej niż pierwotnie zaplanowano.", "fe_upgraded": "Silnik motywów PleromaFE został zaaktualizowany.", "fe_downgraded": "Wersja PleromaFE została cofnięta.", "migration_snapshot_ok": "Żeby być bezpiecznym, migawka motywu została załadowana. Możesz spróbować załadować dane motywu.", - "migration_napshot_gone": "Z jakiegoś powodu migawka zniknęła, niektóre rzeczy mogą wyglądać inaczej niż sobie zapamiętałeś.", - "snapshot_source_mismatch": "Konflikt wersji: najprawdopodobniej FE zostało cofnięte do poprzedniej wersji i zaaktualizowane ponownie, jeśli zmieniłeś motyw używając starszej wersji FE, najprawdopodobniej chcesz używać starszej wersji, w przeciwnym razie użyj nowej wersji." + "migration_napshot_gone": "Z jakiegoś powodu migawka zniknęła, niektóre rzeczy mogą wyglądać inaczej niż zapamiętałeś(-aś).", + "snapshot_source_mismatch": "Konflikt wersji: najprawdopodobniej FE zostało cofnięte do poprzedniej wersji i zaktualizowane ponownie, jeśli zmieniłeś(-aś) motyw używając starszej wersji FE, najprawdopodobniej chcesz używać starszej wersji, w przeciwnym razie użyj nowej wersji." } }, "common": { @@ -506,7 +506,7 @@ "filter_hint": { "always_drop_shadow": "Ostrzeżenie, ten cień zawsze używa {0} jeżeli to obsługiwane przez przeglądarkę.", "drop_shadow_syntax": "{0} nie obsługuje parametru {1} i słowa kluczowego {2}.", - "avatar_inset": "Pamiętaj że użycie jednocześnie cieni inset i nie inset na awatarach może daćnieoczekiwane wyniki z przezroczystymi awatarami.", + "avatar_inset": "Pamiętaj że użycie jednocześnie cieni inset i nie inset na awatarach może dać nieoczekiwane wyniki z przezroczystymi awatarami.", "spread_zero": "Cienie o ujemnej szerokości będą widoczne tak, jakby wynosiła ona zero", "inset_classic": "Cienie inset będą używały {0}" }, @@ -549,7 +549,7 @@ "faint_link": "pomocny podręcznik", "fine_print": "Przeczytaj nasz {0}, aby nie nauczyć się niczego przydatnego!", "header_faint": "W porządku", - "checkbox": "Przeleciałem przez zasady użytkowania", + "checkbox": "Przeleciałem(-am) przez zasady użytkowania", "link": "i fajny mały odnośnik" } }, @@ -565,8 +565,8 @@ "time": { "day": "{0} dzień", "days": "{0} dni", - "day_short": "{0}d", - "days_short": "{0}d", + "day_short": "{0} d", + "days_short": "{0} d", "hour": "{0} godzina", "hours": "{0} godzin", "hour_short": "{0} godz.", @@ -575,8 +575,8 @@ "in_past": "{0} temu", "minute": "{0} minuta", "minutes": "{0} minut", - "minute_short": "{0}min", - "minutes_short": "{0}min", + "minute_short": "{0} min", + "minutes_short": "{0} min", "month": "{0} miesiąc", "months": "{0} miesięcy", "month_short": "{0} mies.", @@ -585,8 +585,8 @@ "now_short": "teraz", "second": "{0} sekunda", "seconds": "{0} sekund", - "second_short": "{0}s", - "seconds_short": "{0}s", + "second_short": "{0} s", + "seconds_short": "{0} s", "week": "{0} tydzień", "weeks": "{0} tygodni", "week_short": "{0} tydz.", @@ -646,7 +646,7 @@ "muted": "Wyciszony(-a)", "per_day": "dziennie", "remote_follow": "Zdalna obserwacja", - "report": "Raportuj", + "report": "Zgłoś", "statuses": "Statusy", "subscribe": "Subskrybuj", "unsubscribe": "Odsubskrybuj", @@ -675,7 +675,7 @@ "disable_any_subscription": "Zakaż całkowicie obserwowania użytkownika", "quarantine": "Zakaż federowania postów od tego użytkownika", "delete_user": "Usuń użytkownika", - "delete_user_confirmation": "Czy jesteś absolutnie pewny? Ta operacja nie może być cofnięta." + "delete_user_confirmation": "Czy jesteś absolutnie pewny(-a)? Ta operacja nie może być cofnięta." } }, "user_profile": { @@ -685,10 +685,10 @@ }, "user_reporting": { "title": "Raportowanie {0}", - "add_comment_description": "Raport zostanie wysłany do moderatorów instancji. Możesz dodać powód dlaczego raportujesz to konto poniżej:", + "add_comment_description": "Zgłoszenie zostanie wysłane do moderatorów instancji. Możesz dodać powód dlaczego zgłaszasz owe konto poniżej:", "additional_comments": "Dodatkowe komentarze", - "forward_description": "To konto jest z innego serwera. Wysłać również tam kopię raportu?", - "forward_to": "Przekaż do{0}", + "forward_description": "To konto jest z innego serwera. Wysłać również tam kopię zgłoszenia?", + "forward_to": "Przekaż do {0}", "submit": "Wyślij", "generic_error": "Wystąpił błąd podczas przetwarzania twojej prośby." }, @@ -728,14 +728,14 @@ "no_results": "Brak wyników" }, "password_reset": { - "forgot_password": "Zapomniałeś hasła?", + "forgot_password": "Zapomniałeś(-aś) hasła?", "password_reset": "Reset hasła", "instruction": "Wprowadź swój adres email lub nazwę użytkownika. Wyślemy ci link z którym możesz zresetować hasło.", "placeholder": "Twój email lub nazwa użytkownika", "check_email": "Sprawdź pocztę, aby uzyskać link do zresetowania hasła.", "return_home": "Wróć do strony głównej", "not_found": "Nie mogliśmy znaleźć tego emaila lub nazwy użytkownika.", - "too_many_requests": "Przekroczyłeś limit prób, spróbuj ponownie później.", + "too_many_requests": "Przekroczyłeś(-aś) limit prób, spróbuj ponownie później.", "password_reset_disabled": "Resetowanie hasła jest wyłączone. Proszę skontaktuj się z administratorem tej instancji.", "password_reset_required": "Musisz zresetować hasło, by się zalogować.", "password_reset_required_but_mailer_is_disabled": "Musisz zresetować hasło, ale resetowanie hasła jest wyłączone. Proszę skontaktuj się z administratorem tej instancji." From 866fe78bbaa4285f2ee96ea500c33a0f5d9ecfdd Mon Sep 17 00:00:00 2001 From: rinpatch <rinpatch@sdf.org> Date: Sat, 16 May 2020 11:22:34 +0000 Subject: [PATCH 93/95] Translated using Weblate (Russian) Currently translated at 61.1% (375 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/ru/ --- src/i18n/ru.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/i18n/ru.json b/src/i18n/ru.json index 3c52416c..357d97a8 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -16,7 +16,9 @@ "verify": "Проверить", "more": "Больше", "generic_error": "Произошла ошибка", - "optional": "не обязательно" + "optional": "не обязательно", + "show_less": "Показать меньше", + "show_more": "Показать больше" }, "login": { "login": "Войти", From e300f08e09b2f1cb444d2127fb2d06d904f39d15 Mon Sep 17 00:00:00 2001 From: Master Sparker <starmancer@protonmail.com> Date: Fri, 15 May 2020 13:46:01 +0000 Subject: [PATCH 94/95] Translated using Weblate (Chinese (Simplified)) Currently translated at 92.0% (564 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/zh_Hans/ --- src/i18n/zh.json | 1295 ++++++++++++++++++++++++---------------------- 1 file changed, 685 insertions(+), 610 deletions(-) diff --git a/src/i18n/zh.json b/src/i18n/zh.json index 8d9462ab..095db754 100644 --- a/src/i18n/zh.json +++ b/src/i18n/zh.json @@ -1,623 +1,698 @@ { - "chat": { - "title": "聊天" - }, - "exporter": { - "export": "导出", - "processing": "正在处理,稍后会提示您下载文件" - }, - "features_panel": { - "chat": "聊天", - "gopher": "Gopher", - "media_proxy": "媒体代理", - "scope_options": "可见范围设置", - "text_limit": "文本长度限制", - "title": "功能", - "who_to_follow": "推荐关注" - }, - "finder": { - "error_fetching_user": "获取用户时发生错误", - "find_user": "寻找用户" - }, - "general": { - "apply": "应用", - "submit": "提交", - "more": "更多", - "generic_error": "发生一个错误", - "optional": "可选项", - "show_more": "显示更多", - "show_less": "显示更少", - "cancel": "取消", - "disable": "禁用", - "enable": "启用", - "confirm": "确认", - "verify": "验证" - }, - "image_cropper": { - "crop_picture": "裁剪图片", - "save": "保存", - "save_without_cropping": "保存未经裁剪的图片", - "cancel": "取消" - }, - "importer": { - "submit": "提交", - "success": "导入成功。", - "error": "导入此文件时出现一个错误。" - }, - "login": { - "login": "登录", - "description": "用 OAuth 登录", - "logout": "登出", - "password": "密码", - "placeholder": "例如:lain", - "register": "注册", - "username": "用户名", - "hint": "登录后加入讨论", - "authentication_code": "验证码", - "enter_recovery_code": "输入一个恢复码", - "enter_two_factor_code": "输入一个双重因素验证码", - "recovery_code": "恢复码", - "heading" : { - "totp" : "双重因素验证", - "recovery" : "双重因素恢复" - } - }, - "media_modal": { - "previous": "往前", - "next": "往后" - }, - "nav": { - "about": "关于", - "back": "Back", - "chat": "本地聊天", - "friend_requests": "关注请求", - "mentions": "提及", - "interactions": "互动", - "dms": "私信", - "public_tl": "公共时间线", - "timeline": "时间线", - "twkn": "所有已知网络", - "user_search": "用户搜索", - "search": "搜索", - "who_to_follow": "推荐关注", - "preferences": "偏好设置" - }, - "notifications": { - "broken_favorite": "未知的状态,正在搜索中...", - "favorited_you": "收藏了你的状态", - "followed_you": "关注了你", - "load_older": "加载更早的通知", - "notifications": "通知", - "read": "阅读!", - "repeated_you": "转发了你的状态", - "no_more_notifications": "没有更多的通知" - }, - "polls": { - "add_poll": "增加问卷调查", - "add_option": "增加选项", - "option": "选项", - "votes": "投票", - "vote": "投票", - "type": "问卷类型", - "single_choice": "单选项", - "multiple_choices": "多选项", - "expiry": "问卷的时间", - "expires_in": "投票于 {0} 内结束", - "expired": "投票 {0} 前已结束", - "not_enough_options": "投票的选项太少" - }, - "stickers": { - "add_sticker": "添加贴纸" - }, - "interactions": { - "favs_repeats": "转发和收藏", - "follows": "新的关注者", - "load_older": "加载更早的互动" - }, - "post_status": { - "new_status": "发布新状态", - "account_not_locked_warning": "你的帐号没有 {0}。任何人都可以关注你并浏览你的上锁内容。", - "account_not_locked_warning_link": "上锁", - "attachments_sensitive": "标记附件为敏感内容", - "content_type": { - "text/plain": "纯文本", - "text/html": "HTML", - "text/markdown": "Markdown", - "text/bbcode": "BBCode" + "chat": { + "title": "聊天" }, - "content_warning": "主题(可选)", - "default": "刚刚抵达上海", - "direct_warning_to_all": "本条内容只有被提及的用户能够看到。", - "direct_warning_to_first_only": "本条内容只有被在消息开始处提及的用户能够看到。", - "posting": "发送", - "scope_notice": { - "public": "本条内容可以被所有人看到", - "private": "关注你的人才能看到本条内容", - "unlisted": "本条内容既不在公共时间线,也不会在所有已知网络上可见" + "exporter": { + "export": "导出", + "processing": "正在处理,稍后会提示您下载文件" }, - "scope": { - "direct": "私信 - 只发送给被提及的用户", - "private": "仅关注者 - 只有关注了你的人能看到", - "public": "公共 - 发送到公共时间轴", - "unlisted": "不公开 - 不会发送到公共时间轴" - } - }, - "registration": { - "bio": "简介", - "email": "电子邮箱", - "fullname": "全名", - "password_confirm": "确认密码", - "registration": "注册", - "token": "邀请码", - "captcha": "CAPTCHA", - "new_captcha": "点击图片获取新的验证码", - "username_placeholder": "例如: lain", - "fullname_placeholder": "例如: Lain Iwakura", - "bio_placeholder": "例如:\n你好, 我是 Lain.\n我是一个住在上海的宅男。你可能在某处见过我。", - "validations": { - "username_required": "不能留空", - "fullname_required": "不能留空", - "email_required": "不能留空", - "password_required": "不能留空", - "password_confirmation_required": "不能留空", - "password_confirmation_match": "密码不一致" - } - }, - "selectable_list": { - "select_all": "选择全部" - }, - "settings": { - "app_name": "App 名称", - "security": "安全", - "enter_current_password_to_confirm": "输入你当前密码来确认你的身份", - "mfa": { - "otp" : "OTP", - "setup_otp" : "设置 OTP", - "wait_pre_setup_otp" : "预设 OTP", - "confirm_and_enable" : "确认并启用 OTP", - "title": "双因素验证", - "generate_new_recovery_codes" : "生成新的恢复码", - "warning_of_generate_new_codes" : "当你生成新的恢复码时,你的就恢复码就失效了。", - "recovery_codes" : "恢复码。", - "waiting_a_recovery_codes": "接受备份码。。。", - "recovery_codes_warning" : "抄写这些号码,或者保存在安全的地方。这些号码不会再次显示。如果你无法访问你的 2FA app,也丢失了你的恢复码,你的账号就再也无法登录了。", - "authentication_methods" : "身份验证方法", - "scan": { - "title": "扫一下", - "desc": "使用你的双因素验证 app,扫描这个二维码,或者输入这些文字密钥:", - "secret_code": "密钥" - }, - "verify": { - "desc": "要启用双因素验证,请把你的双因素验证 app 里的数字输入:" - } + "features_panel": { + "chat": "聊天", + "gopher": "Gopher", + "media_proxy": "媒体代理", + "scope_options": "可见范围设置", + "text_limit": "文本长度限制", + "title": "功能", + "who_to_follow": "推荐关注" }, - "attachmentRadius": "附件", - "attachments": "附件", - "autoload": "启用滚动到底部时的自动加载", - "avatar": "头像", - "avatarAltRadius": "头像(通知)", - "avatarRadius": "头像", - "background": "背景", - "bio": "简介", - "block_export": "拉黑名单导出", - "block_export_button": "导出你的拉黑名单到一个 csv 文件", - "block_import": "拉黑名单导入", - "block_import_error": "导入拉黑名单出错", - "blocks_imported": "拉黑名单导入成功!需要一点时间来处理。", - "blocks_tab": "块", - "btnRadius": "按钮", - "cBlue": "蓝色(回复,关注)", - "cGreen": "绿色(转发)", - "cOrange": "橙色(收藏)", - "cRed": "红色(取消)", - "change_password": "修改密码", - "change_password_error": "修改密码的时候出了点问题。", - "changed_password": "成功修改了密码!", - "collapse_subject": "折叠带主题的内容", - "composing": "正在书写", - "confirm_new_password": "确认新密码", - "current_avatar": "当前头像", - "current_password": "当前密码", - "current_profile_banner": "您当前的横幅图片", - "data_import_export_tab": "数据导入/导出", - "default_vis": "默认可见范围", - "delete_account": "删除账户", - "delete_account_description": "永久删除你的帐号和所有消息。", - "delete_account_error": "删除账户时发生错误,如果一直删除不了,请联系实例管理员。", - "delete_account_instructions": "在下面输入你的密码来确认删除账户", - "avatar_size_instruction": "推荐的头像图片最小的尺寸是 150x150 像素。", - "export_theme": "导出预置主题", - "filtering": "过滤器", - "filtering_explanation": "所有包含以下词汇的内容都会被隐藏,一行一个", - "follow_export": "导出关注", - "follow_export_button": "将关注导出成 csv 文件", - "follow_import": "导入关注", - "follow_import_error": "导入关注时错误", - "follows_imported": "关注已导入!尚需要一些时间来处理。", - "foreground": "前景", - "general": "通用", - "hide_attachments_in_convo": "在对话中隐藏附件", - "hide_attachments_in_tl": "在时间线上隐藏附件", - "hide_muted_posts": "不显示被隐藏的用户的帖子", - "max_thumbnails": "最多再每个帖子所能显示的缩略图数量", - "hide_isp": "隐藏指定实例的面板H", - "preload_images": "预载图片", - "use_one_click_nsfw": "点击一次以打开工作场所不适宜的附件", - "hide_post_stats": "隐藏推文相关的统计数据(例如:收藏的次数)", - "hide_user_stats": "隐藏用户的统计数据(例如:关注者的数量)", - "hide_filtered_statuses": "隐藏过滤的状态", - "import_blocks_from_a_csv_file": "从 csv 文件中导入拉黑名单", - "import_followers_from_a_csv_file": "从 csv 文件中导入关注", - "import_theme": "导入预置主题", - "inputRadius": "输入框", - "checkboxRadius": "复选框", - "instance_default": "(默认:{value})", - "instance_default_simple": "(默认)", - "interface": "界面", - "interfaceLanguage": "界面语言", - "invalid_theme_imported": "您所选择的主题文件不被 Pleroma 支持,因此主题未被修改。", - "limited_availability": "在您的浏览器中无法使用", - "links": "链接", - "lock_account_description": "你需要手动审核关注请求", - "loop_video": "循环视频", - "loop_video_silent_only": "只循环没有声音的视频(例如:Mastodon 里的“GIF”)", - "mutes_tab": "隐藏", - "play_videos_in_modal": "在弹出框内播放视频", - "use_contain_fit": "生成缩略图时不要裁剪附件。", - "name": "名字", - "name_bio": "名字及简介", - "new_password": "新密码", - "notification_visibility": "要显示的通知类型", - "notification_visibility_follows": "关注", - "notification_visibility_likes": "点赞", - "notification_visibility_mentions": "提及", - "notification_visibility_repeats": "转发", - "no_rich_text_description": "不显示富文本格式", - "no_blocks": "没有拉黑的", - "no_mutes": "没有隐藏", - "hide_follows_description": "不要显示我所关注的人", - "hide_followers_description": "不要显示关注我的人", - "show_admin_badge": "显示管理徽章", - "show_moderator_badge": "显示版主徽章", - "nsfw_clickthrough": "将不和谐附件隐藏,点击才能打开", - "oauth_tokens": "OAuth令牌", - "token": "令牌", - "refresh_token": "刷新令牌", - "valid_until": "有效期至", - "revoke_token": "撤消", - "panelRadius": "面板", - "pause_on_unfocused": "在离开页面时暂停时间线推送", - "presets": "预置", - "profile_background": "个人资料背景图", - "profile_banner": "横幅图片", - "profile_tab": "个人资料", - "radii_help": "设置界面边缘的圆角 (单位:像素)", - "replies_in_timeline": "时间线中的回复", - "reply_link_preview": "启用鼠标悬停时预览回复链接", - "reply_visibility_all": "显示所有回复", - "reply_visibility_following": "只显示发送给我的回复/发送给我关注的用户的回复", - "reply_visibility_self": "只显示发送给我的回复", - "autohide_floating_post_button": "自动隐藏新帖子的按钮(移动设备)", - "saving_err": "保存设置时发生错误", - "saving_ok": "设置已保存", - "search_user_to_block": "搜索你想屏蔽的用户", - "search_user_to_mute": "搜索你想要隐藏的用户", - "security_tab": "安全", - "scope_copy": "回复时的复制范围(私信是总是复制的)", - "minimal_scopes_mode": "最小发文范围", - "set_new_avatar": "设置新头像", - "set_new_profile_background": "设置新的个人资料背景", - "set_new_profile_banner": "设置新的横幅图片", - "settings": "设置", - "subject_input_always_show": "总是显示主题框", - "subject_line_behavior": "回复时复制主题", - "subject_line_email": "比如电邮: \"re: 主题\"", - "subject_line_mastodon": "比如 mastodon: copy as is", - "subject_line_noop": "不要复制", - "post_status_content_type": "发文状态内容类型", - "stop_gifs": "鼠标悬停时播放GIF", - "streaming": "开启滚动到顶部时的自动推送", - "text": "文本", - "theme": "主题", - "theme_help": "使用十六进制代码(#rrggbb)来设置主题颜色。", - "theme_help_v2_1": "你也可以通过切换复选框来覆盖某些组件的颜色和透明。使用“清除所有”来清楚所有覆盖设置。", - "theme_help_v2_2": "某些条目下的图标是背景或文本对比指示器,鼠标悬停可以获取详细信息。请记住,使用透明度来显示最差的情况。", - "tooltipRadius": "提醒", - "upload_a_photo": "上传照片", - "user_settings": "用户设置", - "values": { - "false": "否", - "true": "是" + "finder": { + "error_fetching_user": "获取用户时发生错误", + "find_user": "寻找用户" }, - "notifications": "通知", - "notification_setting": "通知来源:", - "notification_setting_follows": "你所关注的用户", - "notification_setting_non_follows": "你没有关注的用户", - "notification_setting_followers": "关注你的用户", - "notification_setting_non_followers": "没有关注你的用户", - "notification_mutes": "要停止收到某个指定的用户的通知,请使用隐藏功能。", - "notification_blocks": "拉黑一个用户会停掉所有他的通知,等同于取消关注。", - "enable_web_push_notifications": "启用 web 推送通知", - "style": { - "switcher": { - "keep_color": "保留颜色", - "keep_shadows": "保留阴影", - "keep_opacity": "保留透明度", - "keep_roundness": "保留圆角", - "keep_fonts": "保留字体", - "save_load_hint": "\"保留\" 选项在选择或加载主题时保留当前设置的选项,在导出主题时还会存储上述选项。当所有复选框未设置时,导出主题将保存所有内容。", - "reset": "重置", - "clear_all": "清除全部", - "clear_opacity": "清除透明度" - }, - "common": { - "color": "颜色", - "opacity": "透明度", - "contrast": { - "hint": "对比度是 {ratio}, 它 {level} {context}", - "level": { - "aa": "符合 AA 等级准则(最低)", - "aaa": "符合 AAA 等级准则(推荐)", - "bad": "不符合任何辅助功能指南" - }, - "context": { - "18pt": "大字文本 (18pt+)", - "text": "文本" - } + "general": { + "apply": "应用", + "submit": "提交", + "more": "更多", + "generic_error": "发生一个错误", + "optional": "可选项", + "show_more": "展开", + "show_less": "收起", + "cancel": "取消", + "disable": "禁用", + "enable": "启用", + "confirm": "确认", + "verify": "验证", + "dismiss": "忽略" + }, + "image_cropper": { + "crop_picture": "裁剪图片", + "save": "保存", + "save_without_cropping": "保存未经裁剪的图片", + "cancel": "取消" + }, + "importer": { + "submit": "提交", + "success": "导入成功。", + "error": "导入此文件时出现一个错误。" + }, + "login": { + "login": "登录", + "description": "用 OAuth 登录", + "logout": "登出", + "password": "密码", + "placeholder": "例如:lain", + "register": "注册", + "username": "用户名", + "hint": "登录后加入讨论", + "authentication_code": "验证码", + "enter_recovery_code": "输入一个恢复码", + "enter_two_factor_code": "输入一个双重因素验证码", + "recovery_code": "恢复码", + "heading": { + "totp": "双重因素验证", + "recovery": "双重因素恢复" } - }, - "common_colors": { - "_tab_label": "常规", - "main": "常用颜色", - "foreground_hint": "点击”高级“ 标签进行细致的控制", - "rgbo": "图标,口音,徽章" - }, - "advanced_colors": { - "_tab_label": "高级", - "alert": "提醒或警告背景色", - "alert_error": "错误", - "badge": "徽章背景", - "badge_notification": "通知", - "panel_header": "面板标题", - "top_bar": "顶栏", - "borders": "边框", - "buttons": "按钮", - "inputs": "输入框", - "faint_text": "灰度文字" - }, - "radii": { - "_tab_label": "圆角" - }, - "shadows": { - "_tab_label": "阴影和照明", - "component": "组件", - "override": "覆盖", - "shadow_id": "阴影 #{value}", - "blur": "模糊", - "spread": "扩散", - "inset": "插入内部", - "hint": "对于阴影你还可以使用 --variable 作为颜色值来使用 CSS3 变量。请注意,这种情况下,透明设置将不起作用。", - "filter_hint": { - "always_drop_shadow": "警告,此阴影设置会总是使用 {0} ,如果浏览器支持的话。", - "drop_shadow_syntax": "{0} 不支持参数 {1} 和关键词 {2} 。", - "avatar_inset": "请注意组合两个内部和非内部的阴影到头像上,在透明头像上可能会有意料之外的效果。", - "spread_zero": "阴影的扩散 > 0 会同设置成零一样", - "inset_classic": "插入内部的阴影会使用 {0}" + }, + "media_modal": { + "previous": "往前", + "next": "往后" + }, + "nav": { + "about": "关于", + "back": "后退", + "chat": "本站聊天", + "friend_requests": "关注请求", + "mentions": "提及", + "interactions": "互动", + "dms": "私信", + "public_tl": "公共时间线", + "timeline": "时间线", + "twkn": "所有已知网络", + "user_search": "用户搜索", + "search": "搜索", + "who_to_follow": "推荐关注", + "preferences": "偏好设置", + "administration": "管理员" + }, + "notifications": { + "broken_favorite": "未知的状态,正在搜索中...", + "favorited_you": "收藏了你的状态", + "followed_you": "关注了你", + "load_older": "加载更早的通知", + "notifications": "通知", + "read": "阅读!", + "repeated_you": "转发了你的状态", + "no_more_notifications": "没有更多的通知", + "reacted_with": "和 {0} 互动过", + "migrated_to": "迁移到", + "follow_request": "想要关注你" + }, + "polls": { + "add_poll": "增加问卷调查", + "add_option": "增加选项", + "option": "选项", + "votes": "投票", + "vote": "投票", + "type": "问卷类型", + "single_choice": "单选项", + "multiple_choices": "多选项", + "expiry": "问卷的时间", + "expires_in": "投票于 {0} 内结束", + "expired": "投票 {0} 前已结束", + "not_enough_options": "投票的选项太少" + }, + "stickers": { + "add_sticker": "添加贴纸" + }, + "interactions": { + "favs_repeats": "转发和收藏", + "follows": "新的关注者", + "load_older": "加载更早的互动", + "moves": "用户迁移" + }, + "post_status": { + "new_status": "发布新状态", + "account_not_locked_warning": "你的帐号没有 {0}。任何人都可以关注你并浏览你的上锁内容。", + "account_not_locked_warning_link": "上锁", + "attachments_sensitive": "标记附件为敏感内容", + "content_type": { + "text/plain": "纯文本", + "text/html": "HTML", + "text/markdown": "Markdown", + "text/bbcode": "BBCode" }, - "components": { - "panel": "面板", - "panelHeader": "面板标题", - "topBar": "顶栏", - "avatar": "用户头像(在个人资料栏)", - "avatarStatus": "用户头像(在帖子显示栏)", - "popup": "弹窗和工具提示", - "button": "按钮", - "buttonHover": "按钮(悬停)", - "buttonPressed": "按钮(按下)", - "buttonPressedHover": "按钮(按下和悬停)", - "input": "输入框" + "content_warning": "主题(可选)", + "default": "刚刚抵达上海", + "direct_warning_to_all": "本条内容只有被提及的用户能够看到。", + "direct_warning_to_first_only": "本条内容只有被在消息开始处提及的用户能够看到。", + "posting": "发送", + "scope_notice": { + "public": "本条内容可以被所有人看到", + "private": "关注你的人才能看到本条内容", + "unlisted": "本条内容既不在公共时间线,也不会在所有已知网络上可见" + }, + "scope": { + "direct": "私信 - 只发送给被提及的用户", + "private": "仅关注者 - 只有关注了你的人能看到", + "public": "公共 - 发送到公共时间轴", + "unlisted": "不公开 - 不会发送到公共时间轴" } - }, - "fonts": { - "_tab_label": "字体", - "help": "给用户界面的元素选择字体。选择 “自选”的你必须输入确切的字体名称。", - "components": { - "interface": "界面", - "input": "输入框", - "post": "发帖文字", - "postCode": "帖子中使用等间距文字(富文本)" + }, + "registration": { + "bio": "简介", + "email": "电子邮箱", + "fullname": "全名", + "password_confirm": "确认密码", + "registration": "注册", + "token": "邀请码", + "captcha": "CAPTCHA", + "new_captcha": "点击图片获取新的验证码", + "username_placeholder": "例如:lain", + "fullname_placeholder": "例如:岩仓玲音", + "bio_placeholder": "例如:\n你好,我是玲音。\n我是一个住在日本郊区的动画少女。你可能在 Wired 见过我。", + "validations": { + "username_required": "不能留空", + "fullname_required": "不能留空", + "email_required": "不能留空", + "password_required": "不能留空", + "password_confirmation_required": "不能留空", + "password_confirmation_match": "密码不一致" + } + }, + "selectable_list": { + "select_all": "选择全部" + }, + "settings": { + "app_name": "App 名称", + "security": "安全", + "enter_current_password_to_confirm": "输入你当前密码来确认你的身份", + "mfa": { + "otp": "OTP", + "setup_otp": "设置 OTP", + "wait_pre_setup_otp": "预设 OTP", + "confirm_and_enable": "确认并启用 OTP", + "title": "双因素验证", + "generate_new_recovery_codes": "生成新的恢复码", + "warning_of_generate_new_codes": "当你生成新的恢复码时,你的旧恢复码就失效了。", + "recovery_codes": "恢复码。", + "waiting_a_recovery_codes": "正在接收备份码……", + "recovery_codes_warning": "抄写这些号码,或者保存在安全的地方。这些号码不会再次显示。如果你无法访问你的 2FA app,也丢失了你的恢复码,你的账号就再也无法登录了。", + "authentication_methods": "身份验证方法", + "scan": { + "title": "扫一下", + "desc": "使用你的双因素验证 app,扫描这个二维码,或者输入这些文字密钥:", + "secret_code": "密钥" + }, + "verify": { + "desc": "要启用双因素验证,请把你的双因素验证 app 里的数字输入:" + } }, - "family": "字体名称", - "size": "大小 (in px)", - "weight": "字重 (粗体))", - "custom": "自选" - }, - "preview": { - "header": "预览", - "content": "内容", - "error": "例子错误", - "button": "按钮", - "text": "有堆 {0} 和 {1}", - "mono": "内容", - "input": "刚刚抵达上海", - "faint_link": "帮助菜单", - "fine_print": "阅读我们的 {0} 学不到什么东东!", - "header_faint": "这很正常", - "checkbox": "我已经浏览了 TOC", - "link": "一个很棒的摇滚链接" - } + "attachmentRadius": "附件", + "attachments": "附件", + "autoload": "启用滚动到底部时的自动加载", + "avatar": "头像", + "avatarAltRadius": "头像(通知)", + "avatarRadius": "头像", + "background": "背景", + "bio": "简介", + "block_export": "拉黑名单导出", + "block_export_button": "导出你的拉黑名单到一个 csv 文件", + "block_import": "拉黑名单导入", + "block_import_error": "导入拉黑名单出错", + "blocks_imported": "拉黑名单导入成功!需要一点时间来处理。", + "blocks_tab": "块", + "btnRadius": "按钮", + "cBlue": "蓝色(回复,关注)", + "cGreen": "绿色(转发)", + "cOrange": "橙色(收藏)", + "cRed": "红色(取消)", + "change_password": "修改密码", + "change_password_error": "修改密码的时候出了点问题。", + "changed_password": "成功修改了密码!", + "collapse_subject": "折叠带主题的内容", + "composing": "正在书写", + "confirm_new_password": "确认新密码", + "current_avatar": "当前头像", + "current_password": "当前密码", + "current_profile_banner": "您当前的横幅图片", + "data_import_export_tab": "数据导入/导出", + "default_vis": "默认可见范围", + "delete_account": "删除账户", + "delete_account_description": "永久删除你的帐号和所有数据。", + "delete_account_error": "删除账户时发生错误,如果一直删除不了,请联系实例管理员。", + "delete_account_instructions": "在下面输入你的密码来确认删除账户", + "avatar_size_instruction": "推荐的头像图片最小的尺寸是 150x150 像素。", + "export_theme": "导出预置主题", + "filtering": "过滤器", + "filtering_explanation": "所有包含以下词汇的内容都会被隐藏,一行一个", + "follow_export": "导出关注", + "follow_export_button": "将关注导出成 csv 文件", + "follow_import": "导入关注", + "follow_import_error": "导入关注时错误", + "follows_imported": "关注已导入!尚需要一些时间来处理。", + "foreground": "前景", + "general": "通用", + "hide_attachments_in_convo": "在对话中隐藏附件", + "hide_attachments_in_tl": "在时间线上隐藏附件", + "hide_muted_posts": "不显示被隐藏的用户的帖子", + "max_thumbnails": "最多再每个帖子所能显示的缩略图数量", + "hide_isp": "隐藏指定实例的面板H", + "preload_images": "预载图片", + "use_one_click_nsfw": "点击一次以打开工作场所不适宜的附件", + "hide_post_stats": "隐藏推文相关的统计数据(例如:收藏的次数)", + "hide_user_stats": "隐藏用户的统计数据(例如:关注者的数量)", + "hide_filtered_statuses": "隐藏过滤的状态", + "import_blocks_from_a_csv_file": "从 csv 文件中导入拉黑名单", + "import_followers_from_a_csv_file": "从 csv 文件中导入关注", + "import_theme": "导入预置主题", + "inputRadius": "输入框", + "checkboxRadius": "复选框", + "instance_default": "(默认:{value})", + "instance_default_simple": "(默认)", + "interface": "界面", + "interfaceLanguage": "界面语言", + "invalid_theme_imported": "您所选择的主题文件不被 Pleroma 支持,因此主题未被修改。", + "limited_availability": "在您的浏览器中无法使用", + "links": "链接", + "lock_account_description": "你需要手动审核关注请求", + "loop_video": "循环视频", + "loop_video_silent_only": "只循环没有声音的视频(例如:Mastodon 里的“GIF”)", + "mutes_tab": "隐藏", + "play_videos_in_modal": "在弹出框内播放视频", + "use_contain_fit": "生成缩略图时不要裁剪附件", + "name": "名字", + "name_bio": "名字及简介", + "new_password": "新密码", + "notification_visibility": "要显示的通知类型", + "notification_visibility_follows": "关注", + "notification_visibility_likes": "点赞", + "notification_visibility_mentions": "提及", + "notification_visibility_repeats": "转发", + "no_rich_text_description": "不显示富文本格式", + "no_blocks": "没有拉黑的", + "no_mutes": "没有隐藏", + "hide_follows_description": "不要显示我所关注的人", + "hide_followers_description": "不要显示关注我的人", + "show_admin_badge": "显示管理徽章", + "show_moderator_badge": "显示版主徽章", + "nsfw_clickthrough": "将不和谐附件隐藏,点击才能打开", + "oauth_tokens": "OAuth令牌", + "token": "令牌", + "refresh_token": "刷新令牌", + "valid_until": "有效期至", + "revoke_token": "撤消", + "panelRadius": "面板", + "pause_on_unfocused": "在离开页面时暂停时间线推送", + "presets": "预置", + "profile_background": "个人资料背景图", + "profile_banner": "横幅图片", + "profile_tab": "个人资料", + "radii_help": "设置界面边缘的圆角 (单位:像素)", + "replies_in_timeline": "时间线中的回复", + "reply_link_preview": "启用鼠标悬停时预览回复链接", + "reply_visibility_all": "显示所有回复", + "reply_visibility_following": "只显示发送给我的回复/发送给我关注的用户的回复", + "reply_visibility_self": "只显示发送给我的回复", + "autohide_floating_post_button": "自动隐藏新帖子的按钮(移动设备)", + "saving_err": "保存设置时发生错误", + "saving_ok": "设置已保存", + "search_user_to_block": "搜索你想屏蔽的用户", + "search_user_to_mute": "搜索你想要隐藏的用户", + "security_tab": "安全", + "scope_copy": "回复时的复制范围(私信是总是复制的)", + "minimal_scopes_mode": "最小发文范围", + "set_new_avatar": "设置新头像", + "set_new_profile_background": "设置新的个人资料背景", + "set_new_profile_banner": "设置新的横幅图片", + "settings": "设置", + "subject_input_always_show": "总是显示主题框", + "subject_line_behavior": "回复时复制主题", + "subject_line_email": "比如电邮: \"re: 主题\"", + "subject_line_mastodon": "比如 mastodon: copy as is", + "subject_line_noop": "不要复制", + "post_status_content_type": "发文状态内容类型", + "stop_gifs": "鼠标悬停时播放GIF", + "streaming": "开启滚动到顶部时的自动推送", + "text": "文本", + "theme": "主题", + "theme_help": "使用十六进制代码(#rrggbb)来设置主题颜色。", + "theme_help_v2_1": "你也可以通过切换复选框来覆盖某些组件的颜色和透明。使用“清除所有”来清楚所有覆盖设置。", + "theme_help_v2_2": "某些条目下的图标是背景或文本对比指示器,鼠标悬停可以获取详细信息。请记住,使用透明度来显示最差的情况。", + "tooltipRadius": "提醒", + "upload_a_photo": "上传照片", + "user_settings": "用户设置", + "values": { + "false": "否", + "true": "是" + }, + "notifications": "通知", + "notification_setting": "通知来源:", + "notification_setting_follows": "你所关注的用户", + "notification_setting_non_follows": "你没有关注的用户", + "notification_setting_followers": "关注你的用户", + "notification_setting_non_followers": "没有关注你的用户", + "notification_mutes": "要停止收到某个指定的用户的通知,请使用隐藏功能。", + "notification_blocks": "拉黑一个用户会停掉所有他的通知,等同于取消关注。", + "enable_web_push_notifications": "启用 web 推送通知", + "style": { + "switcher": { + "keep_color": "保留颜色", + "keep_shadows": "保留阴影", + "keep_opacity": "保留透明度", + "keep_roundness": "保留圆角", + "keep_fonts": "保留字体", + "save_load_hint": "\"保留\" 选项在选择或加载主题时保留当前设置的选项,在导出主题时还会存储上述选项。当所有复选框未设置时,导出主题将保存所有内容。", + "reset": "重置", + "clear_all": "清除全部", + "clear_opacity": "清除透明度", + "load_theme": "加载主题", + "help": { + "upgraded_from_v2": "PleromaFE 已升级,主题会和你记忆中的不太一样。" + }, + "use_source": "新版本", + "use_snapshot": "老版本", + "keep_as_is": "保持原状" + }, + "common": { + "color": "颜色", + "opacity": "透明度", + "contrast": { + "hint": "对比度是 {ratio}, 它 {level} {context}", + "level": { + "aa": "符合 AA 等级准则(最低)", + "aaa": "符合 AAA 等级准则(推荐)", + "bad": "不符合任何辅助功能指南" + }, + "context": { + "18pt": "大字文本 (18pt+)", + "text": "文本" + } + } + }, + "common_colors": { + "_tab_label": "常规", + "main": "常用颜色", + "foreground_hint": "点击”高级“ 标签进行细致的控制", + "rgbo": "图标,口音,徽章" + }, + "advanced_colors": { + "_tab_label": "高级", + "alert": "提醒或警告背景色", + "alert_error": "错误", + "badge": "徽章背景", + "badge_notification": "通知", + "panel_header": "面板标题", + "top_bar": "顶栏", + "borders": "边框", + "buttons": "按钮", + "inputs": "输入框", + "faint_text": "灰度文字" + }, + "radii": { + "_tab_label": "圆角" + }, + "shadows": { + "_tab_label": "阴影和照明", + "component": "组件", + "override": "覆盖", + "shadow_id": "阴影 #{value}", + "blur": "模糊", + "spread": "扩散", + "inset": "插入内部", + "hint": "对于阴影你还可以使用 --variable 作为颜色值来使用 CSS3 变量。请注意,这种情况下,透明设置将不起作用。", + "filter_hint": { + "always_drop_shadow": "警告,此阴影设置会总是使用 {0} ,如果浏览器支持的话。", + "drop_shadow_syntax": "{0} 不支持参数 {1} 和关键词 {2} 。", + "avatar_inset": "请注意组合两个内部和非内部的阴影到头像上,在透明头像上可能会有意料之外的效果。", + "spread_zero": "阴影的扩散 > 0 会同设置成零一样", + "inset_classic": "插入内部的阴影会使用 {0}" + }, + "components": { + "panel": "面板", + "panelHeader": "面板标题", + "topBar": "顶栏", + "avatar": "用户头像(在个人资料栏)", + "avatarStatus": "用户头像(在帖子显示栏)", + "popup": "弹窗和工具提示", + "button": "按钮", + "buttonHover": "按钮(悬停)", + "buttonPressed": "按钮(按下)", + "buttonPressedHover": "按钮(按下和悬停)", + "input": "输入框" + } + }, + "fonts": { + "_tab_label": "字体", + "help": "给用户界面的元素选择字体。选择 “自选”的你必须输入确切的字体名称。", + "components": { + "interface": "界面", + "input": "输入框", + "post": "发帖文字", + "postCode": "帖子中使用等间距文字(富文本)" + }, + "family": "字体名称", + "size": "大小 (in px)", + "weight": "字重 (粗体))", + "custom": "自选" + }, + "preview": { + "header": "预览", + "content": "内容", + "error": "例子错误", + "button": "按钮", + "text": "有堆 {0} 和 {1}", + "mono": "内容", + "input": "刚刚抵达上海", + "faint_link": "帮助菜单", + "fine_print": "阅读我们的 {0} ,然而什么也学不到!", + "header_faint": "这很正常", + "checkbox": "我已经浏览了 TOC", + "link": "一个很棒的摇滚链接" + } + }, + "version": { + "title": "版本", + "backend_version": "后端版本", + "frontend_version": "前端版本" + }, + "notification_setting_filters": "过滤器", + "domain_mutes": "域名", + "changed_email": "邮箱修改成功!", + "change_email_error": "修改你的电子邮箱时发生错误", + "change_email": "修改电子邮箱", + "allow_following_move": "正在关注的账号迁移时自动重新关注", + "notification_setting_privacy_option": "在通知推送中隐藏发送者和内容", + "notification_setting_privacy": "隐私", + "hide_follows_count_description": "不显示关注数", + "notification_visibility_emoji_reactions": "互动", + "notification_visibility_moves": "用户迁移", + "new_email": "新邮箱", + "emoji_reactions_on_timeline": "在时间线上显示表情符号互动" }, - "version": { - "title": "版本", - "backend_version": "后端版本", - "frontend_version": "前端版本" - } - }, - "time": { - "day": "{0} 天", - "days": "{0} 天", - "day_short": "{0}d", - "days_short": "{0}d", - "hour": "{0} 小时", - "hours": "{0} 小时", - "hour_short": "{0}h", - "hours_short": "{0}h", - "in_future": "还有 {0}", - "in_past": "{0} 之前", - "minute": "{0} 分钟", - "minutes": "{0} 分钟", - "minute_short": "{0}min", - "minutes_short": "{0}min", - "month": "{0} 月", - "months": "{0} 月", - "month_short": "{0}mo", - "months_short": "{0}mo", - "now": "刚刚", - "now_short": "刚刚", - "second": "{0} 秒", - "seconds": "{0} 秒", - "second_short": "{0}s", - "seconds_short": "{0}s", - "week": "{0} 周", - "weeks": "{0} 周", - "week_short": "{0}w", - "weeks_short": "{0}w", - "year": "{0} 年", - "years": "{0} 年", - "year_short": "{0}y", - "years_short": "{0}y" - }, - "timeline": { - "collapse": "折叠", - "conversation": "对话", - "error_fetching": "获取更新时发生错误", - "load_older": "加载更早的状态", - "no_retweet_hint": "这条内容仅关注者可见,或者是私信,因此不能转发。", - "repeated": "已转发", - "show_new": "显示新内容", - "up_to_date": "已是最新", - "no_more_statuses": "没有更多的状态", - "no_statuses": "没有状态更新" - }, - "status": { - "favorites": "收藏", - "repeats": "转发", - "delete": "删除状态", - "pin": "在个人资料置顶", - "unpin": "取消在个人资料置顶", - "pinned": "置顶", - "delete_confirm": "你真的想要删除这条状态吗?", - "reply_to": "回复", - "replies_list": "回复:", - "mute_conversation": "隐藏对话", - "unmute_conversation": "对话取消隐藏" - }, - "user_card": { - "approve": "允许", - "block": "屏蔽", - "blocked": "已屏蔽!", - "deny": "拒绝", - "favorites": "收藏", - "follow": "关注", - "follow_sent": "请求已发送!", - "follow_progress": "请求中", - "follow_again": "再次发送请求?", - "follow_unfollow": "取消关注", - "followees": "正在关注", - "followers": "关注者", - "following": "正在关注!", - "follows_you": "关注了你!", - "its_you": "就是你!!", - "media": "媒体", - "mute": "隐藏", - "muted": "已隐藏", - "per_day": "每天", - "remote_follow": "跨站关注", - "report": "报告", - "statuses": "状态", - "subscribe": "订阅", - "unsubscribe": "退订", - "unblock": "取消拉黑", - "unblock_progress": "取消拉黑中...", - "block_progress": "拉黑中...", - "unmute": "取消隐藏", - "unmute_progress": "取消隐藏中...", - "mute_progress": "隐藏中...", - "admin_menu": { - "moderation": "权限", - "grant_admin": "赋予管理权限", - "revoke_admin": "撤销管理权限", - "grant_moderator": "赋予版主权限", - "revoke_moderator": "撤销版主权限", - "activate_account": "激活账号", - "deactivate_account": "关闭账号", - "delete_account": "删除账号", - "force_nsfw": "标记所有的帖子都是 - 工作场合不适", - "strip_media": "从帖子里删除媒体文件", - "force_unlisted": "强制帖子为不公开", - "sandbox": "强制帖子为只有关注者可看", - "disable_remote_subscription": "禁止从远程实例关注用户", - "disable_any_subscription": "完全禁止关注用户", - "quarantine": "从联合实例中禁止用户帖子", - "delete_user": "删除用户", - "delete_user_confirmation": "你确认吗?此操作无法撤销。" - } - }, - "user_profile": { - "timeline_title": "用户时间线", - "profile_does_not_exist": "抱歉,此个人资料不存在。", - "profile_loading_error": "抱歉,载入个人资料时出错。" - }, - "user_reporting": { - "title": "报告 {0}", - "add_comment_description": "此报告会发送给你的实例管理员。你可以在下面提供更多详细信息解释报告的缘由:", - "additional_comments": "其它信息", - "forward_description": "这个账号是从另外一个服务器。同时发送一个副本到那里?", - "forward_to": "转发 {0}", - "submit": "提交", - "generic_error": "当处理你的请求时,发生了一个错误。" - }, - "who_to_follow": { - "more": "更多", - "who_to_follow": "推荐关注" - }, - "tool_tip": { - "media_upload": "上传多媒体", - "repeat": "转发", - "reply": "回复", - "favorite": "收藏", - "user_settings": "用户设置" - }, - "upload":{ - "error": { - "base": "上传不成功。", - "file_too_big": "文件太大了 [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", - "default": "迟些再试" + "time": { + "day": "{0} 天", + "days": "{0} 天", + "day_short": "{0}d", + "days_short": "{0}d", + "hour": "{0} 小时", + "hours": "{0} 小时", + "hour_short": "{0}h", + "hours_short": "{0}h", + "in_future": "还有 {0}", + "in_past": "{0} 之前", + "minute": "{0} 分钟", + "minutes": "{0} 分钟", + "minute_short": "{0}min", + "minutes_short": "{0}min", + "month": "{0} 月", + "months": "{0} 月", + "month_short": "{0}mo", + "months_short": "{0}mo", + "now": "刚刚", + "now_short": "刚刚", + "second": "{0} 秒", + "seconds": "{0} 秒", + "second_short": "{0}s", + "seconds_short": "{0}s", + "week": "{0} 周", + "weeks": "{0} 周", + "week_short": "{0}w", + "weeks_short": "{0}w", + "year": "{0} 年", + "years": "{0} 年", + "year_short": "{0}y", + "years_short": "{0}y" }, - "file_size_units": { - "B": "B", - "KiB": "KiB", - "MiB": "MiB", - "GiB": "GiB", - "TiB": "TiB" + "timeline": { + "collapse": "折叠", + "conversation": "对话", + "error_fetching": "获取更新时发生错误", + "load_older": "加载更早的状态", + "no_retweet_hint": "这条内容仅关注者可见,或者是私信,因此不能转发。", + "repeated": "已转发", + "show_new": "显示新内容", + "up_to_date": "已是最新", + "no_more_statuses": "没有更多的状态", + "no_statuses": "没有状态更新" + }, + "status": { + "favorites": "收藏", + "repeats": "转发", + "delete": "删除状态", + "pin": "在个人资料置顶", + "unpin": "取消在个人资料置顶", + "pinned": "置顶", + "delete_confirm": "你真的想要删除这条状态吗?", + "reply_to": "回复", + "replies_list": "回复:", + "mute_conversation": "隐藏对话", + "unmute_conversation": "对话取消隐藏" + }, + "user_card": { + "approve": "允许", + "block": "屏蔽", + "blocked": "已屏蔽!", + "deny": "拒绝", + "favorites": "收藏", + "follow": "关注", + "follow_sent": "请求已发送!", + "follow_progress": "请求中", + "follow_again": "再次发送请求?", + "follow_unfollow": "取消关注", + "followees": "正在关注", + "followers": "关注者", + "following": "正在关注!", + "follows_you": "关注了你!", + "its_you": "就是你!!", + "media": "媒体", + "mute": "隐藏", + "muted": "已隐藏", + "per_day": "每天", + "remote_follow": "跨站关注", + "report": "报告", + "statuses": "状态", + "subscribe": "订阅", + "unsubscribe": "退订", + "unblock": "取消拉黑", + "unblock_progress": "取消拉黑中...", + "block_progress": "拉黑中...", + "unmute": "取消隐藏", + "unmute_progress": "取消隐藏中...", + "mute_progress": "隐藏中...", + "admin_menu": { + "moderation": "权限", + "grant_admin": "赋予管理权限", + "revoke_admin": "撤销管理权限", + "grant_moderator": "赋予版主权限", + "revoke_moderator": "撤销版主权限", + "activate_account": "激活账号", + "deactivate_account": "关闭账号", + "delete_account": "删除账号", + "force_nsfw": "标记所有的帖子都是 - 工作场合不适", + "strip_media": "从帖子里删除媒体文件", + "force_unlisted": "强制帖子为不公开", + "sandbox": "强制帖子为只有关注者可看", + "disable_remote_subscription": "禁止从远程实例关注用户", + "disable_any_subscription": "完全禁止关注用户", + "quarantine": "从联合实例中禁止用户帖子", + "delete_user": "删除用户", + "delete_user_confirmation": "你确认吗?此操作无法撤销。" + }, + "hidden": "已隐藏", + "show_repeats": "显示转发", + "hide_repeats": "隐藏转发" + }, + "user_profile": { + "timeline_title": "用户时间线", + "profile_does_not_exist": "抱歉,此个人资料不存在。", + "profile_loading_error": "抱歉,载入个人资料时出错。" + }, + "user_reporting": { + "title": "报告 {0}", + "add_comment_description": "此报告会发送给你的实例管理员。你可以在下面提供更多详细信息解释报告的缘由:", + "additional_comments": "其它信息", + "forward_description": "这个账号是从另外一个服务器。同时发送一个副本到那里?", + "forward_to": "转发 {0}", + "submit": "提交", + "generic_error": "当处理你的请求时,发生了一个错误。" + }, + "who_to_follow": { + "more": "更多", + "who_to_follow": "推荐关注" + }, + "tool_tip": { + "media_upload": "上传多媒体", + "repeat": "转发", + "reply": "回复", + "favorite": "收藏", + "user_settings": "用户设置", + "reject_follow_request": "拒绝关注请求", + "add_reaction": "添加互动" + }, + "upload": { + "error": { + "base": "上传不成功。", + "file_too_big": "文件太大了 [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", + "default": "迟些再试" + }, + "file_size_units": { + "B": "B", + "KiB": "KiB", + "MiB": "MiB", + "GiB": "GiB", + "TiB": "TiB" + } + }, + "search": { + "people": "人", + "hashtags": "Hashtags", + "person_talking": "{count} 人正在讨论", + "people_talking": "{count} 人正在讨论", + "no_results": "没有搜索结果" + }, + "password_reset": { + "forgot_password": "忘记密码了?", + "password_reset": "重置密码", + "instruction": "输入你的电邮地址或者用户名,我们将发送一个链接到你的邮箱,用于重置密码。", + "placeholder": "你的电邮地址或者用户名", + "check_email": "检查你的邮箱,会有一个链接用于重置密码。", + "return_home": "回到首页", + "not_found": "我们无法找到匹配的邮箱地址或者用户名。", + "too_many_requests": "你触发了尝试的限制,请稍后再试。", + "password_reset_disabled": "密码重置已经被禁用。请联系你的实例管理员。" + }, + "remote_user_resolver": { + "error": "未找到。", + "searching_for": "搜索", + "remote_user_resolver": "远程用户解析器" + }, + "emoji": { + "keep_open": "选择器保持打开", + "stickers": "贴图", + "unicode": "Unicode 表情符号", + "custom": "自定义表情符号", + "add_emoji": "插入表情符号", + "search_emoji": "搜索表情符号", + "emoji": "表情符号" + }, + "about": { + "mrf": { + "simple": { + "quarantine_desc": "本实例只会把公开状态发送非下列实例:", + "quarantine": "隔离", + "reject_desc": "本实例不会接收来自下列实例的消息:", + "reject": "拒绝", + "accept_desc": "本实例只接收来自下列实例的消息:", + "simple_policies": "站规", + "accept": "接受", + "media_removal": "移除媒体" + }, + "mrf_policies_desc": "MRF 策略会影响本实例的互通行为。以下策略已启用:", + "mrf_policies": "已启动 MRF 策略", + "keyword": { + "ftl_removal": "从“全部已知网络”时间线上移除", + "keyword_policies": "关键词策略", + "is_replaced_by": "→", + "replace": "替换", + "reject": "拒绝" + }, + "federation": "联邦" + } + }, + "domain_mute_card": { + "unmute_progress": "正在取消隐藏……", + "unmute": "取消隐藏", + "mute_progress": "隐藏中……", + "mute": "隐藏" } - }, - "search": { - "people": "人", - "hashtags": "Hashtags", - "person_talking": "{count} 人谈论", - "people_talking": "{count} 人谈论", - "no_results": "没有搜索结果" - }, - "password_reset": { - "forgot_password": "忘记密码了?", - "password_reset": "重置密码", - "instruction": "输入你的电邮地址或者用户名,我们将发送一个链接到你的邮箱,用于重置密码。", - "placeholder": "你的电邮地址或者用户名", - "check_email": "检查你的邮箱,会有一个链接用于重置密码。", - "return_home": "回到首页", - "not_found": "我们无法找到匹配的邮箱地址或者用户名。", - "too_many_requests": "你触发了尝试的限制,请稍后再试。", - "password_reset_disabled": "密码重置已经被禁用。请联系你的实例管理员。" - } } From 306ed130872a861dc6e7cfe2524f3e50bd262809 Mon Sep 17 00:00:00 2001 From: Ben Is <srsbzns@cock.li> Date: Mon, 18 May 2020 15:42:11 +0000 Subject: [PATCH 95/95] Translated using Weblate (Italian) Currently translated at 42.2% (259 of 613 strings) Translation: Pleroma/Pleroma-FE Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-fe/it/ --- src/i18n/it.json | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/i18n/it.json b/src/i18n/it.json index d4c4cb74..e565049d 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -85,7 +85,7 @@ "data_import_export_tab": "Importa o esporta dati", "default_vis": "Visibilità predefinita dei messaggi", "delete_account": "Elimina profilo", - "delete_account_description": "Elimina definitivamente il tuo profilo e tutti i tuoi messaggi.", + "delete_account_description": "Elimina definitivamente i tuoi dati e disattiva il tuo profilo.", "delete_account_error": "C'è stato un problema durante l'eliminazione del tuo profilo. Se il problema persiste contatta l'amministratore della tua stanza.", "delete_account_instructions": "Digita la tua password nel campo sottostante per confermare l'eliminazione del tuo profilo.", "export_theme": "Salva impostazioni", @@ -305,5 +305,19 @@ "expires_in": "Scade fra {0}", "expired": "Scaduto {0} fa", "not_enough_options": "Aggiungi altre risposte" + }, + "interactions": { + "favs_repeats": "Condivisi e preferiti" + }, + "emoji": { + "load_all": "Carico tutti i {emojiAmount} emoji", + "load_all_hint": "Primi {saneAmount} emoji caricati, caricarli tutti potrebbe causare rallentamenti.", + "unicode": "Emoji Unicode", + "custom": "Emoji personale", + "add_emoji": "Inserisci Emoji", + "search_emoji": "Cerca un emoji", + "keep_open": "Tieni aperto il menù", + "emoji": "Emoji", + "stickers": "Adesivi" } }