forked from Mirrors/elk
Compare commits
3 commits
main
...
feat/fluen
Author | SHA1 | Date | |
---|---|---|---|
|
964469bc17 | ||
|
4f81964d6b | ||
|
7e8da3cadc |
142 changed files with 4217 additions and 5566 deletions
|
@ -3,5 +3,6 @@
|
||||||
*.ico
|
*.ico
|
||||||
*.toml
|
*.toml
|
||||||
*.patch
|
*.patch
|
||||||
|
*.ftl
|
||||||
https-dev-config/localhost.crt
|
https-dev-config/localhost.crt
|
||||||
https-dev-config/localhost.key
|
https-dev-config/localhost.key
|
||||||
|
|
|
@ -16,7 +16,7 @@ const error = $ref(false)
|
||||||
width="400"
|
width="400"
|
||||||
height="400"
|
height="400"
|
||||||
:src="error ? 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' : account.avatar"
|
:src="error ? 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7' : account.avatar"
|
||||||
:alt="$t('account.avatar_description', [account.username])"
|
:alt="$t('account_avatar_description', { username: account.username })"
|
||||||
loading="lazy"
|
loading="lazy"
|
||||||
:class="(loaded ? 'bg-base' : 'bg-gray:10') + (square ? ' ' : ' rounded-full')"
|
:class="(loaded ? 'bg-base' : 'bg-gray:10') + (square ? ' ' : ' rounded-full')"
|
||||||
:style="{ 'clip-path': square ? `url(#avatar-mask)` : 'none' }"
|
:style="{ 'clip-path': square ? `url(#avatar-mask)` : 'none' }"
|
||||||
|
|
|
@ -18,7 +18,7 @@ defineOptions({
|
||||||
<!-- Banner -->
|
<!-- Banner -->
|
||||||
<div px2 pt2>
|
<div px2 pt2>
|
||||||
<div rounded of-hidden bg="gray-500/20" aspect="3.19">
|
<div rounded of-hidden bg="gray-500/20" aspect="3.19">
|
||||||
<img h-full w-full object-cover :src="account.header" :alt="$t('account.profile_description', [account.username])">
|
<img h-full w-full object-cover :src="account.header" :alt="$t('account_profile_description', { username: account.username })">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div px-4 pb-4 space-y-2>
|
<div px-4 pb-4 space-y-2>
|
||||||
|
|
|
@ -11,11 +11,11 @@ defineProps<{
|
||||||
text-secondary-light
|
text-secondary-light
|
||||||
>
|
>
|
||||||
<slot name="prepend" />
|
<slot name="prepend" />
|
||||||
<CommonTooltip :content="$t('account.bot')" :disabled="showLabel">
|
<CommonTooltip :content="$t('account_bot')" :disabled="showLabel">
|
||||||
<div i-ri:robot-line />
|
<div i-ri:robot-line />
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
<div v-if="showLabel">
|
<div v-if="showLabel">
|
||||||
{{ $t('account.bot') }}
|
{{ $t('account_bot') }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -48,13 +48,13 @@ async function unmute() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
useCommand({
|
useCommand({
|
||||||
scope: 'Actions',
|
scope: 'Actions',
|
||||||
order: -2,
|
order: -2,
|
||||||
visible: () => command && enable,
|
visible: () => command && enable,
|
||||||
name: () => `${relationship?.following ? t('account.unfollow') : t('account.follow')} ${getShortHandle(account)}`,
|
name: () => `${relationship?.following ? $t('account_unfollow') : $t('account_follow')} ${getShortHandle(account)}`,
|
||||||
icon: 'i-ri:star-line',
|
icon: 'i-ri:star-line',
|
||||||
onActivate: () => toggleFollow(),
|
onActivate: () => toggleFollow(),
|
||||||
})
|
})
|
||||||
|
@ -87,26 +87,26 @@ const buttonStyle = $computed(() => {
|
||||||
@click="relationship?.blocking ? unblock() : relationship?.muting ? unmute() : toggleFollow()"
|
@click="relationship?.blocking ? unblock() : relationship?.muting ? unmute() : toggleFollow()"
|
||||||
>
|
>
|
||||||
<template v-if="relationship?.blocking">
|
<template v-if="relationship?.blocking">
|
||||||
<span group-hover="hidden">{{ $t('account.blocking') }}</span>
|
<span group-hover="hidden">{{ $t('account_blocking') }}</span>
|
||||||
<span hidden group-hover="inline">{{ $t('account.unblock') }}</span>
|
<span hidden group-hover="inline">{{ $t('account_unblock') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="relationship?.muting">
|
<template v-if="relationship?.muting">
|
||||||
<span group-hover="hidden">{{ $t('account.muting') }}</span>
|
<span group-hover="hidden">{{ $t('account_muting') }}</span>
|
||||||
<span hidden group-hover="inline">{{ $t('account.unmute') }}</span>
|
<span hidden group-hover="inline">{{ $t('account_unmute') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="relationship?.following">
|
<template v-else-if="relationship?.following">
|
||||||
<span group-hover="hidden">{{ relationship.followedBy ? $t('account.mutuals') : $t('account.following') }}</span>
|
<span group-hover="hidden">{{ relationship.followedBy ? $t('account_mutuals') : $t('account_following') }}</span>
|
||||||
<span hidden group-hover="inline">{{ $t('account.unfollow') }}</span>
|
<span hidden group-hover="inline">{{ $t('account_unfollow') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="relationship?.requested">
|
<template v-else-if="relationship?.requested">
|
||||||
<span>{{ $t('account.follow_requested') }}</span>
|
<span>{{ $t('account_follow_requested') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="relationship?.followedBy">
|
<template v-else-if="relationship?.followedBy">
|
||||||
<span group-hover="hidden">{{ $t('account.follows_you') }}</span>
|
<span group-hover="hidden">{{ $t('account_follows_you') }}</span>
|
||||||
<span hidden group-hover="inline">{{ $t('account.follow_back') }}</span>
|
<span hidden group-hover="inline">{{ $t('account_follow_back') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<span>{{ $t('account.follow') }}</span>
|
<span>{{ $t('account_follow') }}</span>
|
||||||
</template>
|
</template>
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -6,7 +6,7 @@ const { account } = defineProps<{
|
||||||
command?: boolean
|
command?: boolean
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
const createdAt = $(useFormattedDateTime(() => account.createdAt, {
|
const createdAt = $(useFormattedDateTime(() => account.createdAt, {
|
||||||
month: 'long',
|
month: 'long',
|
||||||
|
@ -18,7 +18,7 @@ const namedFields = ref<mastodon.v1.AccountField[]>([])
|
||||||
const iconFields = ref<mastodon.v1.AccountField[]>([])
|
const iconFields = ref<mastodon.v1.AccountField[]>([])
|
||||||
|
|
||||||
function getFieldIconTitle(fieldName: string) {
|
function getFieldIconTitle(fieldName: string) {
|
||||||
return fieldName === 'Joined' ? t('account.joined') : fieldName
|
return fieldName === 'Joined' ? $t('account_joined') : fieldName
|
||||||
}
|
}
|
||||||
|
|
||||||
function previewHeader() {
|
function previewHeader() {
|
||||||
|
@ -26,7 +26,7 @@ function previewHeader() {
|
||||||
id: `${account.acct}:header`,
|
id: `${account.acct}:header`,
|
||||||
type: 'image',
|
type: 'image',
|
||||||
previewUrl: account.header,
|
previewUrl: account.header,
|
||||||
description: t('account.profile_description', [account.username]),
|
description: $t('account_profile_description', { username: account.username }),
|
||||||
}])
|
}])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ function previewAvatar() {
|
||||||
id: `${account.acct}:avatar`,
|
id: `${account.acct}:avatar`,
|
||||||
type: 'image',
|
type: 'image',
|
||||||
previewUrl: account.avatar,
|
previewUrl: account.avatar,
|
||||||
description: t('account.avatar_description', [account.username]),
|
description: $t('account_avatar_description', { username: account.username }),
|
||||||
}])
|
}])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ const isSelf = $computed(() => currentUser.value?.account.id === account.id)
|
||||||
<template>
|
<template>
|
||||||
<div flex flex-col>
|
<div flex flex-col>
|
||||||
<button border="b base" z-1>
|
<button border="b base" z-1>
|
||||||
<img h-50 height="200" w-full object-cover :src="account.header" :alt="t('account.profile_description', [account.username])" @click="previewHeader">
|
<img h-50 height="200" w-full object-cover :src="account.header" :alt="$t('account_profile_description', { username: account.username })" @click="previewHeader">
|
||||||
</button>
|
</button>
|
||||||
<div p4 mt--18 flex flex-col gap-4>
|
<div p4 mt--18 flex flex-col gap-4>
|
||||||
<div relative>
|
<div relative>
|
||||||
|
@ -91,7 +91,7 @@ const isSelf = $computed(() => currentUser.value?.account.id === account.id)
|
||||||
gap-1 items-center border="1" rounded-full flex="~ gap2 center" font-500 min-w-30 h-fit px3 py1
|
gap-1 items-center border="1" rounded-full flex="~ gap2 center" font-500 min-w-30 h-fit px3 py1
|
||||||
hover="border-primary text-primary bg-active"
|
hover="border-primary text-primary bg-active"
|
||||||
>
|
>
|
||||||
{{ $t('settings.profile.appearance.title') }}
|
{{ $t('settings_profile_appearance_title') }}
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
<!-- <button flex gap-1 items-center w-full rounded op75 hover="op100 text-purple" group>
|
<!-- <button flex gap-1 items-center w-full rounded op75 hover="op100 text-purple" group>
|
||||||
<div rounded p2 group-hover="bg-rose/10">
|
<div rounded p2 group-hover="bg-rose/10">
|
||||||
|
|
|
@ -54,7 +54,7 @@ const toggleReblogs = async () => {
|
||||||
<template #popper>
|
<template #popper>
|
||||||
<NuxtLink :to="account.url" external target="_blank">
|
<NuxtLink :to="account.url" external target="_blank">
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.open_in_original_site')"
|
:text="$t('menu_open_in_original_site')"
|
||||||
icon="i-ri:arrow-right-up-line"
|
icon="i-ri:arrow-right-up-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
/>
|
/>
|
||||||
|
@ -63,13 +63,13 @@ const toggleReblogs = async () => {
|
||||||
<template v-if="currentUser">
|
<template v-if="currentUser">
|
||||||
<template v-if="!isSelf">
|
<template v-if="!isSelf">
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.mention_account', [`@${account.acct}`])"
|
:text="$t('menu_mention_account', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:at-line"
|
icon="i-ri:at-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="mentionUser(account)"
|
@click="mentionUser(account)"
|
||||||
/>
|
/>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.direct_message_account', [`@${account.acct}`])"
|
:text="$t('menu_direct_message_account', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:message-3-line"
|
icon="i-ri:message-3-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="directMessageUser(account)"
|
@click="directMessageUser(account)"
|
||||||
|
@ -78,13 +78,13 @@ const toggleReblogs = async () => {
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="!relationship?.showingReblogs"
|
v-if="!relationship?.showingReblogs"
|
||||||
icon="i-ri:repeat-line"
|
icon="i-ri:repeat-line"
|
||||||
:text="$t('menu.show_reblogs', [`@${account.acct}`])"
|
:text="$t('menu_show_reblogs', { username: `@${account.acct}` })"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleReblogs"
|
@click="toggleReblogs"
|
||||||
/>
|
/>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-else
|
v-else
|
||||||
:text="$t('menu.hide_reblogs', [`@${account.acct}`])"
|
:text="$t('menu_hide_reblogs', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:repeat-line"
|
icon="i-ri:repeat-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleReblogs"
|
@click="toggleReblogs"
|
||||||
|
@ -92,14 +92,14 @@ const toggleReblogs = async () => {
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="!relationship?.muting"
|
v-if="!relationship?.muting"
|
||||||
:text="$t('menu.mute_account', [`@${account.acct}`])"
|
:text="$t('menu_mute_account', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:volume-up-fill"
|
icon="i-ri:volume-up-fill"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleMute"
|
@click="toggleMute"
|
||||||
/>
|
/>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-else
|
v-else
|
||||||
:text="$t('menu.unmute_account', [`@${account.acct}`])"
|
:text="$t('menu_unmute_account', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:volume-mute-line"
|
icon="i-ri:volume-mute-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleMute"
|
@click="toggleMute"
|
||||||
|
@ -107,14 +107,14 @@ const toggleReblogs = async () => {
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="!relationship?.blocking"
|
v-if="!relationship?.blocking"
|
||||||
:text="$t('menu.block_account', [`@${account.acct}`])"
|
:text="$t('menu_block_account', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:forbid-2-line"
|
icon="i-ri:forbid-2-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleBlockUser"
|
@click="toggleBlockUser"
|
||||||
/>
|
/>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-else
|
v-else
|
||||||
:text="$t('menu.unblock_account', [`@${account.acct}`])"
|
:text="$t('menu_unblock_account', { username: `@${account.acct}` })"
|
||||||
icon="i-ri:checkbox-circle-line"
|
icon="i-ri:checkbox-circle-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleBlockUser"
|
@click="toggleBlockUser"
|
||||||
|
@ -123,14 +123,14 @@ const toggleReblogs = async () => {
|
||||||
<template v-if="getServerName(account) !== currentServer">
|
<template v-if="getServerName(account) !== currentServer">
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="!relationship?.domainBlocking"
|
v-if="!relationship?.domainBlocking"
|
||||||
:text="$t('menu.block_domain', [getServerName(account)])"
|
:text="$t('menu_block_domain', { domain: getServerName(account) })"
|
||||||
icon="i-ri:shut-down-line"
|
icon="i-ri:shut-down-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleBlockDomain"
|
@click="toggleBlockDomain"
|
||||||
/>
|
/>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-else
|
v-else
|
||||||
:text="$t('menu.unblock_domain', [getServerName(account)])"
|
:text="$t('menu_unblock_domain', { domain: getServerName(account) })"
|
||||||
icon="i-ri:restart-line"
|
icon="i-ri:restart-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleBlockDomain"
|
@click="toggleBlockDomain"
|
||||||
|
@ -140,19 +140,19 @@ const toggleReblogs = async () => {
|
||||||
|
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<NuxtLink to="/pinned">
|
<NuxtLink to="/pinned">
|
||||||
<CommonDropdownItem :text="$t('account.pinned')" icon="i-ri:pushpin-line" :command="command" />
|
<CommonDropdownItem :text="$t('account_pinned')" icon="i-ri:pushpin-line" :command="command" />
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
<NuxtLink to="/favourites">
|
<NuxtLink to="/favourites">
|
||||||
<CommonDropdownItem :text="$t('account.favourites')" icon="i-ri:heart-3-line" :command="command" />
|
<CommonDropdownItem :text="$t('account_favourites')" icon="i-ri:heart-3-line" :command="command" />
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
<NuxtLink to="/mutes">
|
<NuxtLink to="/mutes">
|
||||||
<CommonDropdownItem :text="$t('account.muted_users')" icon="i-ri:volume-mute-line" :command="command" />
|
<CommonDropdownItem :text="$t('account_muted_users')" icon="i-ri:volume-mute-line" :command="command" />
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
<NuxtLink to="/blocks">
|
<NuxtLink to="/blocks">
|
||||||
<CommonDropdownItem :text="$t('account.blocked_users')" icon="i-ri:forbid-2-line" :command="command" />
|
<CommonDropdownItem :text="$t('account_blocked_users')" icon="i-ri:forbid-2-line" :command="command" />
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
<NuxtLink to="/domain_blocks">
|
<NuxtLink to="/domain_blocks">
|
||||||
<CommonDropdownItem :text="$t('account.blocked_domains')" icon="i-ri:shut-down-line" :command="command" />
|
<CommonDropdownItem :text="$t('account_blocked_domains')" icon="i-ri:shut-down-line" :command="command" />
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -10,7 +10,7 @@ defineProps<{
|
||||||
<div flex="~ col gap-2" p4>
|
<div flex="~ col gap-2" p4>
|
||||||
<div flex="~ gap-1" justify-center>
|
<div flex="~ gap-1" justify-center>
|
||||||
<AccountInlineInfo :account="account" :link="false" />
|
<AccountInlineInfo :account="account" :link="false" />
|
||||||
{{ $t('account.moved_title') }}
|
{{ $t('account_moved_title') }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div flex>
|
<div flex>
|
||||||
|
@ -21,7 +21,7 @@ defineProps<{
|
||||||
<div flex items-center>
|
<div flex items-center>
|
||||||
<NuxtLink :to="getAccountRoute(account.moved as any)">
|
<NuxtLink :to="getAccountRoute(account.moved as any)">
|
||||||
<button btn-solid h-fit>
|
<button btn-solid h-fit>
|
||||||
{{ $t('account.go_to_profile') }}
|
{{ $t('account_go_to_profile') }}
|
||||||
</button>
|
</button>
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -16,7 +16,7 @@ defineProps<{
|
||||||
>
|
>
|
||||||
<template #default="{ isExactActive }">
|
<template #default="{ isExactActive }">
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="account.posts_count"
|
keypath="account_posts_count"
|
||||||
:count="account.statusesCount"
|
:count="account.statusesCount"
|
||||||
font-bold
|
font-bold
|
||||||
:class="isExactActive ? 'text-primary' : 'text-base'"
|
:class="isExactActive ? 'text-primary' : 'text-base'"
|
||||||
|
@ -30,7 +30,7 @@ defineProps<{
|
||||||
>
|
>
|
||||||
<template #default="{ isExactActive }">
|
<template #default="{ isExactActive }">
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="account.following_count"
|
keypath="account_following_count"
|
||||||
:count="account.followingCount"
|
:count="account.followingCount"
|
||||||
font-bold
|
font-bold
|
||||||
:class="isExactActive ? 'text-primary' : 'text-base'"
|
:class="isExactActive ? 'text-primary' : 'text-base'"
|
||||||
|
@ -44,7 +44,7 @@ defineProps<{
|
||||||
>
|
>
|
||||||
<template #default="{ isExactActive }">
|
<template #default="{ isExactActive }">
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="account.followers_count"
|
keypath="account_followers_count"
|
||||||
:count="account.followersCount"
|
:count="account.followersCount"
|
||||||
font-bold
|
font-bold
|
||||||
:class="isExactActive ? 'text-primary' : 'text-base'"
|
:class="isExactActive ? 'text-primary' : 'text-base'"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
|
|
||||||
const server = $(computedEager(() => route.params.server as string))
|
const server = $(computedEager(() => route.params.server as string))
|
||||||
|
@ -12,7 +12,7 @@ const tabs = $computed(() => [
|
||||||
name: 'account-index',
|
name: 'account-index',
|
||||||
params: { server, account },
|
params: { server, account },
|
||||||
},
|
},
|
||||||
display: t('tab.posts'),
|
display: $t('tab_posts'),
|
||||||
icon: 'i-ri:file-list-2-line',
|
icon: 'i-ri:file-list-2-line',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -21,7 +21,7 @@ const tabs = $computed(() => [
|
||||||
name: 'account-replies',
|
name: 'account-replies',
|
||||||
params: { server, account },
|
params: { server, account },
|
||||||
},
|
},
|
||||||
display: t('tab.posts_with_replies'),
|
display: $t('tab_posts_with_replies'),
|
||||||
icon: 'i-ri:chat-1-line',
|
icon: 'i-ri:chat-1-line',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -30,7 +30,7 @@ const tabs = $computed(() => [
|
||||||
name: 'account-media',
|
name: 'account-media',
|
||||||
params: { server, account },
|
params: { server, account },
|
||||||
},
|
},
|
||||||
display: t('tab.media'),
|
display: $t('tab_media'),
|
||||||
icon: 'i-ri:camera-2-line',
|
icon: 'i-ri:camera-2-line',
|
||||||
},
|
},
|
||||||
] as const)
|
] as const)
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import type { AriaAnnounceType, AriaLive } from '~/composables/aria'
|
import type { AriaAnnounceType, AriaLive } from '~/composables/aria'
|
||||||
import type { LocaleObject } from '#i18n'
|
import { locale, locales } from '~/config/i18n'
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const { t, locale, locales } = useI18n()
|
const { $t } = useFluent()
|
||||||
const { ariaAnnouncer, announce } = useAriaAnnouncer()
|
const { ariaAnnouncer, announce } = useAriaAnnouncer()
|
||||||
|
|
||||||
const localeMap = (locales.value as LocaleObject[]).reduce((acc, l) => {
|
const localeMap = locales.reduce((acc, l) => {
|
||||||
acc[l.code!] = l.name!
|
acc[l.code!] = l.name!
|
||||||
return acc
|
return acc
|
||||||
}, {} as Record<string, string>)
|
}, {} as Record<string, string>)
|
||||||
|
@ -25,9 +25,9 @@ const onMessage = (event: AriaAnnounceType, message?: string) => {
|
||||||
|
|
||||||
watch(locale, (l, ol) => {
|
watch(locale, (l, ol) => {
|
||||||
if (ol) {
|
if (ol) {
|
||||||
announce(t('a11y.locale_changing', [localeMap[ol] ?? ol]))
|
announce($t('a11y_locale_changing', { lang: localeMap[ol] ?? ol }))
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
announce(t('a11y.locale_changed', [localeMap[l] ?? l]))
|
announce($t('a11y_locale_changed', { lang: localeMap[l] ?? l }))
|
||||||
}, 1000)
|
}, 1000)
|
||||||
}
|
}
|
||||||
}, { immediate: true })
|
}, { immediate: true })
|
||||||
|
@ -35,13 +35,13 @@ watch(locale, (l, ol) => {
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
ariaAnnouncer.on(onMessage)
|
ariaAnnouncer.on(onMessage)
|
||||||
router.beforeEach(() => {
|
router.beforeEach(() => {
|
||||||
announce(t('a11y.loading_page'))
|
announce($t('a11y_loading_page'))
|
||||||
})
|
})
|
||||||
router.afterEach((to, from) => {
|
router.afterEach((to, from) => {
|
||||||
from && setTimeout(() => {
|
from && setTimeout(() => {
|
||||||
requestAnimationFrame(() => {
|
requestAnimationFrame(() => {
|
||||||
const title = document.title.trim().split('|')
|
const title = document.title.trim().split('|')
|
||||||
announce(t('a11y.route_loaded', [title[0]]))
|
announce($t('a11y_route_loaded', { title: title[0] }))
|
||||||
})
|
})
|
||||||
}, 512)
|
}, 512)
|
||||||
})
|
})
|
||||||
|
|
|
@ -40,7 +40,7 @@ const {
|
||||||
:class="active ? 'opacity-100' : 'opacity-0'"
|
:class="active ? 'opacity-100' : 'opacity-0'"
|
||||||
>
|
>
|
||||||
<div class="text-xs text-secondary">
|
<div class="text-xs text-secondary">
|
||||||
{{ $t('command.complete') }}
|
{{ $t('command_complete') }}
|
||||||
</div>
|
</div>
|
||||||
<CommandKey name="Tab" />
|
<CommandKey name="Tab" />
|
||||||
</div>
|
</div>
|
||||||
|
@ -50,7 +50,7 @@ const {
|
||||||
:class="active ? 'opacity-100' : 'opacity-0'"
|
:class="active ? 'opacity-100' : 'opacity-0'"
|
||||||
>
|
>
|
||||||
<div class="text-xs text-secondary">
|
<div class="text-xs text-secondary">
|
||||||
{{ $t('command.activate') }}
|
{{ $t('command_activate') }}
|
||||||
</div>
|
</div>
|
||||||
<CommandKey name="Enter" />
|
<CommandKey name="Enter" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -222,8 +222,8 @@ const onKeyDown = (e: KeyboardEvent) => {
|
||||||
<div v-else p5 text-center text-secondary italic>
|
<div v-else p5 text-center text-secondary italic>
|
||||||
{{
|
{{
|
||||||
input.trim().length
|
input.trim().length
|
||||||
? $t('common.not_found')
|
? $t('common_not_found')
|
||||||
: $t('search.search_desc')
|
: $t('search_search_desc')
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -72,7 +72,7 @@ const cropImage = () => {
|
||||||
<div flex-1 w-0>
|
<div flex-1 w-0>
|
||||||
<div text-lg text-center my2 px3>
|
<div text-lg text-center my2 px3>
|
||||||
<h1>
|
<h1>
|
||||||
{{ $t('action.edit') }}
|
{{ $t('action_edit') }}
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<div aspect-ratio-1>
|
<div aspect-ratio-1>
|
||||||
|
@ -98,7 +98,7 @@ const cropImage = () => {
|
||||||
btn-solid w-full rounded text-sm
|
btn-solid w-full rounded text-sm
|
||||||
@click="cropImage()"
|
@click="cropImage()"
|
||||||
>
|
>
|
||||||
{{ $t('action.confirm') }}
|
{{ $t('action_confirm') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -26,7 +26,7 @@ const { modelValue: file } = defineModel<{
|
||||||
modelValue: FileWithHandle | null
|
modelValue: FileWithHandle | null
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
const defaultImage = computed(() => props.original || '')
|
const defaultImage = computed(() => props.original || '')
|
||||||
/** Preview of selected images */
|
/** Preview of selected images */
|
||||||
|
@ -41,11 +41,11 @@ const pickImage = async () => {
|
||||||
})
|
})
|
||||||
|
|
||||||
if (!props.allowedFileTypes.includes(image.type)) {
|
if (!props.allowedFileTypes.includes(image.type)) {
|
||||||
emit('error', 1, t('error.unsupported_file_format'))
|
emit('error', 1, $t('error_unsupported_file_format'))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
else if (image.size > props.allowedFileSize) {
|
else if (image.size > props.allowedFileSize) {
|
||||||
emit('error', 2, t('error.file_size_cannot_exceed_n_mb', [5]))
|
emit('error', 2, $t('error_file_size_cannot_exceed_n_mb', { size: props.allowedFileSize / 1024 / 1024 }))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<div flex="~ col" items-center>
|
<div flex="~ col" items-center>
|
||||||
<div i-ri:forbid-line text-10 mt10 mb2 />
|
<div i-ri:forbid-line text-10 mt10 mb2 />
|
||||||
<div text-lg>
|
<div text-lg>
|
||||||
<slot>{{ $t('common.not_found') }}</slot>
|
<slot>{{ $t('common_not_found') }}</slot>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -45,8 +45,6 @@ defineSlots<{
|
||||||
done: {}
|
done: {}
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const { t } = useI18n()
|
|
||||||
|
|
||||||
const { items, prevItems, update, state, endAnchor, error } = usePaginator(paginator, stream, eventType, preprocess)
|
const { items, prevItems, update, state, endAnchor, error } = usePaginator(paginator, stream, eventType, preprocess)
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -91,11 +89,11 @@ const { items, prevItems, update, state, endAnchor, error } = usePaginator(pagin
|
||||||
</slot>
|
</slot>
|
||||||
<slot v-else-if="state === 'done'" name="done">
|
<slot v-else-if="state === 'done'" name="done">
|
||||||
<div p5 text-secondary italic text-center>
|
<div p5 text-secondary italic text-center>
|
||||||
{{ t('common.end_of_list') }}
|
{{ $t('common_end_of_list') }}
|
||||||
</div>
|
</div>
|
||||||
</slot>
|
</slot>
|
||||||
<div v-else-if="state === 'error'" p5 text-secondary>
|
<div v-else-if="state === 'error'" p5 text-secondary>
|
||||||
{{ t('common.error') }}: {{ error }}
|
{{ $t('common_error') }}: {{ error }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -18,6 +18,6 @@ const people = $computed(() =>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<p>
|
<p>
|
||||||
{{ $t('command.n-people-in-the-past-n-days', [people, maxDay]) }}
|
{{ $t('command_n-people-in-the-past-n-days', { count: people, days: maxDay }) }}
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -12,15 +12,17 @@ const { formatHumanReadableNumber, formatNumber, forSR } = useHumanReadableNumbe
|
||||||
|
|
||||||
const useSR = $computed(() => forSR(props.count))
|
const useSR = $computed(() => forSR(props.count))
|
||||||
const rawNumber = $computed(() => formatNumber(props.count))
|
const rawNumber = $computed(() => formatNumber(props.count))
|
||||||
const humanReadableNumber = $computed(() => formatHumanReadableNumber(props.count))
|
const humanReadableNumber = $computed(() => formatHumanReadableNumber(props.count * 10000))
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<i18n-t :keypath="keypath" :plural="count" tag="span" class="flex gap-x-1">
|
<i18n :path="keypath" :args="{ count }" tag="span" class="flex">
|
||||||
|
<template #formattedCount>
|
||||||
<CommonTooltip v-if="useSR" :content="rawNumber" placement="bottom">
|
<CommonTooltip v-if="useSR" :content="rawNumber" placement="bottom">
|
||||||
<span aria-hidden="true" v-bind="$attrs">{{ humanReadableNumber }}</span>
|
<span aria-hidden="true" v-bind="$attrs">{{ humanReadableNumber }}</span>
|
||||||
<span sr-only>{{ rawNumber }}</span>
|
<span sr-only>{{ rawNumber }}</span>
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
<span v-else v-bind="$attrs">{{ humanReadableNumber }}</span>
|
<span v-else v-bind="$attrs">{{ humanReadableNumber }}</span>
|
||||||
</i18n-t>
|
</template>
|
||||||
|
</i18n>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -12,6 +12,6 @@ const online = useOnline()
|
||||||
border="t base" flex="~ gap-2 center"
|
border="t base" flex="~ gap-2 center"
|
||||||
>
|
>
|
||||||
<div i-ri:wifi-off-line />
|
<div i-ri:wifi-off-line />
|
||||||
{{ $t('common.offline_desc') }}
|
{{ $t('common_offline_desc') }}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -16,7 +16,7 @@ const withAccounts = $computed(() =>
|
||||||
<template #meta>
|
<template #meta>
|
||||||
<div flex gap-2 text-sm text-secondary font-bold>
|
<div flex gap-2 text-sm text-secondary font-bold>
|
||||||
<p me-1>
|
<p me-1>
|
||||||
{{ $t('conversation.with') }}
|
{{ $t('conversation_with') }}
|
||||||
</p>
|
</p>
|
||||||
<AccountAvatar v-for="account in withAccounts" :key="account.id" h-5 w-5 :account="account" />
|
<AccountAvatar v-for="account in withAccounts" :key="account.id" h-5 w-5 :account="account" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -12,23 +12,23 @@ const emit = defineEmits<{
|
||||||
|
|
||||||
<img :alt="$t('app_logo')" src="/logo.svg" w-20 h-20 height="80" width="80" mxa class="rtl-flip">
|
<img :alt="$t('app_logo')" src="/logo.svg" w-20 h-20 height="80" width="80" mxa class="rtl-flip">
|
||||||
<h1 mxa text-4xl mb4>
|
<h1 mxa text-4xl mb4>
|
||||||
{{ $t('help.title') }}
|
{{ $t('help_title') }}
|
||||||
</h1>
|
</h1>
|
||||||
<p>
|
<p>
|
||||||
{{ $t('help.desc_para1') }}
|
{{ $t('help_desc_para1') }}
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<b text-primary>{{ $t('help.desc_highlight') }}</b>
|
<b text-primary>{{ $t('help_desc_highlight') }}</b>
|
||||||
{{ $t('help.desc_para2') }}
|
{{ $t('help_desc_para2') }}
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
{{ $t('help.desc_para4') }}
|
{{ $t('help_desc_para4') }}
|
||||||
<a font-bold text-primary href="/m.webtoo.ls/@elk" target="_blank">
|
<a font-bold text-primary href="/m.webtoo.ls/@elk" target="_blank">
|
||||||
{{ $t('help.desc_para5') }}
|
{{ $t('help_desc_para5') }}
|
||||||
</a>
|
</a>
|
||||||
{{ $t('help.desc_para6') }}
|
{{ $t('help_desc_para6') }}
|
||||||
</p>
|
</p>
|
||||||
{{ $t('help.desc_para3') }}
|
{{ $t('help_desc_para3') }}
|
||||||
<p flex="~ gap-2 wrap" mxa>
|
<p flex="~ gap-2 wrap" mxa>
|
||||||
<template v-for="team of teams" :key="team.github">
|
<template v-for="team of teams" :key="team.github">
|
||||||
<a :href="`https://github.com/sponsors/${team.github}`" target="_blank" rounded-full transition duration-300 border="~ transparent" hover="scale-105 border-primary">
|
<a :href="`https://github.com/sponsors/${team.github}`" target="_blank" rounded-full transition duration-300 border="~ transparent" hover="scale-105 border-primary">
|
||||||
|
@ -41,7 +41,7 @@ const emit = defineEmits<{
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<button btn-solid mxa tabindex="2" @click="emit('close')">
|
<button btn-solid mxa tabindex="2" @click="emit('close')">
|
||||||
{{ $t('action.enter_app') }}
|
{{ $t('action_enter_app') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -19,7 +19,7 @@ defineProps<{
|
||||||
<NuxtLink
|
<NuxtLink
|
||||||
v-if="backOnSmallScreen || back" flex="~ gap1" items-center btn-text p-0
|
v-if="backOnSmallScreen || back" flex="~ gap1" items-center btn-text p-0
|
||||||
:class="{ 'lg:hidden': backOnSmallScreen }"
|
:class="{ 'lg:hidden': backOnSmallScreen }"
|
||||||
:aria-label="$t('nav.back')"
|
:aria-label="$t('nav_back')"
|
||||||
@click="$router.go(-1)"
|
@click="$router.go(-1)"
|
||||||
>
|
>
|
||||||
<div i-ri:arrow-left-line class="rtl-flip" />
|
<div i-ri:arrow-left-line class="rtl-flip" />
|
||||||
|
|
|
@ -18,10 +18,10 @@ const emit = defineEmits<{
|
||||||
</div>
|
</div>
|
||||||
<div flex justify-end gap-2>
|
<div flex justify-end gap-2>
|
||||||
<button btn-text @click="emit('choice', 'cancel')">
|
<button btn-text @click="emit('choice', 'cancel')">
|
||||||
{{ cancel || $t('common.confirm_dialog.cancel') }}
|
{{ cancel || $t('common_confirm_dialog_cancel') }}
|
||||||
</button>
|
</button>
|
||||||
<button btn-solid @click="emit('choice', 'confirm')">
|
<button btn-solid @click="emit('choice', 'confirm')">
|
||||||
{{ confirm || $t('common.confirm_dialog.confirm') }}
|
{{ confirm || $t('common_confirm_dialog_confirm') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -39,16 +39,16 @@ onUnmounted(() => locked.value = false)
|
||||||
<template>
|
<template>
|
||||||
<div relative h-full w-full flex pt-12 w-100vh @click="onClick">
|
<div relative h-full w-full flex pt-12 w-100vh @click="onClick">
|
||||||
<button
|
<button
|
||||||
v-if="hasNext" pointer-events-auto btn-action-icon bg="black/20" :aria-label="$t('action.previous')"
|
v-if="hasNext" pointer-events-auto btn-action-icon bg="black/20" :aria-label="$t('action_prev')"
|
||||||
hover:bg="black/40" dark:bg="white/30" dark-hover:bg="white/20" absolute top="1/2" right-1 z5
|
hover:bg="black/40" dark:bg="white/30" dark-hover:bg="white/20" absolute top="1/2" right-1 z5
|
||||||
:title="$t('action.next')" @click="next"
|
:title="$t('action_next')" @click="next"
|
||||||
>
|
>
|
||||||
<div i-ri:arrow-right-s-line text-white />
|
<div i-ri:arrow-right-s-line text-white />
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
v-if="hasPrev" pointer-events-auto btn-action-icon bg="black/20" aria-label="action.next"
|
v-if="hasPrev" pointer-events-auto btn-action-icon bg="black/20" :aria-label="$t('action_next')"
|
||||||
hover:bg="black/40" dark:bg="white/30" dark:hover-bg="white/20" absolute top="1/2" left-1 z5
|
hover:bg="black/40" dark:bg="white/30" dark:hover-bg="white/20" absolute top="1/2" left-1 z5
|
||||||
:title="$t('action.prev')" @click="prev"
|
:title="$t('action_prev')" @click="prev"
|
||||||
>
|
>
|
||||||
<div i-ri:arrow-left-s-line text-white />
|
<div i-ri:arrow-left-s-line text-white />
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -80,7 +80,7 @@ onBeforeUnmount(() => {
|
||||||
@click="toggleDark()"
|
@click="toggleDark()"
|
||||||
>
|
>
|
||||||
<span class="i-ri:sun-line dark:i-ri:moon-line flex-shrink-0 text-xl me-4 !align-middle" />
|
<span class="i-ri:sun-line dark:i-ri:moon-line flex-shrink-0 text-xl me-4 !align-middle" />
|
||||||
{{ colorMode.value === 'light' ? $t('menu.toggle_theme.dark') : $t('menu.toggle_theme.light') }}
|
{{ colorMode.value === 'light' ? $t('menu_toggle_theme_dark') : $t('menu_toggle_theme_light') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -14,26 +14,25 @@ function toggleDark() {
|
||||||
<template>
|
<template>
|
||||||
<footer p4 text-sm text-secondary-light flex="~ col">
|
<footer p4 text-sm text-secondary-light flex="~ col">
|
||||||
<div flex="~ gap2" items-center mb4>
|
<div flex="~ gap2" items-center mb4>
|
||||||
<CommonTooltip :content="$t('nav.toggle_theme')">
|
<CommonTooltip :content="$t('nav_toggle_theme')">
|
||||||
<button flex i-ri:sun-line dark-i-ri:moon-line text-lg :aria-label="$t('nav.toggle_theme')" @click="toggleDark()" />
|
<button flex i-ri:sun-line dark-i-ri:moon-line text-lg :aria-label="$t('nav_toggle_theme')" @click="toggleDark()" />
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
<CommonTooltip :content="$t('nav.zen_mode')">
|
<CommonTooltip :content="$t('nav_zen_mode')">
|
||||||
<button
|
<button
|
||||||
flex
|
flex
|
||||||
text-lg
|
text-lg
|
||||||
:class="userSettings.zenMode ? 'i-ri:layout-right-2-line' : 'i-ri:layout-right-line'"
|
:class="userSettings.zenMode ? 'i-ri:layout-right-2-line' : 'i-ri:layout-right-line'"
|
||||||
:aria-label="$t('nav.zen_mode')"
|
:aria-label="$t('nav_zen_mode')"
|
||||||
@click="userSettings.zenMode = !userSettings.zenMode"
|
@click="userSettings.zenMode = !userSettings.zenMode"
|
||||||
/>
|
/>
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<i18n-t v-if="isHydrated" keypath="nav.built_at">
|
<i18n v-if="isHydrated" path="nav_built_at" :args="{ date: buildTimeDate }">
|
||||||
<time :datetime="String(buildTimeDate)" :title="$d(buildTimeDate, 'long')">{{ buildTimeAgo }}</time>
|
<template #date="{ formattedDate }">
|
||||||
</i18n-t>
|
<time :datetime="String(buildTimeDate)" :title="formattedDate">{{ buildTimeAgo }}</time>
|
||||||
<span v-else>
|
</template>
|
||||||
{{ $t('nav.built_at', [$d(buildTimeDate, 'shortDate')]) }}
|
</i18n>
|
||||||
</span>
|
|
||||||
·
|
·
|
||||||
<!-- TODO click version to show changelog -->
|
<!-- TODO click version to show changelog -->
|
||||||
<span v-if="buildInfo.env === 'release'">v{{ buildInfo.version }}</span>
|
<span v-if="buildInfo.env === 'release'">v{{ buildInfo.version }}</span>
|
||||||
|
@ -52,7 +51,7 @@ function toggleDark() {
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<NuxtLink cursor-pointer hover:underline to="/settings/about">
|
<NuxtLink cursor-pointer hover:underline to="/settings/about">
|
||||||
{{ $t('settings.about.label') }}
|
{{ $t('settings_about_label') }}
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
·
|
·
|
||||||
<a href="/m.webtoo.ls/@elk" target="_blank">Mastodon</a>
|
<a href="/m.webtoo.ls/@elk" target="_blank">Mastodon</a>
|
||||||
|
|
|
@ -9,11 +9,11 @@ const { notifications } = useNotifications()
|
||||||
<nav sm:px3 flex="~ col gap2" shrink text-size-base leading-normal md:text-lg>
|
<nav sm:px3 flex="~ col gap2" shrink text-size-base leading-normal md:text-lg>
|
||||||
<div shrink hidden sm:block mt-4 />
|
<div shrink hidden sm:block mt-4 />
|
||||||
<SearchWidget lg:ms-1 lg:me-5 hidden xl:block />
|
<SearchWidget lg:ms-1 lg:me-5 hidden xl:block />
|
||||||
<NavSideItem :text="$t('nav.search')" to="/search" icon="i-ri:search-line" xl:hidden :command="command" />
|
<NavSideItem :text="$t('nav_search')" to="/search" icon="i-ri:search-line" xl:hidden :command="command" />
|
||||||
|
|
||||||
<div shrink hidden sm:block mt-4 />
|
<div shrink hidden sm:block mt-4 />
|
||||||
<NavSideItem :text="$t('nav.home')" to="/home" icon="i-ri:home-5-line" user-only :command="command" />
|
<NavSideItem :text="$t('nav_home')" to="/home" icon="i-ri:home-5-line" user-only :command="command" />
|
||||||
<NavSideItem :text="$t('nav.notifications')" to="/notifications" icon="i-ri:notification-4-line" user-only :command="command">
|
<NavSideItem :text="$t('nav_notifications')" to="/notifications" icon="i-ri:notification-4-line" user-only :command="command">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<div flex relative>
|
<div flex relative>
|
||||||
<div class="i-ri:notification-4-line" md:text-size-inherit text-xl />
|
<div class="i-ri:notification-4-line" md:text-size-inherit text-xl />
|
||||||
|
@ -23,17 +23,17 @@ const { notifications } = useNotifications()
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</NavSideItem>
|
</NavSideItem>
|
||||||
<NavSideItem :text="$t('nav.conversations')" to="/conversations" icon="i-ri:at-line" user-only :command="command" />
|
<NavSideItem :text="$t('nav_conversations')" to="/conversations" icon="i-ri:at-line" user-only :command="command" />
|
||||||
<NavSideItem :text="$t('nav.favourites')" to="/favourites" icon="i-ri:heart-3-line" user-only :command="command" />
|
<NavSideItem :text="$t('nav_favourites')" to="/favourites" icon="i-ri:heart-3-line" user-only :command="command" />
|
||||||
<NavSideItem :text="$t('nav.bookmarks')" to="/bookmarks" icon="i-ri:bookmark-line" user-only :command="command" />
|
<NavSideItem :text="$t('nav_bookmarks')" to="/bookmarks" icon="i-ri:bookmark-line" user-only :command="command" />
|
||||||
<NavSideItem :text="$t('action.compose')" to="/compose" icon="i-ri:quill-pen-line" user-only :command="command" />
|
<NavSideItem :text="$t('action_compose')" to="/compose" icon="i-ri:quill-pen-line" user-only :command="command" />
|
||||||
|
|
||||||
<div shrink hidden sm:block mt-4 />
|
<div shrink hidden sm:block mt-4 />
|
||||||
<NavSideItem :text="$t('nav.explore')" :to="`/${currentServer}/explore`" icon="i-ri:hashtag" :command="command" />
|
<NavSideItem :text="$t('nav_explore')" :to="`/${currentServer}/explore`" icon="i-ri:hashtag" :command="command" />
|
||||||
<NavSideItem :text="$t('nav.local')" :to="`/${currentServer}/public/local`" icon="i-ri:group-2-line " :command="command" />
|
<NavSideItem :text="$t('nav_local')" :to="`/${currentServer}/public/local`" icon="i-ri:group-2-line " :command="command" />
|
||||||
<NavSideItem :text="$t('nav.federated')" :to="`/${currentServer}/public`" icon="i-ri:earth-line" :command="command" />
|
<NavSideItem :text="$t('nav_federated')" :to="`/${currentServer}/public`" icon="i-ri:earth-line" :command="command" />
|
||||||
|
|
||||||
<div shrink hidden sm:block mt-4 />
|
<div shrink hidden sm:block mt-4 />
|
||||||
<NavSideItem :text="$t('nav.settings')" to="/settings" icon="i-ri:settings-3-line" :command="command" />
|
<NavSideItem :text="$t('nav_settings')" to="/settings" icon="i-ri:settings-3-line" :command="command" />
|
||||||
</nav>
|
</nav>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -20,7 +20,7 @@ const { env } = useBuildInfo()
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
<div hidden xl:flex items-center me-8 mt-2>
|
<div hidden xl:flex items-center me-8 mt-2>
|
||||||
<NuxtLink
|
<NuxtLink
|
||||||
:aria-label="$t('nav.back')"
|
:aria-label="$t('nav_back')"
|
||||||
@click="$router.go(-1)"
|
@click="$router.go(-1)"
|
||||||
>
|
>
|
||||||
<div i-ri:arrow-left-line class="rtl-flip" btn-text />
|
<div i-ri:arrow-left-line class="rtl-flip" btn-text />
|
||||||
|
|
|
@ -16,6 +16,6 @@
|
||||||
</template>
|
</template>
|
||||||
</VDropdown>
|
</VDropdown>
|
||||||
<button v-else btn-solid text-sm px-2 py-1 text-center xl:hidden @click="openSigninDialog()">
|
<button v-else btn-solid text-sm px-2 py-1 text-center xl:hidden @click="openSigninDialog()">
|
||||||
{{ $t('action.sign_in') }}
|
{{ $t('action_sign_in') }}
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -20,7 +20,7 @@ const { notification } = defineProps<{
|
||||||
<div i-ri:user-follow-fill me-1 color-primary />
|
<div i-ri:user-follow-fill me-1 color-primary />
|
||||||
<AccountDisplayName :account="notification.account" text-primary me-1 font-bold line-clamp-1 ws-pre-wrap break-all />
|
<AccountDisplayName :account="notification.account" text-primary me-1 font-bold line-clamp-1 ws-pre-wrap break-all />
|
||||||
<span ws-nowrap>
|
<span ws-nowrap>
|
||||||
{{ $t('notification.followed_you') }}
|
{{ $t('notification_followed_you') }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<AccountBigCard
|
<AccountBigCard
|
||||||
|
@ -36,7 +36,7 @@ const { notification } = defineProps<{
|
||||||
:account="notification.account"
|
:account="notification.account"
|
||||||
text-purple me-1 font-bold line-clamp-1 ws-pre-wrap break-all
|
text-purple me-1 font-bold line-clamp-1 ws-pre-wrap break-all
|
||||||
/>
|
/>
|
||||||
<span>{{ $t("notification.signed_up") }}</span>
|
<span>{{ $t("notification_signed_up") }}</span>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="notification.type === 'follow_request'">
|
<template v-else-if="notification.type === 'follow_request'">
|
||||||
|
@ -74,7 +74,7 @@ const { notification } = defineProps<{
|
||||||
<div i-ri:edit-2-fill text-xl me-1 text-secondary />
|
<div i-ri:edit-2-fill text-xl me-1 text-secondary />
|
||||||
<AccountInlineInfo :account="notification.account" me1 />
|
<AccountInlineInfo :account="notification.account" me1 />
|
||||||
<span ws-nowrap>
|
<span ws-nowrap>
|
||||||
{{ $t('notification.update_status') }}
|
{{ $t('notification_update_status') }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -85,7 +85,7 @@ const { notification } = defineProps<{
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<div text-red font-bold>
|
<div text-red font-bold>
|
||||||
[DEV] {{ $t('notification.missing_type') }} '{{ notification.type }}'
|
[DEV] {{ $t('notification_missing_type') }} '{{ notification.type }}'
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</article>
|
</article>
|
||||||
|
|
|
@ -28,13 +28,13 @@ const isLegacyAccount = computed(() => !currentUser.value?.vapidKey)
|
||||||
>
|
>
|
||||||
<header flex items-center pb-2>
|
<header flex items-center pb-2>
|
||||||
<h2 id="notifications-warning" text-md font-bold w-full>
|
<h2 id="notifications-warning" text-md font-bold w-full>
|
||||||
{{ $t('settings.notifications.push_notifications.warning.enable_title') }}
|
{{ $t('settings_notifications_push_notifications_warning_enable_title') }}
|
||||||
</h2>
|
</h2>
|
||||||
<button
|
<button
|
||||||
v-if="closeableHeader"
|
v-if="closeableHeader"
|
||||||
flex rounded-4
|
flex rounded-4
|
||||||
type="button"
|
type="button"
|
||||||
:title="$t('settings.notifications.push_notifications.warning.enable_close')"
|
:title="$t('settings_notifications_push_notifications_warning_enable_close')"
|
||||||
hover:bg-active cursor-pointer transition-100
|
hover:bg-active cursor-pointer transition-100
|
||||||
:disabled="busy"
|
:disabled="busy"
|
||||||
@click="$emit('hide')"
|
@click="$emit('hide')"
|
||||||
|
@ -44,20 +44,20 @@ const isLegacyAccount = computed(() => !currentUser.value?.vapidKey)
|
||||||
</header>
|
</header>
|
||||||
<template v-if="closeableHeader">
|
<template v-if="closeableHeader">
|
||||||
<p xl:hidden>
|
<p xl:hidden>
|
||||||
{{ $t('settings.notifications.push_notifications.warning.enable_description') }}
|
{{ $t('settings_notifications_push_notifications_warning_enable_description') }}
|
||||||
</p>
|
</p>
|
||||||
<p xl:hidden>
|
<p xl:hidden>
|
||||||
{{ $t('settings.notifications.push_notifications.warning.enable_description_mobile') }}
|
{{ $t('settings_notifications_push_notifications_warning_enable_description_mobile') }}
|
||||||
</p>
|
</p>
|
||||||
<p :class="xl ? null : 'hidden'">
|
<p :class="xl ? null : 'hidden'">
|
||||||
{{ $t('settings.notifications.push_notifications.warning.enable_description_desktop') }}
|
{{ $t('settings_notifications_push_notifications_warning_enable_description_desktop') }}
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>
|
<p v-else>
|
||||||
{{ $t('settings.notifications.push_notifications.warning.enable_description_settings') }}
|
{{ $t('settings_notifications_push_notifications_warning_enable_description_settings') }}
|
||||||
</p>
|
</p>
|
||||||
<p v-if="isLegacyAccount">
|
<p v-if="isLegacyAccount">
|
||||||
{{ $t('settings.notifications.push_notifications.warning.re_auth') }}
|
{{ $t('settings_notifications_push_notifications_warning_re_auth') }}
|
||||||
</p>
|
</p>
|
||||||
<button
|
<button
|
||||||
btn-outline rounded-full font-bold py4 flex="~ gap2 center" m5
|
btn-outline rounded-full font-bold py4 flex="~ gap2 center" m5
|
||||||
|
@ -67,7 +67,7 @@ const isLegacyAccount = computed(() => !currentUser.value?.vapidKey)
|
||||||
@click="$emit('subscribe')"
|
@click="$emit('subscribe')"
|
||||||
>
|
>
|
||||||
<span aria-hidden="true" :class="busy && animate ? 'i-ri:loader-2-fill animate-spin' : 'i-ri:check-line'" />
|
<span aria-hidden="true" :class="busy && animate ? 'i-ri:loader-2-fill animate-spin' : 'i-ri:check-line'" />
|
||||||
<span>{{ $t('settings.notifications.push_notifications.warning.enable_desktop') }}</span>
|
<span>{{ $t('settings_notifications_push_notifications_warning_enable_desktop') }}</span>
|
||||||
</button>
|
</button>
|
||||||
<slot name="error" />
|
<slot name="error" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -18,7 +18,7 @@ const lang = $computed(() => {
|
||||||
<div i-ri:user-follow-fill me-3 color-primary aria-hidden="true" />
|
<div i-ri:user-follow-fill me-3 color-primary aria-hidden="true" />
|
||||||
<template v-if="count > 1">
|
<template v-if="count > 1">
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="notification.followed_you_count"
|
keypath="notification_followed_you_count"
|
||||||
:count="count"
|
:count="count"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
@ -28,7 +28,7 @@ const lang = $computed(() => {
|
||||||
text-primary me-1 font-bold line-clamp-1 ws-pre-wrap break-all
|
text-primary me-1 font-bold line-clamp-1 ws-pre-wrap break-all
|
||||||
/>
|
/>
|
||||||
<span me-1 ws-nowrap>
|
<span me-1 ws-nowrap>
|
||||||
{{ $t('notification.followed_you') }}
|
{{ $t('notification_followed_you') }}
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -131,7 +131,7 @@ const { formatNumber } = useHumanReadableNumber()
|
||||||
<CommonPaginator :paginator="paginator" :preprocess="preprocess" :stream="stream" :eager="3" event-type="notification">
|
<CommonPaginator :paginator="paginator" :preprocess="preprocess" :stream="stream" :eager="3" event-type="notification">
|
||||||
<template #updater="{ number, update }">
|
<template #updater="{ number, update }">
|
||||||
<button py-4 border="b base" flex="~ col" p-3 w-full text-primary font-bold @click="() => { update(); clearNotifications() }">
|
<button py-4 border="b base" flex="~ col" p-3 w-full text-primary font-bold @click="() => { update(); clearNotifications() }">
|
||||||
{{ $t('timeline.show_new_items', number, { named: { v: formatNumber(number) } }) }}
|
{{ $t('timeline_show_new_items', { count: number }) }}
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
<template #items="{ items }">
|
<template #items="{ items }">
|
||||||
|
|
|
@ -13,7 +13,7 @@ const {
|
||||||
subscribe,
|
subscribe,
|
||||||
unsubscribe,
|
unsubscribe,
|
||||||
} = usePushManager()
|
} = usePushManager()
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
const pwaEnabled = useRuntimeConfig().public.pwaEnabled
|
const pwaEnabled = useRuntimeConfig().public.pwaEnabled
|
||||||
|
|
||||||
|
@ -68,12 +68,15 @@ const doSubscribe = async () => {
|
||||||
try {
|
try {
|
||||||
const result = await subscribe()
|
const result = await subscribe()
|
||||||
if (result !== 'subscribed') {
|
if (result !== 'subscribed') {
|
||||||
subscribeError = t(`settings.notifications.push_notifications.subscription_error.${result === 'notification-denied' ? 'permission_denied' : 'request_error'}`)
|
subscribeError = result === 'notification-denied'
|
||||||
|
? $t('settings_notifications_push_notifications_subscription_error_permission_denied')
|
||||||
|
: $t('settings_notifications_push_notifications_subscription_error_request_error')
|
||||||
|
|
||||||
showSubscribeError = true
|
showSubscribeError = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch {
|
catch {
|
||||||
subscribeError = t('settings.notifications.push_notifications.subscription_error.request_error')
|
subscribeError = $t('settings_notifications_push_notifications_subscription_error_request_error')
|
||||||
showSubscribeError = true
|
showSubscribeError = true
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
|
@ -104,28 +107,28 @@ onActivated(() => (busy = false))
|
||||||
<Transition name="slide-down">
|
<Transition name="slide-down">
|
||||||
<div v-if="show" flex="~ col" border="b base">
|
<div v-if="show" flex="~ col" border="b base">
|
||||||
<h3 id="pn-settings" px6 py4 mt2 font-bold text-xl flex="~ gap-1" items-center>
|
<h3 id="pn-settings" px6 py4 mt2 font-bold text-xl flex="~ gap-1" items-center>
|
||||||
{{ $t('settings.notifications.push_notifications.label') }}
|
{{ $t('settings_notifications_push_notifications_label') }}
|
||||||
</h3>
|
</h3>
|
||||||
<template v-if="isSupported">
|
<template v-if="isSupported">
|
||||||
<div v-if="isSubscribed" flex="~ col">
|
<div v-if="isSubscribed" flex="~ col">
|
||||||
<form flex="~ col" gap-y-2 px6 pb4 @submit.prevent="saveSettings">
|
<form flex="~ col" gap-y-2 px6 pb4 @submit.prevent="saveSettings">
|
||||||
<p id="pn-instructions" text-sm pb2 aria-hidden="true">
|
<p id="pn-instructions" text-sm pb2 aria-hidden="true">
|
||||||
{{ $t('settings.notifications.push_notifications.instructions') }}
|
{{ $t('settings_notifications_push_notifications_instructions') }}
|
||||||
</p>
|
</p>
|
||||||
<fieldset flex="~ col" gap-y-1 py-1>
|
<fieldset flex="~ col" gap-y-1 py-1>
|
||||||
<legend>{{ $t('settings.notifications.push_notifications.alerts.title') }}</legend>
|
<legend>{{ $t('settings_notifications_push_notifications_alerts_title') }}</legend>
|
||||||
<CommonCheckbox v-model="pushNotificationData.follow" hover :label="$t('settings.notifications.push_notifications.alerts.follow')" />
|
<CommonCheckbox v-model="pushNotificationData.follow" hover :label="$t('settings_notifications_push_notifications_alerts_follow')" />
|
||||||
<CommonCheckbox v-model="pushNotificationData.favourite" hover :label="$t('settings.notifications.push_notifications.alerts.favourite')" />
|
<CommonCheckbox v-model="pushNotificationData.favourite" hover :label="$t('settings_notifications_push_notifications_alerts_favourite')" />
|
||||||
<CommonCheckbox v-model="pushNotificationData.reblog" hover :label="$t('settings.notifications.push_notifications.alerts.reblog')" />
|
<CommonCheckbox v-model="pushNotificationData.reblog" hover :label="$t('settings_notifications_push_notifications_alerts_reblog')" />
|
||||||
<CommonCheckbox v-model="pushNotificationData.mention" hover :label="$t('settings.notifications.push_notifications.alerts.mention')" />
|
<CommonCheckbox v-model="pushNotificationData.mention" hover :label="$t('settings_notifications_push_notifications_alerts_mention')" />
|
||||||
<CommonCheckbox v-model="pushNotificationData.poll" hover :label="$t('settings.notifications.push_notifications.alerts.poll')" />
|
<CommonCheckbox v-model="pushNotificationData.poll" hover :label="$t('settings_notifications_push_notifications_alerts_poll')" />
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<fieldset flex="~ col" gap-y-1 py-1>
|
<fieldset flex="~ col" gap-y-1 py-1>
|
||||||
<legend>{{ $t('settings.notifications.push_notifications.policy.title') }}</legend>
|
<legend>{{ $t('settings_notifications_push_notifications_policy_title') }}</legend>
|
||||||
<CommonRadio v-model="pushNotificationData.policy" hover value="all" :label="$t('settings.notifications.push_notifications.policy.all')" />
|
<CommonRadio v-model="pushNotificationData.policy" hover value="all" :label="$t('settings_notifications_push_notifications_policy_all')" />
|
||||||
<CommonRadio v-model="pushNotificationData.policy" hover value="followed" :label="$t('settings.notifications.push_notifications.policy.followed')" />
|
<CommonRadio v-model="pushNotificationData.policy" hover value="followed" :label="$t('settings_notifications_push_notifications_policy_followed')" />
|
||||||
<CommonRadio v-model="pushNotificationData.policy" hover value="follower" :label="$t('settings.notifications.push_notifications.policy.follower')" />
|
<CommonRadio v-model="pushNotificationData.policy" hover value="follower" :label="$t('settings_notifications_push_notifications_policy_follower')" />
|
||||||
<CommonRadio v-model="pushNotificationData.policy" hover value="none" :label="$t('settings.notifications.push_notifications.policy.none')" />
|
<CommonRadio v-model="pushNotificationData.policy" hover value="none" :label="$t('settings_notifications_push_notifications_policy_none')" />
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<div flex="~ col" gap-y-4 gap-x-2 py-1 sm="~ justify-between flex-row">
|
<div flex="~ col" gap-y-4 gap-x-2 py-1 sm="~ justify-between flex-row">
|
||||||
<button
|
<button
|
||||||
|
@ -134,7 +137,7 @@ onActivated(() => (busy = false))
|
||||||
:disabled="busy || !saveEnabled"
|
:disabled="busy || !saveEnabled"
|
||||||
>
|
>
|
||||||
<span :class="busy && animateSave ? 'i-ri:loader-2-fill animate-spin' : 'i-ri:save-2-fill'" />
|
<span :class="busy && animateSave ? 'i-ri:loader-2-fill animate-spin' : 'i-ri:save-2-fill'" />
|
||||||
{{ $t('settings.notifications.push_notifications.save_settings') }}
|
{{ $t('settings_notifications_push_notifications_save_settings') }}
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
btn-outline font-bold py2 full-w sm-wa flex="~ gap2 center"
|
btn-outline font-bold py2 full-w sm-wa flex="~ gap2 center"
|
||||||
|
@ -144,7 +147,7 @@ onActivated(() => (busy = false))
|
||||||
@click="undoChanges"
|
@click="undoChanges"
|
||||||
>
|
>
|
||||||
<span aria-hidden="true" class="i-material-symbols:undo-rounded" />
|
<span aria-hidden="true" class="i-material-symbols:undo-rounded" />
|
||||||
{{ $t('settings.notifications.push_notifications.undo_settings') }}
|
{{ $t('settings_notifications_push_notifications_undo_settings') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
@ -156,7 +159,7 @@ onActivated(() => (busy = false))
|
||||||
:disabled="busy"
|
:disabled="busy"
|
||||||
>
|
>
|
||||||
<span aria-hidden="true" :class="busy && animateRemoveSubscription ? 'i-ri:loader-2-fill animate-spin' : 'i-material-symbols:cancel-rounded'" />
|
<span aria-hidden="true" :class="busy && animateRemoveSubscription ? 'i-ri:loader-2-fill animate-spin' : 'i-material-symbols:cancel-rounded'" />
|
||||||
{{ $t('settings.notifications.push_notifications.unsubscribe') }}
|
{{ $t('settings_notifications_push_notifications_unsubscribe') }}
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -180,7 +183,7 @@ onActivated(() => (busy = false))
|
||||||
</template>
|
</template>
|
||||||
<div v-else px6 pb4 role="alert" aria-labelledby="n-unsupported">
|
<div v-else px6 pb4 role="alert" aria-labelledby="n-unsupported">
|
||||||
<p id="n-unsupported">
|
<p id="n-unsupported">
|
||||||
{{ $t('settings.notifications.push_notifications.unsupported') }}
|
{{ $t('settings_notifications_push_notifications_unsupported') }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -22,13 +22,13 @@ const { modelValue } = defineModel<{
|
||||||
<head id="notification-failed" flex justify-between>
|
<head id="notification-failed" flex justify-between>
|
||||||
<div flex items-center gap-x-2 font-bold>
|
<div flex items-center gap-x-2 font-bold>
|
||||||
<div aria-hidden="true" i-ri:error-warning-fill />
|
<div aria-hidden="true" i-ri:error-warning-fill />
|
||||||
<p>{{ title ?? $t('settings.notifications.push_notifications.subscription_error.title') }}</p>
|
<p>{{ title ?? $t('settings_notifications_push_notifications_subscription_error_title') }}</p>
|
||||||
</div>
|
</div>
|
||||||
<CommonTooltip placement="bottom" :content="$t('settings.notifications.push_notifications.subscription_error.clear_error')">
|
<CommonTooltip placement="bottom" :content="$t('settings_notifications_push_notifications_subscription_error_clear_error')">
|
||||||
<button
|
<button
|
||||||
flex rounded-4 p1
|
flex rounded-4 p1
|
||||||
hover:bg-active cursor-pointer transition-100
|
hover:bg-active cursor-pointer transition-100
|
||||||
:aria-label="$t('settings.notifications.push_notifications.subscription_error.clear_error')"
|
:aria-label="$t('settings_notifications_push_notifications_subscription_error_clear_error')"
|
||||||
@click="modelValue = false"
|
@click="modelValue = false"
|
||||||
>
|
>
|
||||||
<span aria-hidden="true" w="1.75em" h="1.75em" i-ri:close-line />
|
<span aria-hidden="true" w="1.75em" h="1.75em" i-ri:close-line />
|
||||||
|
|
|
@ -29,7 +29,7 @@ const toggleApply = () => {
|
||||||
<div absolute right-2 top-2>
|
<div absolute right-2 top-2>
|
||||||
<div
|
<div
|
||||||
v-if="removable"
|
v-if="removable"
|
||||||
:aria-label="$t('attachment.remove_label')"
|
:aria-label="$t('attachment_remove_label')"
|
||||||
hover:bg="gray/40" transition-100 p-1 rounded-5 cursor-pointer
|
hover:bg="gray/40" transition-100 p-1 rounded-5 cursor-pointer
|
||||||
:class="[isHydrated && isSmallScreen ? '' : 'op-0 group-hover:op-100hover:']"
|
:class="[isHydrated && isSmallScreen ? '' : 'op-0 group-hover:op-100hover:']"
|
||||||
mix-blend-difference
|
mix-blend-difference
|
||||||
|
@ -40,7 +40,7 @@ const toggleApply = () => {
|
||||||
</div>
|
</div>
|
||||||
<div absolute right-2 bottom-2>
|
<div absolute right-2 bottom-2>
|
||||||
<button class="bg-black/75" text-white px2 py1 rounded-2 @click="isEditDialogOpen = true">
|
<button class="bg-black/75" text-white px2 py1 rounded-2 @click="isEditDialogOpen = true">
|
||||||
{{ $t('action.edit') }}
|
{{ $t('action_edit') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<ModalDialog
|
<ModalDialog
|
||||||
|
@ -52,16 +52,16 @@ const toggleApply = () => {
|
||||||
<div flex flex-col-reverse gap-5 md:flex-row>
|
<div flex flex-col-reverse gap-5 md:flex-row>
|
||||||
<div flex flex-col gap-2 justify-between>
|
<div flex flex-col gap-2 justify-between>
|
||||||
<h1 id="edit-attachment" font-bold>
|
<h1 id="edit-attachment" font-bold>
|
||||||
{{ $t('attachment.edit_title') }}
|
{{ $t('attachment_edit_title') }}
|
||||||
</h1>
|
</h1>
|
||||||
<div flex flex-col gap-2>
|
<div flex flex-col gap-2>
|
||||||
<textarea v-model="description" p-3 h-50 bg-base rounded-2 border-strong border-1 md:w-100 />
|
<textarea v-model="description" p-3 h-50 bg-base rounded-2 border-strong border-1 md:w-100 />
|
||||||
<button btn-outline @click="toggleApply">
|
<button btn-outline @click="toggleApply">
|
||||||
{{ $t('action.apply') }}
|
{{ $t('action_apply') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<button btn-outline @click="isEditDialogOpen = false">
|
<button btn-outline @click="isEditDialogOpen = false">
|
||||||
{{ $t('action.close') }}
|
{{ $t('action_close') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<StatusAttachment :attachment="attachment" w-full />
|
<StatusAttachment :attachment="attachment" w-full />
|
||||||
|
|
|
@ -17,6 +17,6 @@ const disabledVisual = computed(() => isMastoInitialised.value && !currentUser.v
|
||||||
@click="openPublishDialog()"
|
@click="openPublishDialog()"
|
||||||
>
|
>
|
||||||
<div i-ri:quill-pen-line />
|
<div i-ri:quill-pen-line />
|
||||||
<span hidden xl:block>{{ $t('action.compose') }}</span>
|
<span hidden xl:block>{{ $t('action_compose') }}</span>
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -6,7 +6,7 @@ let { modelValue } = $defineModel<{
|
||||||
modelValue: string
|
modelValue: string
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
const languageKeyword = $ref('')
|
const languageKeyword = $ref('')
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ function chooseLanguage(language: string) {
|
||||||
<div>
|
<div>
|
||||||
<input
|
<input
|
||||||
v-model="languageKeyword"
|
v-model="languageKeyword"
|
||||||
:placeholder="t('language.search')"
|
:placeholder="$t('language_search')"
|
||||||
p2 mb2 border-rounded w-full bg-transparent
|
p2 mb2 border-rounded w-full bg-transparent
|
||||||
outline-none border="~ base"
|
outline-none border="~ base"
|
||||||
>
|
>
|
||||||
|
|
|
@ -17,7 +17,7 @@ const chooseVisibility = (visibility: string) => {
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<CommonTooltip placement="top" :content="editing ? $t(`visibility.${currentVisibility.value}`) : $t('tooltip.change_content_visibility')">
|
<CommonTooltip placement="top" :content="editing ? $t(`visibility.${currentVisibility.value}`) : $t('tooltip_change_content_visibility')">
|
||||||
<CommonDropdown placement="bottom">
|
<CommonDropdown placement="bottom">
|
||||||
<slot :visibility="currentVisibility" />
|
<slot :visibility="currentVisibility" />
|
||||||
<template #popper>
|
<template #popper>
|
||||||
|
@ -25,8 +25,8 @@ const chooseVisibility = (visibility: string) => {
|
||||||
v-for="visibility in statusVisibilities"
|
v-for="visibility in statusVisibilities"
|
||||||
:key="visibility.value"
|
:key="visibility.value"
|
||||||
:icon="visibility.icon"
|
:icon="visibility.icon"
|
||||||
:text="$t(`visibility.${visibility.value}`)"
|
:text="$t(`visibility_${visibility.value}`)"
|
||||||
:description="$t(`visibility.${visibility.value}_desc`)"
|
:description="$t(`visibility_${visibility.value}_desc`)"
|
||||||
:checked="visibility.value === modelValue"
|
:checked="visibility.value === modelValue"
|
||||||
@click="chooseVisibility(visibility.value)"
|
@click="chooseVisibility(visibility.value)"
|
||||||
/>
|
/>
|
||||||
|
|
|
@ -27,7 +27,7 @@ const emit = defineEmits<{
|
||||||
(evt: 'published', status: mastodon.v1.Status): void
|
(evt: 'published', status: mastodon.v1.Status): void
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
let { draft, isEmpty } = $(useDraft(draftKey, initial))
|
let { draft, isEmpty } = $(useDraft(draftKey, initial))
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ const { editor } = useTiptap({
|
||||||
draft.lastUpdated = Date.now()
|
draft.lastUpdated = Date.now()
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
placeholder: computed(() => placeholder ?? draft.params.inReplyToId ? t('placeholder.replying') : t('placeholder.default_1')),
|
placeholder: computed(() => placeholder ?? draft.params.inReplyToId ? $t('placeholder_replying') : $t('placeholder_default_1')),
|
||||||
autofocus: shouldExpanded,
|
autofocus: shouldExpanded,
|
||||||
onSubmit: publish,
|
onSubmit: publish,
|
||||||
onFocus() {
|
onFocus() {
|
||||||
|
@ -116,7 +116,7 @@ async function uploadAttachments(files: File[]) {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
isExceedingAttachmentLimit = true
|
isExceedingAttachmentLimit = true
|
||||||
failed = [...failed, [file.name, t('state.attachments_limit_error')]]
|
failed = [...failed, [file.name, $t('state_attachments_limit_error')]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
isUploading = false
|
isUploading = false
|
||||||
|
@ -198,7 +198,7 @@ const isPublishDisabled = computed(() => {
|
||||||
<template v-if="draft.editingStatus">
|
<template v-if="draft.editingStatus">
|
||||||
<div flex="~ col gap-1">
|
<div flex="~ col gap-1">
|
||||||
<div id="state-editing" text-secondary self-center>
|
<div id="state-editing" text-secondary self-center>
|
||||||
{{ $t('state.editing') }}
|
{{ $t('state_editing') }}
|
||||||
</div>
|
</div>
|
||||||
<StatusCard :status="draft.editingStatus" :actions="false" :hover="false" px-0 />
|
<StatusCard :status="draft.editingStatus" :actions="false" :hover="false" px-0 />
|
||||||
</div>
|
</div>
|
||||||
|
@ -220,7 +220,7 @@ const isPublishDisabled = computed(() => {
|
||||||
<input
|
<input
|
||||||
v-model="draft.params.spoilerText"
|
v-model="draft.params.spoilerText"
|
||||||
type="text"
|
type="text"
|
||||||
:placeholder="$t('placeholder.content_warning')"
|
:placeholder="$t('placeholder_content_warning')"
|
||||||
p2 border-rounded w-full bg-transparent
|
p2 border-rounded w-full bg-transparent
|
||||||
outline-none border="~ base"
|
outline-none border="~ base"
|
||||||
>
|
>
|
||||||
|
@ -236,7 +236,7 @@ const isPublishDisabled = computed(() => {
|
||||||
|
|
||||||
<div v-if="isUploading" flex gap-1 items-center text-sm p1 text-primary>
|
<div v-if="isUploading" flex gap-1 items-center text-sm p1 text-primary>
|
||||||
<div i-ri:loader-2-fill animate-spin />
|
<div i-ri:loader-2-fill animate-spin />
|
||||||
{{ $t('state.uploading') }}
|
{{ $t('state_uploading') }}
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
v-else-if="failed.length > 0"
|
v-else-if="failed.length > 0"
|
||||||
|
@ -251,13 +251,13 @@ const isPublishDisabled = computed(() => {
|
||||||
<head id="upload-failed" flex justify-between>
|
<head id="upload-failed" flex justify-between>
|
||||||
<div flex items-center gap-x-2 font-bold>
|
<div flex items-center gap-x-2 font-bold>
|
||||||
<div aria-hidden="true" i-ri:error-warning-fill />
|
<div aria-hidden="true" i-ri:error-warning-fill />
|
||||||
<p>{{ $t('state.upload_failed') }}</p>
|
<p>{{ $t('state_upload_failed') }}</p>
|
||||||
</div>
|
</div>
|
||||||
<CommonTooltip placement="bottom" :content="$t('action.clear_upload_failed')">
|
<CommonTooltip placement="bottom" :content="$t('action_clear_upload_failed')">
|
||||||
<button
|
<button
|
||||||
flex rounded-4 p1
|
flex rounded-4 p1
|
||||||
hover:bg-active cursor-pointer transition-100
|
hover:bg-active cursor-pointer transition-100
|
||||||
:aria-label="$t('action.clear_upload_failed')"
|
:aria-label="$t('action_clear_upload_failed')"
|
||||||
@click="failed = []"
|
@click="failed = []"
|
||||||
>
|
>
|
||||||
<span aria-hidden="true" w="1.75em" h="1.75em" i-ri:close-line />
|
<span aria-hidden="true" w="1.75em" h="1.75em" i-ri:close-line />
|
||||||
|
@ -265,7 +265,7 @@ const isPublishDisabled = computed(() => {
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
</head>
|
</head>
|
||||||
<div v-if="isExceedingAttachmentLimit" id="uploads-per-post" ps-2 sm:ps-1 text-small>
|
<div v-if="isExceedingAttachmentLimit" id="uploads-per-post" ps-2 sm:ps-1 text-small>
|
||||||
{{ $t('state.attachments_exceed_server_limit') }}
|
{{ $t('state_attachments_exceed_server_limit') }}
|
||||||
</div>
|
</div>
|
||||||
<ol ps-2 sm:ps-1>
|
<ol ps-2 sm:ps-1>
|
||||||
<li v-for="error in failed" :key="error[0]" flex="~ col sm:row" gap-y-1 sm:gap-x-2>
|
<li v-for="error in failed" :key="error[0]" flex="~ col sm:row" gap-y-1 sm:gap-x-2>
|
||||||
|
@ -296,22 +296,22 @@ const isPublishDisabled = computed(() => {
|
||||||
@select="insertEmoji"
|
@select="insertEmoji"
|
||||||
@select-custom="insertCustomEmoji"
|
@select-custom="insertCustomEmoji"
|
||||||
>
|
>
|
||||||
<button btn-action-icon :title="$t('tooltip.emoji')">
|
<button btn-action-icon :title="$t('tooltip_emoji')">
|
||||||
<div i-ri:emotion-line />
|
<div i-ri:emotion-line />
|
||||||
</button>
|
</button>
|
||||||
</PublishEmojiPicker>
|
</PublishEmojiPicker>
|
||||||
|
|
||||||
<CommonTooltip placement="top" :content="$t('tooltip.add_media')">
|
<CommonTooltip placement="top" :content="$t('tooltip_add_media')">
|
||||||
<button btn-action-icon :aria-label="$t('tooltip.add_media')" @click="pickAttachments">
|
<button btn-action-icon :aria-label="$t('tooltip_add_media')" @click="pickAttachments">
|
||||||
<div i-ri:image-add-line />
|
<div i-ri:image-add-line />
|
||||||
</button>
|
</button>
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
|
|
||||||
<template v-if="editor">
|
<template v-if="editor">
|
||||||
<CommonTooltip placement="top" :content="$t('tooltip.toggle_code_block')">
|
<CommonTooltip placement="top" :content="$t('tooltip_toggle_code_block')">
|
||||||
<button
|
<button
|
||||||
btn-action-icon
|
btn-action-icon
|
||||||
:aria-label="$t('tooltip.toggle_code_block')"
|
:aria-label="$t('tooltip_toggle_code_block')"
|
||||||
:class="editor.isActive('codeBlock') ? 'text-primary' : ''"
|
:class="editor.isActive('codeBlock') ? 'text-primary' : ''"
|
||||||
@click="editor?.chain().focus().toggleCodeBlock().run()"
|
@click="editor?.chain().focus().toggleCodeBlock().run()"
|
||||||
>
|
>
|
||||||
|
@ -326,16 +326,16 @@ const isPublishDisabled = computed(() => {
|
||||||
{{ characterCount ?? 0 }}<span text-secondary-light>/</span><span text-secondary-light>{{ characterLimit }}</span>
|
{{ characterCount ?? 0 }}<span text-secondary-light>/</span><span text-secondary-light>{{ characterLimit }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<CommonTooltip placement="top" :content="$t('tooltip.add_content_warning')">
|
<CommonTooltip placement="top" :content="$t('tooltip_add_content_warning')">
|
||||||
<button btn-action-icon :aria-label="$t('tooltip.add_content_warning')" @click="toggleSensitive">
|
<button btn-action-icon :aria-label="$t('tooltip_add_content_warning')" @click="toggleSensitive">
|
||||||
<div v-if="draft.params.sensitive" i-ri:alarm-warning-fill text-orange />
|
<div v-if="draft.params.sensitive" i-ri:alarm-warning-fill text-orange />
|
||||||
<div v-else i-ri:alarm-warning-line />
|
<div v-else i-ri:alarm-warning-line />
|
||||||
</button>
|
</button>
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
|
|
||||||
<CommonTooltip placement="top" :content="$t('tooltip.change_language')">
|
<CommonTooltip placement="top" :content="$t('tooltip_change_language')">
|
||||||
<CommonDropdown placement="bottom" auto-boundary-max-size>
|
<CommonDropdown placement="bottom" auto-boundary-max-size>
|
||||||
<button btn-action-icon :aria-label="$t('tooltip.change_language')" w-12 mr--1>
|
<button btn-action-icon :aria-label="$t('tooltip_change_language')" w-12 mr--1>
|
||||||
<div i-ri:translate-2 />
|
<div i-ri:translate-2 />
|
||||||
<div i-ri:arrow-down-s-line text-sm text-secondary me--1 />
|
<div i-ri:arrow-down-s-line text-sm text-secondary me--1 />
|
||||||
</button>
|
</button>
|
||||||
|
@ -348,14 +348,14 @@ const isPublishDisabled = computed(() => {
|
||||||
|
|
||||||
<PublishVisibilityPicker v-model="draft.params.visibility" :editing="!!draft.editingStatus">
|
<PublishVisibilityPicker v-model="draft.params.visibility" :editing="!!draft.editingStatus">
|
||||||
<template #default="{ visibility }">
|
<template #default="{ visibility }">
|
||||||
<button :disabled="!!draft.editingStatus" :aria-label="$t('tooltip.change_content_visibility')" btn-action-icon :class="{ 'w-12': !draft.editingStatus }">
|
<button :disabled="!!draft.editingStatus" :aria-label="$t('tooltip_change_content_visibility')" btn-action-icon :class="{ 'w-12': !draft.editingStatus }">
|
||||||
<div :class="visibility.icon" />
|
<div :class="visibility.icon" />
|
||||||
<div v-if="!draft.editingStatus" i-ri:arrow-down-s-line text-sm text-secondary me--1 />
|
<div v-if="!draft.editingStatus" i-ri:arrow-down-s-line text-sm text-secondary me--1 />
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
</PublishVisibilityPicker>
|
</PublishVisibilityPicker>
|
||||||
|
|
||||||
<CommonTooltip id="publish-tooltip" placement="top" :content="$t('tooltip.add_publishable_content')" :disabled="!isPublishDisabled">
|
<CommonTooltip id="publish-tooltip" placement="top" :content="$t('tooltip_add_publishable_content')" :disabled="!isPublishDisabled">
|
||||||
<button
|
<button
|
||||||
btn-solid rounded-3 text-sm w-full
|
btn-solid rounded-3 text-sm w-full
|
||||||
md:w-fit
|
md:w-fit
|
||||||
|
@ -364,7 +364,7 @@ const isPublishDisabled = computed(() => {
|
||||||
aria-describedby="publish-tooltip"
|
aria-describedby="publish-tooltip"
|
||||||
@click="publish"
|
@click="publish"
|
||||||
>
|
>
|
||||||
{{ !draft.editingStatus ? $t('action.publish') : $t('action.save_changes') }}
|
{{ !draft.editingStatus ? $t('action_publish') : $t('action_save_changes') }}
|
||||||
</button>
|
</button>
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -27,7 +27,7 @@ onMounted(() => {
|
||||||
<div text-right h-8>
|
<div text-right h-8>
|
||||||
<VDropdown v-if="nonEmptyDrafts.length" placement="bottom-end">
|
<VDropdown v-if="nonEmptyDrafts.length" placement="bottom-end">
|
||||||
<button btn-text flex="inline center">
|
<button btn-text flex="inline center">
|
||||||
{{ $t('compose.drafts', nonEmptyDrafts.length, { named: { v: formatNumber(nonEmptyDrafts.length) } }) }} <div aria-hidden="true" i-ri:arrow-down-s-line />
|
{{ $t('compose_drafts', { count: formatNumber(nonEmptyDrafts.length) }) }} <div aria-hidden="true" i-ri:arrow-down-s-line />
|
||||||
</button>
|
</button>
|
||||||
<template #popper="{ hide }">
|
<template #popper="{ hide }">
|
||||||
<div flex="~ col">
|
<div flex="~ col">
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
>
|
>
|
||||||
<div i-ri-download-cloud-2-line />
|
<div i-ri-download-cloud-2-line />
|
||||||
<h2 flex="~ gap-2" items-center>
|
<h2 flex="~ gap-2" items-center>
|
||||||
{{ $t('pwa.update_available_short') }}
|
{{ $t('pwa_update_available_short') }}
|
||||||
</h2>
|
</h2>
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -6,14 +6,14 @@
|
||||||
flex="~ col gap-3"
|
flex="~ col gap-3"
|
||||||
>
|
>
|
||||||
<h2 flex="~ gap-2" items-center>
|
<h2 flex="~ gap-2" items-center>
|
||||||
{{ $t('pwa.title') }}
|
{{ $t('pwa_title') }}
|
||||||
</h2>
|
</h2>
|
||||||
<div flex="~ gap-1">
|
<div flex="~ gap-1">
|
||||||
<button type="button" btn-solid px-4 py-1 text-center text-sm @click="$pwa.updateServiceWorker()">
|
<button type="button" btn-solid px-4 py-1 text-center text-sm @click="$pwa.updateServiceWorker()">
|
||||||
{{ $t('pwa.update') }}
|
{{ $t('pwa_update') }}
|
||||||
</button>
|
</button>
|
||||||
<button type="button" btn-text filter-saturate-0 px-4 py-1 text-center text-sm @click="$pwa.close()">
|
<button type="button" btn-text filter-saturate-0 px-4 py-1 text-center text-sm @click="$pwa.close()">
|
||||||
{{ $t('pwa.dismiss') }}
|
{{ $t('pwa_dismiss') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div i-ri-arrow-down-circle-line absolute text-8em bottom--10 inset-ie--10 text-primary op10 class="-z-1" />
|
<div i-ri-arrow-down-circle-line absolute text-8em bottom--10 inset-ie--10 text-primary op10 class="-z-1" />
|
||||||
|
|
|
@ -3,7 +3,6 @@ const query = ref('')
|
||||||
const { accounts, hashtags, loading, statuses } = useSearch(query)
|
const { accounts, hashtags, loading, statuses } = useSearch(query)
|
||||||
const index = ref(0)
|
const index = ref(0)
|
||||||
|
|
||||||
const { t } = useI18n()
|
|
||||||
const el = ref<HTMLElement>()
|
const el = ref<HTMLElement>()
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const { focused } = useFocusWithin(el)
|
const { focused } = useFocusWithin(el)
|
||||||
|
@ -66,7 +65,7 @@ const activate = () => {
|
||||||
bg-transparent
|
bg-transparent
|
||||||
outline="focus:none"
|
outline="focus:none"
|
||||||
pe-4
|
pe-4
|
||||||
:placeholder="t('nav.search')"
|
:placeholder="$t('nav_search')"
|
||||||
pb="1px"
|
pb="1px"
|
||||||
placeholder-text-secondary
|
placeholder-text-secondary
|
||||||
@keydown.down.prevent="shift(1)"
|
@keydown.down.prevent="shift(1)"
|
||||||
|
@ -78,7 +77,7 @@ const activate = () => {
|
||||||
<div left-0 top-12 absolute w-full z10 group-focus-within="pointer-events-auto visible" invisible pointer-events-none>
|
<div left-0 top-12 absolute w-full z10 group-focus-within="pointer-events-auto visible" invisible pointer-events-none>
|
||||||
<div w-full bg-base border="~ base" rounded-3 max-h-100 overflow-auto py2>
|
<div w-full bg-base border="~ base" rounded-3 max-h-100 overflow-auto py2>
|
||||||
<span v-if="query.trim().length === 0" block text-center text-sm text-secondary>
|
<span v-if="query.trim().length === 0" block text-center text-sm text-secondary>
|
||||||
{{ t('search.search_desc') }}
|
{{ $t('search_search_desc') }}
|
||||||
</span>
|
</span>
|
||||||
<template v-else-if="!loading">
|
<template v-else-if="!loading">
|
||||||
<template v-if="results.length > 0">
|
<template v-if="results.length > 0">
|
||||||
|
@ -90,7 +89,7 @@ const activate = () => {
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
<span v-else block text-center text-sm text-secondary>
|
<span v-else block text-center text-sm text-secondary>
|
||||||
{{ t('search.search_empty') }}
|
{{ $t('search_search_empty') }}
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
|
|
|
@ -17,7 +17,7 @@ function setColorMode(mode: ColorMode) {
|
||||||
@click="setColorMode('dark')"
|
@click="setColorMode('dark')"
|
||||||
>
|
>
|
||||||
<div i-ri:moon-line />
|
<div i-ri:moon-line />
|
||||||
{{ $t('settings.interface.dark_mode') }}
|
{{ $t('settings_interface_dark_mode') }}
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
btn-text flex-1 flex="~ gap-1 center" p4 border="~ base rounded" bg-base
|
btn-text flex-1 flex="~ gap-1 center" p4 border="~ base rounded" bg-base
|
||||||
|
@ -26,7 +26,7 @@ function setColorMode(mode: ColorMode) {
|
||||||
@click="setColorMode('light')"
|
@click="setColorMode('light')"
|
||||||
>
|
>
|
||||||
<div i-ri:sun-line />
|
<div i-ri:sun-line />
|
||||||
{{ $t('settings.interface.light_mode') }}
|
{{ $t('settings_interface_light_mode') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -9,7 +9,7 @@ const fontSize = useFontSizeRef()
|
||||||
<template>
|
<template>
|
||||||
<select v-model="fontSize">
|
<select v-model="fontSize">
|
||||||
<option v-for="size in sizes" :key="size" :value="size" :selected="fontSize === size">
|
<option v-for="size in sizes" :key="size" :value="size" :selected="fontSize === size">
|
||||||
{{ `${$t(`settings.interface.size_label.${size}`)}${size === DEFAULT_FONT_SIZE ? $t('settings.interface.default') : ''}` }}
|
{{ `${$t(`settings_interface_size_label_${size}`)}${size === DEFAULT_FONT_SIZE ? ` ${$t('settings_interface_default')}` : ''}` }}
|
||||||
</option>
|
</option>
|
||||||
</select>
|
</select>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import type { ComputedRef } from 'vue'
|
import { locale, locales } from '~/config/i18n'
|
||||||
import type { LocaleObject } from '#i18n'
|
|
||||||
|
|
||||||
const { locale, setLocale } = useI18n()
|
const setLocale = (code: string) => {
|
||||||
const { locales } = useI18n() as { locales: ComputedRef<LocaleObject[]> }
|
locale.value = code
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
|
|
@ -34,7 +34,7 @@ const reply = () => {
|
||||||
<div flex justify-between>
|
<div flex justify-between>
|
||||||
<div flex-1>
|
<div flex-1>
|
||||||
<StatusActionButton
|
<StatusActionButton
|
||||||
:content="$t('action.reply')"
|
:content="$t('action_reply')"
|
||||||
:text="status.repliesCount || ''"
|
:text="status.repliesCount || ''"
|
||||||
color="text-blue" hover="text-blue" group-hover="bg-blue/10"
|
color="text-blue" hover="text-blue" group-hover="bg-blue/10"
|
||||||
icon="i-ri:chat-1-line"
|
icon="i-ri:chat-1-line"
|
||||||
|
@ -43,7 +43,7 @@ const reply = () => {
|
||||||
>
|
>
|
||||||
<template v-if="status.repliesCount" #text>
|
<template v-if="status.repliesCount" #text>
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="action.reply_count"
|
keypath="action_reply_count"
|
||||||
:count="status.repliesCount"
|
:count="status.repliesCount"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
@ -52,7 +52,7 @@ const reply = () => {
|
||||||
|
|
||||||
<div flex-1>
|
<div flex-1>
|
||||||
<StatusActionButton
|
<StatusActionButton
|
||||||
:content="$t('action.boost')"
|
:content="$t('action_boost')"
|
||||||
:text="status.reblogsCount || ''"
|
:text="status.reblogsCount || ''"
|
||||||
color="text-green" hover="text-green" group-hover="bg-green/10"
|
color="text-green" hover="text-green" group-hover="bg-green/10"
|
||||||
icon="i-ri:repeat-line"
|
icon="i-ri:repeat-line"
|
||||||
|
@ -64,7 +64,7 @@ const reply = () => {
|
||||||
>
|
>
|
||||||
<template v-if="status.reblogsCount" #text>
|
<template v-if="status.reblogsCount" #text>
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="action.boost_count"
|
keypath="action_boost_count"
|
||||||
:count="status.reblogsCount"
|
:count="status.reblogsCount"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
@ -73,7 +73,7 @@ const reply = () => {
|
||||||
|
|
||||||
<div flex-1>
|
<div flex-1>
|
||||||
<StatusActionButton
|
<StatusActionButton
|
||||||
:content="$t('action.favourite')"
|
:content="$t('action_favourite')"
|
||||||
:text="status.favouritesCount || ''"
|
:text="status.favouritesCount || ''"
|
||||||
color="text-rose" hover="text-rose" group-hover="bg-rose/10"
|
color="text-rose" hover="text-rose" group-hover="bg-rose/10"
|
||||||
icon="i-ri:heart-3-line"
|
icon="i-ri:heart-3-line"
|
||||||
|
@ -85,7 +85,7 @@ const reply = () => {
|
||||||
>
|
>
|
||||||
<template v-if="status.favouritesCount" #text>
|
<template v-if="status.favouritesCount" #text>
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="action.favourite_count"
|
keypath="action_favourite_count"
|
||||||
:count="status.favouritesCount"
|
:count="status.favouritesCount"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
@ -94,7 +94,7 @@ const reply = () => {
|
||||||
|
|
||||||
<div flex-none>
|
<div flex-none>
|
||||||
<StatusActionButton
|
<StatusActionButton
|
||||||
:content="$t('action.bookmark')"
|
:content="$t('action_bookmark')"
|
||||||
color="text-yellow" hover="text-yellow" group-hover="bg-yellow/10"
|
color="text-yellow" hover="text-yellow" group-hover="bg-yellow/10"
|
||||||
icon="i-ri:bookmark-line"
|
icon="i-ri:bookmark-line"
|
||||||
active-icon="i-ri:bookmark-fill"
|
active-icon="i-ri:bookmark-fill"
|
||||||
|
|
|
@ -22,7 +22,7 @@ const {
|
||||||
const clipboard = useClipboard()
|
const clipboard = useClipboard()
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
const isAuthor = $computed(() => status.account.id === currentUser.value?.account.id)
|
const isAuthor = $computed(() => status.account.id === currentUser.value?.account.id)
|
||||||
|
|
||||||
|
@ -62,9 +62,9 @@ const shareLink = async (status: mastodon.v1.Status) => {
|
||||||
|
|
||||||
const deleteStatus = async () => {
|
const deleteStatus = async () => {
|
||||||
if (await openConfirmDialog({
|
if (await openConfirmDialog({
|
||||||
title: t('menu.delete_confirm.title'),
|
title: $t('menu_delete_confirm_title'),
|
||||||
confirm: t('menu.delete_confirm.confirm'),
|
confirm: $t('menu_delete_confirm_confirm'),
|
||||||
cancel: t('menu.delete_confirm.cancel'),
|
cancel: $t('menu_delete_confirm_cancel'),
|
||||||
}) !== 'confirm')
|
}) !== 'confirm')
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -120,7 +120,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
<template>
|
<template>
|
||||||
<CommonDropdown flex-none ms3 placement="bottom" :eager-mount="command">
|
<CommonDropdown flex-none ms3 placement="bottom" :eager-mount="command">
|
||||||
<StatusActionButton
|
<StatusActionButton
|
||||||
:content="$t('action.more')"
|
:content="$t('action_more')"
|
||||||
color="text-purple"
|
color="text-purple"
|
||||||
hover="text-purple"
|
hover="text-purple"
|
||||||
group-hover="bg-purple/10"
|
group-hover="bg-purple/10"
|
||||||
|
@ -132,14 +132,14 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
<div flex="~ col">
|
<div flex="~ col">
|
||||||
<template v-if="userSettings.zenMode">
|
<template v-if="userSettings.zenMode">
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('action.reply')"
|
:text="$t('action_reply')"
|
||||||
icon="i-ri:chat-1-line"
|
icon="i-ri:chat-1-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="reply()"
|
@click="reply()"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="status.reblogged ? $t('action.boosted') : $t('action.boost')"
|
:text="status.reblogged ? $t('action_boosted') : $t('action_boost')"
|
||||||
icon="i-ri:repeat-fill"
|
icon="i-ri:repeat-fill"
|
||||||
:class="status.reblogged ? 'text-green' : ''"
|
:class="status.reblogged ? 'text-green' : ''"
|
||||||
:command="command"
|
:command="command"
|
||||||
|
@ -148,7 +148,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="status.favourited ? $t('action.favourited') : $t('action.favourite')"
|
:text="status.favourited ? $t('action_favourited') : $t('action_favourite')"
|
||||||
:icon="status.favourited ? 'i-ri:heart-3-fill' : 'i-ri:heart-3-line'"
|
:icon="status.favourited ? 'i-ri:heart-3-fill' : 'i-ri:heart-3-line'"
|
||||||
:class="status.favourited ? 'text-rose' : ''"
|
:class="status.favourited ? 'text-rose' : ''"
|
||||||
:command="command"
|
:command="command"
|
||||||
|
@ -157,7 +157,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="status.bookmarked ? $t('action.bookmarked') : $t('action.bookmark')"
|
:text="status.bookmarked ? $t('action_bookmarked') : $t('action_bookmark')"
|
||||||
:icon="status.bookmarked ? 'i-ri:bookmark-fill' : 'i-ri:bookmark-line'"
|
:icon="status.bookmarked ? 'i-ri:bookmark-fill' : 'i-ri:bookmark-line'"
|
||||||
:class="status.bookmarked ? 'text-yellow' : ''"
|
:class="status.bookmarked ? 'text-yellow' : ''"
|
||||||
:command="command"
|
:command="command"
|
||||||
|
@ -167,14 +167,21 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.show_favourited_and_boosted_by')"
|
:text="$t('menu_show_favourited_and_boosted_by')"
|
||||||
icon="i-ri:hearts-line"
|
icon="i-ri:hearts-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="showFavoritedAndBoostedBy()"
|
@click="showFavoritedAndBoostedBy()"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.copy_link_to_post')"
|
:text="$t('menu_show_favourited_and_boosted_by')"
|
||||||
|
icon="i-ri:hearts-line"
|
||||||
|
:command="command"
|
||||||
|
@click="showFavoritedAndBoostedBy()"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<CommonDropdownItem
|
||||||
|
:text="$t('menu_copy_link_to_post')"
|
||||||
icon="i-ri:link"
|
icon="i-ri:link"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="copyLink(status)"
|
@click="copyLink(status)"
|
||||||
|
@ -182,7 +189,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="isShareSupported"
|
v-if="isShareSupported"
|
||||||
:text="$t('menu.share_post')"
|
:text="$t('menu_share_post')"
|
||||||
icon="i-ri:share-line"
|
icon="i-ri:share-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="shareLink(status)"
|
@click="shareLink(status)"
|
||||||
|
@ -190,7 +197,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="currentUser && (status.account.id === currentUser.account.id || status.mentions.some(m => m.id === currentUser!.account.id))"
|
v-if="currentUser && (status.account.id === currentUser.account.id || status.mentions.some(m => m.id === currentUser!.account.id))"
|
||||||
:text="status.muted ? $t('menu.unmute_conversation') : $t('menu.mute_conversation')"
|
:text="status.muted ? $t('menu_unmute_conversation') : $t('menu_mute_conversation')"
|
||||||
:icon="status.muted ? 'i-ri:eye-line' : 'i-ri:eye-off-line'"
|
:icon="status.muted ? 'i-ri:eye-line' : 'i-ri:eye-off-line'"
|
||||||
:command="command"
|
:command="command"
|
||||||
:disabled="isLoading.muted"
|
:disabled="isLoading.muted"
|
||||||
|
@ -199,7 +206,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
|
|
||||||
<NuxtLink v-if="status.url" :to="status.url" external target="_blank">
|
<NuxtLink v-if="status.url" :to="status.url" external target="_blank">
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.open_in_original_site')"
|
:text="$t('menu_open_in_original_site')"
|
||||||
icon="i-ri:arrow-right-up-line"
|
icon="i-ri:arrow-right-up-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
/>
|
/>
|
||||||
|
@ -207,7 +214,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="isTranslationEnabled && status.language !== languageCode"
|
v-if="isTranslationEnabled && status.language !== languageCode"
|
||||||
:text="translation.visible ? $t('menu.show_untranslated') : $t('menu.translate_post')"
|
:text="translation.visible ? $t('menu_show_untranslated') : $t('menu_translate_post')"
|
||||||
icon="i-ri:translate"
|
icon="i-ri:translate"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="toggleTranslation"
|
@click="toggleTranslation"
|
||||||
|
@ -216,21 +223,21 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
<template v-if="isMastoInitialised && currentUser">
|
<template v-if="isMastoInitialised && currentUser">
|
||||||
<template v-if="isAuthor">
|
<template v-if="isAuthor">
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="status.pinned ? $t('menu.unpin_on_profile') : $t('menu.pin_on_profile')"
|
:text="status.pinned ? $t('menu_unpin_on_profile') : $t('menu_pin_on_profile')"
|
||||||
icon="i-ri:pushpin-line"
|
icon="i-ri:pushpin-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="togglePin"
|
@click="togglePin"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.edit')"
|
:text="$t('menu_edit')"
|
||||||
icon="i-ri:edit-line"
|
icon="i-ri:edit-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="editStatus"
|
@click="editStatus"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.delete')"
|
:text="$t('menu_delete')"
|
||||||
icon="i-ri:delete-bin-line"
|
icon="i-ri:delete-bin-line"
|
||||||
text-red-600
|
text-red-600
|
||||||
:command="command"
|
:command="command"
|
||||||
|
@ -238,7 +245,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.delete_and_redraft')"
|
:text="$t('menu_delete_and_redraft')"
|
||||||
icon="i-ri:eraser-line"
|
icon="i-ri:eraser-line"
|
||||||
text-red-600
|
text-red-600
|
||||||
:command="command"
|
:command="command"
|
||||||
|
@ -247,7 +254,7 @@ const showFavoritedAndBoostedBy = () => {
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('menu.mention_account', [`@${status.account.acct}`])"
|
:text="$t('menu_mention_account', { account: `@${status.account.acct}` })"
|
||||||
icon="i-ri:at-line"
|
icon="i-ri:at-line"
|
||||||
:command="command"
|
:command="command"
|
||||||
@click="mentionUser(status.account)"
|
@click="mentionUser(status.account)"
|
||||||
|
|
|
@ -179,10 +179,10 @@ useIntersectionObserver(video, (entries) => {
|
||||||
<div p4 flex flex-col gap-2 max-w-130>
|
<div p4 flex flex-col gap-2 max-w-130>
|
||||||
<div flex justify-between>
|
<div flex justify-between>
|
||||||
<h2 font-bold text-xl text-secondary>
|
<h2 font-bold text-xl text-secondary>
|
||||||
{{ $t('status.img_alt.desc') }}
|
{{ $t('status_img_alt_desc') }}
|
||||||
</h2>
|
</h2>
|
||||||
<button v-close-popper text-sm btn-outline py0 px2 text-secondary border-base>
|
<button v-close-popper text-sm btn-outline py0 px2 text-secondary border-base>
|
||||||
{{ $t('status.img_alt.dismiss') }}
|
{{ $t('status_img_alt_dismiss') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<p>
|
<p>
|
||||||
|
|
|
@ -188,7 +188,7 @@ const showReplyTo = $computed(() => !replyToMain && !directReply)
|
||||||
</div>
|
</div>
|
||||||
<div v-else-if="isFiltered" gap-2 p-4 :class="{ 'border-t border-base': newer }">
|
<div v-else-if="isFiltered" gap-2 p-4 :class="{ 'border-t border-base': newer }">
|
||||||
<p text-center text-secondary text-sm>
|
<p text-center text-secondary text-sm>
|
||||||
{{ filterPhrase && `${$t('status.filter_removed_phrase')}: ${filterPhrase}` }}
|
{{ filterPhrase && `${$t('status_filter_removed_phrase')}: ${filterPhrase}` }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -30,7 +30,7 @@ const isFiltered = $computed(() => filterPhrase && (context && context !== 'deta
|
||||||
<StatusBody v-if="!isFiltered && status.sensitive && !status.spoilerText" :status="status" :with-action="!isDetails" :class="isDetails ? 'text-xl' : ''" />
|
<StatusBody v-if="!isFiltered && status.sensitive && !status.spoilerText" :status="status" :with-action="!isDetails" :class="isDetails ? 'text-xl' : ''" />
|
||||||
<StatusSpoiler :enabled="status.sensitive || isFiltered" :filter="isFiltered">
|
<StatusSpoiler :enabled="status.sensitive || isFiltered" :filter="isFiltered">
|
||||||
<template v-if="filterPhrase" #spoiler>
|
<template v-if="filterPhrase" #spoiler>
|
||||||
<p>{{ `${$t('status.filter_hidden_phrase')}: ${filterPhrase}` }}</p>
|
<p>{{ `${$t('status_filter_hidden_phrase')}: ${filterPhrase}` }}</p>
|
||||||
</template>
|
</template>
|
||||||
<template v-else-if="status.spoilerText" #spoiler>
|
<template v-else-if="status.spoilerText" #spoiler>
|
||||||
<p>{{ status.spoilerText }}</p>
|
<p>{{ status.spoilerText }}</p>
|
||||||
|
|
|
@ -19,10 +19,10 @@ const createdAt = useFormattedDateTime(status.createdAt)
|
||||||
|
|
||||||
const visibility = $computed(() => statusVisibilities.find(v => v.value === status.visibility)!)
|
const visibility = $computed(() => statusVisibilities.find(v => v.value === status.visibility)!)
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
|
|
||||||
useHeadFixed({
|
useHeadFixed({
|
||||||
title: () => `${status.account.displayName || status.account.acct} ${t('common.in')} ${t('app_name')}: "${removeHTMLTags(status.content) || ''}"`,
|
title: () => `${status.account.displayName || status.account.acct} ${$t('common_in')} ${$t('app_name')}: "${removeHTMLTags(status.content) || ''}"`,
|
||||||
})
|
})
|
||||||
|
|
||||||
const isDM = $computed(() => status.visibility === 'direct')
|
const isDM = $computed(() => status.visibility === 'direct')
|
||||||
|
@ -44,7 +44,7 @@ const isDM = $computed(() => status.visibility === 'direct')
|
||||||
:status="status"
|
:status="status"
|
||||||
:inline="false"
|
:inline="false"
|
||||||
>
|
>
|
||||||
<span ms1 font-bold cursor-pointer>{{ $t('state.edited') }}</span>
|
<span ms1 font-bold cursor-pointer>{{ $t('state_edited') }}</span>
|
||||||
</StatusEditIndicator>
|
</StatusEditIndicator>
|
||||||
</div>
|
</div>
|
||||||
<div>·</div>
|
<div>·</div>
|
||||||
|
|
|
@ -17,16 +17,16 @@ function showRebloggedBy() {
|
||||||
type.value = 'boosted-by'
|
type.value = 'boosted-by'
|
||||||
}
|
}
|
||||||
|
|
||||||
const { t } = useI18n()
|
const { $t } = useFluent()
|
||||||
const tabs = [
|
const tabs = [
|
||||||
{
|
{
|
||||||
name: 'favourited-by',
|
name: 'favourited-by',
|
||||||
display: t('status.favourited_by'),
|
display: $t('status_favourited_by'),
|
||||||
onClick: showFavouritedBy,
|
onClick: showFavouritedBy,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'boosted-by',
|
name: 'boosted-by',
|
||||||
display: t('status.boosted_by'),
|
display: $t('status_boosted_by'),
|
||||||
onClick: showRebloggedBy,
|
onClick: showRebloggedBy,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
|
@ -17,12 +17,12 @@ const originalUrl = computed(() => {
|
||||||
<template>
|
<template>
|
||||||
<CommonNotFound>
|
<CommonNotFound>
|
||||||
<div flex="~ col center gap2">
|
<div flex="~ col center gap2">
|
||||||
<div>{{ $t('error.status_not_found') }}</div>
|
<div>{{ $t('error_status_not_found') }}</div>
|
||||||
|
|
||||||
<NuxtLink v-if="originalUrl" :to="originalUrl" external target="_blank">
|
<NuxtLink v-if="originalUrl" :to="originalUrl" external target="_blank">
|
||||||
<button btn-solid flex="~ center gap-2" text-sm px2 py1>
|
<button btn-solid flex="~ center gap-2" text-sm px2 py1>
|
||||||
<div i-ri:arrow-right-up-line />
|
<div i-ri:arrow-right-up-line />
|
||||||
{{ $t('status.try_original_site') }}
|
{{ $t('status_try_original_site') }}
|
||||||
</button>
|
</button>
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -44,7 +44,7 @@ const votersCount = $computed(() => poll.votersCount ?? 0)
|
||||||
{{ option.title }}
|
{{ option.title }}
|
||||||
</label>
|
</label>
|
||||||
<button btn-solid>
|
<button btn-solid>
|
||||||
{{ $t('action.vote') }}
|
{{ $t('action_vote') }}
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
|
@ -63,12 +63,12 @@ const votersCount = $computed(() => poll.votersCount ?? 0)
|
||||||
</template>
|
</template>
|
||||||
<div text-sm flex="~ inline" gap-x-1>
|
<div text-sm flex="~ inline" gap-x-1>
|
||||||
<CommonLocalizedNumber
|
<CommonLocalizedNumber
|
||||||
keypath="status.poll.count"
|
keypath="status_poll.count"
|
||||||
:count="poll.votesCount"
|
:count="poll.votesCount"
|
||||||
/>
|
/>
|
||||||
·
|
·
|
||||||
<CommonTooltip :content="expiredTimeFormatted" class="inline-block" placement="right">
|
<CommonTooltip :content="expiredTimeFormatted" class="inline-block" placement="right">
|
||||||
<time :datetime="poll.expiresAt!">{{ $t(poll.expired ? 'status.poll.finished' : 'status.poll.ends', [expiredTimeAgo]) }}</time>
|
<time :datetime="poll.expiresAt!">{{ $t(poll.expired ? 'status_poll_finished' : 'status_poll_ends', { date: expiredTimeAgo }) }}</time>
|
||||||
</CommonTooltip>
|
</CommonTooltip>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -18,23 +18,23 @@ const account = isSelf ? computed(() => status.account) : useAccountById(status.
|
||||||
v-if="status.inReplyToId"
|
v-if="status.inReplyToId"
|
||||||
flex="~ gap2" items-center h-auto text-sm text-secondary
|
flex="~ gap2" items-center h-auto text-sm text-secondary
|
||||||
:to="getStatusInReplyToRoute(status)"
|
:to="getStatusInReplyToRoute(status)"
|
||||||
:title="$t('status.replying_to', [account ? getDisplayName(account) : $t('status.someone')])"
|
:title="$t('status_replying_to', { username: account ? getDisplayName(account) : $ta('status_replying_to').unknown })"
|
||||||
text-blue saturate-50 hover:saturate-100
|
text-blue saturate-50 hover:saturate-100
|
||||||
>
|
>
|
||||||
<template v-if="isSelfReply">
|
<template v-if="isSelfReply">
|
||||||
<div i-ri-discuss-line text-blue />
|
<div i-ri-discuss-line text-blue />
|
||||||
<span>{{ $t('status.show_full_thread') }}</span>
|
<span>{{ $t('status_show_full_thread') }}</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<div i-ri-chat-1-line text-blue />
|
<div i-ri-chat-1-line text-blue />
|
||||||
<i18n-t keypath="status.replying_to">
|
<i18n path="status_replying_to" flex gap-x-1>
|
||||||
<template v-if="account">
|
<template #username="{ unknown }">
|
||||||
<AccountInlineInfo :account="account" :link="false" />
|
<AccountInlineInfo v-if="account" :account="account" :link="false" />
|
||||||
</template>
|
|
||||||
<template v-else>
|
<template v-else>
|
||||||
{{ $t('status.someone') }}
|
{{ unknown }}
|
||||||
</template>
|
</template>
|
||||||
</i18n-t>
|
</template>
|
||||||
|
</i18n>
|
||||||
</template>
|
</template>
|
||||||
</NuxtLink>
|
</NuxtLink>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -18,7 +18,7 @@ watchEffect(() => {
|
||||||
<button btn-text px-2 py-1 bg-base flex="~ center gap-2" :class="showContent ? '' : 'filter-saturate-0 hover:filter-saturate-100'" @click="toggleContent()">
|
<button btn-text px-2 py-1 bg-base flex="~ center gap-2" :class="showContent ? '' : 'filter-saturate-0 hover:filter-saturate-100'" @click="toggleContent()">
|
||||||
<div v-if="showContent" i-ri:eye-line />
|
<div v-if="showContent" i-ri:eye-line />
|
||||||
<div v-else i-ri:eye-close-line />
|
<div v-else i-ri:eye-close-line />
|
||||||
{{ showContent ? $t('status.spoiler_show_less') : $t(filter ? 'status.filter_show_anyway' : 'status.spoiler_show_more') }}
|
{{ showContent ? $t('status_spoiler_show_less') : $t(filter ? 'status.filter_show_anyway' : 'status.spoiler_show_more') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -12,7 +12,7 @@ const formatted = useFormattedDateTime(editedAt)
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<template v-if="editedAt">
|
<template v-if="editedAt">
|
||||||
<CommonTooltip v-if="inline" :content="$t('status.edited', [formatted])">
|
<CommonTooltip v-if="inline" :content="$t('status_edited', { date: formatted })">
|
||||||
 
|
 
|
||||||
<time
|
<time
|
||||||
:title="editedAt"
|
:title="editedAt"
|
||||||
|
@ -28,7 +28,7 @@ const formatted = useFormattedDateTime(editedAt)
|
||||||
<template #popper>
|
<template #popper>
|
||||||
<div text-sm p2>
|
<div text-sm p2>
|
||||||
<div text-center mb1>
|
<div text-center mb1>
|
||||||
{{ $t('status.edited', [formatted]) }}
|
{{ $t('status_edited', { date: formatted }) }}
|
||||||
</div>
|
</div>
|
||||||
<StatusEditHistory :status="status" />
|
<StatusEditHistory :status="status" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -11,7 +11,7 @@ const { edit } = defineProps<{
|
||||||
<div text-center flex="~ row gap-1 wrap">
|
<div text-center flex="~ row gap-1 wrap">
|
||||||
<AccountInlineInfo :account="edit.account" />
|
<AccountInlineInfo :account="edit.account" />
|
||||||
<span>
|
<span>
|
||||||
{{ $t('status_history.edited', [useFormattedDateTime(edit.createdAt).value]) }}
|
{{ $t('status_history_edited', { date: useFormattedDateTime(edit.createdAt).value }) }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -25,10 +25,10 @@ const toggleFollowTag = async () => {
|
||||||
<button
|
<button
|
||||||
rounded group focus:outline-none
|
rounded group focus:outline-none
|
||||||
hover:text-primary focus-visible:text-primary
|
hover:text-primary focus-visible:text-primary
|
||||||
:aria-label="tag.following ? $t('tag.unfollow_label', [tag.name]) : $t('tag.follow_label', [tag.name])"
|
:aria-label="tag.following ? $t('tag_unfollow_label', { tag: tag.name }) : $t('tag_follow_label', { tag: tag.name })"
|
||||||
@click="toggleFollowTag()"
|
@click="toggleFollowTag()"
|
||||||
>
|
>
|
||||||
<CommonTooltip placement="bottom" :content="tag.following ? $t('tag.unfollow') : $t('tag.follow')">
|
<CommonTooltip placement="bottom" :content="tag.following ? $t('tag_unfollow') : $t('tag_follow')">
|
||||||
<div rounded-full p2 group-hover="bg-orange/10" group-focus-visible="bg-orange/10" group-focus-visible:ring="2 current">
|
<div rounded-full p2 group-hover="bg-orange/10" group-focus-visible="bg-orange/10" group-focus-visible:ring="2 current">
|
||||||
<div :class="[tag.following ? 'i-ri:star-fill' : 'i-ri:star-line']" />
|
<div :class="[tag.following ? 'i-ri:star-fill' : 'i-ri:star-line']" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -13,7 +13,6 @@ const { paginator, stream, account, buffer = 10 } = defineProps<{
|
||||||
buffer?: number
|
buffer?: number
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
const { formatNumber } = useHumanReadableNumber()
|
|
||||||
const virtualScroller = $(useFeatureFlag('experimentalVirtualScroller'))
|
const virtualScroller = $(useFeatureFlag('experimentalVirtualScroller'))
|
||||||
|
|
||||||
const showOriginSite = $computed(() =>
|
const showOriginSite = $computed(() =>
|
||||||
|
@ -25,7 +24,7 @@ const showOriginSite = $computed(() =>
|
||||||
<CommonPaginator v-bind="{ paginator, stream, preprocess, buffer }" :virtual-scroller="virtualScroller">
|
<CommonPaginator v-bind="{ paginator, stream, preprocess, buffer }" :virtual-scroller="virtualScroller">
|
||||||
<template #updater="{ number, update }">
|
<template #updater="{ number, update }">
|
||||||
<button py-4 border="b base" flex="~ col" p-3 w-full text-primary font-bold @click="update">
|
<button py-4 border="b base" flex="~ col" p-3 w-full text-primary font-bold @click="update">
|
||||||
{{ $t('timeline.show_new_items', number, { named: { v: formatNumber(number) } }) }}
|
{{ $t('timeline_show_new_items', { count: number }) }}
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
<template #default="{ item, older, newer, active }">
|
<template #default="{ item, older, newer, active }">
|
||||||
|
@ -40,14 +39,14 @@ const showOriginSite = $computed(() =>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="context === 'account' && showOriginSite" #done>
|
<template v-if="context === 'account' && showOriginSite" #done>
|
||||||
<div p5 text-secondary text-center flex flex-col items-center gap1>
|
<div p5 text-secondary text-center flex flex-col items-center gap1>
|
||||||
<span italic>{{ $t('timeline.view_older_posts') }}</span>
|
<span italic>{{ $t('timeline_view_older_posts') }}</span>
|
||||||
<a
|
<a
|
||||||
:href="account!.url" target="_blank"
|
:href="account!.url" target="_blank"
|
||||||
flex="~ gap-1" items-center text-primary
|
flex="~ gap-1" items-center text-primary
|
||||||
hover="underline text-primary-active"
|
hover="underline text-primary-active"
|
||||||
>
|
>
|
||||||
<div i-ri:external-link-fill />
|
<div i-ri:external-link-fill />
|
||||||
{{ $t('menu.open_in_original_site') }}
|
{{ $t('menu_open_in_original_site') }}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<VDropdown :distance="0" placement="top-start">
|
<VDropdown :distance="0" placement="top-start">
|
||||||
<button btn-action-icon :aria-label="$t('action.switch_account')">
|
<button btn-action-icon :aria-label="$t('action_switch_account')">
|
||||||
<div :class="{ 'hidden xl:block': currentUser }" i-ri:more-2-line />
|
<div :class="{ 'hidden xl:block': currentUser }" i-ri:more-2-line />
|
||||||
<AccountAvatar v-if="currentUser" xl:hidden :account="currentUser.account" w-9 h-9 square />
|
<AccountAvatar v-if="currentUser" xl:hidden :account="currentUser.account" w-9 h-9 square />
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -109,11 +109,11 @@ onClickOutside($$(input), () => {
|
||||||
<div flex="~ center" items-end mb2 gap-x-2>
|
<div flex="~ center" items-end mb2 gap-x-2>
|
||||||
<img src="/logo.svg" w-12 h-12 mxa height="48" width="48" :alt="$t('app_logo')" class="rtl-flip">
|
<img src="/logo.svg" w-12 h-12 mxa height="48" width="48" :alt="$t('app_logo')" class="rtl-flip">
|
||||||
<div text-3xl>
|
<div text-3xl>
|
||||||
{{ $t('action.sign_in') }}
|
{{ $t('action_sign_in') }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
{{ $t('user.server_address_label') }}
|
{{ $t('user_server_address_label') }}
|
||||||
</div>
|
</div>
|
||||||
<div :class="error ? 'animate animate-shake-x animate-delay-100' : null">
|
<div :class="error ? 'animate animate-shake-x animate-delay-100' : null">
|
||||||
<div
|
<div
|
||||||
|
@ -166,7 +166,7 @@ onClickOutside($$(input), () => {
|
||||||
<div min-h-4>
|
<div min-h-4>
|
||||||
<Transition css enter-active-class="animate animate-fade-in">
|
<Transition css enter-active-class="animate animate-fade-in">
|
||||||
<p v-if="displayError" role="alert" p-0 m-0 text-xs text-red-600 dark:text-red-400>
|
<p v-if="displayError" role="alert" p-0 m-0 text-xs text-red-600 dark:text-red-400>
|
||||||
{{ $t('error.sign_in_error') }}
|
{{ $t('error_sign_in_error') }}
|
||||||
</p>
|
</p>
|
||||||
</Transition>
|
</Transition>
|
||||||
</div>
|
</div>
|
||||||
|
@ -175,13 +175,13 @@ onClickOutside($$(input), () => {
|
||||||
<div i-ri:lightbulb-line me-1 />
|
<div i-ri:lightbulb-line me-1 />
|
||||||
<span>
|
<span>
|
||||||
<i18n-t keypath="user.tip_no_account">
|
<i18n-t keypath="user.tip_no_account">
|
||||||
<a href="https://joinmastodon.org/servers" target="_blank" hover="underline text-primary">{{ $t('user.tip_register_account') }}</a>
|
<a href="https://joinmastodon.org/servers" target="_blank" hover="underline text-primary">{{ $t('user_tip_register_account') }}</a>
|
||||||
</i18n-t>
|
</i18n-t>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<button flex="~ row" gap-x-2 items-center btn-solid mt2 :disabled="!server || busy">
|
<button flex="~ row" gap-x-2 items-center btn-solid mt2 :disabled="!server || busy">
|
||||||
<span aria-hidden="true" inline-block :class="busy ? 'i-ri:loader-2-fill animate animate-spin' : 'i-ri:login-circle-line'" class="rtl-flip" />
|
<span aria-hidden="true" inline-block :class="busy ? 'i-ri:loader-2-fill animate animate-spin' : 'i-ri:login-circle-line'" class="rtl-flip" />
|
||||||
{{ $t('action.sign_in') }}
|
{{ $t('action_sign_in') }}
|
||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -1,15 +1,17 @@
|
||||||
<template>
|
<template>
|
||||||
<div p8 lg:flex="~ col gap2" hidden>
|
<div p8 lg:flex="~ col gap2" hidden>
|
||||||
<p v-if="isMastoInitialised" text-sm>
|
<p v-if="isMastoInitialised" text-sm>
|
||||||
<i18n-t keypath="user.sign_in_notice_title">
|
<i18n path="user_sign_in_notice_title">
|
||||||
|
<template #server>
|
||||||
<strong>{{ currentServer }}</strong>
|
<strong>{{ currentServer }}</strong>
|
||||||
</i18n-t>
|
</template>
|
||||||
|
</i18n>
|
||||||
</p>
|
</p>
|
||||||
<p text-sm text-secondary>
|
<p text-sm text-secondary>
|
||||||
{{ $t('user.sign_in_desc') }}
|
{{ $t('user_sign_in_desc') }}
|
||||||
</p>
|
</p>
|
||||||
<button btn-solid rounded-3 text-center mt-2 @click="openSigninDialog()">
|
<button btn-solid rounded-3 text-center mt-2 @click="openSigninDialog()">
|
||||||
{{ $t('action.sign_in') }}
|
{{ $t('action_sign_in') }}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
@ -40,13 +40,13 @@ const switchUser = (user: UserLogin) => {
|
||||||
</template>
|
</template>
|
||||||
<div border="t base" pt2>
|
<div border="t base" pt2>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
:text="$t('user.add_existing')"
|
:text="$t('user_add_existing')"
|
||||||
icon="i-ri:user-add-line"
|
icon="i-ri:user-add-line"
|
||||||
@click="openSigninDialog"
|
@click="openSigninDialog"
|
||||||
/>
|
/>
|
||||||
<CommonDropdownItem
|
<CommonDropdownItem
|
||||||
v-if="isMastoInitialised && currentUser"
|
v-if="isMastoInitialised && currentUser"
|
||||||
:text="$t('user.sign_out_account', [getFullHandle(currentUser.account)])"
|
:text="$t('user_sign_out_account', { username: getFullHandle(currentUser.account) })"
|
||||||
icon="i-ri:logout-box-line rtl-flip"
|
icon="i-ri:logout-box-line rtl-flip"
|
||||||
@click="signout"
|
@click="signout"
|
||||||
/>
|
/>
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
import type { ComputedRef } from 'vue'
|
|
||||||
import { defineStore } from 'pinia'
|
import { defineStore } from 'pinia'
|
||||||
import Fuse from 'fuse.js'
|
import Fuse from 'fuse.js'
|
||||||
import type { LocaleObject } from '#i18n'
|
|
||||||
import type { SearchResult } from '~/composables/masto/search'
|
import type { SearchResult } from '~/composables/masto/search'
|
||||||
|
import { locale, locales } from '~~/config/i18n'
|
||||||
|
|
||||||
// @unocss-include
|
// @unocss-include
|
||||||
|
|
||||||
|
@ -238,8 +237,7 @@ export function useCommands(cmds: () => CommandProvider[]) {
|
||||||
}
|
}
|
||||||
|
|
||||||
export const provideGlobalCommands = () => {
|
export const provideGlobalCommands = () => {
|
||||||
const { locale, t } = useI18n()
|
const { $t } = useFluent()
|
||||||
const { locales } = useI18n() as { locales: ComputedRef<LocaleObject[]> }
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const users = useUsers()
|
const users = useUsers()
|
||||||
const masto = useMasto()
|
const masto = useMasto()
|
||||||
|
@ -248,7 +246,7 @@ export const provideGlobalCommands = () => {
|
||||||
useCommand({
|
useCommand({
|
||||||
scope: 'Navigation',
|
scope: 'Navigation',
|
||||||
|
|
||||||
name: () => t('nav.settings'),
|
name: () => $t('nav_settings'),
|
||||||
icon: 'i-ri:settings-3-line',
|
icon: 'i-ri:settings-3-line',
|
||||||
|
|
||||||
onActivate() {
|
onActivate() {
|
||||||
|
@ -259,7 +257,7 @@ export const provideGlobalCommands = () => {
|
||||||
useCommand({
|
useCommand({
|
||||||
scope: 'Preferences',
|
scope: 'Preferences',
|
||||||
|
|
||||||
name: () => t('command.toggle_dark_mode'),
|
name: () => $t('command_toggle_dark_mode'),
|
||||||
icon: () => colorMode.value === 'light' ? 'i-ri:sun-line' : 'i-ri:moon-line',
|
icon: () => colorMode.value === 'light' ? 'i-ri:sun-line' : 'i-ri:moon-line',
|
||||||
|
|
||||||
onActivate() {
|
onActivate() {
|
||||||
|
@ -270,7 +268,7 @@ export const provideGlobalCommands = () => {
|
||||||
useCommand({
|
useCommand({
|
||||||
scope: 'Preferences',
|
scope: 'Preferences',
|
||||||
|
|
||||||
name: () => t('command.toggle_zen_mode'),
|
name: () => $t('command_toggle_zen_mode'),
|
||||||
icon: () => userSettings.value.zenMode ? 'i-ri:layout-right-2-line' : 'i-ri:layout-right-line',
|
icon: () => userSettings.value.zenMode ? 'i-ri:layout-right-2-line' : 'i-ri:layout-right-line',
|
||||||
|
|
||||||
onActivate() {
|
onActivate() {
|
||||||
|
@ -281,7 +279,7 @@ export const provideGlobalCommands = () => {
|
||||||
useCommand({
|
useCommand({
|
||||||
scope: 'Preferences',
|
scope: 'Preferences',
|
||||||
|
|
||||||
name: () => t('command.select_lang'),
|
name: () => $t('command_select_lang'),
|
||||||
icon: 'i-ri:earth-line',
|
icon: 'i-ri:earth-line',
|
||||||
|
|
||||||
onComplete: () => ({
|
onComplete: () => ({
|
||||||
|
@ -289,7 +287,7 @@ export const provideGlobalCommands = () => {
|
||||||
display: 'Languages',
|
display: 'Languages',
|
||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
useCommands(() => locales.value.map(l => ({
|
useCommands(() => locales.map(l => ({
|
||||||
parent: 'language',
|
parent: 'language',
|
||||||
scope: 'Languages',
|
scope: 'Languages',
|
||||||
|
|
||||||
|
@ -304,8 +302,8 @@ export const provideGlobalCommands = () => {
|
||||||
useCommand({
|
useCommand({
|
||||||
scope: 'Account',
|
scope: 'Account',
|
||||||
|
|
||||||
name: () => t('action.sign_in'),
|
name: () => $t('action_sign_in'),
|
||||||
description: () => t('command.sign_in_desc'),
|
description: () => $t('command_sign_in_desc'),
|
||||||
icon: 'i-ri:user-add-line',
|
icon: 'i-ri:user-add-line',
|
||||||
|
|
||||||
onActivate() {
|
onActivate() {
|
||||||
|
@ -317,8 +315,8 @@ export const provideGlobalCommands = () => {
|
||||||
|
|
||||||
visible: () => users.value.length > 1,
|
visible: () => users.value.length > 1,
|
||||||
|
|
||||||
name: () => t('action.switch_account'),
|
name: () => $t('action_switch_account'),
|
||||||
description: () => t('command.switch_account_desc'),
|
description: () => $t('command_switch_account_desc'),
|
||||||
icon: 'i-ri:user-shared-line',
|
icon: 'i-ri:user-shared-line',
|
||||||
|
|
||||||
onComplete: () => ({
|
onComplete: () => ({
|
||||||
|
@ -332,7 +330,7 @@ export const provideGlobalCommands = () => {
|
||||||
|
|
||||||
visible: () => user.account.id !== currentUser.value?.account.id,
|
visible: () => user.account.id !== currentUser.value?.account.id,
|
||||||
|
|
||||||
name: () => t('command.switch_account', [getFullHandle(user.account)]),
|
name: () => $t('command_switch_account', { username: getFullHandle(user.account) }),
|
||||||
icon: 'i-ri:user-shared-line',
|
icon: 'i-ri:user-shared-line',
|
||||||
|
|
||||||
onActivate() {
|
onActivate() {
|
||||||
|
@ -344,7 +342,7 @@ export const provideGlobalCommands = () => {
|
||||||
|
|
||||||
visible: () => currentUser.value,
|
visible: () => currentUser.value,
|
||||||
|
|
||||||
name: () => t('user.sign_out_account', [getFullHandle(currentUser.value!.account)]),
|
name: () => $t('user_sign_out_account', { username: getFullHandle(currentUser.value!.account) }),
|
||||||
icon: 'i-ri:logout-box-line',
|
icon: 'i-ri:logout-box-line',
|
||||||
|
|
||||||
onActivate() {
|
onActivate() {
|
||||||
|
|
1
composables/fluent.ts
Normal file
1
composables/fluent.ts
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export { useFluent } from 'fluent-vue'
|
|
@ -1,4 +1,5 @@
|
||||||
import type { MaybeComputedRef, MaybeRef, UseTimeAgoOptions } from '@vueuse/core'
|
import type { MaybeComputedRef, MaybeRef, UseTimeAgoOptions } from '@vueuse/core'
|
||||||
|
import { locale } from '~~/config/i18n'
|
||||||
|
|
||||||
const formatter = Intl.NumberFormat()
|
const formatter = Intl.NumberFormat()
|
||||||
|
|
||||||
|
@ -6,32 +7,37 @@ export function formattedNumber(num: number, useFormatter: Intl.NumberFormat = f
|
||||||
return useFormatter.format(num)
|
return useFormatter.format(num)
|
||||||
}
|
}
|
||||||
|
|
||||||
export function useHumanReadableNumber() {
|
const numberFormats = {
|
||||||
const { n, locale } = useI18n()
|
percentage: {
|
||||||
|
style: 'percent',
|
||||||
|
maximumFractionDigits: 1,
|
||||||
|
},
|
||||||
|
smallCounting: {
|
||||||
|
style: 'decimal',
|
||||||
|
maximumFractionDigits: 0,
|
||||||
|
},
|
||||||
|
bigCounting: {
|
||||||
|
notation: 'compact',
|
||||||
|
compactDisplay: 'short',
|
||||||
|
maximumFractionDigits: 0,
|
||||||
|
},
|
||||||
|
} as const
|
||||||
|
|
||||||
const fn = (num: number) => {
|
function format(number: MaybeRef<number>, format: keyof typeof numberFormats) {
|
||||||
return n(
|
return new Intl.NumberFormat(locale.value, numberFormats[format]).format(unref(number))
|
||||||
num,
|
|
||||||
num < 10000
|
|
||||||
? 'smallCounting'
|
|
||||||
: num < 1000000
|
|
||||||
? 'kiloCounting'
|
|
||||||
: 'millionCounting',
|
|
||||||
locale.value,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function useHumanReadableNumber() {
|
||||||
return {
|
return {
|
||||||
formatHumanReadableNumber: (num: MaybeRef<number>) => fn(unref(num)),
|
formatHumanReadableNumber: (num: MaybeRef<number>) => format(num, unref(num) < 10000 ? 'smallCounting' : 'bigCounting'),
|
||||||
formatNumber: (num: MaybeRef<number>) => n(unref(num), 'smallCounting', locale.value),
|
formatNumber: (num: MaybeRef<number>) => format(num, 'smallCounting'),
|
||||||
formatPercentage: (num: MaybeRef<number>) => n(unref(num), 'percentage', locale.value),
|
formatPercentage: (num: MaybeRef<number>) => format(num, 'percentage'),
|
||||||
forSR: (num: MaybeRef<number>) => unref(num) > 10000,
|
forSR: (num: MaybeRef<number>) => unref(num) > 10000,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export function useFormattedDateTime(value: MaybeComputedRef<string | number | Date | undefined | null>,
|
export function useFormattedDateTime(value: MaybeComputedRef<string | number | Date | undefined | null>,
|
||||||
options: Intl.DateTimeFormatOptions = { dateStyle: 'long', timeStyle: 'medium' }) {
|
options: Intl.DateTimeFormatOptions = { dateStyle: 'long', timeStyle: 'medium' }) {
|
||||||
const { locale } = useI18n()
|
|
||||||
const formatter = $computed(() => Intl.DateTimeFormat(locale.value, options))
|
const formatter = $computed(() => Intl.DateTimeFormat(locale.value, options))
|
||||||
return computed(() => {
|
return computed(() => {
|
||||||
const v = resolveUnref(value)
|
const v = resolveUnref(value)
|
||||||
|
@ -40,15 +46,11 @@ export function useFormattedDateTime(value: MaybeComputedRef<string | number | D
|
||||||
}
|
}
|
||||||
|
|
||||||
export function useTimeAgoOptions(short = false): UseTimeAgoOptions<false> {
|
export function useTimeAgoOptions(short = false): UseTimeAgoOptions<false> {
|
||||||
const { d, t, n: fnf, locale } = useI18n()
|
const { $t } = useFluent()
|
||||||
const prefix = short ? 'short_' : ''
|
const prefix = short ? 'short_' : ''
|
||||||
|
|
||||||
const fn = (n: number, past: boolean, key: string) => {
|
const fn = (n: number, past: boolean, key: string) => {
|
||||||
return t(`time_ago_options.${prefix}${key}_${past ? 'past' : 'future'}`, n, {
|
return $t(`time_ago_options_${prefix}${key}_${past ? 'past' : 'future'}`, { n })
|
||||||
named: {
|
|
||||||
v: fnf(n, 'smallCounting', locale.value),
|
|
||||||
},
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
@ -56,7 +58,7 @@ export function useTimeAgoOptions(short = false): UseTimeAgoOptions<false> {
|
||||||
showSecond: !short,
|
showSecond: !short,
|
||||||
updateInterval: short ? 60000 : 1000,
|
updateInterval: short ? 60000 : 1000,
|
||||||
messages: {
|
messages: {
|
||||||
justNow: t('time_ago_options.just_now'),
|
justNow: $t('time_ago_options_just_now'),
|
||||||
// just return the value
|
// just return the value
|
||||||
past: n => n,
|
past: n => n,
|
||||||
// just return the value
|
// just return the value
|
||||||
|
@ -71,7 +73,19 @@ export function useTimeAgoOptions(short = false): UseTimeAgoOptions<false> {
|
||||||
invalid: '',
|
invalid: '',
|
||||||
},
|
},
|
||||||
fullDateFormatter(date) {
|
fullDateFormatter(date) {
|
||||||
return d(date, short ? 'short' : 'long')
|
const options: Intl.DateTimeFormatOptions = short
|
||||||
|
? {
|
||||||
|
dateStyle: 'short',
|
||||||
|
timeStyle: 'short',
|
||||||
|
}
|
||||||
|
: {
|
||||||
|
dateStyle: 'long',
|
||||||
|
timeStyle: 'medium',
|
||||||
|
}
|
||||||
|
|
||||||
|
const intl = new Intl.DateTimeFormat(locale.value, options)
|
||||||
|
|
||||||
|
return intl.format(date)
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
import type { Directions } from 'vue-i18n-routing'
|
import { locale, locales } from '~/config/i18n'
|
||||||
import type { LocaleObject } from '#i18n'
|
|
||||||
|
|
||||||
export function setupPageHeader() {
|
export function setupPageHeader() {
|
||||||
const { locale, locales, t } = useI18n()
|
const { $t } = useFluent()
|
||||||
const buildInfo = useBuildInfo()
|
const buildInfo = useBuildInfo()
|
||||||
|
|
||||||
const localeMap = (locales.value as LocaleObject[]).reduce((acc, l) => {
|
const localeMap = locales.reduce((acc, l) => {
|
||||||
acc[l.code!] = l.dir ?? 'auto'
|
acc[l.code!] = l.dir ?? 'auto'
|
||||||
return acc
|
return acc
|
||||||
}, {} as Record<string, Directions>)
|
}, {} as Record<string, 'rtl' | 'ltr' | 'auto'>)
|
||||||
|
|
||||||
useHeadFixed({
|
useHeadFixed({
|
||||||
htmlAttrs: {
|
htmlAttrs: {
|
||||||
|
@ -17,7 +16,7 @@ export function setupPageHeader() {
|
||||||
},
|
},
|
||||||
titleTemplate: (title) => {
|
titleTemplate: (title) => {
|
||||||
let titleTemplate = title ? `${title} | ` : ''
|
let titleTemplate = title ? `${title} | ` : ''
|
||||||
titleTemplate += t('app_name')
|
titleTemplate += $t('app_name')
|
||||||
if (buildInfo.env !== 'release')
|
if (buildInfo.env !== 'release')
|
||||||
titleTemplate += ` (${buildInfo.env})`
|
titleTemplate += ` (${buildInfo.env})`
|
||||||
return titleTemplate
|
return titleTemplate
|
||||||
|
|
130
config/i18n.ts
130
config/i18n.ts
|
@ -1,169 +1,63 @@
|
||||||
import type { NuxtI18nOptions } from '@nuxtjs/i18n'
|
import { ref } from 'vue'
|
||||||
import type { DateTimeFormats, NumberFormats, PluralizationRule, PluralizationRules } from '@intlify/core-base'
|
|
||||||
|
|
||||||
import type { LocaleObject } from '#i18n'
|
interface LocaleObjectData {
|
||||||
|
code: string
|
||||||
interface LocaleObjectData extends LocaleObject {
|
name: string
|
||||||
numberFormats?: NumberFormats
|
dir?: 'ltr' | 'rtl'
|
||||||
dateTimeFormats?: DateTimeFormats
|
|
||||||
pluralRule?: PluralizationRule
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const locales: LocaleObjectData[] = [
|
export const defaultLocale = 'en-US'
|
||||||
|
|
||||||
|
export const locale = ref(defaultLocale)
|
||||||
|
|
||||||
|
export const locales: LocaleObjectData[] = [
|
||||||
{
|
{
|
||||||
code: 'en-US',
|
code: 'en-US',
|
||||||
file: 'en-US.json',
|
|
||||||
name: 'English (US)',
|
name: 'English (US)',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'en-GB',
|
code: 'en-GB',
|
||||||
file: 'en-GB.json',
|
|
||||||
name: 'English (UK)',
|
name: 'English (UK)',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'de-DE',
|
code: 'de-DE',
|
||||||
file: 'de-DE.json',
|
|
||||||
name: 'Deutsch',
|
name: 'Deutsch',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'zh-CN',
|
code: 'zh-CN',
|
||||||
file: 'zh-CN.json',
|
|
||||||
name: '简体中文',
|
name: '简体中文',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'zh-TW',
|
code: 'zh-TW',
|
||||||
file: 'zh-TW.json',
|
|
||||||
name: '繁体中文',
|
name: '繁体中文',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'ja-JP',
|
code: 'ja-JP',
|
||||||
file: 'ja-JP.json',
|
|
||||||
name: '日本語',
|
name: '日本語',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'nl-NL',
|
code: 'nl-NL',
|
||||||
file: 'nl-NL.json',
|
|
||||||
name: 'Nederlands',
|
name: 'Nederlands',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'es-ES',
|
code: 'es-ES',
|
||||||
file: 'es-ES.json',
|
|
||||||
name: 'Español',
|
name: 'Español',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'fr-FR',
|
code: 'fr-FR',
|
||||||
file: 'fr-FR.json',
|
|
||||||
name: 'Français',
|
name: 'Français',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'uk-UA',
|
code: 'uk-UA',
|
||||||
file: 'uk-UA.json',
|
|
||||||
name: 'Українська',
|
name: 'Українська',
|
||||||
pluralRule: (choice: number) => {
|
|
||||||
if (choice === 0)
|
|
||||||
return 0
|
|
||||||
|
|
||||||
const name = new Intl.PluralRules('uk-UA').select(choice)
|
|
||||||
return { zero: 0, one: 1, two: 0 /* not used */, few: 2, many: 3, other: 4 }[name]
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
code: 'cs-CZ',
|
code: 'cs-CZ',
|
||||||
file: 'cs-CZ.json',
|
|
||||||
name: 'Česky',
|
name: 'Česky',
|
||||||
},
|
},
|
||||||
({
|
{
|
||||||
code: 'ar-EG',
|
code: 'ar-EG',
|
||||||
file: 'ar-EG.json',
|
|
||||||
name: 'العربية',
|
name: 'العربية',
|
||||||
dir: 'rtl',
|
dir: 'rtl' as const,
|
||||||
pluralRule: (choice: number) => {
|
|
||||||
const name = new Intl.PluralRules('ar-EG').select(choice)
|
|
||||||
return { zero: 0, one: 1, two: 2, few: 3, many: 4, other: 5 }[name]
|
|
||||||
},
|
},
|
||||||
} satisfies LocaleObjectData),
|
|
||||||
].sort((a, b) => a.code.localeCompare(b.code))
|
].sort((a, b) => a.code.localeCompare(b.code))
|
||||||
|
|
||||||
const datetimeFormats = Object.values(locales).reduce((acc, data) => {
|
|
||||||
const dateTimeFormats = data.dateTimeFormats
|
|
||||||
if (dateTimeFormats) {
|
|
||||||
acc[data.code] = { ...dateTimeFormats }
|
|
||||||
delete data.dateTimeFormats
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
acc[data.code] = {
|
|
||||||
shortDate: {
|
|
||||||
dateStyle: 'short',
|
|
||||||
},
|
|
||||||
short: {
|
|
||||||
dateStyle: 'short',
|
|
||||||
timeStyle: 'short',
|
|
||||||
},
|
|
||||||
long: {
|
|
||||||
dateStyle: 'long',
|
|
||||||
timeStyle: 'medium',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return acc
|
|
||||||
}, <DateTimeFormats>{})
|
|
||||||
|
|
||||||
const numberFormats = Object.values(locales).reduce((acc, data) => {
|
|
||||||
const numberFormats = data.numberFormats
|
|
||||||
if (numberFormats) {
|
|
||||||
acc[data.code] = { ...numberFormats }
|
|
||||||
delete data.numberFormats
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
acc[data.code] = {
|
|
||||||
percentage: {
|
|
||||||
style: 'percent',
|
|
||||||
maximumFractionDigits: 1,
|
|
||||||
},
|
|
||||||
smallCounting: {
|
|
||||||
style: 'decimal',
|
|
||||||
maximumFractionDigits: 0,
|
|
||||||
},
|
|
||||||
kiloCounting: {
|
|
||||||
notation: 'compact',
|
|
||||||
compactDisplay: 'short',
|
|
||||||
maximumFractionDigits: 1,
|
|
||||||
},
|
|
||||||
millionCounting: {
|
|
||||||
notation: 'compact',
|
|
||||||
compactDisplay: 'short',
|
|
||||||
maximumFractionDigits: 2,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return acc
|
|
||||||
}, <NumberFormats>{})
|
|
||||||
|
|
||||||
const pluralRules = Object.values(locales).reduce((acc, data) => {
|
|
||||||
const pluralRule = data.pluralRule
|
|
||||||
if (pluralRule) {
|
|
||||||
acc[data.code] = pluralRule
|
|
||||||
delete data.pluralRule
|
|
||||||
}
|
|
||||||
|
|
||||||
return acc
|
|
||||||
}, <PluralizationRules>{})
|
|
||||||
|
|
||||||
export const i18n: NuxtI18nOptions = {
|
|
||||||
locales,
|
|
||||||
strategy: 'no_prefix',
|
|
||||||
detectBrowserLanguage: false,
|
|
||||||
langDir: 'locales',
|
|
||||||
defaultLocale: 'en-US',
|
|
||||||
vueI18n: {
|
|
||||||
fallbackLocale: 'en-US',
|
|
||||||
fallbackWarn: false,
|
|
||||||
missingWarn: false,
|
|
||||||
datetimeFormats,
|
|
||||||
numberFormats,
|
|
||||||
pluralRules,
|
|
||||||
},
|
|
||||||
lazy: true,
|
|
||||||
}
|
|
||||||
|
|
319
locales/ar-EG.ftl
Normal file
319
locales/ar-EG.ftl
Normal file
|
@ -0,0 +1,319 @@
|
||||||
|
a11y_loading_page = الصفحة قيد التحميل، يرجى الانتظار
|
||||||
|
a11y_loading_titled_page = الصفحة {$title} قيد التحميل ، يرجى الانتظار
|
||||||
|
a11y_locale_changed = تم تغيير اللغة إلى {$lang}
|
||||||
|
a11y_locale_changing = يتم تغيير اللغة، يرجى الانتظار
|
||||||
|
a11y_route_loaded = تم تحميل الصفحة {$title}
|
||||||
|
account_avatar_description = صورة حساب {$username}
|
||||||
|
account_blocked_by = تم حظرك من قبل هذا المستخدم
|
||||||
|
account_blocked_domains = النطاقات المحظورة
|
||||||
|
account_blocked_users = المستخدمين المحظورين
|
||||||
|
account_blocking = محظور
|
||||||
|
account_bot = حساب آلي
|
||||||
|
account_favourites = المفضلة
|
||||||
|
account_follow = إتبع
|
||||||
|
account_follow_back = إعادة متابعة
|
||||||
|
account_follow_requested = طلبت المتابعة
|
||||||
|
account_followers = متابِعون
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[zero] لا يوجد متابعون
|
||||||
|
[one] { $formattedCount } متابِع
|
||||||
|
[two] { $formattedCount } متابِعين
|
||||||
|
[few] { $formattedCount } متابِعون
|
||||||
|
[many] { $formattedCount } متابِع
|
||||||
|
*[other] { $formattedCount } متابِع
|
||||||
|
}
|
||||||
|
account_following = مُتابَع
|
||||||
|
account_following_count = { $count ->
|
||||||
|
[zero] لا يتبع أحدا
|
||||||
|
[one] { $formattedCount } مُتابَع
|
||||||
|
[two] { $formattedCount } مُتابَعين
|
||||||
|
[few] { $formattedCount } مُتابَعون
|
||||||
|
[many] { $formattedCount } مُتابَع
|
||||||
|
*[other] { $formattedCount } مُتابَع
|
||||||
|
}
|
||||||
|
account_follows_you = يتابعك
|
||||||
|
account_go_to_profile = اعرض الصفحة التعريفية
|
||||||
|
account_joined = انضم
|
||||||
|
account_moved_title = أشار إلى أن حسابهم الجديد أصبح على
|
||||||
|
account_muted_users = المستخدمين المكتومين
|
||||||
|
account_muting = قُمتَ(ي) بكتم
|
||||||
|
account_mutuals = المتبادلين
|
||||||
|
account_pinned = المثبتة
|
||||||
|
account_posts = المنشورات
|
||||||
|
account_posts_count = { $count ->
|
||||||
|
[zero] {$formattedCount} منشورات
|
||||||
|
[one] {$formattedCount} منشور
|
||||||
|
[two] {$formattedCount} منشورين
|
||||||
|
[few] {$formattedCount} منشورات
|
||||||
|
[many] {$formattedCount} منشور
|
||||||
|
*[other] {$formattedCount} منشور
|
||||||
|
}
|
||||||
|
account_profile_description = {$username} رأسية حساب
|
||||||
|
account_profile_unavailable = حساب غير متوفر
|
||||||
|
account_unblock = إلغاء حظر
|
||||||
|
account_unfollow = إلغاء متابعة
|
||||||
|
account_unmute = إلغاء كتم
|
||||||
|
action_apply = تطبيق
|
||||||
|
action_bookmark = إضافة إلى العلامات المرجعية
|
||||||
|
action_bookmarked = مضاف إلى العلامات المرجعية
|
||||||
|
action_boost = إعادة نشر
|
||||||
|
action_boosted = أعيد نشرها
|
||||||
|
action_clear_upload_failed = مسح أخطاء تحميل الملف
|
||||||
|
action_close = أغلق
|
||||||
|
action_compose = منشور جديد
|
||||||
|
action_confirm = أكد
|
||||||
|
action_edit = تعديل
|
||||||
|
action_enter_app = أدخل التطبيق
|
||||||
|
action_favourite = إضافة إلى المفضلين
|
||||||
|
action_favourited = مضاف إلى المفضلين
|
||||||
|
action_more = المزيد
|
||||||
|
action_next = التالي
|
||||||
|
action_prev = السابق
|
||||||
|
action_publish = نشر
|
||||||
|
action_reply = رد
|
||||||
|
action_save = حفظ
|
||||||
|
action_save_changes = حفظ التغييرات
|
||||||
|
action_sign_in = تسجيل الدخول
|
||||||
|
action_switch_account = تغيير الحساب
|
||||||
|
action_vote = قم بالتصويت
|
||||||
|
app_desc_short = موقع الكتروني ماستدون رشيق
|
||||||
|
app_logo = Elk شعار
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = وصف
|
||||||
|
attachment_remove_label = قم بإزالة المرفق
|
||||||
|
command_activate = تفعيل
|
||||||
|
command_complete = أكمل
|
||||||
|
command_compose_desc = اكتب منشور جديد
|
||||||
|
command_n-people-in-the-past-n-days = {$count} أشخاص في الأيام ال {$days} الماضية
|
||||||
|
command_select_lang = اختار اللغة
|
||||||
|
command_sign_in_desc = إضافة حساب قائم
|
||||||
|
command_switch_account = التبديل إلى {$username}
|
||||||
|
command_switch_account_desc = قم بالتبديل إلى حساب آخر
|
||||||
|
command_toggle_dark_mode = تبديل المظهر الداكن
|
||||||
|
command_toggle_zen_mode = تبديل وضع الهدوء
|
||||||
|
common_end_of_list = نهاية القائمة
|
||||||
|
common_error = حدث خطأ
|
||||||
|
common_in = في
|
||||||
|
common_not_found = 404 غير معثور عليه
|
||||||
|
common_offline_desc = يبدو أنك غير متصل بالإنترنت. يرجى التحقق من اتصالك.
|
||||||
|
conversation_with = مع
|
||||||
|
error_account_not_found = حساب {$username} غير موجود
|
||||||
|
error_explore-list-empty = لا توجد مشاركات شائعة الآن. تحقق مرة أخرى لاحقًا!
|
||||||
|
error_file_size_cannot_exceed_n_mb = لا يمكن أن يتجاوز حجم الملف {$size} ميغابايت
|
||||||
|
error_sign_in_error = لا يمكن الاتصال بالموقع
|
||||||
|
error_status_not_found = لا يمكن إيجاد المنشور
|
||||||
|
error_unsupported_file_format = لا يمكن تحميل هذا النوع من الملفات
|
||||||
|
help_desc_highlight = توقع بعض الأخطاء والميزات المفقودة هنا وهناك.
|
||||||
|
help_desc_para1 = نشكرك على اهتمامك بتجربة Elk ، عميل ماستدون العام!
|
||||||
|
help_desc_para2 = نحن نعمل بجد على التطوير وتحسينه بمرور الوقت. وسندعوك قريبًا للانضمام إلى القوة بمجرد أن نجعلها مفتوحة المصدر قريبًا!
|
||||||
|
help_desc_para3 = قبل ذلك ، للمساعدة في تعزيز التنمية ، يمكنك رعاية أعضاء فريقنا من خلال الروابط أدناه.
|
||||||
|
help_title = Elk في عرض مسبق
|
||||||
|
menu_block_account = حظر {$username}
|
||||||
|
menu_block_domain = حظر المجال {$domain}
|
||||||
|
menu_copy_link_to_post = انسخ الرابط إلى هذا المنشور
|
||||||
|
menu_delete = حذف
|
||||||
|
menu_delete_and_redraft = حذف وإعادة صياغة
|
||||||
|
menu_direct_message_account = إرسال رسالة مباشرة إلى {$username}
|
||||||
|
menu_edit = تعديل
|
||||||
|
menu_mention_account = أذكر {$username}
|
||||||
|
menu_mute_account = كتم {$username}
|
||||||
|
menu_mute_conversation = تجاهل هذا المنصب
|
||||||
|
menu_open_in_original_site = فتح في الموقع الأصلي
|
||||||
|
menu_pin_on_profile = تثبيت على حسابك الشخصي
|
||||||
|
menu_show_untranslated = عرض بدون ترجمة
|
||||||
|
menu_toggle_theme_dark = تبديل المظهر الداكن
|
||||||
|
menu_toggle_theme_light = تبديل المظهر الفاتح
|
||||||
|
menu_translate_post = ترجم المنشور
|
||||||
|
menu_unblock_account = رفع الحظر عن {$username}
|
||||||
|
menu_unblock_domain = رفع الحظر عن النطاق {$domain}
|
||||||
|
menu_unmute_account = إلغاء كتم الحساب {$username}
|
||||||
|
menu_unmute_conversation = إلغاء كتم المحادثة
|
||||||
|
menu_unpin_on_profile = إلغاء التثبيت من الملف الشخصي
|
||||||
|
nav_bookmarks = العلامات المرجعية
|
||||||
|
nav_built_at = Built {0}
|
||||||
|
nav_conversations = المحادثات
|
||||||
|
nav_explore = استكشف
|
||||||
|
nav_favourites = المفضلة
|
||||||
|
nav_federated = الفديرالية
|
||||||
|
nav_home = الرئيسيّة
|
||||||
|
nav_local = المحلي
|
||||||
|
nav_notifications = التنبيهات
|
||||||
|
nav_profile = الصفحة التعريفية
|
||||||
|
nav_search = البحث
|
||||||
|
nav_select_feature_flags = تبديل علامات الميزات
|
||||||
|
nav_select_font_size = حجم الخط
|
||||||
|
nav_select_language = اختار اللغة
|
||||||
|
nav_settings = الإعدادات
|
||||||
|
nav_show_intro = عرض المقدمة
|
||||||
|
nav_toggle_theme = تبديل المظهر
|
||||||
|
nav_zen_mode = الوضع الهادئ
|
||||||
|
notification_favourited_post = أُعجِب بمنشورك
|
||||||
|
notification_followed_you = بدأ في متابعتك
|
||||||
|
notification_followed_you_count = لم يتبعك أحد|تبعك شخص واحد|تبعك شخصان|تبعك {0} أشخاص|تبعك {0} شخص| تبعك {0} شخص
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = اعاد نشر منشورك
|
||||||
|
notification_request_to_follow = طلب(ت) متابعتك
|
||||||
|
notification_signed_up = تسجل
|
||||||
|
notification_update_status = قام(ت) بتحديث حالته(ا)
|
||||||
|
placeholder_content_warning = اكتب تحذيرك هنا
|
||||||
|
placeholder_default_1 = ماذا يدور في ذهنك؟
|
||||||
|
placeholder_reply_to_account = الرد على {0}
|
||||||
|
placeholder_replying = الرد
|
||||||
|
placeholder_the_thread = المحادثة
|
||||||
|
pwa_dismiss = تجاهل
|
||||||
|
pwa_title = يتوفر تحديث Elk الجديد
|
||||||
|
pwa_update = تحديث
|
||||||
|
pwa_update_available_short = تحديث Elk
|
||||||
|
search_search_desc = ابحث عن الأشخاص والهاشتاج
|
||||||
|
settings_about_label = بشأن Elk
|
||||||
|
settings_feature_flags_github_cards = GitHub بطاقات
|
||||||
|
settings_feature_flags_title = الميزات التجريبية
|
||||||
|
settings_feature_flags_user_picker = الشريط الجانبي لمبدل المستخدم
|
||||||
|
settings_feature_flags_virtual_scroll = التمرير الافتراضي
|
||||||
|
settings_interface_color_mode = وضع اللون
|
||||||
|
settings_interface_dark_mode = الوضع الداكن
|
||||||
|
settings_interface_default = (إفتراضي)
|
||||||
|
settings_interface_font_size = حجم الخط
|
||||||
|
settings_interface_label = واجهه المستخدم
|
||||||
|
settings_interface_light_mode = وضع الضوء
|
||||||
|
settings_language_display_language = اللغة المعروضة
|
||||||
|
settings_language_label = اللغة
|
||||||
|
settings_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = المفضلة
|
||||||
|
settings_notifications_push_notifications_alerts_follow = متابعين جدد
|
||||||
|
settings_notifications_push_notifications_alerts_mention = المنشورات التي تذكرني
|
||||||
|
settings_notifications_push_notifications_alerts_poll = استطلاعات الرأي
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = إعادة نشر منشورك
|
||||||
|
settings_notifications_push_notifications_alerts_title = ما هي التنبيهات التي تريد تلقيها؟
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = من اي شخص
|
||||||
|
settings_notifications_push_notifications_policy_followed = من الناس الذين أتابعهم
|
||||||
|
settings_notifications_push_notifications_policy_follower = من الناس الذين يتبعونني
|
||||||
|
settings_notifications_push_notifications_policy_none = من لا أحد
|
||||||
|
settings_notifications_push_notifications_policy_title = من الذي يمكنني تلقي التنبيهات منه؟
|
||||||
|
settings_notifications_push_notifications_save_settings = حفظ التغييرات الإعدادات
|
||||||
|
settings_notifications_push_notifications_undo_settings = تراجع عن تغييرات الإعدادات
|
||||||
|
settings_notifications_push_notifications_unsubscribe = تعطيل التنبيهات
|
||||||
|
settings_notifications_push_notifications_unsupported = متصفحك لا يدعم التنبيهات
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = أغلق
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = لتلقي التنبيهات عندما لا يكون Elk مفتوحًا، قم بتمكين تنبيهات النظام. يمكنك التحكم بدقة في أنواع التفاعلات التي تنشئ تنبيهات النظام عبر الزر "Show Settings" أعلاه.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = تفعيل تنبيهات النظام
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = لا تفوت عليك أي شيء
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = يبدو أن الخادم الخاص بك لا يدعم دفع التنبيهات. حاول تسجيل الخروج ثم تسجيل الدخول مرة أخرى ، إذا استمرت هذه الرسالة في الظهور ، فاتصل بمسؤول الخادم.
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_notifications_settings = Notifications
|
||||||
|
settings_preferences_label = التفضيلات
|
||||||
|
settings_profile_appearance_bio = النبذة التعريفية
|
||||||
|
settings_profile_appearance_description = تعديل الصورة الرمزية واسم المستخدم والملف الشخصي...
|
||||||
|
settings_profile_appearance_display_name = الاسم المعروض
|
||||||
|
settings_profile_appearance_label = المظهر
|
||||||
|
settings_profile_appearance_title = تعديل الملف الشخصي
|
||||||
|
settings_profile_featured_tags_description = يمكن للأشخاص تصفح مشاركاتك العامة تحت علامات الهاشتاغ هذه
|
||||||
|
settings_profile_featured_tags_label = الهاشتاغ البارزة
|
||||||
|
settings_profile_label = الملف الشخصي
|
||||||
|
settings_select_a_settings = اختر الإعداد
|
||||||
|
settings_users_export = Export User Tokens
|
||||||
|
settings_users_import = Import User Tokens
|
||||||
|
settings_users_label = المستخدمون المسجلون
|
||||||
|
state_edited = (معدل)
|
||||||
|
state_editing = تعديل
|
||||||
|
state_loading = جاري التحميل ...
|
||||||
|
state_upload_failed = التحميل فشل
|
||||||
|
state_uploading = جاري التحميل ...
|
||||||
|
status_edited = عدل {$date}
|
||||||
|
status_filter_hidden_phrase = تمت تصفيتها بواسطة
|
||||||
|
status_filter_removed_phrase = تمت إزالته بواسطة عامل التصفية
|
||||||
|
status_filter_show_anyway = عرض على أي حال
|
||||||
|
status_img_alt_desc = وصف
|
||||||
|
status_img_alt_dismiss = تجاهل
|
||||||
|
status_poll_count = لا توجد اصوات|صوت {0}|صوتين|{0} أصوات|{0} صوت|{0} صوت
|
||||||
|
status_poll_ends = ينتهي في {0}
|
||||||
|
status_poll_finished = انتهى في {0}
|
||||||
|
status_reblogged = {0} اعاد نشر
|
||||||
|
status_someone = شخص ما
|
||||||
|
status_spoiler_show_less = عرض أقل
|
||||||
|
status_spoiler_show_more = عرض المزيد
|
||||||
|
status_try_original_site = جرب الموقع الأصلي
|
||||||
|
status_history_created = تم إنشاؤه في {0}
|
||||||
|
status_history_edited = تم تعديله في {$date}
|
||||||
|
tab_for_you = مصممة لك
|
||||||
|
tab_hashtags = هاشتاغ
|
||||||
|
tab_media = الصور/الفيديو
|
||||||
|
tab_news = الأخبار
|
||||||
|
tab_notifications_all = كل شىء
|
||||||
|
tab_notifications_mention = موجهة إلي
|
||||||
|
tab_posts = المنشورات
|
||||||
|
tab_posts_with_replies = المنشورات والردود
|
||||||
|
time_ago_options_day_future = في 0 أيام|غدا|في يومين|في {v} أيام|في {v} يوم|في {v} يوم
|
||||||
|
time_ago_options_day_past = منذ 0 أيام|البارحة|منذ يومين|منذ {v} أيام|منذ {v} يوم|منذ {v} يوم
|
||||||
|
time_ago_options_hour_future = في 0 ساعات|في ساعة|في ساعتين|في {v} ساعات|في {v} ساعة|في {v} ساعة
|
||||||
|
time_ago_options_hour_past = منذ 0 ساعات|منذ ساعة واحدة|منذ ساعتين|منذ {v} ساعات|منذ {v} ساعة|منذ {v} ساعة
|
||||||
|
time_ago_options_just_now = الآن
|
||||||
|
time_ago_options_minute_future = في 0 دقائق|في دقيقة واحدة|في دقيقتين|في {v} دقائق|في {v} دقيقة|في {v} دقيقة
|
||||||
|
time_ago_options_minute_past = منذ 0 دقائق|منذ دقيقة واحدة|منذ دقيقتين|منذ {v} دقائق|منذ {v} دقيقة|منذ {v} دقيقة
|
||||||
|
time_ago_options_month_future = في 0 أشهر|الشهر القادم|في شهرين|في {v} أشهر|في {v} شهر|في {v} شهر
|
||||||
|
time_ago_options_month_past = منذ 0 أشهر|الشهر الماضي|منذ شهرين|منذ {v} أشهر|منذ {v} شهر|منذ {v} شهر
|
||||||
|
time_ago_options_second_future = الآن|في ثانية|في ثانيتين|في {v} ثواني|في {v} ثانية|في {v} ثانية
|
||||||
|
time_ago_options_second_past = للتو|منذ ثانية|منذ ثانيتين|منذ {v} ثواني|منذ {v} ثانية|منذ {v} ثانية
|
||||||
|
time_ago_options_short_day_future = في 0 أيام|غدا|في يومين|في {v} أيام|في {v} يوم|في {v} يوم
|
||||||
|
time_ago_options_short_day_past = منذ 0 أيام|البارحة|منذ يومين|منذ {v} أيام|منذ {v} يوم|منذ {v} يوم
|
||||||
|
time_ago_options_short_hour_future = في 0 ساعات|في ساعة|في ساعتين|في {v} ساعات|في {v} ساعة|في {v} ساعة
|
||||||
|
time_ago_options_short_hour_past = { $n ->
|
||||||
|
[zero] منذ 0 ساعات
|
||||||
|
[one] منذ ساعة واحدة
|
||||||
|
[two] منذ ساعتين
|
||||||
|
[few] منذ {$n} ساعات
|
||||||
|
[many] منذ {$n} ساعة
|
||||||
|
*[other] منذ {$n} ساعة
|
||||||
|
}
|
||||||
|
time_ago_options_short_minute_future = في 0 دقائق|في دقيقة واحدة|في دقيقتين|في {v} دقائق|في {v} دقيقة|في {v} دقيقة
|
||||||
|
time_ago_options_short_minute_past = { $n ->
|
||||||
|
[zero] منذ 0 دقائق
|
||||||
|
[one] منذ دقيقة واحدة
|
||||||
|
[two] منذ دقيقتين
|
||||||
|
[few] منذ {$n} دقائق
|
||||||
|
[many] منذ {$n} دقيقة
|
||||||
|
*[other] منذ {$n} دقيقة
|
||||||
|
}
|
||||||
|
time_ago_options_short_month_future = في 0 أشهر|الشهر القادم|في شهرين|في {v} أشهر|في {v} شهر|في {v} شهر
|
||||||
|
time_ago_options_short_month_past = منذ 0 أشهر|الشهر الماضي|منذ شهرين|منذ {v} أشهر|منذ {v} شهر|منذ {v} شهر
|
||||||
|
time_ago_options_short_second_future = الآن|في ثانية|في ثانيتين|في {v} ثواني|في {v} ثانية|في {v} ثانية
|
||||||
|
time_ago_options_short_second_past = للتو|منذ ثانية|منذ ثانيتين|منذ {v} ثواني|منذ {v} ثانية|منذ {v} ثانية
|
||||||
|
time_ago_options_short_week_future = في 0 أسابيع|الاسبوع القادم|في اسبوعين|في {v} أسابيع|في {v} اسبوع|في {v} اسبوع
|
||||||
|
time_ago_options_short_week_past = منذ 0 أسابيع|الاسبوع الماضي|منذ اسبوعين|منذ {v} أسابيع|منذ {v} اسبوع|منذ {v} اسبوع
|
||||||
|
time_ago_options_short_year_future = هذا العام|العام القادم|في عامين|في {v} عاما|في {v} عام|في {v} عام
|
||||||
|
time_ago_options_short_year_past = هذا العام|العام الماضي|منذ عامين|منذ {v} عاما|منذ {v} عام|منذ {v} عام
|
||||||
|
time_ago_options_week_future = في 0 أسابيع|الاسبوع القادم|في اسبوعين|في {v} أسابيع|في {v} اسبوع|في {v} اسبوع
|
||||||
|
time_ago_options_week_past = منذ 0 أسابيع|الاسبوع الماضي|منذ اسبوعين|منذ {v} أسابيع|منذ {v} اسبوع|منذ {v} اسبوع
|
||||||
|
time_ago_options_year_future = هذا العام|العام القادم|في عامين|في {v} عاما|في {v} عام|في {v} عام
|
||||||
|
time_ago_options_year_past = هذا العام|العام الماضي|منذ عامين|منذ {v} عاما|منذ {v} عام|منذ {v} عام
|
||||||
|
timeline_show_new_items = لا توجد عناصر جديدة|إظهار {v} عنصر جديد|إظهار {v} عنصرين جديدين|إظهار {v} عناصر جديدة|إظهار {v} عنصر جديد|إظهار {v} عنصر جديد
|
||||||
|
title_federated_timeline = الجدول الزمني الموحد
|
||||||
|
title_local_timeline = الجدول الزمني المحلي
|
||||||
|
tooltip_add_content_warning = إضافة تحذير المحتوى
|
||||||
|
tooltip_add_media = أضف صورًا أو مقطع فيديو أو ملفًا صوتيًا
|
||||||
|
tooltip_change_content_visibility = تغيير خصوصية المحتوى
|
||||||
|
tooltip_emoji = رمز تعبيري
|
||||||
|
tooltip_explore_links_intro = يتم التحدث عن هذه القصص الإخبارية من قبل الأشخاص الموجودين على هذه الشبكة وغيرها من الشبكات اللامركزية في الوقت الحالي
|
||||||
|
tooltip_explore_posts_intro = تكتسب هذه المنشورات الكثير من النشاط على الشبكة وغيرها من الشبكات اللامركزية في الوقت الحالي
|
||||||
|
tooltip_explore_tags_intro = تكتسب هذه الهاشتاغ الكثير من النشاط بين الأشخاص على هذه الشبكة وغيرها من الشبكات اللامركزية في الوقت الحالي
|
||||||
|
tooltip_toggle_code_block = تبديل كتلة التعليمات البرمجية
|
||||||
|
user_add_existing = إضافة حساب قائم
|
||||||
|
user_server_address_label = عنوان خادم ماستودون
|
||||||
|
user_sign_in_desc = قم بتسجيل الدخول لمتابعة الملفات الشخصية والمشاركة والرد على المنشورات أو التفاعل من حسابك على خادم مختلف
|
||||||
|
user_sign_in_notice_title = عرض البيانات العامة من {0}
|
||||||
|
user_sign_out_account = تسجيل الخروج من {$username}
|
||||||
|
user_tip_no_account = إذا ليس لديك حساب ماستودون ، {0}
|
||||||
|
user_tip_register_account = اختر خادم ماستودون الخاص بك وقم بتسجيل حساب
|
||||||
|
visibility_direct = رسالة مباشرة
|
||||||
|
visibility_direct_desc = مرئي للمستخدمين المذكورين فقط
|
||||||
|
visibility_private = المتابعون فقط
|
||||||
|
visibility_private_desc = مرئي للمتابعين فقط
|
||||||
|
visibility_public = عام
|
||||||
|
visibility_public_desc = مرئي للجميع
|
||||||
|
visibility_unlisted = غير مدرج
|
||||||
|
visibility_unlisted_desc = مرئي للجميع ، ولكن تم إلغاء الاشتراك في ميزات الاكتشاف
|
|
@ -1,374 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "الصفحة قيد التحميل، يرجى الانتظار",
|
|
||||||
"loading_titled_page": "الصفحة {0} قيد التحميل ، يرجى الانتظار",
|
|
||||||
"locale_changed": "تم تغيير اللغة إلى {0}",
|
|
||||||
"locale_changing": "يتم تغيير اللغة، يرجى الانتظار",
|
|
||||||
"route_loaded": "تم تحميل الصفحة {0}"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "صورة حساب {0}",
|
|
||||||
"blocked_by": "تم حظرك من قبل هذا المستخدم",
|
|
||||||
"blocked_domains": "النطاقات المحظورة",
|
|
||||||
"blocked_users": "المستخدمين المحظورين",
|
|
||||||
"blocking": "محظور",
|
|
||||||
"bot": "حساب آلي",
|
|
||||||
"favourites": "المفضلة",
|
|
||||||
"follow": "إتبع",
|
|
||||||
"follow_back": "إعادة متابعة",
|
|
||||||
"follow_requested": "طلبت المتابعة",
|
|
||||||
"followers": "متابِعون",
|
|
||||||
"followers_count": "لا يوجد متابعون|{0} متابِع|{0} متابِعين|{0} متابِعون|{0} متابِع|{0} متابِع",
|
|
||||||
"following": "مُتابَع",
|
|
||||||
"following_count": "لا يتبع أحدا|{0} مُتابَع|{0} مُتابَعين|{0} مُتابَعون|{0} مُتابَع|{0} مُتابَع",
|
|
||||||
"follows_you": "يتابعك",
|
|
||||||
"go_to_profile": "اعرض الصفحة التعريفية",
|
|
||||||
"joined": "انضم",
|
|
||||||
"moved_title": "أشار إلى أن حسابهم الجديد أصبح على",
|
|
||||||
"muted_users": "المستخدمين المكتومين",
|
|
||||||
"muting": "قُمتَ(ي) بكتم",
|
|
||||||
"mutuals": "المتبادلين",
|
|
||||||
"pinned": "المثبتة",
|
|
||||||
"posts": "المنشورات",
|
|
||||||
"posts_count": "{0} منشورات|{0} منشور|{0} منشورين|{0} منشورات|{0} منشور|{0} منشور",
|
|
||||||
"profile_description": "{0} رأسية حساب",
|
|
||||||
"profile_unavailable": "حساب غير متوفر",
|
|
||||||
"unblock": "إلغاء حظر",
|
|
||||||
"unfollow": "إلغاء متابعة",
|
|
||||||
"unmute": "إلغاء كتم"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "تطبيق",
|
|
||||||
"bookmark": "إضافة إلى العلامات المرجعية",
|
|
||||||
"bookmarked": "مضاف إلى العلامات المرجعية",
|
|
||||||
"boost": "إعادة نشر",
|
|
||||||
"boosted": "أعيد نشرها",
|
|
||||||
"clear_upload_failed": "مسح أخطاء تحميل الملف",
|
|
||||||
"close": "أغلق",
|
|
||||||
"compose": "منشور جديد",
|
|
||||||
"confirm": "أكد",
|
|
||||||
"edit": "تعديل",
|
|
||||||
"enter_app": "أدخل التطبيق",
|
|
||||||
"favourite": "إضافة إلى المفضلين",
|
|
||||||
"favourited": "مضاف إلى المفضلين",
|
|
||||||
"more": "المزيد",
|
|
||||||
"next": "التالي",
|
|
||||||
"prev": "السابق",
|
|
||||||
"publish": "نشر",
|
|
||||||
"reply": "رد",
|
|
||||||
"save": "حفظ",
|
|
||||||
"save_changes": "حفظ التغييرات",
|
|
||||||
"sign_in": "تسجيل الدخول",
|
|
||||||
"switch_account": "تغيير الحساب",
|
|
||||||
"vote": "قم بالتصويت"
|
|
||||||
},
|
|
||||||
"app_desc_short": "موقع الكتروني ماستدون رشيق",
|
|
||||||
"app_logo": "Elk شعار",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "وصف",
|
|
||||||
"remove_label": "قم بإزالة المرفق"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "تفعيل",
|
|
||||||
"complete": "أكمل",
|
|
||||||
"compose_desc": "اكتب منشور جديد",
|
|
||||||
"n-people-in-the-past-n-days": "{0} أشخاص في الأيام ال {1} الماضية",
|
|
||||||
"select_lang": "اختار اللغة",
|
|
||||||
"sign_in_desc": "إضافة حساب قائم",
|
|
||||||
"switch_account": "التبديل إلى {0}",
|
|
||||||
"switch_account_desc": "قم بالتبديل إلى حساب آخر",
|
|
||||||
"toggle_dark_mode": "تبديل المظهر الداكن",
|
|
||||||
"toggle_zen_mode": "تبديل وضع الهدوء"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "نهاية القائمة",
|
|
||||||
"error": "حدث خطأ",
|
|
||||||
"in": "في",
|
|
||||||
"not_found": "404 غير معثور عليه",
|
|
||||||
"offline_desc": "يبدو أنك غير متصل بالإنترنت. يرجى التحقق من اتصالك."
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "مع"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "حساب {0} غير موجود",
|
|
||||||
"explore-list-empty": "لا توجد مشاركات شائعة الآن. تحقق مرة أخرى لاحقًا!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "لا يمكن أن يتجاوز حجم الملف {0} ميغابايت",
|
|
||||||
"sign_in_error": "لا يمكن الاتصال بالموقع",
|
|
||||||
"status_not_found": "لا يمكن إيجاد المنشور",
|
|
||||||
"unsupported_file_format": "لا يمكن تحميل هذا النوع من الملفات"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "توقع بعض الأخطاء والميزات المفقودة هنا وهناك.",
|
|
||||||
"desc_para1": "نشكرك على اهتمامك بتجربة Elk ، عميل ماستدون العام!",
|
|
||||||
"desc_para2": "نحن نعمل بجد على التطوير وتحسينه بمرور الوقت. وسندعوك قريبًا للانضمام إلى القوة بمجرد أن نجعلها مفتوحة المصدر قريبًا!",
|
|
||||||
"desc_para3": "قبل ذلك ، للمساعدة في تعزيز التنمية ، يمكنك رعاية أعضاء فريقنا من خلال الروابط أدناه.",
|
|
||||||
"title": "Elk في عرض مسبق"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "حظر {0}",
|
|
||||||
"block_domain": "حظر المجال {0}",
|
|
||||||
"copy_link_to_post": "انسخ الرابط إلى هذا المنشور",
|
|
||||||
"delete": "حذف",
|
|
||||||
"delete_and_redraft": "حذف وإعادة صياغة",
|
|
||||||
"direct_message_account": "إرسال رسالة مباشرة إلى {0}",
|
|
||||||
"edit": "تعديل",
|
|
||||||
"mention_account": "أذكر {0}",
|
|
||||||
"mute_account": "كتم {0}",
|
|
||||||
"mute_conversation": "تجاهل هذا المنصب",
|
|
||||||
"open_in_original_site": "فتح في الموقع الأصلي",
|
|
||||||
"pin_on_profile": "تثبيت على حسابك الشخصي",
|
|
||||||
"show_untranslated": "عرض بدون ترجمة",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "تبديل المظهر الداكن",
|
|
||||||
"light": "تبديل المظهر الفاتح"
|
|
||||||
},
|
|
||||||
"translate_post": "ترجم المنشور",
|
|
||||||
"unblock_account": "رفع الحظر عن {0}",
|
|
||||||
"unblock_domain": "رفع الحظر عن النطاق {0}",
|
|
||||||
"unmute_account": "إلغاء كتم الحساب {0}",
|
|
||||||
"unmute_conversation": "إلغاء كتم المحادثة",
|
|
||||||
"unpin_on_profile": "إلغاء التثبيت من الملف الشخصي"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "العلامات المرجعية",
|
|
||||||
"built_at": "Built {0}",
|
|
||||||
"conversations": "المحادثات",
|
|
||||||
"explore": "استكشف",
|
|
||||||
"favourites": "المفضلة",
|
|
||||||
"federated": "الفديرالية",
|
|
||||||
"home": "الرئيسيّة",
|
|
||||||
"local": "المحلي",
|
|
||||||
"notifications": "التنبيهات",
|
|
||||||
"profile": "الصفحة التعريفية",
|
|
||||||
"search": "البحث",
|
|
||||||
"select_feature_flags": "تبديل علامات الميزات",
|
|
||||||
"select_font_size": "حجم الخط",
|
|
||||||
"select_language": "اختار اللغة",
|
|
||||||
"settings": "الإعدادات",
|
|
||||||
"show_intro": "عرض المقدمة",
|
|
||||||
"toggle_theme": "تبديل المظهر",
|
|
||||||
"zen_mode": "الوضع الهادئ"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "أُعجِب بمنشورك",
|
|
||||||
"followed_you": "بدأ في متابعتك",
|
|
||||||
"followed_you_count": "لم يتبعك أحد|تبعك شخص واحد|تبعك شخصان|تبعك {0} أشخاص|تبعك {0} شخص| تبعك {0} شخص",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "اعاد نشر منشورك",
|
|
||||||
"request_to_follow": "طلب(ت) متابعتك",
|
|
||||||
"signed_up": "تسجل",
|
|
||||||
"update_status": "قام(ت) بتحديث حالته(ا)"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "اكتب تحذيرك هنا",
|
|
||||||
"default_1": "ماذا يدور في ذهنك؟",
|
|
||||||
"reply_to_account": "الرد على {0}",
|
|
||||||
"replying": "الرد",
|
|
||||||
"the_thread": "المحادثة"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "تجاهل",
|
|
||||||
"title": "يتوفر تحديث Elk الجديد",
|
|
||||||
"update": "تحديث",
|
|
||||||
"update_available_short": "تحديث Elk"
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "ابحث عن الأشخاص والهاشتاج"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "بشأن Elk"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub بطاقات",
|
|
||||||
"title": "الميزات التجريبية",
|
|
||||||
"user_picker": "الشريط الجانبي لمبدل المستخدم",
|
|
||||||
"virtual_scroll": "التمرير الافتراضي"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "وضع اللون",
|
|
||||||
"dark_mode": "الوضع الداكن",
|
|
||||||
"default": "(إفتراضي)",
|
|
||||||
"font_size": "حجم الخط",
|
|
||||||
"label": "واجهه المستخدم",
|
|
||||||
"light_mode": "وضع الضوء"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "اللغة المعروضة",
|
|
||||||
"label": "اللغة"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "المفضلة",
|
|
||||||
"follow": "متابعين جدد",
|
|
||||||
"mention": "المنشورات التي تذكرني",
|
|
||||||
"poll": "استطلاعات الرأي",
|
|
||||||
"reblog": "إعادة نشر منشورك",
|
|
||||||
"title": "ما هي التنبيهات التي تريد تلقيها؟"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "من اي شخص",
|
|
||||||
"followed": "من الناس الذين أتابعهم",
|
|
||||||
"follower": "من الناس الذين يتبعونني",
|
|
||||||
"none": "من لا أحد",
|
|
||||||
"title": "من الذي يمكنني تلقي التنبيهات منه؟"
|
|
||||||
},
|
|
||||||
"save_settings": "حفظ التغييرات الإعدادات",
|
|
||||||
"undo_settings": "تراجع عن تغييرات الإعدادات",
|
|
||||||
"unsubscribe": "تعطيل التنبيهات",
|
|
||||||
"unsupported": "متصفحك لا يدعم التنبيهات",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "أغلق",
|
|
||||||
"enable_description": "لتلقي التنبيهات عندما لا يكون Elk مفتوحًا، قم بتمكين تنبيهات النظام. يمكنك التحكم بدقة في أنواع التفاعلات التي تنشئ تنبيهات النظام عبر الزر \"Show Settings\" أعلاه.",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "تفعيل تنبيهات النظام",
|
|
||||||
"enable_title": "لا تفوت عليك أي شيء",
|
|
||||||
"re_auth": "يبدو أن الخادم الخاص بك لا يدعم دفع التنبيهات. حاول تسجيل الخروج ثم تسجيل الدخول مرة أخرى ، إذا استمرت هذه الرسالة في الظهور ، فاتصل بمسؤول الخادم."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notifications",
|
|
||||||
"preferences": {
|
|
||||||
"label": "التفضيلات"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "النبذة التعريفية",
|
|
||||||
"description": "تعديل الصورة الرمزية واسم المستخدم والملف الشخصي...",
|
|
||||||
"display_name": "الاسم المعروض",
|
|
||||||
"label": "المظهر",
|
|
||||||
"title": "تعديل الملف الشخصي"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "يمكن للأشخاص تصفح مشاركاتك العامة تحت علامات الهاشتاغ هذه",
|
|
||||||
"label": "الهاشتاغ البارزة"
|
|
||||||
},
|
|
||||||
"label": "الملف الشخصي"
|
|
||||||
},
|
|
||||||
"select_a_settings": "اختر الإعداد",
|
|
||||||
"users": {
|
|
||||||
"export": "Export User Tokens",
|
|
||||||
"import": "Import User Tokens",
|
|
||||||
"label": "المستخدمون المسجلون"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"edited": "(معدل)",
|
|
||||||
"editing": "تعديل",
|
|
||||||
"loading": "جاري التحميل ...",
|
|
||||||
"upload_failed": "التحميل فشل",
|
|
||||||
"uploading": "جاري التحميل ..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "عدل {0}",
|
|
||||||
"filter_hidden_phrase": "تمت تصفيتها بواسطة",
|
|
||||||
"filter_removed_phrase": "تمت إزالته بواسطة عامل التصفية",
|
|
||||||
"filter_show_anyway": "عرض على أي حال",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "وصف",
|
|
||||||
"dismiss": "تجاهل"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "لا توجد اصوات|صوت {0}|صوتين|{0} أصوات|{0} صوت|{0} صوت",
|
|
||||||
"ends": "ينتهي في {0}",
|
|
||||||
"finished": "انتهى في {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} اعاد نشر",
|
|
||||||
"someone": "شخص ما",
|
|
||||||
"spoiler_show_less": "عرض أقل",
|
|
||||||
"spoiler_show_more": "عرض المزيد",
|
|
||||||
"try_original_site": "جرب الموقع الأصلي"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "تم إنشاؤه في {0}",
|
|
||||||
"edited": "تم تعديله في {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "مصممة لك",
|
|
||||||
"hashtags": "هاشتاغ",
|
|
||||||
"media": "الصور/الفيديو",
|
|
||||||
"news": "الأخبار",
|
|
||||||
"notifications_all": "كل شىء",
|
|
||||||
"notifications_mention": "موجهة إلي",
|
|
||||||
"posts": "المنشورات",
|
|
||||||
"posts_with_replies": "المنشورات والردود"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "في 0 أيام|غدا|في يومين|في {v} أيام|في {v} يوم|في {v} يوم",
|
|
||||||
"day_past": "منذ 0 أيام|البارحة|منذ يومين|منذ {v} أيام|منذ {v} يوم|منذ {v} يوم",
|
|
||||||
"hour_future": "في 0 ساعات|في ساعة|في ساعتين|في {v} ساعات|في {v} ساعة|في {v} ساعة",
|
|
||||||
"hour_past": "منذ 0 ساعات|منذ ساعة واحدة|منذ ساعتين|منذ {v} ساعات|منذ {v} ساعة|منذ {v} ساعة",
|
|
||||||
"just_now": "الآن",
|
|
||||||
"minute_future": "في 0 دقائق|في دقيقة واحدة|في دقيقتين|في {v} دقائق|في {v} دقيقة|في {v} دقيقة",
|
|
||||||
"minute_past": "منذ 0 دقائق|منذ دقيقة واحدة|منذ دقيقتين|منذ {v} دقائق|منذ {v} دقيقة|منذ {v} دقيقة",
|
|
||||||
"month_future": "في 0 أشهر|الشهر القادم|في شهرين|في {v} أشهر|في {v} شهر|في {v} شهر",
|
|
||||||
"month_past": "منذ 0 أشهر|الشهر الماضي|منذ شهرين|منذ {v} أشهر|منذ {v} شهر|منذ {v} شهر",
|
|
||||||
"second_future": "الآن|في ثانية|في ثانيتين|في {v} ثواني|في {v} ثانية|في {v} ثانية",
|
|
||||||
"second_past": "للتو|منذ ثانية|منذ ثانيتين|منذ {v} ثواني|منذ {v} ثانية|منذ {v} ثانية",
|
|
||||||
"short_day_future": "في 0 أيام|غدا|في يومين|في {v} أيام|في {v} يوم|في {v} يوم",
|
|
||||||
"short_day_past": "منذ 0 أيام|البارحة|منذ يومين|منذ {v} أيام|منذ {v} يوم|منذ {v} يوم",
|
|
||||||
"short_hour_future": "في 0 ساعات|في ساعة|في ساعتين|في {v} ساعات|في {v} ساعة|في {v} ساعة",
|
|
||||||
"short_hour_past": "منذ 0 ساعات|منذ ساعة واحدة|منذ ساعتين|منذ {v} ساعات|منذ {v} ساعة|منذ {v} ساعة",
|
|
||||||
"short_minute_future": "في 0 دقائق|في دقيقة واحدة|في دقيقتين|في {v} دقائق|في {v} دقيقة|في {v} دقيقة",
|
|
||||||
"short_minute_past": "منذ 0 دقائق|منذ دقيقة واحدة|منذ دقيقتين|منذ {v} دقائق|منذ {v} دقيقة|منذ {v} دقيقة",
|
|
||||||
"short_month_future": "في 0 أشهر|الشهر القادم|في شهرين|في {v} أشهر|في {v} شهر|في {v} شهر",
|
|
||||||
"short_month_past": "منذ 0 أشهر|الشهر الماضي|منذ شهرين|منذ {v} أشهر|منذ {v} شهر|منذ {v} شهر",
|
|
||||||
"short_second_future": "الآن|في ثانية|في ثانيتين|في {v} ثواني|في {v} ثانية|في {v} ثانية",
|
|
||||||
"short_second_past": "للتو|منذ ثانية|منذ ثانيتين|منذ {v} ثواني|منذ {v} ثانية|منذ {v} ثانية",
|
|
||||||
"short_week_future": "في 0 أسابيع|الاسبوع القادم|في اسبوعين|في {v} أسابيع|في {v} اسبوع|في {v} اسبوع",
|
|
||||||
"short_week_past": "منذ 0 أسابيع|الاسبوع الماضي|منذ اسبوعين|منذ {v} أسابيع|منذ {v} اسبوع|منذ {v} اسبوع",
|
|
||||||
"short_year_future": "هذا العام|العام القادم|في عامين|في {v} عاما|في {v} عام|في {v} عام",
|
|
||||||
"short_year_past": "هذا العام|العام الماضي|منذ عامين|منذ {v} عاما|منذ {v} عام|منذ {v} عام",
|
|
||||||
"week_future": "في 0 أسابيع|الاسبوع القادم|في اسبوعين|في {v} أسابيع|في {v} اسبوع|في {v} اسبوع",
|
|
||||||
"week_past": "منذ 0 أسابيع|الاسبوع الماضي|منذ اسبوعين|منذ {v} أسابيع|منذ {v} اسبوع|منذ {v} اسبوع",
|
|
||||||
"year_future": "هذا العام|العام القادم|في عامين|في {v} عاما|في {v} عام|في {v} عام",
|
|
||||||
"year_past": "هذا العام|العام الماضي|منذ عامين|منذ {v} عاما|منذ {v} عام|منذ {v} عام"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "لا توجد عناصر جديدة|إظهار {v} عنصر جديد|إظهار {v} عنصرين جديدين|إظهار {v} عناصر جديدة|إظهار {v} عنصر جديد|إظهار {v} عنصر جديد"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "الجدول الزمني الموحد",
|
|
||||||
"local_timeline": "الجدول الزمني المحلي"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "إضافة تحذير المحتوى",
|
|
||||||
"add_media": "أضف صورًا أو مقطع فيديو أو ملفًا صوتيًا",
|
|
||||||
"change_content_visibility": "تغيير خصوصية المحتوى",
|
|
||||||
"emoji": "رمز تعبيري",
|
|
||||||
"explore_links_intro": "يتم التحدث عن هذه القصص الإخبارية من قبل الأشخاص الموجودين على هذه الشبكة وغيرها من الشبكات اللامركزية في الوقت الحالي",
|
|
||||||
"explore_posts_intro": "تكتسب هذه المنشورات الكثير من النشاط على الشبكة وغيرها من الشبكات اللامركزية في الوقت الحالي",
|
|
||||||
"explore_tags_intro": "تكتسب هذه الهاشتاغ الكثير من النشاط بين الأشخاص على هذه الشبكة وغيرها من الشبكات اللامركزية في الوقت الحالي",
|
|
||||||
"toggle_code_block": "تبديل كتلة التعليمات البرمجية"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "إضافة حساب قائم",
|
|
||||||
"server_address_label": "عنوان خادم ماستودون",
|
|
||||||
"sign_in_desc": "قم بتسجيل الدخول لمتابعة الملفات الشخصية والمشاركة والرد على المنشورات أو التفاعل من حسابك على خادم مختلف",
|
|
||||||
"sign_in_notice_title": "عرض البيانات العامة من {0}",
|
|
||||||
"sign_out_account": "تسجيل الخروج من {0}",
|
|
||||||
"tip_no_account": "إذا ليس لديك حساب ماستودون ، {0}",
|
|
||||||
"tip_register_account": "اختر خادم ماستودون الخاص بك وقم بتسجيل حساب"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "رسالة مباشرة",
|
|
||||||
"direct_desc": "مرئي للمستخدمين المذكورين فقط",
|
|
||||||
"private": "المتابعون فقط",
|
|
||||||
"private_desc": "مرئي للمتابعين فقط",
|
|
||||||
"public": "عام",
|
|
||||||
"public_desc": "مرئي للجميع",
|
|
||||||
"unlisted": "غير مدرج",
|
|
||||||
"unlisted_desc": "مرئي للجميع ، ولكن تم إلغاء الاشتراك في ميزات الاكتشاف"
|
|
||||||
}
|
|
||||||
}
|
|
204
locales/cs-CZ.ftl
Normal file
204
locales/cs-CZ.ftl
Normal file
|
@ -0,0 +1,204 @@
|
||||||
|
account_avatar_description = profilová fotka uživatele {$username}
|
||||||
|
account_blocked_by = Tohoto uživatele jste zablokovali.
|
||||||
|
account_blocked_domains = Zablokované domény
|
||||||
|
account_blocked_users = Zablokovaní uživatelé
|
||||||
|
account_bot = ROBOT
|
||||||
|
account_favourites = Oblíbené
|
||||||
|
account_follow = Sledovat
|
||||||
|
account_follow_back = Taky sledovat
|
||||||
|
account_follow_requested = Požádáno o sledování
|
||||||
|
account_followers = Sledující
|
||||||
|
account_followers_count = {$formattedCount} sledujících
|
||||||
|
account_following = Sleduje
|
||||||
|
account_following_count = {$formattedCount} sleduje
|
||||||
|
account_follows_you = Sleduje vás
|
||||||
|
account_go_to_profile = Jít na profil
|
||||||
|
account_joined = Joined
|
||||||
|
account_moved_title = uživatel se přestěhoval na adresu:
|
||||||
|
account_muted_users = Ztlumení
|
||||||
|
account_mutuals = Přátelé
|
||||||
|
account_pinned = Připnuto
|
||||||
|
account_posts = Příspěvky
|
||||||
|
account_posts_count = {$formattedCount} Příspěvků
|
||||||
|
account_profile_description = pozadí profilu {$username}
|
||||||
|
account_profile_unavailable = Profil není dostupný
|
||||||
|
account_unfollow = Přestat sledovat
|
||||||
|
action_bookmark = Uložit do záložek
|
||||||
|
action_bookmarked = Založeno
|
||||||
|
action_boost = Přeposlat
|
||||||
|
action_boosted = Přeposláno
|
||||||
|
action_close = Zavřít
|
||||||
|
action_compose = Napsat
|
||||||
|
action_enter_app = Spustit aplikaci
|
||||||
|
action_favourite = Přidat k oblíbeným
|
||||||
|
action_favourited = Oblíbené
|
||||||
|
action_more = Více
|
||||||
|
action_next = Dále
|
||||||
|
action_prev = Zpět
|
||||||
|
action_publish = Zveřejnit
|
||||||
|
action_reply = Odpovědět
|
||||||
|
action_save_changes = Uložit změny
|
||||||
|
action_sign_in = Přihlásit se
|
||||||
|
action_switch_account = Přepnout účet
|
||||||
|
action_vote = Hlasovat
|
||||||
|
app_desc_short = Elk - hbitý webklient pro Mastodon.
|
||||||
|
app_logo = logo Elk
|
||||||
|
app_name = Elk
|
||||||
|
command_activate = Aktivovat
|
||||||
|
command_complete = Dokončit
|
||||||
|
command_compose_desc = Napsat příspěvek
|
||||||
|
command_n-people-in-the-past-n-days = {$count} lidí v posledních {$days} dnech
|
||||||
|
command_select_lang = Vybrat jazyk
|
||||||
|
command_sign_in_desc = Přidat existující účet
|
||||||
|
command_switch_account = Přepnout na {$username}
|
||||||
|
command_switch_account_desc = Přepnout na jiný účet
|
||||||
|
command_toggle_dark_mode = Zapnout tmavý režim
|
||||||
|
command_toggle_zen_mode = Zapnout zenový režim
|
||||||
|
common_end_of_list = Konec seznamu
|
||||||
|
common_error = CHYBA
|
||||||
|
common_not_found = 404 Nenalezeno!
|
||||||
|
common_offline_desc = Zdá se, že jste offline. Zkontrolujte připojení k internetu.
|
||||||
|
conversation_with = s
|
||||||
|
error_account_not_found = Účet {$username} nenalezen
|
||||||
|
error_explore-list-empty = Momentálně tu není nic zajímavého. Zkuste to jindy.
|
||||||
|
error_sign_in_error = Nemohu se připojit k serveru.
|
||||||
|
error_status_not_found = Status nenalezen
|
||||||
|
help_desc_highlight = Z toho důvodu může tu a tam nastat chyba nebo chybět nějaká ta funkce.
|
||||||
|
help_desc_para1 = Těší nás váš zájem o Elk - Mastodoní klient na kterém právě pracujeme.
|
||||||
|
help_desc_para2 = Pracujeme na vývoji a průběžně Elk vylepšujeme. Brzy ho zveřejníme jako open source a budete mít možnost přispět svou troškou do mlýna.
|
||||||
|
help_desc_para3 = Předtím můžete přispět do klobouku našim vývojářům na níže uvedených odkazech:
|
||||||
|
help_title = Elk ještě není hotový
|
||||||
|
menu_block_account = Zablokovat {$username}
|
||||||
|
menu_block_domain = Zablokovat doménu {$domain}
|
||||||
|
menu_copy_link_to_post = Zkopírovat odkaz na příspěvek
|
||||||
|
menu_delete = Odstranit
|
||||||
|
menu_delete_and_redraft = Odstranit a přepsat
|
||||||
|
menu_direct_message_account = Napsat soukromou zprávu pro {$username}
|
||||||
|
menu_edit = Upravit
|
||||||
|
menu_mention_account = Zmínit {$username}
|
||||||
|
menu_mute_account = Umlčet {$username}
|
||||||
|
menu_mute_conversation = Umlčet příspěvek
|
||||||
|
menu_open_in_original_site = Otevřít na původní stránce
|
||||||
|
menu_pin_on_profile = Připíchnout na profil
|
||||||
|
menu_show_untranslated = Zobrazit nepřeložené
|
||||||
|
menu_toggle_theme_dark = Zapnout tmavý vzhled
|
||||||
|
menu_toggle_theme_light = Zapnout světlý vzhled
|
||||||
|
menu_translate_post = Přeložit příspěvek
|
||||||
|
menu_unblock_account = Odblokovat {$username}
|
||||||
|
menu_unblock_domain = Odblokovat doménu {$domain}
|
||||||
|
menu_unmute_account = Odmlčet {$username}
|
||||||
|
menu_unmute_conversation = Přestat ignorovat příspěvek
|
||||||
|
menu_unpin_on_profile = Odepnout z profilu
|
||||||
|
nav_bookmarks = Záložky
|
||||||
|
nav_built_at = Zprovozněno {0}
|
||||||
|
nav_conversations = Pošta
|
||||||
|
nav_explore = Zajímavé
|
||||||
|
nav_favourites = Oblíbené
|
||||||
|
nav_federated = Federované
|
||||||
|
nav_home = Hlavní stránka
|
||||||
|
nav_local = Lokální
|
||||||
|
nav_notifications = Upozornění
|
||||||
|
nav_profile = Profil
|
||||||
|
nav_search = Vyhledávání
|
||||||
|
nav_select_feature_flags = Zapnout funkce
|
||||||
|
nav_select_language = Vybrat jazyk
|
||||||
|
nav_show_intro = Zobrazit více informací o aplikaci
|
||||||
|
nav_toggle_theme = Přepnout vzhled
|
||||||
|
nav_zen_mode = Tichý režim
|
||||||
|
notification_favourited_post = si oblíbil váš příspěvek
|
||||||
|
notification_followed_you = vás nyní sleduje
|
||||||
|
notification_followed_you_count = {n} osoba vás začala sledovat|{n} lidí vás začalo sledovat
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = přeposlal váš příspěvek
|
||||||
|
notification_request_to_follow = požádal o sledování
|
||||||
|
notification_update_status = aktualizoval svůj status
|
||||||
|
placeholder_content_warning = Sem napište varování
|
||||||
|
placeholder_default_1 = O čem chcete psát?
|
||||||
|
placeholder_reply_to_account = Odpovědět {0}
|
||||||
|
placeholder_replying = Sem napište odpověď
|
||||||
|
placeholder_the_thread = vlákno
|
||||||
|
settings_feature_flags_github_cards = GitHub Cards
|
||||||
|
settings_feature_flags_user_picker = User Picker
|
||||||
|
settings_feature_flags_virtual_scroll = Virtual Scrolling
|
||||||
|
state_edited = (Upraveno)
|
||||||
|
state_editing = Upravuje se
|
||||||
|
state_loading = Čekejte...
|
||||||
|
state_uploading = Nahrává se...
|
||||||
|
status_edited = Upraveno {$date}
|
||||||
|
status_filter_hidden_phrase = Vyfiltrováno
|
||||||
|
status_filter_removed_phrase = Vyfiltrováno
|
||||||
|
status_filter_show_anyway = Ukázat i tak
|
||||||
|
status_img_alt_desc = Popis
|
||||||
|
status_img_alt_dismiss = Skrýt
|
||||||
|
status_poll_count = {0} hlasů|{0} hlas|{0} hlasů
|
||||||
|
status_poll_ends = končí {0}
|
||||||
|
status_poll_finished = ukončeno {0}
|
||||||
|
status_reblogged = {0} přeposlal
|
||||||
|
status_someone = Někdo
|
||||||
|
status_spoiler_show_less = Skrýt
|
||||||
|
status_spoiler_show_more = Ukázat
|
||||||
|
status_thread = Vlákno
|
||||||
|
status_try_original_site = Zkus původní stránku
|
||||||
|
status_history_created = vytvořeno {0}
|
||||||
|
status_history_edited = upraveno {$date}
|
||||||
|
tab_for_you = Možná znáte
|
||||||
|
tab_hashtags = Hashtagy
|
||||||
|
tab_media = Multimédia
|
||||||
|
tab_news = Zprávy
|
||||||
|
tab_notifications_all = Vše
|
||||||
|
tab_notifications_mention = Zmínky
|
||||||
|
tab_posts = Příspěvky
|
||||||
|
tab_posts_with_replies = Příspěvky a odpovědi
|
||||||
|
time_ago_options_day_future = za 0 dní|zítra|za {n} dní
|
||||||
|
time_ago_options_day_past = před 0 dny|včera|{n} dní zpátky
|
||||||
|
time_ago_options_hour_future = za 0 hodin|za hodinu|za {n} hodin
|
||||||
|
time_ago_options_hour_past = před 0 hodinami|před hodinou|před {n} hodinami
|
||||||
|
time_ago_options_just_now = nyní
|
||||||
|
time_ago_options_minute_future = za 0 minut|za minutu|za {n} minut
|
||||||
|
time_ago_options_minute_past = před 0 minutami|před minutou|před {n} minutami
|
||||||
|
time_ago_options_month_future = za 0 měsíců|příští měsíc|za {n} měsíců
|
||||||
|
time_ago_options_month_past = před 0 měsíci|minulý měsíc|před {n} měsíci
|
||||||
|
time_ago_options_second_future = právě teď|za {n} sekund|za {n} sekund
|
||||||
|
time_ago_options_second_past = právě teď|před {n} sekundami|před {n} sekundami
|
||||||
|
time_ago_options_short_day_future = za {n}d
|
||||||
|
time_ago_options_short_day_past = {n}d
|
||||||
|
time_ago_options_short_hour_future = za {n}h
|
||||||
|
time_ago_options_short_hour_past = {$n}h
|
||||||
|
time_ago_options_short_minute_future = za {n}min
|
||||||
|
time_ago_options_short_minute_past = {$n}min
|
||||||
|
time_ago_options_short_month_future = za {n}měs.
|
||||||
|
time_ago_options_short_month_past = {n}měs.
|
||||||
|
time_ago_options_short_second_future = za {n}s
|
||||||
|
time_ago_options_short_second_past = {n}s
|
||||||
|
time_ago_options_short_week_future = za {n}t.
|
||||||
|
time_ago_options_short_week_past = {n}t
|
||||||
|
time_ago_options_short_year_future = za {n}r
|
||||||
|
time_ago_options_short_year_past = {n}r
|
||||||
|
time_ago_options_week_future = za 0 týdnů|příští týden|za {n} týdnů
|
||||||
|
time_ago_options_week_past = před 0 týdny|minulý týden|před {n} týdny
|
||||||
|
time_ago_options_year_future = za 0 let|příští rok|za {n} let
|
||||||
|
time_ago_options_year_past = před 0 roky|minulý rok|před {n} lety
|
||||||
|
timeline_show_new_items = Ukázat {v} nových položek|Ukázat {v} novou položku|Ukázat {v} nových položek
|
||||||
|
title_federated_timeline = Federovaná časová osa
|
||||||
|
title_local_timeline = Lokální časová osa
|
||||||
|
tooltip_add_content_warning = Přidat varování
|
||||||
|
tooltip_add_media = Přidat obrázek, video nebo nahrávku
|
||||||
|
tooltip_change_content_visibility = Změnit viditelnost příspěvku
|
||||||
|
tooltip_explore_links_intro = O těchto zprávách se nyní mluví na tomto nebo dalších serverech.
|
||||||
|
tooltip_explore_posts_intro = Tyto příspěvky jsou nyní populární na tomto nebo dalších serverech.
|
||||||
|
tooltip_explore_tags_intro = Tyto hashtagy se nyní šíří mezi lidmi na tomto nebo dalších serverech.
|
||||||
|
tooltip_toggle_code_block = Přepnout na režim kódu
|
||||||
|
user_add_existing = Přidat existující účet
|
||||||
|
user_server_address_label = Adresa Mastodon serveru:
|
||||||
|
user_sign_in_desc = Přihlaste se, abyste mohli sledovat profily nebo hashtagy, psát a sdílet příspěvky a odpovídat na ně na tomto nebo jiných serverech.
|
||||||
|
user_sign_out_account = Odhlásit {$username}
|
||||||
|
user_tip_no_account = Pokud nemáte účet na Mastodonu, {0}.
|
||||||
|
user_tip_register_account = vyberte server a zaregistrujte se
|
||||||
|
visibility_direct = Soukromé
|
||||||
|
visibility_direct_desc = Uvidí to pouze uživatelé, které zmíníte.
|
||||||
|
visibility_private = Jen pro sledující
|
||||||
|
visibility_private_desc = Uvidí to jen sledující.
|
||||||
|
visibility_public = Veřejné
|
||||||
|
visibility_public_desc = Uvidí to všichni.
|
||||||
|
visibility_unlisted = Nenabízené
|
||||||
|
visibility_unlisted_desc = Uvidí to všichni, ale nebude to nabízeno mezi Zajímavými.
|
|
@ -1,258 +0,0 @@
|
||||||
{
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "profilová fotka uživatele {0}",
|
|
||||||
"blocked_by": "Tohoto uživatele jste zablokovali.",
|
|
||||||
"blocked_domains": "Zablokované domény",
|
|
||||||
"blocked_users": "Zablokovaní uživatelé",
|
|
||||||
"bot": "ROBOT",
|
|
||||||
"favourites": "Oblíbené",
|
|
||||||
"follow": "Sledovat",
|
|
||||||
"follow_back": "Taky sledovat",
|
|
||||||
"follow_requested": "Požádáno o sledování",
|
|
||||||
"followers": "Sledující",
|
|
||||||
"followers_count": "{0} sledujících",
|
|
||||||
"following": "Sleduje",
|
|
||||||
"following_count": "{0} sleduje",
|
|
||||||
"follows_you": "Sleduje vás",
|
|
||||||
"go_to_profile": "Jít na profil",
|
|
||||||
"joined": "Joined",
|
|
||||||
"moved_title": "uživatel se přestěhoval na adresu:",
|
|
||||||
"muted_users": "Ztlumení",
|
|
||||||
"mutuals": "Přátelé",
|
|
||||||
"pinned": "Připnuto",
|
|
||||||
"posts": "Příspěvky",
|
|
||||||
"posts_count": "{0} Příspěvků",
|
|
||||||
"profile_description": "pozadí profilu {0}",
|
|
||||||
"profile_unavailable": "Profil není dostupný",
|
|
||||||
"unfollow": "Přestat sledovat"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"bookmark": "Uložit do záložek",
|
|
||||||
"bookmarked": "Založeno",
|
|
||||||
"boost": "Přeposlat",
|
|
||||||
"boosted": "Přeposláno",
|
|
||||||
"close": "Zavřít",
|
|
||||||
"compose": "Napsat",
|
|
||||||
"enter_app": "Spustit aplikaci",
|
|
||||||
"favourite": "Přidat k oblíbeným",
|
|
||||||
"favourited": "Oblíbené",
|
|
||||||
"more": "Více",
|
|
||||||
"next": "Dále",
|
|
||||||
"prev": "Zpět",
|
|
||||||
"publish": "Zveřejnit",
|
|
||||||
"reply": "Odpovědět",
|
|
||||||
"save_changes": "Uložit změny",
|
|
||||||
"sign_in": "Přihlásit se",
|
|
||||||
"switch_account": "Přepnout účet",
|
|
||||||
"vote": "Hlasovat"
|
|
||||||
},
|
|
||||||
"app_desc_short": "Elk - hbitý webklient pro Mastodon.",
|
|
||||||
"app_logo": "logo Elk",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"command": {
|
|
||||||
"activate": "Aktivovat",
|
|
||||||
"complete": "Dokončit",
|
|
||||||
"compose_desc": "Napsat příspěvek",
|
|
||||||
"n-people-in-the-past-n-days": "{0} lidí v posledních {1} dnech",
|
|
||||||
"select_lang": "Vybrat jazyk",
|
|
||||||
"sign_in_desc": "Přidat existující účet",
|
|
||||||
"switch_account": "Přepnout na {0}",
|
|
||||||
"switch_account_desc": "Přepnout na jiný účet",
|
|
||||||
"toggle_dark_mode": "Zapnout tmavý režim",
|
|
||||||
"toggle_zen_mode": "Zapnout zenový režim"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "Konec seznamu",
|
|
||||||
"error": "CHYBA",
|
|
||||||
"not_found": "404 Nenalezeno!",
|
|
||||||
"offline_desc": "Zdá se, že jste offline. Zkontrolujte připojení k internetu."
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "s"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Účet {0} nenalezen",
|
|
||||||
"explore-list-empty": "Momentálně tu není nic zajímavého. Zkuste to jindy.",
|
|
||||||
"sign_in_error": "Nemohu se připojit k serveru.",
|
|
||||||
"status_not_found": "Status nenalezen"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Z toho důvodu může tu a tam nastat chyba nebo chybět nějaká ta funkce.",
|
|
||||||
"desc_para1": "Těší nás váš zájem o Elk - Mastodoní klient na kterém právě pracujeme.",
|
|
||||||
"desc_para2": "Pracujeme na vývoji a průběžně Elk vylepšujeme. Brzy ho zveřejníme jako open source a budete mít možnost přispět svou troškou do mlýna.",
|
|
||||||
"desc_para3": "Předtím můžete přispět do klobouku našim vývojářům na níže uvedených odkazech:",
|
|
||||||
"title": "Elk ještě není hotový"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Zablokovat {0}",
|
|
||||||
"block_domain": "Zablokovat doménu {0}",
|
|
||||||
"copy_link_to_post": "Zkopírovat odkaz na příspěvek",
|
|
||||||
"delete": "Odstranit",
|
|
||||||
"delete_and_redraft": "Odstranit a přepsat",
|
|
||||||
"direct_message_account": "Napsat soukromou zprávu pro {0}",
|
|
||||||
"edit": "Upravit",
|
|
||||||
"mention_account": "Zmínit {0}",
|
|
||||||
"mute_account": "Umlčet {0}",
|
|
||||||
"mute_conversation": "Umlčet příspěvek",
|
|
||||||
"open_in_original_site": "Otevřít na původní stránce",
|
|
||||||
"pin_on_profile": "Připíchnout na profil",
|
|
||||||
"show_untranslated": "Zobrazit nepřeložené",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Zapnout tmavý vzhled",
|
|
||||||
"light": "Zapnout světlý vzhled"
|
|
||||||
},
|
|
||||||
"translate_post": "Přeložit příspěvek",
|
|
||||||
"unblock_account": "Odblokovat {0}",
|
|
||||||
"unblock_domain": "Odblokovat doménu {0}",
|
|
||||||
"unmute_account": "Odmlčet {0}",
|
|
||||||
"unmute_conversation": "Přestat ignorovat příspěvek",
|
|
||||||
"unpin_on_profile": "Odepnout z profilu"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "Záložky",
|
|
||||||
"built_at": "Zprovozněno {0}",
|
|
||||||
"conversations": "Pošta",
|
|
||||||
"explore": "Zajímavé",
|
|
||||||
"favourites": "Oblíbené",
|
|
||||||
"federated": "Federované",
|
|
||||||
"home": "Hlavní stránka",
|
|
||||||
"local": "Lokální",
|
|
||||||
"notifications": "Upozornění",
|
|
||||||
"profile": "Profil",
|
|
||||||
"search": "Vyhledávání",
|
|
||||||
"select_feature_flags": "Zapnout funkce",
|
|
||||||
"select_language": "Vybrat jazyk",
|
|
||||||
"show_intro": "Zobrazit více informací o aplikaci",
|
|
||||||
"toggle_theme": "Přepnout vzhled",
|
|
||||||
"zen_mode": "Tichý režim"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "si oblíbil váš příspěvek",
|
|
||||||
"followed_you": "vás nyní sleduje",
|
|
||||||
"followed_you_count": "{n} osoba vás začala sledovat|{n} lidí vás začalo sledovat",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "přeposlal váš příspěvek",
|
|
||||||
"request_to_follow": "požádal o sledování",
|
|
||||||
"update_status": "aktualizoval svůj status"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Sem napište varování",
|
|
||||||
"default_1": "O čem chcete psát?",
|
|
||||||
"reply_to_account": "Odpovědět {0}",
|
|
||||||
"replying": "Sem napište odpověď",
|
|
||||||
"the_thread": "vlákno"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub Cards",
|
|
||||||
"user_picker": "User Picker",
|
|
||||||
"virtual_scroll": "Virtual Scrolling"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"edited": "(Upraveno)",
|
|
||||||
"editing": "Upravuje se",
|
|
||||||
"loading": "Čekejte...",
|
|
||||||
"uploading": "Nahrává se..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "Upraveno {0}",
|
|
||||||
"filter_hidden_phrase": "Vyfiltrováno",
|
|
||||||
"filter_removed_phrase": "Vyfiltrováno",
|
|
||||||
"filter_show_anyway": "Ukázat i tak",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Popis",
|
|
||||||
"dismiss": "Skrýt"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} hlasů|{0} hlas|{0} hlasů",
|
|
||||||
"ends": "končí {0}",
|
|
||||||
"finished": "ukončeno {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} přeposlal",
|
|
||||||
"someone": "Někdo",
|
|
||||||
"spoiler_show_less": "Skrýt",
|
|
||||||
"spoiler_show_more": "Ukázat",
|
|
||||||
"thread": "Vlákno",
|
|
||||||
"try_original_site": "Zkus původní stránku"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "vytvořeno {0}",
|
|
||||||
"edited": "upraveno {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "Možná znáte",
|
|
||||||
"hashtags": "Hashtagy",
|
|
||||||
"media": "Multimédia",
|
|
||||||
"news": "Zprávy",
|
|
||||||
"notifications_all": "Vše",
|
|
||||||
"notifications_mention": "Zmínky",
|
|
||||||
"posts": "Příspěvky",
|
|
||||||
"posts_with_replies": "Příspěvky a odpovědi"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "za 0 dní|zítra|za {n} dní",
|
|
||||||
"day_past": "před 0 dny|včera|{n} dní zpátky",
|
|
||||||
"hour_future": "za 0 hodin|za hodinu|za {n} hodin",
|
|
||||||
"hour_past": "před 0 hodinami|před hodinou|před {n} hodinami",
|
|
||||||
"just_now": "nyní",
|
|
||||||
"minute_future": "za 0 minut|za minutu|za {n} minut",
|
|
||||||
"minute_past": "před 0 minutami|před minutou|před {n} minutami",
|
|
||||||
"month_future": "za 0 měsíců|příští měsíc|za {n} měsíců",
|
|
||||||
"month_past": "před 0 měsíci|minulý měsíc|před {n} měsíci",
|
|
||||||
"second_future": "právě teď|za {n} sekund|za {n} sekund",
|
|
||||||
"second_past": "právě teď|před {n} sekundami|před {n} sekundami",
|
|
||||||
"short_day_future": "za {n}d",
|
|
||||||
"short_day_past": "{n}d",
|
|
||||||
"short_hour_future": "za {n}h",
|
|
||||||
"short_hour_past": "{n}h",
|
|
||||||
"short_minute_future": "za {n}min",
|
|
||||||
"short_minute_past": "{n}min",
|
|
||||||
"short_month_future": "za {n}měs.",
|
|
||||||
"short_month_past": "{n}měs.",
|
|
||||||
"short_second_future": "za {n}s",
|
|
||||||
"short_second_past": "{n}s",
|
|
||||||
"short_week_future": "za {n}t.",
|
|
||||||
"short_week_past": "{n}t",
|
|
||||||
"short_year_future": "za {n}r",
|
|
||||||
"short_year_past": "{n}r",
|
|
||||||
"week_future": "za 0 týdnů|příští týden|za {n} týdnů",
|
|
||||||
"week_past": "před 0 týdny|minulý týden|před {n} týdny",
|
|
||||||
"year_future": "za 0 let|příští rok|za {n} let",
|
|
||||||
"year_past": "před 0 roky|minulý rok|před {n} lety "
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Ukázat {v} nových položek|Ukázat {v} novou položku|Ukázat {v} nových položek"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Federovaná časová osa",
|
|
||||||
"local_timeline": "Lokální časová osa"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Přidat varování",
|
|
||||||
"add_media": "Přidat obrázek, video nebo nahrávku",
|
|
||||||
"change_content_visibility": "Změnit viditelnost příspěvku",
|
|
||||||
"explore_links_intro": "O těchto zprávách se nyní mluví na tomto nebo dalších serverech.",
|
|
||||||
"explore_posts_intro": "Tyto příspěvky jsou nyní populární na tomto nebo dalších serverech.",
|
|
||||||
"explore_tags_intro": "Tyto hashtagy se nyní šíří mezi lidmi na tomto nebo dalších serverech.",
|
|
||||||
"toggle_code_block": "Přepnout na režim kódu"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Přidat existující účet",
|
|
||||||
"server_address_label": "Adresa Mastodon serveru:",
|
|
||||||
"sign_in_desc": "Přihlaste se, abyste mohli sledovat profily nebo hashtagy, psát a sdílet příspěvky a odpovídat na ně na tomto nebo jiných serverech.",
|
|
||||||
"sign_out_account": "Odhlásit {0}",
|
|
||||||
"tip_no_account": "Pokud nemáte účet na Mastodonu, {0}.",
|
|
||||||
"tip_register_account": "vyberte server a zaregistrujte se"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Soukromé",
|
|
||||||
"direct_desc": "Uvidí to pouze uživatelé, které zmíníte.",
|
|
||||||
"private": "Jen pro sledující",
|
|
||||||
"private_desc": "Uvidí to jen sledující.",
|
|
||||||
"public": "Veřejné",
|
|
||||||
"public_desc": "Uvidí to všichni.",
|
|
||||||
"unlisted": "Nenabízené",
|
|
||||||
"unlisted_desc": "Uvidí to všichni, ale nebude to nabízeno mezi Zajímavými."
|
|
||||||
}
|
|
||||||
}
|
|
238
locales/de-DE.ftl
Normal file
238
locales/de-DE.ftl
Normal file
|
@ -0,0 +1,238 @@
|
||||||
|
account_avatar_description = {$username}'s Avatar
|
||||||
|
account_blocked_by = Du wurdest von diesem Account geblockt
|
||||||
|
account_blocked_domains = Gesperrte Domänen
|
||||||
|
account_blocked_users = Gesperrte Accounts
|
||||||
|
account_bot = BOT
|
||||||
|
account_favourites = Favoriten
|
||||||
|
account_follow = Folgen
|
||||||
|
account_follow_back = Zurück folgen
|
||||||
|
account_follow_requested = Angefragt
|
||||||
|
account_followers = Follower
|
||||||
|
account_followers_count = {$formattedCount} Follower
|
||||||
|
account_following = Du folgst
|
||||||
|
account_following_count = Folgt {$formattedCount}
|
||||||
|
account_follows_you = Folgt dir
|
||||||
|
account_go_to_profile = Gehe zum Profil
|
||||||
|
account_joined = Beigetreten
|
||||||
|
account_moved_title = hat angegeben, dass dies der neue Account ist:
|
||||||
|
account_muted_users = Stummgeschaltete Accounts
|
||||||
|
account_mutuals = Freunde
|
||||||
|
account_pinned = Angepinnt
|
||||||
|
account_posts = Beiträge
|
||||||
|
account_posts_count = {$formattedCount} Beiträge
|
||||||
|
account_profile_description = {$username}'s Profil
|
||||||
|
account_profile_unavailable = Profil nicht verfügbar
|
||||||
|
account_unfollow = Entfolgen
|
||||||
|
action_bookmark = Lesezeichen
|
||||||
|
action_bookmarked = Gemerkt
|
||||||
|
action_boost = Teilen
|
||||||
|
action_boosted = Geteilt
|
||||||
|
action_close = Schliessen
|
||||||
|
action_compose = Verfassen
|
||||||
|
action_enter_app = App öffnen
|
||||||
|
action_favourite = Favorisieren
|
||||||
|
action_favourited = Favorisiert
|
||||||
|
action_more = Mehr
|
||||||
|
action_next = Nächster
|
||||||
|
action_prev = Vorheriger
|
||||||
|
action_publish = Veröffentlichen
|
||||||
|
action_reply = Antworten
|
||||||
|
action_save_changes = Änderungen speichern
|
||||||
|
action_sign_in = Anmelden
|
||||||
|
action_switch_account = Account wechseln
|
||||||
|
action_vote = Abstimmen
|
||||||
|
app_desc_short = Ein flinker Mastodon Web-Client
|
||||||
|
app_logo = Elk Logo
|
||||||
|
app_name = Elk
|
||||||
|
command_activate = Aktivieren
|
||||||
|
command_complete = Vollständig
|
||||||
|
command_compose_desc = Schreib einen neuen Beitrag
|
||||||
|
command_n-people-in-the-past-n-days = {$count} Personen in den vergangenen {$days} Tagen
|
||||||
|
command_select_lang = Sprache auswählen
|
||||||
|
command_sign_in_desc = Bestehenden Account hinzufügen
|
||||||
|
command_switch_account = Zu {$username} wechseln
|
||||||
|
command_switch_account_desc = Zu einem anderen Account wechseln
|
||||||
|
command_toggle_dark_mode = Farbschema ändern
|
||||||
|
command_toggle_zen_mode = Zen-Modus ändern
|
||||||
|
common_end_of_list = Ende der Liste
|
||||||
|
common_error = FEHLER
|
||||||
|
common_not_found = 404 Nicht Gefunden
|
||||||
|
common_offline_desc = Anscheinend bist du offline. Bitte überprüfe deine Netzwerkverbindung.
|
||||||
|
conversation_with = mit
|
||||||
|
error_account_not_found = Account {$username} nicht gefunden
|
||||||
|
error_explore-list-empty = Momentan ist nichts im Trend. Schau später nochmal vorbei!
|
||||||
|
error_sign_in_error = Kann nicht zu Server verbinden
|
||||||
|
error_status_not_found = Beitrag nicht gefunden
|
||||||
|
help_desc_highlight = Erwarte hier und da einige Bugs und fehlende Funktionen.
|
||||||
|
help_desc_para1 = Danke für dein Interesse in Elk, unser noch in der Bearbeitung befindliche, generische Mastodon Client!
|
||||||
|
help_desc_para2 = Wir arbeiten hart an der Entwicklung und verbessern ihn mit der Zeit. Und wir laden dich schon sehr bald ein uns zu helfen, sobald wir ihn Quelloffen machen!
|
||||||
|
help_desc_para3 = Doch in der Zwischenzeit kannst du der Entwicklung aushelfen, indem du unsere Teammitglieder durch die unten stehenden Links unterstützt.
|
||||||
|
help_title = Elk ist in der Alpha!
|
||||||
|
language_none = Keine
|
||||||
|
language_search = Suche
|
||||||
|
menu_block_account = Sperre {$username}
|
||||||
|
menu_block_domain = Sperre Domain {$domain}
|
||||||
|
menu_copy_link_to_post = Link zu diesem Beitrag kopieren
|
||||||
|
menu_delete = Löschen
|
||||||
|
menu_delete_and_redraft = Löschen und neu erstellen
|
||||||
|
menu_direct_message_account = Direktnachricht an {$username}
|
||||||
|
menu_edit = Bearbeiten
|
||||||
|
menu_mention_account = Erwähne {$username}
|
||||||
|
menu_mute_account = {$username} stummschalten
|
||||||
|
menu_mute_conversation = Diesem Beitrag stummschalten
|
||||||
|
menu_open_in_original_site = Auf Originalseite öffnen
|
||||||
|
menu_pin_on_profile = An Profil anpinnen
|
||||||
|
menu_show_untranslated = Übersetzung schliessen
|
||||||
|
menu_toggle_theme_dark = Dunkles Farbschema aktivieren
|
||||||
|
menu_toggle_theme_light = Helles Farbschema aktivieren
|
||||||
|
menu_translate_post = Beitrag übersetzen
|
||||||
|
menu_unblock_account = Entsperre {$username}
|
||||||
|
menu_unblock_domain = Entsperren Domain {$domain}
|
||||||
|
menu_unmute_account = Stummschaltung von {$username} aufheben
|
||||||
|
menu_unmute_conversation = Stummschaltung aufheben
|
||||||
|
menu_unpin_on_profile = Von Profil lösen
|
||||||
|
nav_bookmarks = Lesezeichen
|
||||||
|
nav_built_at = Letzter Build: {0}
|
||||||
|
nav_conversations = Direktnachrichten
|
||||||
|
nav_explore = Entdecken
|
||||||
|
nav_favourites = Favoriten
|
||||||
|
nav_federated = Föderiert
|
||||||
|
nav_home = Startseite
|
||||||
|
nav_local = Lokal
|
||||||
|
nav_notifications = Mitteilungen
|
||||||
|
nav_profile = Profil
|
||||||
|
nav_search = Suche
|
||||||
|
nav_select_feature_flags = Feature-Flags aktivieren
|
||||||
|
nav_select_language = Sprache auswählen
|
||||||
|
nav_settings = Einstellungen
|
||||||
|
nav_show_intro = Intro anzeigen
|
||||||
|
nav_toggle_theme = Farbschema wechseln
|
||||||
|
nav_zen_mode = Zen-Modus
|
||||||
|
notification_favourited_post = hat deinen Beitrag favorisiert
|
||||||
|
notification_followed_you = folgt dir
|
||||||
|
notification_followed_you_count = {n} Account folgt dir|{n} Accounts folgen dir
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = hat deinen Beitrag geteilt
|
||||||
|
notification_request_to_follow = möchte dir folgen
|
||||||
|
notification_signed_up = hat sich registriert
|
||||||
|
notification_update_status = hat diesen Beitrag aktualisiert
|
||||||
|
placeholder_content_warning = Schreib hier deine Warnung
|
||||||
|
placeholder_default_1 = Was geht dir gerade durch den Kopf?
|
||||||
|
placeholder_reply_to_account = Antwort an {0}
|
||||||
|
placeholder_replying = Antworten
|
||||||
|
search_search_desc = Suche nach Accounts & Hashtags
|
||||||
|
search_search_empty = Nichts für diese Suchbegriffe gefunden
|
||||||
|
settings_about_label = Info
|
||||||
|
settings_feature_flags_github_cards = GitHub-Karten
|
||||||
|
settings_feature_flags_title = Experimentelle Funktionen
|
||||||
|
settings_feature_flags_user_picker = Benutzerauswahl
|
||||||
|
settings_feature_flags_virtual_scroll = Virtuelles Scrollen
|
||||||
|
settings_interface_color_mode = Farbschema
|
||||||
|
settings_interface_dark_mode = Dunkles Farbschema
|
||||||
|
settings_interface_default = (Standard)
|
||||||
|
settings_interface_font_size = Schriftgröße
|
||||||
|
settings_interface_label = Oberfläche
|
||||||
|
settings_interface_light_mode = Helles Farbschema
|
||||||
|
settings_language_display_language = Anzeigesprache
|
||||||
|
settings_language_label = Sprache
|
||||||
|
settings_preferences_label = Einstellungen
|
||||||
|
settings_profile_appearance_bio = Bio
|
||||||
|
settings_profile_appearance_description = Avatar, Benutzername, Profil, etc. bearbeiten
|
||||||
|
settings_profile_appearance_display_name = Anzeigename
|
||||||
|
settings_profile_appearance_label = Erscheinungsbild
|
||||||
|
settings_profile_appearance_profile_metadata = Profil-Metadaten
|
||||||
|
settings_profile_appearance_profile_metadata_desc = Du kannst bis zu vier Einträge als Tabelle in deinem Profil anzeigen lassen
|
||||||
|
settings_profile_appearance_title = Profil bearbeiten
|
||||||
|
settings_profile_featured_tags_description = Leute können deine öffentlichen Beiträge mit diesen Hashtags ansehen.
|
||||||
|
settings_profile_featured_tags_label = Ausgewählte Hashtags
|
||||||
|
settings_profile_label = Profil
|
||||||
|
settings_select_a_settings = Einstellung auswählen
|
||||||
|
settings_users_export = Benutzer-Token exportieren
|
||||||
|
settings_users_import = Benutzer-Token importieren
|
||||||
|
settings_users_label = Eingeloggte Benutzer
|
||||||
|
state_edited = (bearbeitet)
|
||||||
|
state_editing = Bearbeiten
|
||||||
|
state_loading = Laden...
|
||||||
|
state_uploading = Hochladen...
|
||||||
|
status_edited = Zuletzt bearbeitet: {$date}
|
||||||
|
status_filter_hidden_phrase = Versteckt durch
|
||||||
|
status_filter_removed_phrase = Entfernt durch Filter
|
||||||
|
status_filter_show_anyway = Trotzdem zeigen
|
||||||
|
status_img_alt_desc = Beschreibung
|
||||||
|
status_img_alt_dismiss = Schliessen
|
||||||
|
status_poll_count = {0} Stimmen|{0} Stimme|{0} Stimmen
|
||||||
|
status_poll_ends = Endet: {0}
|
||||||
|
status_poll_finished = Beendet: {0}
|
||||||
|
status_reblogged = {0} teilte
|
||||||
|
status_someone = Jemand
|
||||||
|
status_spoiler_show_less = Zeige weniger
|
||||||
|
status_spoiler_show_more = Zeige mehr
|
||||||
|
status_try_original_site = Versuche die original Seite
|
||||||
|
status_history_created = Erstellt: {0}
|
||||||
|
status_history_edited = Bearbeitet: {$date}
|
||||||
|
tab_for_you = Für dich
|
||||||
|
tab_hashtags = Hashtags
|
||||||
|
tab_media = Medien
|
||||||
|
tab_news = Nachrichten
|
||||||
|
tab_notifications_all = Alle
|
||||||
|
tab_notifications_mention = Erwähnungen
|
||||||
|
tab_posts = Beiträge
|
||||||
|
tab_posts_with_replies = Beiträge und Antworten
|
||||||
|
tag_follow = Folgen
|
||||||
|
tag_follow_label = Folge dem {$tag}-Tag
|
||||||
|
tag_unfollow = Entfolgen
|
||||||
|
tag_unfollow_label = Entfolge dem {$tag}-Tag
|
||||||
|
time_ago_options_day_future = in 0 Tagen|morgen|in {n} Tagen
|
||||||
|
time_ago_options_day_past = vor 0 Tagen|gestern|vor {n} Tagen
|
||||||
|
time_ago_options_hour_future = in 0 Stunden|in 1 Stunde|in {n} Stunden
|
||||||
|
time_ago_options_hour_past = vor 0 Stunden|vor 1 Stunde|vor {n} Stunden
|
||||||
|
time_ago_options_just_now = gerade eben
|
||||||
|
time_ago_options_minute_future = in 0 Minuten|in 1 Minute|in {n} Minuten
|
||||||
|
time_ago_options_minute_past = vor 0 Minuten|vor 1 Minute|vor {n} Minuten
|
||||||
|
time_ago_options_month_future = in 0 Monaten|nächsten Monat|in {n} Monaten
|
||||||
|
time_ago_options_month_past = vor 0 Monaten|letzten Monat|vor {n} Monaten
|
||||||
|
time_ago_options_second_future = gerade eben|in {n} Sekunde|in {n} Sekunden
|
||||||
|
time_ago_options_second_past = gerade eben|vor {n} Sekunde|vor {n} Sekunden
|
||||||
|
time_ago_options_short_day_future = in {n}T
|
||||||
|
time_ago_options_short_day_past = {n}T
|
||||||
|
time_ago_options_short_hour_future = in {n}Std
|
||||||
|
time_ago_options_short_hour_past = {$n}Std
|
||||||
|
time_ago_options_short_minute_future = in {n}Min
|
||||||
|
time_ago_options_short_minute_past = {$n}Min
|
||||||
|
time_ago_options_short_month_future = in {n}Mo
|
||||||
|
time_ago_options_short_month_past = {n}Mo
|
||||||
|
time_ago_options_short_second_future = in {n}Sek
|
||||||
|
time_ago_options_short_second_past = {n}Sek
|
||||||
|
time_ago_options_short_week_future = in {n}W
|
||||||
|
time_ago_options_short_week_past = {n}W
|
||||||
|
time_ago_options_short_year_future = in {n}J
|
||||||
|
time_ago_options_short_year_past = {n}J
|
||||||
|
time_ago_options_week_future = in 0 Wochen|nächste Woche|in {n} Wochen
|
||||||
|
time_ago_options_week_past = vor 0 Wochen|letzte Woche|vor {n} Wochen
|
||||||
|
time_ago_options_year_future = in 0 Jahren|nächstes Jahr|in {n} Jahren
|
||||||
|
time_ago_options_year_past = vor 0 Jahren|letztes Jahren|vor {n} Jahren
|
||||||
|
timeline_show_new_items = Zeige {v} neue Beiträge|Zeige {v} neuen Beitrag|Zeige {v} neue Beiträge
|
||||||
|
title_federated_timeline = Föderierte Timeline
|
||||||
|
title_local_timeline = Lokale Timeline
|
||||||
|
tooltip_add_content_warning = Inhaltswarnung hinzufügen
|
||||||
|
tooltip_add_media = Bilder, ein Video oder eine Audiodatei hinzufügen
|
||||||
|
tooltip_change_content_visibility = Sichtbarkeit von Inhalten ändern
|
||||||
|
tooltip_change_language = Sprache ändern
|
||||||
|
tooltip_explore_links_intro = Diese Nachrichten werden gerade von Leuten auf diesem und anderen Servern des dezentralen Netzwerks besprochen.
|
||||||
|
tooltip_explore_posts_intro = Diese Beiträge von diesem Server gewinnen gerade unter den Leuten von diesem und anderen Servern des dezentralen Netzweks an Reichweite.
|
||||||
|
tooltip_explore_tags_intro = Diese Hashtags gewinnen gerade unter den Leuten von diesem und anderen Servern des dezentralen Netzweks an Reichweite.
|
||||||
|
tooltip_toggle_code_block = Codeblock umschalten
|
||||||
|
user_add_existing = Bestehendes Konto hinzufügen
|
||||||
|
user_server_address_label = Mastodon Server Adresse
|
||||||
|
user_sign_in_desc = Melde dich an, um Profilen oder Hashtags zu folgen, Beiträge zu favorisieren, zu teilen und zu beantworten oder von deinem Konto auf einem anderen Server aus zu interagieren.
|
||||||
|
user_sign_out_account = {$username} abmelden
|
||||||
|
user_tip_no_account = Wenn du noch kein Mastodon-Konto hast, {0}.
|
||||||
|
user_tip_register_account = wähle einen Server aus und registriere eines
|
||||||
|
visibility_direct = Nur erwähnte Accounts
|
||||||
|
visibility_direct_desc = Nur für erwähnte Accounts sichtbar
|
||||||
|
visibility_private = Nur Follower
|
||||||
|
visibility_private_desc = Nur für Follower sichtbar
|
||||||
|
visibility_public = Öffentlich
|
||||||
|
visibility_public_desc = Für alle sichtbar
|
||||||
|
visibility_unlisted = Nicht gelistet
|
||||||
|
visibility_unlisted_desc = Für alle sichtbar, aber Erkennungsfunktionen deaktiviert
|
|
@ -1,314 +0,0 @@
|
||||||
{
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "{0}'s Avatar",
|
|
||||||
"blocked_by": "Du wurdest von diesem Account geblockt",
|
|
||||||
"blocked_domains": "Gesperrte Domänen",
|
|
||||||
"blocked_users": "Gesperrte Accounts",
|
|
||||||
"bot": "BOT",
|
|
||||||
"favourites": "Favoriten",
|
|
||||||
"follow": "Folgen",
|
|
||||||
"follow_back": "Zurück folgen",
|
|
||||||
"follow_requested": "Angefragt",
|
|
||||||
"followers": "Follower",
|
|
||||||
"followers_count": "{0} Follower",
|
|
||||||
"following": "Du folgst",
|
|
||||||
"following_count": "Folgt {0}",
|
|
||||||
"follows_you": "Folgt dir",
|
|
||||||
"go_to_profile": "Gehe zum Profil",
|
|
||||||
"joined": "Beigetreten",
|
|
||||||
"moved_title": "hat angegeben, dass dies der neue Account ist:",
|
|
||||||
"muted_users": "Stummgeschaltete Accounts",
|
|
||||||
"mutuals": "Freunde",
|
|
||||||
"pinned": "Angepinnt",
|
|
||||||
"posts": "Beiträge",
|
|
||||||
"posts_count": "{0} Beiträge",
|
|
||||||
"profile_description": "{0}'s Profil",
|
|
||||||
"profile_unavailable": "Profil nicht verfügbar",
|
|
||||||
"unfollow": "Entfolgen"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"bookmark": "Lesezeichen",
|
|
||||||
"bookmarked": "Gemerkt",
|
|
||||||
"boost": "Teilen",
|
|
||||||
"boosted": "Geteilt",
|
|
||||||
"close": "Schliessen",
|
|
||||||
"compose": "Verfassen",
|
|
||||||
"enter_app": "App öffnen",
|
|
||||||
"favourite": "Favorisieren",
|
|
||||||
"favourited": "Favorisiert",
|
|
||||||
"more": "Mehr",
|
|
||||||
"next": "Nächster",
|
|
||||||
"prev": "Vorheriger",
|
|
||||||
"publish": "Veröffentlichen",
|
|
||||||
"reply": "Antworten",
|
|
||||||
"save_changes": "Änderungen speichern",
|
|
||||||
"sign_in": "Anmelden",
|
|
||||||
"switch_account": "Account wechseln",
|
|
||||||
"vote": "Abstimmen"
|
|
||||||
},
|
|
||||||
"app_desc_short": "Ein flinker Mastodon Web-Client",
|
|
||||||
"app_logo": "Elk Logo",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"command": {
|
|
||||||
"activate": "Aktivieren",
|
|
||||||
"complete": "Vollständig",
|
|
||||||
"compose_desc": "Schreib einen neuen Beitrag",
|
|
||||||
"n-people-in-the-past-n-days": "{0} Personen in den vergangenen {1} Tagen",
|
|
||||||
"select_lang": "Sprache auswählen",
|
|
||||||
"sign_in_desc": "Bestehenden Account hinzufügen",
|
|
||||||
"switch_account": "Zu {0} wechseln",
|
|
||||||
"switch_account_desc": "Zu einem anderen Account wechseln",
|
|
||||||
"toggle_dark_mode": "Farbschema ändern",
|
|
||||||
"toggle_zen_mode": "Zen-Modus ändern"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "Ende der Liste",
|
|
||||||
"error": "FEHLER",
|
|
||||||
"not_found": "404 Nicht Gefunden",
|
|
||||||
"offline_desc": "Anscheinend bist du offline. Bitte überprüfe deine Netzwerkverbindung."
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "mit"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Account {0} nicht gefunden",
|
|
||||||
"explore-list-empty": "Momentan ist nichts im Trend. Schau später nochmal vorbei!",
|
|
||||||
"sign_in_error": "Kann nicht zu Server verbinden",
|
|
||||||
"status_not_found": "Beitrag nicht gefunden"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Erwarte hier und da einige Bugs und fehlende Funktionen.",
|
|
||||||
"desc_para1": "Danke für dein Interesse in Elk, unser noch in der Bearbeitung befindliche, generische Mastodon Client!",
|
|
||||||
"desc_para2": "Wir arbeiten hart an der Entwicklung und verbessern ihn mit der Zeit. Und wir laden dich schon sehr bald ein uns zu helfen, sobald wir ihn Quelloffen machen!",
|
|
||||||
"desc_para3": "Doch in der Zwischenzeit kannst du der Entwicklung aushelfen, indem du unsere Teammitglieder durch die unten stehenden Links unterstützt.",
|
|
||||||
"title": "Elk ist in der Alpha!"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"none": "Keine",
|
|
||||||
"search": "Suche"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Sperre {0}",
|
|
||||||
"block_domain": "Sperre Domain {0}",
|
|
||||||
"copy_link_to_post": "Link zu diesem Beitrag kopieren",
|
|
||||||
"delete": "Löschen",
|
|
||||||
"delete_and_redraft": "Löschen und neu erstellen",
|
|
||||||
"direct_message_account": "Direktnachricht an {0}",
|
|
||||||
"edit": "Bearbeiten",
|
|
||||||
"mention_account": "Erwähne {0}",
|
|
||||||
"mute_account": "{0} stummschalten",
|
|
||||||
"mute_conversation": "Diesem Beitrag stummschalten",
|
|
||||||
"open_in_original_site": "Auf Originalseite öffnen",
|
|
||||||
"pin_on_profile": "An Profil anpinnen",
|
|
||||||
"show_untranslated": "Übersetzung schliessen",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Dunkles Farbschema aktivieren",
|
|
||||||
"light": "Helles Farbschema aktivieren"
|
|
||||||
},
|
|
||||||
"translate_post": "Beitrag übersetzen",
|
|
||||||
"unblock_account": "Entsperre {0}",
|
|
||||||
"unblock_domain": "Entsperren Domain {0}",
|
|
||||||
"unmute_account": "Stummschaltung von {0} aufheben",
|
|
||||||
"unmute_conversation": "Stummschaltung aufheben",
|
|
||||||
"unpin_on_profile": "Von Profil lösen"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "Lesezeichen",
|
|
||||||
"built_at": "Letzter Build: {0}",
|
|
||||||
"conversations": "Direktnachrichten",
|
|
||||||
"explore": "Entdecken",
|
|
||||||
"favourites": "Favoriten",
|
|
||||||
"federated": "Föderiert",
|
|
||||||
"home": "Startseite",
|
|
||||||
"local": "Lokal",
|
|
||||||
"notifications": "Mitteilungen",
|
|
||||||
"profile": "Profil",
|
|
||||||
"search": "Suche",
|
|
||||||
"select_feature_flags": "Feature-Flags aktivieren",
|
|
||||||
"select_language": "Sprache auswählen",
|
|
||||||
"settings": "Einstellungen",
|
|
||||||
"show_intro": "Intro anzeigen",
|
|
||||||
"toggle_theme": "Farbschema wechseln",
|
|
||||||
"zen_mode": "Zen-Modus"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "hat deinen Beitrag favorisiert",
|
|
||||||
"followed_you": "folgt dir",
|
|
||||||
"followed_you_count": "{n} Account folgt dir|{n} Accounts folgen dir",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "hat deinen Beitrag geteilt",
|
|
||||||
"request_to_follow": "möchte dir folgen",
|
|
||||||
"signed_up": "hat sich registriert",
|
|
||||||
"update_status": "hat diesen Beitrag aktualisiert"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Schreib hier deine Warnung",
|
|
||||||
"default_1": "Was geht dir gerade durch den Kopf?",
|
|
||||||
"reply_to_account": "Antwort an {0}",
|
|
||||||
"replying": "Antworten"
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Suche nach Accounts & Hashtags",
|
|
||||||
"search_empty": "Nichts für diese Suchbegriffe gefunden"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "Info"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub-Karten",
|
|
||||||
"title": "Experimentelle Funktionen",
|
|
||||||
"user_picker": "Benutzerauswahl",
|
|
||||||
"virtual_scroll": "Virtuelles Scrollen"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Farbschema",
|
|
||||||
"dark_mode": "Dunkles Farbschema",
|
|
||||||
"default": " (Standard)",
|
|
||||||
"font_size": "Schriftgröße",
|
|
||||||
"label": "Oberfläche",
|
|
||||||
"light_mode": "Helles Farbschema"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Anzeigesprache",
|
|
||||||
"label": "Sprache"
|
|
||||||
},
|
|
||||||
"preferences": {
|
|
||||||
"label": "Einstellungen"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Bio",
|
|
||||||
"description": "Avatar, Benutzername, Profil, etc. bearbeiten",
|
|
||||||
"display_name": "Anzeigename",
|
|
||||||
"label": "Erscheinungsbild",
|
|
||||||
"profile_metadata": "Profil-Metadaten",
|
|
||||||
"profile_metadata_desc": "Du kannst bis zu vier Einträge als Tabelle in deinem Profil anzeigen lassen",
|
|
||||||
"title": "Profil bearbeiten"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "Leute können deine öffentlichen Beiträge mit diesen Hashtags ansehen.",
|
|
||||||
"label": "Ausgewählte Hashtags"
|
|
||||||
},
|
|
||||||
"label": "Profil"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Einstellung auswählen",
|
|
||||||
"users": {
|
|
||||||
"export": "Benutzer-Token exportieren",
|
|
||||||
"import": "Benutzer-Token importieren",
|
|
||||||
"label": "Eingeloggte Benutzer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"edited": "(bearbeitet)",
|
|
||||||
"editing": "Bearbeiten",
|
|
||||||
"loading": "Laden...",
|
|
||||||
"uploading": "Hochladen..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "Zuletzt bearbeitet: {0}",
|
|
||||||
"filter_hidden_phrase": "Versteckt durch",
|
|
||||||
"filter_removed_phrase": "Entfernt durch Filter",
|
|
||||||
"filter_show_anyway": "Trotzdem zeigen",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Beschreibung",
|
|
||||||
"dismiss": "Schliessen"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} Stimmen|{0} Stimme|{0} Stimmen",
|
|
||||||
"ends": "Endet: {0}",
|
|
||||||
"finished": "Beendet: {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} teilte",
|
|
||||||
"someone": "Jemand",
|
|
||||||
"spoiler_show_less": "Zeige weniger",
|
|
||||||
"spoiler_show_more": "Zeige mehr",
|
|
||||||
"try_original_site": "Versuche die original Seite"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "Erstellt: {0}",
|
|
||||||
"edited": "Bearbeitet: {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "Für dich",
|
|
||||||
"hashtags": "Hashtags",
|
|
||||||
"media": "Medien",
|
|
||||||
"news": "Nachrichten",
|
|
||||||
"notifications_all": "Alle",
|
|
||||||
"notifications_mention": "Erwähnungen",
|
|
||||||
"posts": "Beiträge",
|
|
||||||
"posts_with_replies": "Beiträge und Antworten"
|
|
||||||
},
|
|
||||||
"tag": {
|
|
||||||
"follow": "Folgen",
|
|
||||||
"follow_label": "Folge dem {0}-Tag",
|
|
||||||
"unfollow": "Entfolgen",
|
|
||||||
"unfollow_label": "Entfolge dem {0}-Tag"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "in 0 Tagen|morgen|in {n} Tagen",
|
|
||||||
"day_past": "vor 0 Tagen|gestern|vor {n} Tagen",
|
|
||||||
"hour_future": "in 0 Stunden|in 1 Stunde|in {n} Stunden",
|
|
||||||
"hour_past": "vor 0 Stunden|vor 1 Stunde|vor {n} Stunden",
|
|
||||||
"just_now": "gerade eben",
|
|
||||||
"minute_future": "in 0 Minuten|in 1 Minute|in {n} Minuten",
|
|
||||||
"minute_past": "vor 0 Minuten|vor 1 Minute|vor {n} Minuten",
|
|
||||||
"month_future": "in 0 Monaten|nächsten Monat|in {n} Monaten",
|
|
||||||
"month_past": "vor 0 Monaten|letzten Monat|vor {n} Monaten",
|
|
||||||
"second_future": "gerade eben|in {n} Sekunde|in {n} Sekunden",
|
|
||||||
"second_past": "gerade eben|vor {n} Sekunde|vor {n} Sekunden",
|
|
||||||
"short_day_future": "in {n}T",
|
|
||||||
"short_day_past": "{n}T",
|
|
||||||
"short_hour_future": "in {n}Std",
|
|
||||||
"short_hour_past": "{n}Std",
|
|
||||||
"short_minute_future": "in {n}Min",
|
|
||||||
"short_minute_past": "{n}Min",
|
|
||||||
"short_month_future": "in {n}Mo",
|
|
||||||
"short_month_past": "{n}Mo",
|
|
||||||
"short_second_future": "in {n}Sek",
|
|
||||||
"short_second_past": "{n}Sek",
|
|
||||||
"short_week_future": "in {n}W",
|
|
||||||
"short_week_past": "{n}W",
|
|
||||||
"short_year_future": "in {n}J",
|
|
||||||
"short_year_past": "{n}J",
|
|
||||||
"week_future": "in 0 Wochen|nächste Woche|in {n} Wochen",
|
|
||||||
"week_past": "vor 0 Wochen|letzte Woche|vor {n} Wochen",
|
|
||||||
"year_future": "in 0 Jahren|nächstes Jahr|in {n} Jahren",
|
|
||||||
"year_past": "vor 0 Jahren|letztes Jahren|vor {n} Jahren"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Zeige {v} neue Beiträge|Zeige {v} neuen Beitrag|Zeige {v} neue Beiträge"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Föderierte Timeline",
|
|
||||||
"local_timeline": "Lokale Timeline"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Inhaltswarnung hinzufügen",
|
|
||||||
"add_media": "Bilder, ein Video oder eine Audiodatei hinzufügen",
|
|
||||||
"change_content_visibility": "Sichtbarkeit von Inhalten ändern",
|
|
||||||
"change_language": "Sprache ändern",
|
|
||||||
"explore_links_intro": "Diese Nachrichten werden gerade von Leuten auf diesem und anderen Servern des dezentralen Netzwerks besprochen.",
|
|
||||||
"explore_posts_intro": "Diese Beiträge von diesem Server gewinnen gerade unter den Leuten von diesem und anderen Servern des dezentralen Netzweks an Reichweite.",
|
|
||||||
"explore_tags_intro": "Diese Hashtags gewinnen gerade unter den Leuten von diesem und anderen Servern des dezentralen Netzweks an Reichweite.",
|
|
||||||
"toggle_code_block": "Codeblock umschalten"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Bestehendes Konto hinzufügen",
|
|
||||||
"server_address_label": "Mastodon Server Adresse",
|
|
||||||
"sign_in_desc": "Melde dich an, um Profilen oder Hashtags zu folgen, Beiträge zu favorisieren, zu teilen und zu beantworten oder von deinem Konto auf einem anderen Server aus zu interagieren.",
|
|
||||||
"sign_out_account": "{0} abmelden",
|
|
||||||
"tip_no_account": "Wenn du noch kein Mastodon-Konto hast, {0}.",
|
|
||||||
"tip_register_account": "wähle einen Server aus und registriere eines"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Nur erwähnte Accounts",
|
|
||||||
"direct_desc": "Nur für erwähnte Accounts sichtbar",
|
|
||||||
"private": "Nur Follower",
|
|
||||||
"private_desc": "Nur für Follower sichtbar",
|
|
||||||
"public": "Öffentlich",
|
|
||||||
"public_desc": "Für alle sichtbar",
|
|
||||||
"unlisted": "Nicht gelistet",
|
|
||||||
"unlisted_desc": "Für alle sichtbar, aber Erkennungsfunktionen deaktiviert"
|
|
||||||
}
|
|
||||||
}
|
|
308
locales/en-GB.ftl
Normal file
308
locales/en-GB.ftl
Normal file
|
@ -0,0 +1,308 @@
|
||||||
|
a11y_loading_page = Loading page, please wait
|
||||||
|
a11y_loading_titled_page = Loading {$title} page, please wait
|
||||||
|
a11y_locale_changed = Language changed to {$lang}
|
||||||
|
a11y_locale_changing = Changing language, please wait
|
||||||
|
a11y_route_loaded = Page {$title} loaded
|
||||||
|
account_avatar_description = {$username}'s avatar
|
||||||
|
account_blocked_by = You're blocked by this user.
|
||||||
|
account_blocked_domains = Blocked domains
|
||||||
|
account_blocked_users = Blocked users
|
||||||
|
account_blocking = Blocked
|
||||||
|
account_bot = BOT
|
||||||
|
account_favourites = Favourites
|
||||||
|
account_follow = Follow
|
||||||
|
account_follow_back = Follow back
|
||||||
|
account_follow_requested = Requested
|
||||||
|
account_followers = Followers
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[one] {$formattedCount} Follower
|
||||||
|
*[other] {$formattedCount} Followers
|
||||||
|
}
|
||||||
|
account_following = Following
|
||||||
|
account_following_count = {$formattedCount} Following
|
||||||
|
account_follows_you = Follows you
|
||||||
|
account_go_to_profile = Go to profile
|
||||||
|
account_joined = Joined
|
||||||
|
account_moved_title = has indicated that their new account is now:
|
||||||
|
account_muted_users = Muted users
|
||||||
|
account_muting = Muted
|
||||||
|
account_mutuals = Mutuals
|
||||||
|
account_pinned = Pinned
|
||||||
|
account_posts = Posts
|
||||||
|
account_posts_count = { $count ->
|
||||||
|
[one] {$formattedCount} Post
|
||||||
|
*[other] {$formattedCount} Posts
|
||||||
|
}
|
||||||
|
account_profile_description = {$username}'s profile header
|
||||||
|
account_profile_unavailable = Profile unavailable
|
||||||
|
account_unblock = Unblock
|
||||||
|
account_unfollow = Unfollow
|
||||||
|
account_unmute = Unmute
|
||||||
|
action_apply = Apply
|
||||||
|
action_bookmark = Bookmark
|
||||||
|
action_bookmarked = Bookmarked
|
||||||
|
action_boost = Boost
|
||||||
|
action_boosted = Boosted
|
||||||
|
action_clear_upload_failed = Clear file upload errors
|
||||||
|
action_close = Close
|
||||||
|
action_compose = Compose
|
||||||
|
action_confirm = Confirm
|
||||||
|
action_edit = Edit
|
||||||
|
action_enter_app = Enter App
|
||||||
|
action_favourite = Favourite
|
||||||
|
action_favourited = Favourited
|
||||||
|
action_more = More
|
||||||
|
action_next = Next
|
||||||
|
action_prev = Prev
|
||||||
|
action_publish = Publish
|
||||||
|
action_reply = Reply
|
||||||
|
action_save = Save
|
||||||
|
action_save_changes = Save changes
|
||||||
|
action_sign_in = Sign in
|
||||||
|
action_switch_account = Switch account
|
||||||
|
action_vote = Vote
|
||||||
|
app_desc_short = A nimble Mastodon web client
|
||||||
|
app_logo = Elk Logo
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = Description
|
||||||
|
attachment_remove_label = Remove attachment
|
||||||
|
command_activate = Activate
|
||||||
|
command_complete = Complete
|
||||||
|
command_compose_desc = Write a new post
|
||||||
|
command_n-people-in-the-past-n-days = {$count} people in the past {$days} days
|
||||||
|
command_select_lang = Select language
|
||||||
|
command_sign_in_desc = Add an existing account
|
||||||
|
command_switch_account = Switch to {$username}
|
||||||
|
command_switch_account_desc = Switch to another account
|
||||||
|
command_toggle_dark_mode = Toggle dark mode
|
||||||
|
command_toggle_zen_mode = Toggle zen mode
|
||||||
|
common_end_of_list = End of the list
|
||||||
|
common_error = ERROR
|
||||||
|
common_in = in
|
||||||
|
common_not_found = 404 Not Found
|
||||||
|
common_offline_desc = Seems like you are offline. Please check your network connection.
|
||||||
|
compose_draft_title = Draft {0}
|
||||||
|
compose_drafts = Drafts ({$count})
|
||||||
|
conversation_with = with
|
||||||
|
error_account_not_found = Account {$username} not found
|
||||||
|
error_explore-list-empty = Nothing is trending right now. Check back later!
|
||||||
|
error_file_size_cannot_exceed_n_mb = File size cannot exceed {$size}MB
|
||||||
|
error_sign_in_error = Cannot connect to the server.
|
||||||
|
error_status_not_found = Post not found
|
||||||
|
error_unsupported_file_format = Unsupported file format
|
||||||
|
help_desc_highlight = Expect some bugs and missing features here and there.
|
||||||
|
help_desc_para1 = Thanks for your interest in trying out Elk, our work-in-progress generic Mastodon client!
|
||||||
|
help_desc_para2 = We are working hard on the development and improving it over time. We will open source the app once it is ready for public use.
|
||||||
|
help_desc_para3 = To help boosting out development, you can sponsor our team members with the links below. We hope you enjoy Elk!
|
||||||
|
help_desc_para4 = Before that, if you'd like to help with testing, giving feedback, or contributing,
|
||||||
|
help_desc_para5 = reach out to us on Mastodon
|
||||||
|
help_desc_para6 = and get involved.
|
||||||
|
help_title = Elk is in Preview!
|
||||||
|
menu_block_account = Block {$username}
|
||||||
|
menu_block_domain = Block domain {$domain}
|
||||||
|
menu_copy_link_to_post = Copy link to this post
|
||||||
|
menu_delete = Delete
|
||||||
|
menu_delete_and_redraft = Delete & re-draft
|
||||||
|
menu_direct_message_account = Direct message {$username}
|
||||||
|
menu_edit = Edit
|
||||||
|
menu_mention_account = Mention {$username}
|
||||||
|
menu_mute_account = Mute {$username}
|
||||||
|
menu_mute_conversation = Mute this post
|
||||||
|
menu_open_in_original_site = Open in original site
|
||||||
|
menu_pin_on_profile = Pin on profile
|
||||||
|
menu_share_post = Share this post
|
||||||
|
menu_show_untranslated = Show untranslated
|
||||||
|
menu_toggle_theme_dark = Toggle dark mode
|
||||||
|
menu_toggle_theme_light = Toggle light mode
|
||||||
|
menu_translate_post = Translate post
|
||||||
|
menu_unblock_account = Unblock {$username}
|
||||||
|
menu_unblock_domain = Unblock domain {$domain}
|
||||||
|
menu_unmute_account = Unmute {$username}
|
||||||
|
menu_unmute_conversation = Unmute this post
|
||||||
|
menu_unpin_on_profile = Unpin on profile
|
||||||
|
nav_bookmarks = Bookmarks
|
||||||
|
nav_built_at = Built {0}
|
||||||
|
nav_conversations = Conversations
|
||||||
|
nav_explore = Explore
|
||||||
|
nav_favourites = Favourites
|
||||||
|
nav_federated = Federated
|
||||||
|
nav_home = Home
|
||||||
|
nav_local = Local
|
||||||
|
nav_notifications = Notifications
|
||||||
|
nav_profile = Profile
|
||||||
|
nav_search = Search
|
||||||
|
nav_select_feature_flags = Toggle Feature Flags
|
||||||
|
nav_select_font_size = Select Font Size
|
||||||
|
nav_select_language = Select Language
|
||||||
|
nav_settings = Settings
|
||||||
|
nav_show_intro = Show intro
|
||||||
|
nav_toggle_theme = Toggle Theme
|
||||||
|
nav_zen_mode = Zen Mode
|
||||||
|
notification_favourited_post = favourited your post
|
||||||
|
notification_followed_you = followed you
|
||||||
|
notification_followed_you_count = {0} people followed you|{0} person followed you|{0} people followed you
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = reblogged your post
|
||||||
|
notification_request_to_follow = requested to follow you
|
||||||
|
notification_signed_up = signed up
|
||||||
|
notification_update_status = updated their post
|
||||||
|
placeholder_content_warning = Write your warning here
|
||||||
|
placeholder_default_1 = What is on your mind?
|
||||||
|
placeholder_reply_to_account = Reply to {0}
|
||||||
|
placeholder_replying = Replying
|
||||||
|
placeholder_the_thread = the thread
|
||||||
|
pwa_dismiss = Dismiss
|
||||||
|
pwa_title = New Elk update available!
|
||||||
|
pwa_update = Update
|
||||||
|
pwa_update_available_short = Update Elk
|
||||||
|
search_search_desc = Search for people & hashtags
|
||||||
|
search_search_empty = Could not find anything for these search terms
|
||||||
|
settings_about_label = About
|
||||||
|
settings_feature_flags_github_cards = GitHub Cards
|
||||||
|
settings_feature_flags_title = Experimental Features
|
||||||
|
settings_feature_flags_user_picker = User Picker
|
||||||
|
settings_feature_flags_virtual_scroll = Virtual Scrolling
|
||||||
|
settings_interface_color_mode = Color Mode
|
||||||
|
settings_interface_dark_mode = Dark Mode
|
||||||
|
settings_interface_default = (default)
|
||||||
|
settings_interface_font_size = Font Size
|
||||||
|
settings_interface_label = Interface
|
||||||
|
settings_interface_light_mode = Light Mode
|
||||||
|
settings_language_display_language = Display Language
|
||||||
|
settings_language_label = Language
|
||||||
|
settings_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = Favorites
|
||||||
|
settings_notifications_push_notifications_alerts_follow = New followers
|
||||||
|
settings_notifications_push_notifications_alerts_mention = Mentions
|
||||||
|
settings_notifications_push_notifications_alerts_poll = Polls
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = Reblog your post
|
||||||
|
settings_notifications_push_notifications_alerts_title = What notifications to receive?
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = From anyone
|
||||||
|
settings_notifications_push_notifications_policy_followed = Of people I follow
|
||||||
|
settings_notifications_push_notifications_policy_follower = Of people who follow me
|
||||||
|
settings_notifications_push_notifications_policy_none = From no one
|
||||||
|
settings_notifications_push_notifications_policy_title = Who can I receive notifications from?
|
||||||
|
settings_notifications_push_notifications_save_settings = Save settings
|
||||||
|
settings_notifications_push_notifications_subscription_error_clear_error = Clear error
|
||||||
|
settings_notifications_push_notifications_subscription_error_permission_denied = Permission denied: enable notifications in your browser.
|
||||||
|
settings_notifications_push_notifications_subscription_error_request_error = An error occurred while requesting the subscription, try again and if the error persists, please report the issue to the Elk repository.
|
||||||
|
settings_notifications_push_notifications_subscription_error_title = Could not subscribe to push notifications
|
||||||
|
settings_notifications_push_notifications_undo_settings = Undo changes
|
||||||
|
settings_notifications_push_notifications_unsubscribe = Disable push notifications
|
||||||
|
settings_notifications_push_notifications_unsupported = Your browser does not support push notifications.
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = Close
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications via the "@:settings.notifications.show_btn{'"'} button above once enabled.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_desktop = To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications in the navigation menu under "Settings > Notifications > Push notifications settings" once enabled.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_mobile = You can also access the settings using the navigation menu under "Settings > Notifications > Push notification settings".
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = Enable push notifications
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = Never miss anything
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = It seems that your server does not support push notifications. Try sign out and sign in again, if this message still appears contact your server administrator.
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_notifications_settings = Notifications
|
||||||
|
settings_preferences_label = Preferences
|
||||||
|
settings_profile_appearance_bio = Bio
|
||||||
|
settings_profile_appearance_description = Edit avatar, username, profile, etc.
|
||||||
|
settings_profile_appearance_display_name = Display name
|
||||||
|
settings_profile_appearance_label = Appearance
|
||||||
|
settings_profile_appearance_title = Edit profile
|
||||||
|
settings_profile_featured_tags_description = People can browse your public posts under these hashtags.
|
||||||
|
settings_profile_featured_tags_label = Featured hashtags
|
||||||
|
settings_profile_label = Profile
|
||||||
|
settings_select_a_settings = Select a setting
|
||||||
|
settings_users_export = Export User Tokens
|
||||||
|
settings_users_import = Import User Tokens
|
||||||
|
settings_users_label = Logged in users
|
||||||
|
state_attachments_exceed_server_limit = The number of attachments exceeded the limit per post.
|
||||||
|
state_attachments_limit_error = Limit per post exceeded
|
||||||
|
state_edited = (Edited)
|
||||||
|
state_editing = Editing
|
||||||
|
state_loading = Loading...
|
||||||
|
state_upload_failed = Upload failed
|
||||||
|
state_uploading = Uploading...
|
||||||
|
status_edited = Edited {$date}
|
||||||
|
status_filter_hidden_phrase = Filtered by
|
||||||
|
status_filter_removed_phrase = Removed by filter
|
||||||
|
status_filter_show_anyway = Show anyway
|
||||||
|
status_img_alt_desc = Description
|
||||||
|
status_img_alt_dismiss = Dismiss
|
||||||
|
status_poll_count = {0} votes|{0} vote|{0} votes
|
||||||
|
status_poll_ends = ends {0}
|
||||||
|
status_poll_finished = finished {0}
|
||||||
|
status_reblogged = {0} reblogged
|
||||||
|
status_replying_to = Replying to {0}
|
||||||
|
status_someone = someone
|
||||||
|
status_spoiler_show_less = Show less
|
||||||
|
status_spoiler_show_more = Show more
|
||||||
|
status_try_original_site = Try original site
|
||||||
|
status_history_created = created {0}
|
||||||
|
status_history_edited = edited {$date}
|
||||||
|
tab_for_you = For you
|
||||||
|
tab_hashtags = Hashtags
|
||||||
|
tab_media = Media
|
||||||
|
tab_news = News
|
||||||
|
tab_notifications_all = All
|
||||||
|
tab_notifications_mention = Mention
|
||||||
|
tab_posts = Posts
|
||||||
|
tab_posts_with_replies = Posts & Replies
|
||||||
|
time_ago_options_day_future = in 0 days|tomorrow|in {n} days
|
||||||
|
time_ago_options_day_past = 0 days ago|yesterday|{n} days ago
|
||||||
|
time_ago_options_hour_future = in 0 hours|in 1 hour|in {n} hours
|
||||||
|
time_ago_options_hour_past = 0 hours ago|1 hour ago|{n} hours ago
|
||||||
|
time_ago_options_just_now = just now
|
||||||
|
time_ago_options_minute_future = in 0 minutes|in 1 minute|in {n} minutes
|
||||||
|
time_ago_options_minute_past = 0 minutes ago|1 minute ago|{n} minutes ago
|
||||||
|
time_ago_options_month_future = in 0 months|next month|in {n} months
|
||||||
|
time_ago_options_month_past = 0 months ago|last month|{n} months ago
|
||||||
|
time_ago_options_second_future = just now|in {n} second|in {n} seconds
|
||||||
|
time_ago_options_second_past = just now|{n} second ago|{n} seconds ago
|
||||||
|
time_ago_options_short_day_future = in {n}d
|
||||||
|
time_ago_options_short_day_past = {n}d
|
||||||
|
time_ago_options_short_hour_future = in {n}h
|
||||||
|
time_ago_options_short_hour_past = {$n}h
|
||||||
|
time_ago_options_short_minute_future = in {n}min
|
||||||
|
time_ago_options_short_minute_past = {$n}min
|
||||||
|
time_ago_options_short_month_future = in {n}mo
|
||||||
|
time_ago_options_short_month_past = {n}mo
|
||||||
|
time_ago_options_short_second_future = in {n}s
|
||||||
|
time_ago_options_short_second_past = {n}s
|
||||||
|
time_ago_options_short_week_future = in {n}w
|
||||||
|
time_ago_options_short_week_past = {n}w
|
||||||
|
time_ago_options_short_year_future = in {n}y
|
||||||
|
time_ago_options_short_year_past = {n}y
|
||||||
|
time_ago_options_week_future = in 0 weeks|next week|in {n} weeks
|
||||||
|
time_ago_options_week_past = 0 weeks ago|last week|{n} weeks ago
|
||||||
|
time_ago_options_year_future = in 0 years|next year|in {n} years
|
||||||
|
time_ago_options_year_past = 0 years ago|last year|{n} years ago
|
||||||
|
timeline_show_new_items = Show {v} new items|Show {v} new item|Show {v} new items
|
||||||
|
title_federated_timeline = Federated Timeline
|
||||||
|
title_local_timeline = Local Timeline
|
||||||
|
tooltip_add_content_warning = Add content warning
|
||||||
|
tooltip_add_media = Add images, a video or an audio file
|
||||||
|
tooltip_add_publishable_content = Add content to publish
|
||||||
|
tooltip_change_content_visibility = Change content visibility
|
||||||
|
tooltip_change_language = Change language
|
||||||
|
tooltip_emoji = Emoji
|
||||||
|
tooltip_explore_links_intro = These news stories are being talked about by people on this and other servers of the decentralized network right now.
|
||||||
|
tooltip_explore_posts_intro = These posts from this and other servers in the decentralized network are gaining traction on this server right now.
|
||||||
|
tooltip_explore_tags_intro = These hashtags are gaining traction among people on this and other servers of the decentralized network right now.
|
||||||
|
tooltip_toggle_code_block = Toggle code block
|
||||||
|
user_add_existing = Add an existing account
|
||||||
|
user_server_address_label = Mastodon Server Address
|
||||||
|
user_sign_in_desc = Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.
|
||||||
|
user_sign_in_notice_title = Viewing {0} public data
|
||||||
|
user_sign_out_account = Sign out {$username}
|
||||||
|
user_tip_no_account = If you don't have a Mastodon account yet, {0}.
|
||||||
|
user_tip_register_account = pick your server and register one
|
||||||
|
visibility_direct = Direct
|
||||||
|
visibility_direct_desc = Visible for mentioned users only
|
||||||
|
visibility_private = Followers only
|
||||||
|
visibility_private_desc = Visible for followers only
|
||||||
|
visibility_public = Public
|
||||||
|
visibility_public_desc = Visible for all
|
||||||
|
visibility_unlisted = Unlisted
|
||||||
|
visibility_unlisted_desc = Visible for all, but opted-out of discovery features
|
|
@ -1,396 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "Loading page, please wait",
|
|
||||||
"loading_titled_page": "Loading {0} page, please wait",
|
|
||||||
"locale_changed": "Language changed to {0}",
|
|
||||||
"locale_changing": "Changing language, please wait",
|
|
||||||
"route_loaded": "Page {0} loaded"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "{0}'s avatar",
|
|
||||||
"blocked_by": "You're blocked by this user.",
|
|
||||||
"blocked_domains": "Blocked domains",
|
|
||||||
"blocked_users": "Blocked users",
|
|
||||||
"blocking": "Blocked",
|
|
||||||
"bot": "BOT",
|
|
||||||
"favourites": "Favourites",
|
|
||||||
"follow": "Follow",
|
|
||||||
"follow_back": "Follow back",
|
|
||||||
"follow_requested": "Requested",
|
|
||||||
"followers": "Followers",
|
|
||||||
"followers_count": "{0} Followers|{0} Follower|{0} Followers",
|
|
||||||
"following": "Following",
|
|
||||||
"following_count": "{0} Following",
|
|
||||||
"follows_you": "Follows you",
|
|
||||||
"go_to_profile": "Go to profile",
|
|
||||||
"joined": "Joined",
|
|
||||||
"moved_title": "has indicated that their new account is now:",
|
|
||||||
"muted_users": "Muted users",
|
|
||||||
"muting": "Muted",
|
|
||||||
"mutuals": "Mutuals",
|
|
||||||
"pinned": "Pinned",
|
|
||||||
"posts": "Posts",
|
|
||||||
"posts_count": "{0} Posts|{0} Post|{0} Posts",
|
|
||||||
"profile_description": "{0}'s profile header",
|
|
||||||
"profile_unavailable": "Profile unavailable",
|
|
||||||
"unblock": "Unblock",
|
|
||||||
"unfollow": "Unfollow",
|
|
||||||
"unmute": "Unmute"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "Apply",
|
|
||||||
"bookmark": "Bookmark",
|
|
||||||
"bookmarked": "Bookmarked",
|
|
||||||
"boost": "Boost",
|
|
||||||
"boosted": "Boosted",
|
|
||||||
"clear_upload_failed": "Clear file upload errors",
|
|
||||||
"close": "Close",
|
|
||||||
"compose": "Compose",
|
|
||||||
"confirm": "Confirm",
|
|
||||||
"edit": "Edit",
|
|
||||||
"enter_app": "Enter App",
|
|
||||||
"favourite": "Favourite",
|
|
||||||
"favourited": "Favourited",
|
|
||||||
"more": "More",
|
|
||||||
"next": "Next",
|
|
||||||
"prev": "Prev",
|
|
||||||
"publish": "Publish",
|
|
||||||
"reply": "Reply",
|
|
||||||
"save": "Save",
|
|
||||||
"save_changes": "Save changes",
|
|
||||||
"sign_in": "Sign in",
|
|
||||||
"switch_account": "Switch account",
|
|
||||||
"vote": "Vote"
|
|
||||||
},
|
|
||||||
"app_desc_short": "A nimble Mastodon web client",
|
|
||||||
"app_logo": "Elk Logo",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "Description",
|
|
||||||
"remove_label": "Remove attachment"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "Activate",
|
|
||||||
"complete": "Complete",
|
|
||||||
"compose_desc": "Write a new post",
|
|
||||||
"n-people-in-the-past-n-days": "{0} people in the past {1} days",
|
|
||||||
"select_lang": "Select language",
|
|
||||||
"sign_in_desc": "Add an existing account",
|
|
||||||
"switch_account": "Switch to {0}",
|
|
||||||
"switch_account_desc": "Switch to another account",
|
|
||||||
"toggle_dark_mode": "Toggle dark mode",
|
|
||||||
"toggle_zen_mode": "Toggle zen mode"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "End of the list",
|
|
||||||
"error": "ERROR",
|
|
||||||
"in": "in",
|
|
||||||
"not_found": "404 Not Found",
|
|
||||||
"offline_desc": "Seems like you are offline. Please check your network connection."
|
|
||||||
},
|
|
||||||
"compose": {
|
|
||||||
"draft_title": "Draft {0}",
|
|
||||||
"drafts": "Drafts ({v})"
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "with"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Account {0} not found",
|
|
||||||
"explore-list-empty": "Nothing is trending right now. Check back later!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "File size cannot exceed {0}MB",
|
|
||||||
"sign_in_error": "Cannot connect to the server.",
|
|
||||||
"status_not_found": "Post not found",
|
|
||||||
"unsupported_file_format": "Unsupported file format"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Expect some bugs and missing features here and there.",
|
|
||||||
"desc_para1": "Thanks for your interest in trying out Elk, our work-in-progress generic Mastodon client!",
|
|
||||||
"desc_para2": "We are working hard on the development and improving it over time. We will open source the app once it is ready for public use.",
|
|
||||||
"desc_para3": "To help boosting out development, you can sponsor our team members with the links below. We hope you enjoy Elk!",
|
|
||||||
"desc_para4": "Before that, if you'd like to help with testing, giving feedback, or contributing,",
|
|
||||||
"desc_para5": "reach out to us on Mastodon",
|
|
||||||
"desc_para6": "and get involved.",
|
|
||||||
"title": "Elk is in Preview!"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Block {0}",
|
|
||||||
"block_domain": "Block domain {0}",
|
|
||||||
"copy_link_to_post": "Copy link to this post",
|
|
||||||
"delete": "Delete",
|
|
||||||
"delete_and_redraft": "Delete & re-draft",
|
|
||||||
"direct_message_account": "Direct message {0}",
|
|
||||||
"edit": "Edit",
|
|
||||||
"mention_account": "Mention {0}",
|
|
||||||
"mute_account": "Mute {0}",
|
|
||||||
"mute_conversation": "Mute this post",
|
|
||||||
"open_in_original_site": "Open in original site",
|
|
||||||
"pin_on_profile": "Pin on profile",
|
|
||||||
"share_post": "Share this post",
|
|
||||||
"show_untranslated": "Show untranslated",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Toggle dark mode",
|
|
||||||
"light": "Toggle light mode"
|
|
||||||
},
|
|
||||||
"translate_post": "Translate post",
|
|
||||||
"unblock_account": "Unblock {0}",
|
|
||||||
"unblock_domain": "Unblock domain {0}",
|
|
||||||
"unmute_account": "Unmute {0}",
|
|
||||||
"unmute_conversation": "Unmute this post",
|
|
||||||
"unpin_on_profile": "Unpin on profile"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "Bookmarks",
|
|
||||||
"built_at": "Built {0}",
|
|
||||||
"conversations": "Conversations",
|
|
||||||
"explore": "Explore",
|
|
||||||
"favourites": "Favourites",
|
|
||||||
"federated": "Federated",
|
|
||||||
"home": "Home",
|
|
||||||
"local": "Local",
|
|
||||||
"notifications": "Notifications",
|
|
||||||
"profile": "Profile",
|
|
||||||
"search": "Search",
|
|
||||||
"select_feature_flags": "Toggle Feature Flags",
|
|
||||||
"select_font_size": "Select Font Size",
|
|
||||||
"select_language": "Select Language",
|
|
||||||
"settings": "Settings",
|
|
||||||
"show_intro": "Show intro",
|
|
||||||
"toggle_theme": "Toggle Theme",
|
|
||||||
"zen_mode": "Zen Mode"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "favourited your post",
|
|
||||||
"followed_you": "followed you",
|
|
||||||
"followed_you_count": "{0} people followed you|{0} person followed you|{0} people followed you",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "reblogged your post",
|
|
||||||
"request_to_follow": "requested to follow you",
|
|
||||||
"signed_up": "signed up",
|
|
||||||
"update_status": "updated their post"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Write your warning here",
|
|
||||||
"default_1": "What is on your mind?",
|
|
||||||
"reply_to_account": "Reply to {0}",
|
|
||||||
"replying": "Replying",
|
|
||||||
"the_thread": "the thread"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "Dismiss",
|
|
||||||
"title": "New Elk update available!",
|
|
||||||
"update": "Update",
|
|
||||||
"update_available_short": "Update Elk"
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Search for people & hashtags",
|
|
||||||
"search_empty": "Could not find anything for these search terms"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "About"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub Cards",
|
|
||||||
"title": "Experimental Features",
|
|
||||||
"user_picker": "User Picker",
|
|
||||||
"virtual_scroll": "Virtual Scrolling"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Color Mode",
|
|
||||||
"dark_mode": "Dark Mode",
|
|
||||||
"default": " (default)",
|
|
||||||
"font_size": "Font Size",
|
|
||||||
"label": "Interface",
|
|
||||||
"light_mode": "Light Mode"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Display Language",
|
|
||||||
"label": "Language"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "Favorites",
|
|
||||||
"follow": "New followers",
|
|
||||||
"mention": "Mentions",
|
|
||||||
"poll": "Polls",
|
|
||||||
"reblog": "Reblog your post",
|
|
||||||
"title": "What notifications to receive?"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "From anyone",
|
|
||||||
"followed": "Of people I follow",
|
|
||||||
"follower": "Of people who follow me",
|
|
||||||
"none": "From no one",
|
|
||||||
"title": "Who can I receive notifications from?"
|
|
||||||
},
|
|
||||||
"save_settings": "Save settings",
|
|
||||||
"subscription_error": {
|
|
||||||
"clear_error": "Clear error",
|
|
||||||
"permission_denied": "Permission denied: enable notifications in your browser.",
|
|
||||||
"request_error": "An error occurred while requesting the subscription, try again and if the error persists, please report the issue to the Elk repository.",
|
|
||||||
"title": "Could not subscribe to push notifications"
|
|
||||||
},
|
|
||||||
"undo_settings": "Undo changes",
|
|
||||||
"unsubscribe": "Disable push notifications",
|
|
||||||
"unsupported": "Your browser does not support push notifications.",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "Close",
|
|
||||||
"enable_description": "To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications via the \"@:settings.notifications.show_btn{'\"'} button above once enabled.",
|
|
||||||
"enable_description_desktop": "To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications in the navigation menu under \"Settings > Notifications > Push notifications settings\" once enabled.",
|
|
||||||
"enable_description_mobile": "You can also access the settings using the navigation menu under \"Settings > Notifications > Push notification settings\".",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "Enable push notifications",
|
|
||||||
"enable_title": "Never miss anything",
|
|
||||||
"re_auth": "It seems that your server does not support push notifications. Try sign out and sign in again, if this message still appears contact your server administrator."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notifications",
|
|
||||||
"preferences": {
|
|
||||||
"label": "Preferences"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Bio",
|
|
||||||
"description": "Edit avatar, username, profile, etc.",
|
|
||||||
"display_name": "Display name",
|
|
||||||
"label": "Appearance",
|
|
||||||
"title": "Edit profile"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "People can browse your public posts under these hashtags.",
|
|
||||||
"label": "Featured hashtags"
|
|
||||||
},
|
|
||||||
"label": "Profile"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Select a setting",
|
|
||||||
"users": {
|
|
||||||
"export": "Export User Tokens",
|
|
||||||
"import": "Import User Tokens",
|
|
||||||
"label": "Logged in users"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"attachments_exceed_server_limit": "The number of attachments exceeded the limit per post.",
|
|
||||||
"attachments_limit_error": "Limit per post exceeded",
|
|
||||||
"edited": "(Edited)",
|
|
||||||
"editing": "Editing",
|
|
||||||
"loading": "Loading...",
|
|
||||||
"upload_failed": "Upload failed",
|
|
||||||
"uploading": "Uploading..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "Edited {0}",
|
|
||||||
"filter_hidden_phrase": "Filtered by",
|
|
||||||
"filter_removed_phrase": "Removed by filter",
|
|
||||||
"filter_show_anyway": "Show anyway",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Description",
|
|
||||||
"dismiss": "Dismiss"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} votes|{0} vote|{0} votes",
|
|
||||||
"ends": "ends {0}",
|
|
||||||
"finished": "finished {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} reblogged",
|
|
||||||
"replying_to": "Replying to {0}",
|
|
||||||
"someone": "someone",
|
|
||||||
"spoiler_show_less": "Show less",
|
|
||||||
"spoiler_show_more": "Show more",
|
|
||||||
"try_original_site": "Try original site"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "created {0}",
|
|
||||||
"edited": "edited {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "For you",
|
|
||||||
"hashtags": "Hashtags",
|
|
||||||
"media": "Media",
|
|
||||||
"news": "News",
|
|
||||||
"notifications_all": "All",
|
|
||||||
"notifications_mention": "Mention",
|
|
||||||
"posts": "Posts",
|
|
||||||
"posts_with_replies": "Posts & Replies"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "in 0 days|tomorrow|in {n} days",
|
|
||||||
"day_past": "0 days ago|yesterday|{n} days ago",
|
|
||||||
"hour_future": "in 0 hours|in 1 hour|in {n} hours",
|
|
||||||
"hour_past": "0 hours ago|1 hour ago|{n} hours ago",
|
|
||||||
"just_now": "just now",
|
|
||||||
"minute_future": "in 0 minutes|in 1 minute|in {n} minutes",
|
|
||||||
"minute_past": "0 minutes ago|1 minute ago|{n} minutes ago",
|
|
||||||
"month_future": "in 0 months|next month|in {n} months",
|
|
||||||
"month_past": "0 months ago|last month|{n} months ago",
|
|
||||||
"second_future": "just now|in {n} second|in {n} seconds",
|
|
||||||
"second_past": "just now|{n} second ago|{n} seconds ago",
|
|
||||||
"short_day_future": "in {n}d",
|
|
||||||
"short_day_past": "{n}d",
|
|
||||||
"short_hour_future": "in {n}h",
|
|
||||||
"short_hour_past": "{n}h",
|
|
||||||
"short_minute_future": "in {n}min",
|
|
||||||
"short_minute_past": "{n}min",
|
|
||||||
"short_month_future": "in {n}mo",
|
|
||||||
"short_month_past": "{n}mo",
|
|
||||||
"short_second_future": "in {n}s",
|
|
||||||
"short_second_past": "{n}s",
|
|
||||||
"short_week_future": "in {n}w",
|
|
||||||
"short_week_past": "{n}w",
|
|
||||||
"short_year_future": "in {n}y",
|
|
||||||
"short_year_past": "{n}y",
|
|
||||||
"week_future": "in 0 weeks|next week|in {n} weeks",
|
|
||||||
"week_past": "0 weeks ago|last week|{n} weeks ago",
|
|
||||||
"year_future": "in 0 years|next year|in {n} years",
|
|
||||||
"year_past": "0 years ago|last year|{n} years ago"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Show {v} new items|Show {v} new item|Show {v} new items"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Federated Timeline",
|
|
||||||
"local_timeline": "Local Timeline"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Add content warning",
|
|
||||||
"add_media": "Add images, a video or an audio file",
|
|
||||||
"add_publishable_content": "Add content to publish",
|
|
||||||
"change_content_visibility": "Change content visibility",
|
|
||||||
"change_language": "Change language",
|
|
||||||
"emoji": "Emoji",
|
|
||||||
"explore_links_intro": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
|
|
||||||
"explore_posts_intro": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
|
|
||||||
"explore_tags_intro": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
|
|
||||||
"toggle_code_block": "Toggle code block"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Add an existing account",
|
|
||||||
"server_address_label": "Mastodon Server Address",
|
|
||||||
"sign_in_desc": "Sign in to follow profiles or hashtags, favourite, share and reply to posts, or interact from your account on a different server.",
|
|
||||||
"sign_in_notice_title": "Viewing {0} public data",
|
|
||||||
"sign_out_account": "Sign out {0}",
|
|
||||||
"tip_no_account": "If you don't have a Mastodon account yet, {0}.",
|
|
||||||
"tip_register_account": "pick your server and register one"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Direct",
|
|
||||||
"direct_desc": "Visible for mentioned users only",
|
|
||||||
"private": "Followers only",
|
|
||||||
"private_desc": "Visible for followers only",
|
|
||||||
"public": "Public",
|
|
||||||
"public_desc": "Visible for all",
|
|
||||||
"unlisted": "Unlisted",
|
|
||||||
"unlisted_desc": "Visible for all, but opted-out of discovery features"
|
|
||||||
}
|
|
||||||
}
|
|
373
locales/en-US.ftl
Normal file
373
locales/en-US.ftl
Normal file
|
@ -0,0 +1,373 @@
|
||||||
|
## A11y
|
||||||
|
|
||||||
|
a11y_loading_page = Loading page, please wait
|
||||||
|
# Not used
|
||||||
|
a11y_loading_titled_page = Loading {$title} page, please wait
|
||||||
|
a11y_locale_changed = Language changed to {$lang}
|
||||||
|
a11y_locale_changing = Changing language, please wait
|
||||||
|
a11y_route_loaded = Page {$title} loaded
|
||||||
|
|
||||||
|
## Account
|
||||||
|
|
||||||
|
account_avatar_description = {$username}'s avatar
|
||||||
|
account_blocked_by = You're blocked by this user.
|
||||||
|
account_blocked_domains = Blocked domains
|
||||||
|
account_blocked_users = Blocked users
|
||||||
|
account_blocking = Blocked
|
||||||
|
account_bot = BOT
|
||||||
|
account_favourites = Favorites
|
||||||
|
account_follow = Follow
|
||||||
|
account_follow_back = Follow back
|
||||||
|
account_follow_requested = Requested
|
||||||
|
account_followers = Followers
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[one] {$formattedCount} Follower
|
||||||
|
*[other] {$formattedCount} Followers
|
||||||
|
}
|
||||||
|
account_following = Following
|
||||||
|
account_following_count = {$formattedCount} Following
|
||||||
|
account_follows_you = Follows you
|
||||||
|
account_go_to_profile = Go to profile
|
||||||
|
account_joined = Joined
|
||||||
|
account_moved_title = has indicated that their new account is now:
|
||||||
|
account_muted_users = Muted users
|
||||||
|
account_muting = Muted
|
||||||
|
account_mutuals = Mutuals
|
||||||
|
account_pinned = Pinned
|
||||||
|
account_posts = Posts
|
||||||
|
account_posts_count = { $count ->
|
||||||
|
[one] {$formattedCount} Post
|
||||||
|
*[other] {$formattedCount} Posts
|
||||||
|
}
|
||||||
|
account_profile_description = {$username}'s profile header
|
||||||
|
account_profile_unavailable = Profile unavailable
|
||||||
|
account_unblock = Unblock
|
||||||
|
account_unfollow = Unfollow
|
||||||
|
account_unmute = Unmute
|
||||||
|
action_apply = Apply
|
||||||
|
action_bookmark = Bookmark
|
||||||
|
action_bookmarked = Bookmarked
|
||||||
|
action_boost = Boost
|
||||||
|
action_boost_count = {0}
|
||||||
|
action_boosted = Boosted
|
||||||
|
action_clear_upload_failed = Clear file upload errors
|
||||||
|
action_close = Close
|
||||||
|
action_compose = Compose
|
||||||
|
action_confirm = Confirm
|
||||||
|
action_edit = Edit
|
||||||
|
action_enter_app = Enter App
|
||||||
|
action_favourite = Favorite
|
||||||
|
action_favourite_count = {0}
|
||||||
|
action_favourited = Favorited
|
||||||
|
action_more = More
|
||||||
|
action_next = Next
|
||||||
|
action_prev = Prev
|
||||||
|
action_publish = Publish
|
||||||
|
action_reply = Reply
|
||||||
|
action_reply_count = {0}
|
||||||
|
action_reset = Reset
|
||||||
|
action_save = Save
|
||||||
|
action_save_changes = Save changes
|
||||||
|
action_sign_in = Sign in
|
||||||
|
action_switch_account = Switch account
|
||||||
|
action_vote = Vote
|
||||||
|
app_desc_short = A nimble Mastodon web client
|
||||||
|
app_logo = Elk Logo
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = Description
|
||||||
|
attachment_remove_label = Remove attachment
|
||||||
|
command_activate = Activate
|
||||||
|
command_complete = Complete
|
||||||
|
command_compose_desc = Write a new post
|
||||||
|
command_n-people-in-the-past-n-days = {$count} people in the past {$days} days
|
||||||
|
command_select_lang = Select language
|
||||||
|
command_sign_in_desc = Add an existing account
|
||||||
|
command_switch_account = Switch to {$username}
|
||||||
|
command_switch_account_desc = Switch to another account
|
||||||
|
command_toggle_dark_mode = Toggle dark mode
|
||||||
|
command_toggle_zen_mode = Toggle zen mode
|
||||||
|
common_confirm_dialog_cancel = No
|
||||||
|
common_confirm_dialog_confirm = Yes
|
||||||
|
common_confirm_dialog_title = Are you sure?
|
||||||
|
common_end_of_list = End of the list
|
||||||
|
common_error = ERROR
|
||||||
|
common_in = in
|
||||||
|
common_not_found = 404 Not Found
|
||||||
|
common_offline_desc = Seems like you are offline. Please check your network connection.
|
||||||
|
compose_draft_title = Draft {0}
|
||||||
|
compose_drafts = Drafts ({$count})
|
||||||
|
conversation_with = with
|
||||||
|
error_account_not_found = Account {$username} not found
|
||||||
|
error_explore-list-empty = Nothing is trending right now. Check back later!
|
||||||
|
error_file_size_cannot_exceed_n_mb = File size cannot exceed {$size}MB
|
||||||
|
error_sign_in_error = Cannot connect to the server.
|
||||||
|
error_status_not_found = Post not found
|
||||||
|
error_unsupported_file_format = Unsupported file format
|
||||||
|
help_desc_highlight = Expect some bugs and missing features here and there.
|
||||||
|
help_desc_para1 = Thanks for your interest in trying out Elk, our work-in-progress generic Mastodon client!
|
||||||
|
help_desc_para2 = We are working hard on the development and improving it over time. We will open source the app once it is ready for public use.
|
||||||
|
help_desc_para3 = To help boosting out development, you can sponsor our team members with the links below. We hope you enjoy Elk!
|
||||||
|
help_desc_para4 = Before that, if you'd like to help with testing, giving feedback, or contributing,
|
||||||
|
help_desc_para5 = reach out to us on Mastodon
|
||||||
|
help_desc_para6 = and get involved.
|
||||||
|
help_title = Elk is in Preview!
|
||||||
|
language_none = None
|
||||||
|
language_search = Search
|
||||||
|
menu_block_account = Block {$username}
|
||||||
|
menu_block_domain = Block domain {$domain}
|
||||||
|
menu_copy_link_to_post = Copy link to this post
|
||||||
|
menu_delete = Delete
|
||||||
|
menu_delete_and_redraft = Delete & re-draft
|
||||||
|
menu_delete_confirm_cancel = Cancel
|
||||||
|
menu_delete_confirm_confirm = Delete
|
||||||
|
menu_delete_confirm_title = Are you sure you want to delete this post?
|
||||||
|
menu_direct_message_account = Direct message {$username}
|
||||||
|
menu_edit = Edit
|
||||||
|
menu_hide_reblogs = Hide boosts from {$username}
|
||||||
|
menu_mention_account = Mention {$username}
|
||||||
|
menu_mute_account = Mute {$username}
|
||||||
|
menu_mute_conversation = Mute this post
|
||||||
|
menu_open_in_original_site = Open in original site
|
||||||
|
menu_pin_on_profile = Pin on profile
|
||||||
|
menu_share_post = Share this post
|
||||||
|
menu_show_favourited_and_boosted_by = Show who favourited and boosted
|
||||||
|
menu_show_reblogs = Show boosts from {$username}
|
||||||
|
menu_show_untranslated = Show untranslated
|
||||||
|
menu_toggle_theme_dark = Toggle dark mode
|
||||||
|
menu_toggle_theme_light = Toggle light mode
|
||||||
|
menu_translate_post = Translate post
|
||||||
|
menu_unblock_account = Unblock {$username}
|
||||||
|
menu_unblock_domain = Unblock domain {$domain}
|
||||||
|
menu_unmute_account = Unmute {$username}
|
||||||
|
menu_unmute_conversation = Unmute this post
|
||||||
|
menu_unpin_on_profile = Unpin on profile
|
||||||
|
nav_back = Go back
|
||||||
|
nav_blocked_domains = Blocked domains
|
||||||
|
nav_blocked_users = Blocked users
|
||||||
|
nav_bookmarks = Bookmarks
|
||||||
|
nav_built_at = Built {0}
|
||||||
|
nav_conversations = Conversations
|
||||||
|
nav_explore = Explore
|
||||||
|
nav_favourites = Favorites
|
||||||
|
nav_federated = Federated
|
||||||
|
nav_home = Home
|
||||||
|
nav_local = Local
|
||||||
|
nav_muted_users = Muted users
|
||||||
|
nav_notifications = Notifications
|
||||||
|
nav_profile = Profile
|
||||||
|
nav_search = Search
|
||||||
|
nav_select_feature_flags = Toggle Feature Flags
|
||||||
|
nav_select_font_size = Font Size
|
||||||
|
nav_select_language = Display Language
|
||||||
|
nav_settings = Settings
|
||||||
|
nav_show_intro = Show intro
|
||||||
|
nav_toggle_theme = Toggle Theme
|
||||||
|
nav_zen_mode = Zen Mode
|
||||||
|
notification_favourited_post = favorited your post
|
||||||
|
notification_followed_you = followed you
|
||||||
|
notification_followed_you_count = {0} people followed you|{0} person followed you|{0} people followed you
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = reblogged your post
|
||||||
|
notification_request_to_follow = requested to follow you
|
||||||
|
notification_signed_up = signed up
|
||||||
|
notification_update_status = updated their post
|
||||||
|
placeholder_content_warning = Write your warning here
|
||||||
|
placeholder_default_1 = What is on your mind?
|
||||||
|
placeholder_reply_to_account = Reply to {0}
|
||||||
|
placeholder_replying = Replying
|
||||||
|
placeholder_the_thread = the thread
|
||||||
|
pwa_dismiss = Dismiss
|
||||||
|
pwa_title = New Elk update available!
|
||||||
|
pwa_update = Update
|
||||||
|
pwa_update_available_short = Update Elk
|
||||||
|
pwa_webmanifest_description = { $env ->
|
||||||
|
[canary] A nimble Mastodon web client (canary)
|
||||||
|
[dev] A nimble Mastodon web client (dev)
|
||||||
|
[preview] A nimble Mastodon web client (preview)
|
||||||
|
*[release] A nimble Mastodon web client
|
||||||
|
}
|
||||||
|
pwa_webmanifest_name = { $env ->
|
||||||
|
[canary] Elk (canary)
|
||||||
|
[dev] Elk (dev)
|
||||||
|
[preview] Elk (preview)
|
||||||
|
*[release] Elk
|
||||||
|
}
|
||||||
|
pwa_webmanifest_short_name = { $env ->
|
||||||
|
[canary] Elk (canary)
|
||||||
|
[dev] Elk (dev)
|
||||||
|
[preview] Elk (preview)
|
||||||
|
*[release] Elk
|
||||||
|
}
|
||||||
|
search_search_desc = Search for people & hashtags
|
||||||
|
search_search_empty = Could not find anything for these search terms
|
||||||
|
settings_about_label = About
|
||||||
|
settings_account_settings_description = Edit your account settings in Mastodon UI
|
||||||
|
settings_account_settings_label = Account settings
|
||||||
|
settings_feature_flags_github_cards = GitHub Cards
|
||||||
|
settings_feature_flags_title = Experimental Features
|
||||||
|
settings_feature_flags_user_picker = User Picker
|
||||||
|
settings_feature_flags_virtual_scroll = Virtual Scrolling
|
||||||
|
settings_interface_color_mode = Color Mode
|
||||||
|
settings_interface_dark_mode = Dark Mode
|
||||||
|
settings_interface_default = (default)
|
||||||
|
settings_interface_font_size = Font Size
|
||||||
|
settings_interface_label = Interface
|
||||||
|
settings_interface_light_mode = Light Mode
|
||||||
|
settings_interface_size_label_lg = Large
|
||||||
|
settings_interface_size_label_md = Medium
|
||||||
|
settings_interface_size_label_sm = Small
|
||||||
|
settings_interface_size_label_xl = Extra large
|
||||||
|
settings_interface_size_label_xs = Extra small
|
||||||
|
settings_language_display_language = Display Language
|
||||||
|
settings_language_label = Language
|
||||||
|
settings_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = Favorites
|
||||||
|
settings_notifications_push_notifications_alerts_follow = New followers
|
||||||
|
settings_notifications_push_notifications_alerts_mention = Mentions
|
||||||
|
settings_notifications_push_notifications_alerts_poll = Polls
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = Reblog your post
|
||||||
|
settings_notifications_push_notifications_alerts_title = What notifications to receive?
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = From anyone
|
||||||
|
settings_notifications_push_notifications_policy_followed = Of people I follow
|
||||||
|
settings_notifications_push_notifications_policy_follower = Of people who follow me
|
||||||
|
settings_notifications_push_notifications_policy_none = From no one
|
||||||
|
settings_notifications_push_notifications_policy_title = Who can I receive notifications from?
|
||||||
|
settings_notifications_push_notifications_save_settings = Save settings
|
||||||
|
settings_notifications_push_notifications_subscription_error_clear_error = Clear error
|
||||||
|
settings_notifications_push_notifications_subscription_error_permission_denied = Permission denied: enable notifications in your browser.
|
||||||
|
settings_notifications_push_notifications_subscription_error_request_error = An error occurred while requesting the subscription, try again and if the error persists, please report the issue to the Elk repository.
|
||||||
|
settings_notifications_push_notifications_subscription_error_title = Could not subscribe to push notifications
|
||||||
|
settings_notifications_push_notifications_title = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_undo_settings = Undo changes
|
||||||
|
settings_notifications_push_notifications_unsubscribe = Disable push notifications
|
||||||
|
settings_notifications_push_notifications_unsupported = Your browser does not support push notifications.
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = Close
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications via the "@:settings.notifications.show_btn{'"'} button above once enabled.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_desktop = To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications in "Settings > Notifications > Push notifications settings" once enabled.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_mobile = You can also access the settings using the navigation menu "Settings > Notifications > Push notification settings".
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = Enable push notifications
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = Never miss anything
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = It seems that your server does not support push notifications. Try sign out and sign in again, if this message still appears contact your server administrator.
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_notifications_settings = Notifications
|
||||||
|
settings_preferences_label = Preferences
|
||||||
|
settings_profile_appearance_bio = Bio
|
||||||
|
settings_profile_appearance_description = Edit avatar, username, profile, etc.
|
||||||
|
settings_profile_appearance_display_name = Display name
|
||||||
|
settings_profile_appearance_label = Appearance
|
||||||
|
settings_profile_appearance_profile_metadata = Profile metadata
|
||||||
|
settings_profile_appearance_profile_metadata_desc = You can have up to 4 items displayed as a table on your profile
|
||||||
|
settings_profile_appearance_title = Edit profile
|
||||||
|
settings_profile_featured_tags_description = People can browse your public posts under these hashtags.
|
||||||
|
settings_profile_featured_tags_label = Featured hashtags
|
||||||
|
settings_profile_label = Profile
|
||||||
|
settings_select_a_settings = Select a setting
|
||||||
|
settings_users_export = Export User Tokens
|
||||||
|
settings_users_import = Import User Tokens
|
||||||
|
settings_users_label = Logged in users
|
||||||
|
state_attachments_exceed_server_limit = The number of attachments exceeded the limit per post.
|
||||||
|
state_attachments_limit_error = Limit per post exceeded
|
||||||
|
state_edited = (Edited)
|
||||||
|
state_editing = Editing
|
||||||
|
state_loading = Loading...
|
||||||
|
state_upload_failed = Upload failed
|
||||||
|
state_uploading = Uploading...
|
||||||
|
status_boosted_by = Boosted By
|
||||||
|
status_edited = Edited {$date}
|
||||||
|
status_favourited_by = Favorited By
|
||||||
|
status_filter_hidden_phrase = Filtered by
|
||||||
|
status_filter_removed_phrase = Removed by filter
|
||||||
|
status_filter_show_anyway = Show anyway
|
||||||
|
status_img_alt_desc = Description
|
||||||
|
status_img_alt_dismiss = Dismiss
|
||||||
|
status_poll_count = {0} votes|{0} vote|{0} votes
|
||||||
|
status_poll_ends = ends {0}
|
||||||
|
status_poll_finished = finished {0}
|
||||||
|
status_reblogged = {0} reblogged
|
||||||
|
status_replying_to = Replying to {0}
|
||||||
|
status_show_full_thread = Show Full thread
|
||||||
|
status_someone = someone
|
||||||
|
status_spoiler_show_less = Show less
|
||||||
|
status_spoiler_show_more = Show more
|
||||||
|
status_thread = Thread
|
||||||
|
status_try_original_site = Try original site
|
||||||
|
status_history_created = created {0}
|
||||||
|
status_history_edited = edited {$date}
|
||||||
|
tab_for_you = For you
|
||||||
|
tab_hashtags = Hashtags
|
||||||
|
tab_media = Media
|
||||||
|
tab_news = News
|
||||||
|
tab_notifications_all = All
|
||||||
|
tab_notifications_mention = Mention
|
||||||
|
tab_posts = Posts
|
||||||
|
tab_posts_with_replies = Posts & Replies
|
||||||
|
tag_follow = Follow
|
||||||
|
tag_follow_label = Follow {$tag} tag
|
||||||
|
tag_unfollow = Unfollow
|
||||||
|
tag_unfollow_label = Unfollow {$tag} tag
|
||||||
|
time_ago_options_day_future = in 0 days|tomorrow|in {n} days
|
||||||
|
time_ago_options_day_past = 0 days ago|yesterday|{n} days ago
|
||||||
|
time_ago_options_hour_future = in 0 hours|in 1 hour|in {n} hours
|
||||||
|
time_ago_options_hour_past = { $n ->
|
||||||
|
[one] {$n} hour ago
|
||||||
|
*[other] {$n} hours ago
|
||||||
|
}
|
||||||
|
time_ago_options_just_now = just now
|
||||||
|
time_ago_options_minute_future = in 0 minutes|in 1 minute|in {n} minutes
|
||||||
|
time_ago_options_minute_past = 0 minutes ago|1 minute ago|{n} minutes ago
|
||||||
|
time_ago_options_month_future = in 0 months|next month|in {n} months
|
||||||
|
time_ago_options_month_past = 0 months ago|last month|{n} months ago
|
||||||
|
time_ago_options_second_future = just now|in {n} second|in {n} seconds
|
||||||
|
time_ago_options_second_past = just now|{n} second ago|{n} seconds ago
|
||||||
|
time_ago_options_short_day_future = in {n}d
|
||||||
|
time_ago_options_short_day_past = {n}d
|
||||||
|
time_ago_options_short_hour_future = in {n}h
|
||||||
|
time_ago_options_short_hour_past = {$n}h
|
||||||
|
time_ago_options_short_minute_future = in {n}min
|
||||||
|
time_ago_options_short_minute_past = {$n}min
|
||||||
|
time_ago_options_short_month_future = in {n}mo
|
||||||
|
time_ago_options_short_month_past = {n}mo
|
||||||
|
time_ago_options_short_second_future = in {n}s
|
||||||
|
time_ago_options_short_second_past = {n}s
|
||||||
|
time_ago_options_short_week_future = in {n}w
|
||||||
|
time_ago_options_short_week_past = {n}w
|
||||||
|
time_ago_options_short_year_future = in {n}y
|
||||||
|
time_ago_options_short_year_past = {n}y
|
||||||
|
time_ago_options_week_future = in 0 weeks|next week|in {n} weeks
|
||||||
|
time_ago_options_week_past = 0 weeks ago|last week|{n} weeks ago
|
||||||
|
time_ago_options_year_future = in 0 years|next year|in {n} years
|
||||||
|
time_ago_options_year_past = 0 years ago|last year|{n} years ago
|
||||||
|
timeline_show_new_items = Show {v} new items|Show {v} new item|Show {v} new items
|
||||||
|
timeline_view_older_posts = Older posts from other instances may not be displayed.
|
||||||
|
title_federated_timeline = Federated Timeline
|
||||||
|
title_local_timeline = Local Timeline
|
||||||
|
tooltip_add_content_warning = Add content warning
|
||||||
|
tooltip_add_media = Add images, a video or an audio file
|
||||||
|
tooltip_add_publishable_content = Add content to publish
|
||||||
|
tooltip_change_content_visibility = Change content visibility
|
||||||
|
tooltip_change_language = Change language
|
||||||
|
tooltip_emoji = Emoji
|
||||||
|
tooltip_explore_links_intro = These news stories are being talked about by people on this and other servers of the decentralized network right now.
|
||||||
|
tooltip_explore_posts_intro = These posts from this and other servers in the decentralized network are gaining traction on this server right now.
|
||||||
|
tooltip_explore_tags_intro = These hashtags are gaining traction among people on this and other servers of the decentralized network right now.
|
||||||
|
tooltip_toggle_code_block = Toggle code block
|
||||||
|
user_add_existing = Add an existing account
|
||||||
|
user_server_address_label = Mastodon Server Address
|
||||||
|
user_sign_in_desc = Sign in to follow profiles or hashtags, favorite, share and reply to posts, or interact from your account on a different server.
|
||||||
|
user_sign_in_notice_title = Viewing {0} public data
|
||||||
|
user_sign_out_account = Sign out {$username}
|
||||||
|
user_tip_no_account = If you don't have a Mastodon account yet, {0}.
|
||||||
|
user_tip_register_account = pick your server and register one
|
||||||
|
visibility_direct = Direct
|
||||||
|
visibility_direct_desc = Visible for mentioned users only
|
||||||
|
visibility_private = Followers only
|
||||||
|
visibility_private_desc = Visible for followers only
|
||||||
|
visibility_public = Public
|
||||||
|
visibility_public_desc = Visible for all
|
||||||
|
visibility_unlisted = Unlisted
|
||||||
|
visibility_unlisted_desc = Visible for all, but opted-out of discovery features
|
|
@ -1,468 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "Loading page, please wait",
|
|
||||||
"loading_titled_page": "Loading {0} page, please wait",
|
|
||||||
"locale_changed": "Language changed to {0}",
|
|
||||||
"locale_changing": "Changing language, please wait",
|
|
||||||
"route_loaded": "Page {0} loaded"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "{0}'s avatar",
|
|
||||||
"blocked_by": "You're blocked by this user.",
|
|
||||||
"blocked_domains": "Blocked domains",
|
|
||||||
"blocked_users": "Blocked users",
|
|
||||||
"blocking": "Blocked",
|
|
||||||
"bot": "BOT",
|
|
||||||
"favourites": "Favorites",
|
|
||||||
"follow": "Follow",
|
|
||||||
"follow_back": "Follow back",
|
|
||||||
"follow_requested": "Requested",
|
|
||||||
"followers": "Followers",
|
|
||||||
"followers_count": "{0} Followers|{0} Follower|{0} Followers",
|
|
||||||
"following": "Following",
|
|
||||||
"following_count": "{0} Following",
|
|
||||||
"follows_you": "Follows you",
|
|
||||||
"go_to_profile": "Go to profile",
|
|
||||||
"joined": "Joined",
|
|
||||||
"moved_title": "has indicated that their new account is now:",
|
|
||||||
"muted_users": "Muted users",
|
|
||||||
"muting": "Muted",
|
|
||||||
"mutuals": "Mutuals",
|
|
||||||
"pinned": "Pinned",
|
|
||||||
"posts": "Posts",
|
|
||||||
"posts_count": "{0} Posts|{0} Post|{0} Posts",
|
|
||||||
"profile_description": "{0}'s profile header",
|
|
||||||
"profile_unavailable": "Profile unavailable",
|
|
||||||
"unblock": "Unblock",
|
|
||||||
"unfollow": "Unfollow",
|
|
||||||
"unmute": "Unmute"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "Apply",
|
|
||||||
"bookmark": "Bookmark",
|
|
||||||
"bookmarked": "Bookmarked",
|
|
||||||
"boost": "Boost",
|
|
||||||
"boost_count": "{0}",
|
|
||||||
"boosted": "Boosted",
|
|
||||||
"clear_upload_failed": "Clear file upload errors",
|
|
||||||
"close": "Close",
|
|
||||||
"compose": "Compose",
|
|
||||||
"confirm": "Confirm",
|
|
||||||
"edit": "Edit",
|
|
||||||
"enter_app": "Enter App",
|
|
||||||
"favourite": "Favorite",
|
|
||||||
"favourite_count": "{0}",
|
|
||||||
"favourited": "Favorited",
|
|
||||||
"more": "More",
|
|
||||||
"next": "Next",
|
|
||||||
"prev": "Prev",
|
|
||||||
"publish": "Publish",
|
|
||||||
"reply": "Reply",
|
|
||||||
"reply_count": "{0}",
|
|
||||||
"reset": "Reset",
|
|
||||||
"save": "Save",
|
|
||||||
"save_changes": "Save changes",
|
|
||||||
"sign_in": "Sign in",
|
|
||||||
"switch_account": "Switch account",
|
|
||||||
"vote": "Vote"
|
|
||||||
},
|
|
||||||
"app_desc_short": "A nimble Mastodon web client",
|
|
||||||
"app_logo": "Elk Logo",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "Description",
|
|
||||||
"remove_label": "Remove attachment"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "Activate",
|
|
||||||
"complete": "Complete",
|
|
||||||
"compose_desc": "Write a new post",
|
|
||||||
"n-people-in-the-past-n-days": "{0} people in the past {1} days",
|
|
||||||
"select_lang": "Select language",
|
|
||||||
"sign_in_desc": "Add an existing account",
|
|
||||||
"switch_account": "Switch to {0}",
|
|
||||||
"switch_account_desc": "Switch to another account",
|
|
||||||
"toggle_dark_mode": "Toggle dark mode",
|
|
||||||
"toggle_zen_mode": "Toggle zen mode"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"confirm_dialog": {
|
|
||||||
"cancel": "No",
|
|
||||||
"confirm": "Yes",
|
|
||||||
"title": "Are you sure?"
|
|
||||||
},
|
|
||||||
"end_of_list": "End of the list",
|
|
||||||
"error": "ERROR",
|
|
||||||
"in": "in",
|
|
||||||
"not_found": "404 Not Found",
|
|
||||||
"offline_desc": "Seems like you are offline. Please check your network connection."
|
|
||||||
},
|
|
||||||
"compose": {
|
|
||||||
"draft_title": "Draft {0}",
|
|
||||||
"drafts": "Drafts ({v})"
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "with"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Account {0} not found",
|
|
||||||
"explore-list-empty": "Nothing is trending right now. Check back later!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "File size cannot exceed {0}MB",
|
|
||||||
"sign_in_error": "Cannot connect to the server.",
|
|
||||||
"status_not_found": "Post not found",
|
|
||||||
"unsupported_file_format": "Unsupported file format"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Expect some bugs and missing features here and there.",
|
|
||||||
"desc_para1": "Thanks for your interest in trying out Elk, our work-in-progress generic Mastodon client!",
|
|
||||||
"desc_para2": "We are working hard on the development and improving it over time. We will open source the app once it is ready for public use.",
|
|
||||||
"desc_para3": "To help boosting out development, you can sponsor our team members with the links below. We hope you enjoy Elk!",
|
|
||||||
"desc_para4": "Before that, if you'd like to help with testing, giving feedback, or contributing,",
|
|
||||||
"desc_para5": "reach out to us on Mastodon",
|
|
||||||
"desc_para6": "and get involved.",
|
|
||||||
"title": "Elk is in Preview!"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"none": "None",
|
|
||||||
"search": "Search"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Block {0}",
|
|
||||||
"block_domain": "Block domain {0}",
|
|
||||||
"copy_link_to_post": "Copy link to this post",
|
|
||||||
"delete": "Delete",
|
|
||||||
"delete_and_redraft": "Delete & re-draft",
|
|
||||||
"delete_confirm": {
|
|
||||||
"cancel": "Cancel",
|
|
||||||
"confirm": "Delete",
|
|
||||||
"title": "Are you sure you want to delete this post?"
|
|
||||||
},
|
|
||||||
"direct_message_account": "Direct message {0}",
|
|
||||||
"edit": "Edit",
|
|
||||||
"hide_reblogs": "Hide boosts from {0}",
|
|
||||||
"mention_account": "Mention {0}",
|
|
||||||
"mute_account": "Mute {0}",
|
|
||||||
"mute_conversation": "Mute this post",
|
|
||||||
"open_in_original_site": "Open in original site",
|
|
||||||
"pin_on_profile": "Pin on profile",
|
|
||||||
"share_post": "Share this post",
|
|
||||||
"show_favourited_and_boosted_by": "Show who favourited and boosted",
|
|
||||||
"show_reblogs": "Show boosts from {0}",
|
|
||||||
"show_untranslated": "Show untranslated",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Toggle dark mode",
|
|
||||||
"light": "Toggle light mode"
|
|
||||||
},
|
|
||||||
"translate_post": "Translate post",
|
|
||||||
"unblock_account": "Unblock {0}",
|
|
||||||
"unblock_domain": "Unblock domain {0}",
|
|
||||||
"unmute_account": "Unmute {0}",
|
|
||||||
"unmute_conversation": "Unmute this post",
|
|
||||||
"unpin_on_profile": "Unpin on profile"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"back": "Go back",
|
|
||||||
"blocked_domains": "Blocked domains",
|
|
||||||
"blocked_users": "Blocked users",
|
|
||||||
"bookmarks": "Bookmarks",
|
|
||||||
"built_at": "Built {0}",
|
|
||||||
"conversations": "Conversations",
|
|
||||||
"explore": "Explore",
|
|
||||||
"favourites": "Favorites",
|
|
||||||
"federated": "Federated",
|
|
||||||
"home": "Home",
|
|
||||||
"local": "Local",
|
|
||||||
"muted_users": "Muted users",
|
|
||||||
"notifications": "Notifications",
|
|
||||||
"profile": "Profile",
|
|
||||||
"search": "Search",
|
|
||||||
"select_feature_flags": "Toggle Feature Flags",
|
|
||||||
"select_font_size": "Font Size",
|
|
||||||
"select_language": "Display Language",
|
|
||||||
"settings": "Settings",
|
|
||||||
"show_intro": "Show intro",
|
|
||||||
"toggle_theme": "Toggle Theme",
|
|
||||||
"zen_mode": "Zen Mode"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "favorited your post",
|
|
||||||
"followed_you": "followed you",
|
|
||||||
"followed_you_count": "{0} people followed you|{0} person followed you|{0} people followed you",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "reblogged your post",
|
|
||||||
"request_to_follow": "requested to follow you",
|
|
||||||
"signed_up": "signed up",
|
|
||||||
"update_status": "updated their post"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Write your warning here",
|
|
||||||
"default_1": "What is on your mind?",
|
|
||||||
"reply_to_account": "Reply to {0}",
|
|
||||||
"replying": "Replying",
|
|
||||||
"the_thread": "the thread"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "Dismiss",
|
|
||||||
"title": "New Elk update available!",
|
|
||||||
"update": "Update",
|
|
||||||
"update_available_short": "Update Elk",
|
|
||||||
"webmanifest": {
|
|
||||||
"canary": {
|
|
||||||
"description": "A nimble Mastodon web client (canary)",
|
|
||||||
"name": "Elk (canary)",
|
|
||||||
"short_name": "Elk (canary)"
|
|
||||||
},
|
|
||||||
"dev": {
|
|
||||||
"description": "A nimble Mastodon web client (dev)",
|
|
||||||
"name": "Elk (dev)",
|
|
||||||
"short_name": "Elk (dev)"
|
|
||||||
},
|
|
||||||
"preview": {
|
|
||||||
"description": "A nimble Mastodon web client (preview)",
|
|
||||||
"name": "Elk (preview)",
|
|
||||||
"short_name": "Elk (preview)"
|
|
||||||
},
|
|
||||||
"release": {
|
|
||||||
"description": "A nimble Mastodon web client",
|
|
||||||
"name": "Elk",
|
|
||||||
"short_name": "Elk"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Search for people & hashtags",
|
|
||||||
"search_empty": "Could not find anything for these search terms"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "About"
|
|
||||||
},
|
|
||||||
"account_settings": {
|
|
||||||
"description": "Edit your account settings in Mastodon UI",
|
|
||||||
"label": "Account settings"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub Cards",
|
|
||||||
"title": "Experimental Features",
|
|
||||||
"user_picker": "User Picker",
|
|
||||||
"virtual_scroll": "Virtual Scrolling"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Color Mode",
|
|
||||||
"dark_mode": "Dark Mode",
|
|
||||||
"default": " (default)",
|
|
||||||
"font_size": "Font Size",
|
|
||||||
"label": "Interface",
|
|
||||||
"light_mode": "Light Mode",
|
|
||||||
"size_label": {
|
|
||||||
"lg": "Large",
|
|
||||||
"md": "Medium",
|
|
||||||
"sm": "Small",
|
|
||||||
"xl": "Extra large",
|
|
||||||
"xs": "Extra small"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Display Language",
|
|
||||||
"label": "Language"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "Favorites",
|
|
||||||
"follow": "New followers",
|
|
||||||
"mention": "Mentions",
|
|
||||||
"poll": "Polls",
|
|
||||||
"reblog": "Reblog your post",
|
|
||||||
"title": "What notifications to receive?"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "From anyone",
|
|
||||||
"followed": "Of people I follow",
|
|
||||||
"follower": "Of people who follow me",
|
|
||||||
"none": "From no one",
|
|
||||||
"title": "Who can I receive notifications from?"
|
|
||||||
},
|
|
||||||
"save_settings": "Save settings",
|
|
||||||
"subscription_error": {
|
|
||||||
"clear_error": "Clear error",
|
|
||||||
"permission_denied": "Permission denied: enable notifications in your browser.",
|
|
||||||
"request_error": "An error occurred while requesting the subscription, try again and if the error persists, please report the issue to the Elk repository.",
|
|
||||||
"title": "Could not subscribe to push notifications"
|
|
||||||
},
|
|
||||||
"title": "Push notifications settings",
|
|
||||||
"undo_settings": "Undo changes",
|
|
||||||
"unsubscribe": "Disable push notifications",
|
|
||||||
"unsupported": "Your browser does not support push notifications.",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "Close",
|
|
||||||
"enable_description": "To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications via the \"@:settings.notifications.show_btn{'\"'} button above once enabled.",
|
|
||||||
"enable_description_desktop": "To receive notifications when Elk is not open, enable push notifications. You can control precisely what types of interactions generate push notifications in \"Settings > Notifications > Push notifications settings\" once enabled.",
|
|
||||||
"enable_description_mobile": "You can also access the settings using the navigation menu \"Settings > Notifications > Push notification settings\".",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "Enable push notifications",
|
|
||||||
"enable_title": "Never miss anything",
|
|
||||||
"re_auth": "It seems that your server does not support push notifications. Try sign out and sign in again, if this message still appears contact your server administrator."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notifications",
|
|
||||||
"preferences": {
|
|
||||||
"label": "Preferences"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Bio",
|
|
||||||
"description": "Edit avatar, username, profile, etc.",
|
|
||||||
"display_name": "Display name",
|
|
||||||
"label": "Appearance",
|
|
||||||
"profile_metadata": "Profile metadata",
|
|
||||||
"profile_metadata_desc": "You can have up to 4 items displayed as a table on your profile",
|
|
||||||
"title": "Edit profile"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "People can browse your public posts under these hashtags.",
|
|
||||||
"label": "Featured hashtags"
|
|
||||||
},
|
|
||||||
"label": "Profile"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Select a setting",
|
|
||||||
"users": {
|
|
||||||
"export": "Export User Tokens",
|
|
||||||
"import": "Import User Tokens",
|
|
||||||
"label": "Logged in users"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"attachments_exceed_server_limit": "The number of attachments exceeded the limit per post.",
|
|
||||||
"attachments_limit_error": "Limit per post exceeded",
|
|
||||||
"edited": "(Edited)",
|
|
||||||
"editing": "Editing",
|
|
||||||
"loading": "Loading...",
|
|
||||||
"upload_failed": "Upload failed",
|
|
||||||
"uploading": "Uploading..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"boosted_by": "Boosted By",
|
|
||||||
"edited": "Edited {0}",
|
|
||||||
"favourited_by": "Favorited By",
|
|
||||||
"filter_hidden_phrase": "Filtered by",
|
|
||||||
"filter_removed_phrase": "Removed by filter",
|
|
||||||
"filter_show_anyway": "Show anyway",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Description",
|
|
||||||
"dismiss": "Dismiss"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} votes|{0} vote|{0} votes",
|
|
||||||
"ends": "ends {0}",
|
|
||||||
"finished": "finished {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} reblogged",
|
|
||||||
"replying_to": "Replying to {0}",
|
|
||||||
"show_full_thread": "Show Full thread",
|
|
||||||
"someone": "someone",
|
|
||||||
"spoiler_show_less": "Show less",
|
|
||||||
"spoiler_show_more": "Show more",
|
|
||||||
"thread": "Thread",
|
|
||||||
"try_original_site": "Try original site"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "created {0}",
|
|
||||||
"edited": "edited {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "For you",
|
|
||||||
"hashtags": "Hashtags",
|
|
||||||
"media": "Media",
|
|
||||||
"news": "News",
|
|
||||||
"notifications_all": "All",
|
|
||||||
"notifications_mention": "Mention",
|
|
||||||
"posts": "Posts",
|
|
||||||
"posts_with_replies": "Posts & Replies"
|
|
||||||
},
|
|
||||||
"tag": {
|
|
||||||
"follow": "Follow",
|
|
||||||
"follow_label": "Follow {0} tag",
|
|
||||||
"unfollow": "Unfollow",
|
|
||||||
"unfollow_label": "Unfollow {0} tag"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "in 0 days|tomorrow|in {n} days",
|
|
||||||
"day_past": "0 days ago|yesterday|{n} days ago",
|
|
||||||
"hour_future": "in 0 hours|in 1 hour|in {n} hours",
|
|
||||||
"hour_past": "0 hours ago|1 hour ago|{n} hours ago",
|
|
||||||
"just_now": "just now",
|
|
||||||
"minute_future": "in 0 minutes|in 1 minute|in {n} minutes",
|
|
||||||
"minute_past": "0 minutes ago|1 minute ago|{n} minutes ago",
|
|
||||||
"month_future": "in 0 months|next month|in {n} months",
|
|
||||||
"month_past": "0 months ago|last month|{n} months ago",
|
|
||||||
"second_future": "just now|in {n} second|in {n} seconds",
|
|
||||||
"second_past": "just now|{n} second ago|{n} seconds ago",
|
|
||||||
"short_day_future": "in {n}d",
|
|
||||||
"short_day_past": "{n}d",
|
|
||||||
"short_hour_future": "in {n}h",
|
|
||||||
"short_hour_past": "{n}h",
|
|
||||||
"short_minute_future": "in {n}min",
|
|
||||||
"short_minute_past": "{n}min",
|
|
||||||
"short_month_future": "in {n}mo",
|
|
||||||
"short_month_past": "{n}mo",
|
|
||||||
"short_second_future": "in {n}s",
|
|
||||||
"short_second_past": "{n}s",
|
|
||||||
"short_week_future": "in {n}w",
|
|
||||||
"short_week_past": "{n}w",
|
|
||||||
"short_year_future": "in {n}y",
|
|
||||||
"short_year_past": "{n}y",
|
|
||||||
"week_future": "in 0 weeks|next week|in {n} weeks",
|
|
||||||
"week_past": "0 weeks ago|last week|{n} weeks ago",
|
|
||||||
"year_future": "in 0 years|next year|in {n} years",
|
|
||||||
"year_past": "0 years ago|last year|{n} years ago"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Show {v} new items|Show {v} new item|Show {v} new items",
|
|
||||||
"view_older_posts": "Older posts from other instances may not be displayed."
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Federated Timeline",
|
|
||||||
"local_timeline": "Local Timeline"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Add content warning",
|
|
||||||
"add_media": "Add images, a video or an audio file",
|
|
||||||
"add_publishable_content": "Add content to publish",
|
|
||||||
"change_content_visibility": "Change content visibility",
|
|
||||||
"change_language": "Change language",
|
|
||||||
"emoji": "Emoji",
|
|
||||||
"explore_links_intro": "These news stories are being talked about by people on this and other servers of the decentralized network right now.",
|
|
||||||
"explore_posts_intro": "These posts from this and other servers in the decentralized network are gaining traction on this server right now.",
|
|
||||||
"explore_tags_intro": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.",
|
|
||||||
"toggle_code_block": "Toggle code block"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Add an existing account",
|
|
||||||
"server_address_label": "Mastodon Server Address",
|
|
||||||
"sign_in_desc": "Sign in to follow profiles or hashtags, favorite, share and reply to posts, or interact from your account on a different server.",
|
|
||||||
"sign_in_notice_title": "Viewing {0} public data",
|
|
||||||
"sign_out_account": "Sign out {0}",
|
|
||||||
"tip_no_account": "If you don't have a Mastodon account yet, {0}.",
|
|
||||||
"tip_register_account": "pick your server and register one"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Direct",
|
|
||||||
"direct_desc": "Visible for mentioned users only",
|
|
||||||
"private": "Followers only",
|
|
||||||
"private_desc": "Visible for followers only",
|
|
||||||
"public": "Public",
|
|
||||||
"public_desc": "Visible for all",
|
|
||||||
"unlisted": "Unlisted",
|
|
||||||
"unlisted_desc": "Visible for all, but opted-out of discovery features"
|
|
||||||
}
|
|
||||||
}
|
|
359
locales/es-ES.ftl
Normal file
359
locales/es-ES.ftl
Normal file
|
@ -0,0 +1,359 @@
|
||||||
|
a11y_loading_page = Cargando página, espere por favor
|
||||||
|
a11y_loading_titled_page = Cargando página {$title}, espere por favor
|
||||||
|
a11y_locale_changed = Idioma cambiado a {$lang}
|
||||||
|
a11y_locale_changing = Cambiando idioma, espere por favor
|
||||||
|
a11y_route_loaded = Página {$title} cargada
|
||||||
|
account_avatar_description = avatar de {$username}
|
||||||
|
account_blocked_by = Estás bloqueado por este usuario.
|
||||||
|
account_blocked_domains = Dominios bloqueados
|
||||||
|
account_blocked_users = Usuarios bloqueados
|
||||||
|
account_blocking = Bloqueado
|
||||||
|
account_bot = BOT
|
||||||
|
account_favourites = Favoritos
|
||||||
|
account_follow = Seguir
|
||||||
|
account_follow_back = Seguir de vuelta
|
||||||
|
account_follow_requested = Solicitado
|
||||||
|
account_followers = Seguidores
|
||||||
|
# Should there be [many] here? de seguidores?
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[one] {$formattedCount} Seguidor
|
||||||
|
*[other] {$formattedCount} Seguidores
|
||||||
|
}
|
||||||
|
account_following = Siguiendo
|
||||||
|
account_following_count = {$formattedCount} Siguiendo
|
||||||
|
account_follows_you = Te sigue
|
||||||
|
account_go_to_profile = Ir al perfil
|
||||||
|
account_joined = Se unió
|
||||||
|
account_moved_title = ha indicado que su nueva cuenta ahora es:
|
||||||
|
account_muted_users = Usuarios silenciados
|
||||||
|
account_muting = Silenciado
|
||||||
|
account_mutuals = Mutuo
|
||||||
|
account_pinned = Publicaciones fijadas
|
||||||
|
account_posts = Publicaciones
|
||||||
|
account_posts_count = { $count ->
|
||||||
|
[one] {$formattedCount} Publicación
|
||||||
|
*[other] {$formattedCount} Publicaciones
|
||||||
|
}
|
||||||
|
account_profile_description = Encabezado del perfil de {$username}
|
||||||
|
account_profile_unavailable = Perfil no disponible
|
||||||
|
account_unblock = Desbloquear
|
||||||
|
account_unfollow = Dejar de seguir
|
||||||
|
account_unmute = Dejar de silenciar
|
||||||
|
action_apply = Aplicar
|
||||||
|
action_bookmark = Añadir marcador
|
||||||
|
action_bookmarked = Guardado como marcador
|
||||||
|
action_boost = Retootear
|
||||||
|
action_boost_count = {0}
|
||||||
|
action_boosted = Retooteado
|
||||||
|
action_clear_upload_failed = Limpiar errores de subida de archivos
|
||||||
|
action_close = Cerrar
|
||||||
|
action_compose = Redactar
|
||||||
|
action_confirm = Confirmar
|
||||||
|
action_edit = Editar
|
||||||
|
action_enter_app = Entrar
|
||||||
|
action_favourite = Favorito
|
||||||
|
action_favourite_count = {0}
|
||||||
|
action_favourited = Marcado como favorito
|
||||||
|
action_more = Más
|
||||||
|
action_next = Siguiente
|
||||||
|
action_prev = Anterior
|
||||||
|
action_publish = Publicar
|
||||||
|
action_reply = Responder
|
||||||
|
action_reply_count = {0}
|
||||||
|
action_reset = Reiniciar
|
||||||
|
action_save = Guardar
|
||||||
|
action_save_changes = Guardar cambios
|
||||||
|
action_sign_in = Iniciar sesión
|
||||||
|
action_switch_account = Cambiar cuenta
|
||||||
|
action_vote = Votar
|
||||||
|
app_desc_short = Un cliente web ágil para Mastodon
|
||||||
|
app_logo = Logotipo de Elk
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = Descripción
|
||||||
|
attachment_remove_label = Eliminar archivo adjunto
|
||||||
|
command_activate = Activar
|
||||||
|
command_complete = Completar
|
||||||
|
command_compose_desc = Escribir una nueva publicación
|
||||||
|
command_n-people-in-the-past-n-days = {$count} personas en los últimos {$days} días
|
||||||
|
command_select_lang = Seleccionar idioma
|
||||||
|
command_sign_in_desc = Agregar una cuenta existente
|
||||||
|
command_switch_account = Cambiar a {$username}
|
||||||
|
command_switch_account_desc = Cambiar a otra cuenta
|
||||||
|
command_toggle_dark_mode = Cambiar a modo oscuro
|
||||||
|
command_toggle_zen_mode = Cambiar a modo zen
|
||||||
|
common_confirm_dialog_cancel = No
|
||||||
|
common_confirm_dialog_confirm = Si
|
||||||
|
common_confirm_dialog_title = ¿Estás seguro?
|
||||||
|
common_end_of_list = Fin
|
||||||
|
common_error = ERROR
|
||||||
|
common_in = en
|
||||||
|
common_not_found = 404 No Encontrado
|
||||||
|
common_offline_desc = Al parecer estás fuera de línea. Por favor, comprueba tu conexión a la red.
|
||||||
|
compose_draft_title = Borrador {0}
|
||||||
|
compose_drafts = Borradores ({$count})
|
||||||
|
conversation_with = con
|
||||||
|
error_account_not_found = No se encontró la cuenta {$username}
|
||||||
|
error_explore-list-empty = No hay tendencias en este momento. ¡Vuelve más tarde!
|
||||||
|
error_file_size_cannot_exceed_n_mb = El tamaño del archivo no puede exceder los {$size}MB
|
||||||
|
error_sign_in_error = No se pudo conectar con el servidor.
|
||||||
|
error_status_not_found = Estado no encontrado
|
||||||
|
error_unsupported_file_format = Tipo de archivo no soportado
|
||||||
|
help_desc_highlight = Es normal encontrar algunos errores y características faltantes aquí y allá.
|
||||||
|
help_desc_para1 = ¡Gracias por el interés en probar Elk, nuestro cliente genérico en desarrollo para Mastodon!
|
||||||
|
help_desc_para2 = Estamos trabajando duro en el desarrollo y mejorándolo constantemente. ¡Y pronto te invitaremos a que te unas una vez que lo hagamos de código abierto!
|
||||||
|
help_desc_para3 = Para ayudar a impulsar el desarrollo, puedes patrocinar a los miembros de nuestro equipo con los enlaces a continuación.
|
||||||
|
help_desc_para4 = Antes de eso, si te gustaría ayudar probando, dando opinión o contribuyendo,
|
||||||
|
help_desc_para5 = ponte en contacto con nosotros a través de Mastodon
|
||||||
|
help_desc_para6 = para participar.
|
||||||
|
help_title = ¡Elk está en Vista Previa!
|
||||||
|
language_none = Ninguno
|
||||||
|
language_search = Buscar
|
||||||
|
menu_block_account = Bloquear a {$username}
|
||||||
|
menu_block_domain = Bloquear dominio {$domain}
|
||||||
|
menu_copy_link_to_post = Copiar enlace
|
||||||
|
menu_delete = Borrar
|
||||||
|
menu_delete_and_redraft = Borrar y volver a borrador
|
||||||
|
menu_delete_confirm_cancel = Cancelar
|
||||||
|
menu_delete_confirm_confirm = Borrar
|
||||||
|
menu_delete_confirm_title = ¿Estás seguro que deseas eliminar esta publicación?
|
||||||
|
menu_direct_message_account = Mensaje directo a {$username}
|
||||||
|
menu_edit = Editar
|
||||||
|
menu_hide_reblogs = Ocultar retoots de {$username}
|
||||||
|
menu_mention_account = Mencionar a {$username}
|
||||||
|
menu_mute_account = Silenciar a {$username}
|
||||||
|
menu_mute_conversation = Silenciar publicación
|
||||||
|
menu_open_in_original_site = Abrir página original
|
||||||
|
menu_pin_on_profile = Fijar en tu perfil
|
||||||
|
menu_share_post = Compartir esta publicación
|
||||||
|
menu_show_favourited_and_boosted_by = Mostrar quien marcó como favorito y quien retooteó
|
||||||
|
menu_show_reblogs = Mostrar retoots de {$username}
|
||||||
|
menu_show_untranslated = Mostrar original
|
||||||
|
menu_toggle_theme_dark = Cambiar a modo oscuro
|
||||||
|
menu_toggle_theme_light = Cambiar a modo claro
|
||||||
|
menu_translate_post = Traducir
|
||||||
|
menu_unblock_account = Desbloquear a {$username}
|
||||||
|
menu_unblock_domain = Desbloquear dominio {$domain}
|
||||||
|
menu_unmute_account = Dejar de silenciar a {$username}
|
||||||
|
menu_unmute_conversation = Dejar de silenciar la publicación
|
||||||
|
menu_unpin_on_profile = Desfijar del perfil
|
||||||
|
nav_back = Regresar
|
||||||
|
nav_blocked_domains = Dominios bloqueados
|
||||||
|
nav_blocked_users = Usuarios bloqueados
|
||||||
|
nav_bookmarks = Marcadores
|
||||||
|
nav_built_at = Compilado {0}
|
||||||
|
nav_conversations = Conversaciones
|
||||||
|
nav_explore = Explorar
|
||||||
|
nav_favourites = Favoritos
|
||||||
|
nav_federated = Federados
|
||||||
|
nav_home = Inicio
|
||||||
|
nav_local = Local
|
||||||
|
nav_muted_users = Usuarios silenciados
|
||||||
|
nav_notifications = Notificaciones
|
||||||
|
nav_profile = Perfil
|
||||||
|
nav_search = Buscar
|
||||||
|
nav_select_feature_flags = Cambiar marcadores de funcionalidades
|
||||||
|
nav_select_font_size = Cambiar tamaño de letra
|
||||||
|
nav_select_language = Cambiar idioma
|
||||||
|
nav_settings = Ajustes
|
||||||
|
nav_show_intro = Mostrar intro
|
||||||
|
nav_toggle_theme = Cambiar tema
|
||||||
|
nav_zen_mode = Modo Zen
|
||||||
|
notification_favourited_post = marcó tu publicación como favorito
|
||||||
|
notification_followed_you = te ha seguido
|
||||||
|
notification_followed_you_count = {0} personas te siguieron|{0} persona te siguió|{0} personas te siguieron
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = retooteó tu publicación
|
||||||
|
notification_request_to_follow = ha solicitado seguirte
|
||||||
|
notification_signed_up = registrado
|
||||||
|
notification_update_status = ha actualizado su estado
|
||||||
|
placeholder_content_warning = Escribe tu advertencia aquí
|
||||||
|
placeholder_default_1 = ¿En qué estás pensando?
|
||||||
|
placeholder_reply_to_account = Responder a {0}
|
||||||
|
placeholder_replying = Respondiendo
|
||||||
|
placeholder_the_thread = el hilo
|
||||||
|
pwa_dismiss = Descartar
|
||||||
|
pwa_title = Nueva versión de Elk disponible
|
||||||
|
pwa_update = Actualizar
|
||||||
|
pwa_update_available_short = Actualiza Elk
|
||||||
|
pwa_webmanifest_canary_description = Un cliente web ágil para Mastodon (canary)
|
||||||
|
pwa_webmanifest_canary_name = Elk (canary)
|
||||||
|
pwa_webmanifest_canary_short_name = Elk (canary)
|
||||||
|
pwa_webmanifest_dev_description = Un cliente web ágil para Mastodon (desarrollo)
|
||||||
|
pwa_webmanifest_dev_name = Elk (desarrollo)
|
||||||
|
pwa_webmanifest_dev_short_name = Elk (desarrollo)
|
||||||
|
pwa_webmanifest_preview_description = Un cliente web ágil para Mastodon (vista previa)
|
||||||
|
pwa_webmanifest_preview_name = Elk (vista previa)
|
||||||
|
pwa_webmanifest_preview_short_name = Elk (vista previa)
|
||||||
|
pwa_webmanifest_release_description = Un cliente web ágil para Mastodon
|
||||||
|
pwa_webmanifest_release_name = Elk
|
||||||
|
pwa_webmanifest_release_short_name = Elk
|
||||||
|
search_search_desc = Buscar personas y etiquetas
|
||||||
|
search_search_empty = No se pudo encontrar nada para estos términos de búsqueda
|
||||||
|
settings_about_label = Acerca de
|
||||||
|
settings_account_settings_description = Edita los ajustes de tu cuenta en la interfaz de Mastodon
|
||||||
|
settings_account_settings_label = Ajustes de cuenta
|
||||||
|
settings_feature_flags_github_cards = Tarjetas GitHub
|
||||||
|
settings_feature_flags_title = Funcionalidades experimentales
|
||||||
|
settings_feature_flags_user_picker = Selector de usuarios
|
||||||
|
settings_feature_flags_virtual_scroll = Desplazamiento virtual
|
||||||
|
settings_interface_color_mode = Modo Color
|
||||||
|
settings_interface_dark_mode = Modo Oscuro
|
||||||
|
settings_interface_default = (por defecto)
|
||||||
|
settings_interface_font_size = Tamaño de Letra
|
||||||
|
settings_interface_label = Interfaz
|
||||||
|
settings_interface_light_mode = Modo Claro
|
||||||
|
settings_interface_size_label_lg = Grande
|
||||||
|
settings_interface_size_label_md = Mediana
|
||||||
|
settings_interface_size_label_sm = Pequeña
|
||||||
|
settings_interface_size_label_xl = Extra grande
|
||||||
|
settings_interface_size_label_xs = Extra pequeña
|
||||||
|
settings_language_display_language = Idioma de pantalla
|
||||||
|
settings_language_label = Idioma
|
||||||
|
settings_notifications_label = Notificaciones
|
||||||
|
settings_notifications_notifications_label = Ajustes de notificaciones
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = Favoritos
|
||||||
|
settings_notifications_push_notifications_alerts_follow = Nuevos seguidores
|
||||||
|
settings_notifications_push_notifications_alerts_mention = Menciones
|
||||||
|
settings_notifications_push_notifications_alerts_poll = Encuestas
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = Retooteo de tus publicaciones
|
||||||
|
settings_notifications_push_notifications_alerts_title = ¿Qué notificaciones recibir?
|
||||||
|
settings_notifications_push_notifications_description = Reciba notificaciones incluso cuando no estés utilizando Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = ¡No olvides guardar los cambios utilizando el botón @:settings.notifications.push_notifications.save_settings{'!'}
|
||||||
|
settings_notifications_push_notifications_label = Ajustes de notificaciones push
|
||||||
|
settings_notifications_push_notifications_policy_all = De cualquier persona
|
||||||
|
settings_notifications_push_notifications_policy_followed = De personas que sigo
|
||||||
|
settings_notifications_push_notifications_policy_follower = De personas que me siguen
|
||||||
|
settings_notifications_push_notifications_policy_none = De nadie
|
||||||
|
settings_notifications_push_notifications_policy_title = ¿De quién puedo recibir notificaciones?
|
||||||
|
settings_notifications_push_notifications_save_settings = Guardar cambios
|
||||||
|
settings_notifications_push_notifications_subscription_error_clear_error = Limpiar error
|
||||||
|
settings_notifications_push_notifications_subscription_error_permission_denied = Permiso denegado: habilita las notificaciones en tu navegador.
|
||||||
|
settings_notifications_push_notifications_subscription_error_request_error = Se produjo un error al solicitar la suscripción, inténtalo de nuevo y si el error persiste, notifica la incidencia en el repositorio de Elk.
|
||||||
|
settings_notifications_push_notifications_subscription_error_title = No se pudo suscribir a las notificaciones push
|
||||||
|
settings_notifications_push_notifications_title = Ajustes de notificaciones push
|
||||||
|
settings_notifications_push_notifications_undo_settings = Deshacer cambios
|
||||||
|
settings_notifications_push_notifications_unsubscribe = Cancelar notificaciones push
|
||||||
|
settings_notifications_push_notifications_unsupported = Tu navegador no soporta notificaciones push.
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = Cerrar
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = Para recibir notificaciones cuando Elk no esté abierto, habilita las notificaciones push. Puedes controlar con precisión qué tipos de interacciones generan notificaciones push a través del botón "@:settings.notifications.show_btn{'"'} de arriba una vez que estén habilitadas.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_desktop = Para recibir notificaciones cuando Elk no esté abierto, habilite las notificaciones push. Puedes controlar con precisión qué tipos de interacciones generan notificaciones push en el menú de navegación en "Ajustes > Notificaciones > Ajustes de notificaciones push" una vez que estén habilitadas.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_mobile = También podrá acceder a la configuración utilizando el menú de navegación en "Ajustes > Notificaciones > Ajutes de notificaciones push".
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = Para recibir notificaciones cuando Elk no esté abierto, habilita las notificaciones push. Podrás controlar con precisión qué tipos de interacciones generan notificaciones push en esta misma pantalla una vez las habilites.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = Habilitar notificaciones push
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = Nunca te pierdas nada
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = Parece que tu servidor no soporta notificaciones push. Prueba a cerrar la sesión y volver a iniciarla, si este mensaje sigue apareciendo contacta con el administrador de tu servidor.
|
||||||
|
settings_notifications_show_btn = Ir a ajustes de notificaciones
|
||||||
|
settings_notifications_settings = Notificaciones
|
||||||
|
settings_preferences_label = Preferencias
|
||||||
|
settings_profile_appearance_bio = Biografía
|
||||||
|
settings_profile_appearance_description = Editar avatar, nombre de usuario, perfil, etc.
|
||||||
|
settings_profile_appearance_display_name = Nombre a mostrar
|
||||||
|
settings_profile_appearance_label = Apariencia
|
||||||
|
settings_profile_appearance_profile_metadata = Metadatos de perfil
|
||||||
|
settings_profile_appearance_profile_metadata_desc = Puede mostrar hasta 4 elementos en forma de tabla en tu perfil
|
||||||
|
settings_profile_appearance_title = Editar perfil
|
||||||
|
settings_profile_featured_tags_description = Las personas pueden navegar por tus publicaciones públicas con estas hashtags.
|
||||||
|
settings_profile_featured_tags_label = Hashtags destacados
|
||||||
|
settings_profile_label = Perfil
|
||||||
|
settings_select_a_settings = Seleccionar una configuración
|
||||||
|
settings_users_export = Exportar tokens de usuario
|
||||||
|
settings_users_import = Importar tokens de usuario
|
||||||
|
settings_users_label = Usuarios conectados
|
||||||
|
state_attachments_exceed_server_limit = Número máximo de archivos adjuntos por publicación excedido.
|
||||||
|
state_attachments_limit_error = Límite por publicación excedido
|
||||||
|
state_edited = (Editado)
|
||||||
|
state_editing = Editando
|
||||||
|
state_loading = Cargando...
|
||||||
|
state_upload_failed = Subida fallida
|
||||||
|
state_uploading = Subiendo...
|
||||||
|
status_boosted_by = Retooteado por
|
||||||
|
status_edited = Editado {$date}
|
||||||
|
status_favourited_by = Marcado como favorito por
|
||||||
|
status_filter_hidden_phrase = Filtrado por
|
||||||
|
status_filter_removed_phrase = Eliminado por filtrado
|
||||||
|
status_filter_show_anyway = Mostrar de todas formas
|
||||||
|
status_img_alt_desc = Descripción
|
||||||
|
status_img_alt_dismiss = Descartar
|
||||||
|
status_poll_count = {0} votos|{0} voto|{0} votos
|
||||||
|
status_poll_ends = finaliza {0}
|
||||||
|
status_poll_finished = finalizada {0}
|
||||||
|
status_reblogged = {0} retooteó
|
||||||
|
status_replying_to = Respondiendo a {0}
|
||||||
|
status_show_full_thread = Mostrar hilo completo
|
||||||
|
status_someone = alguien
|
||||||
|
status_spoiler_show_less = Mostrar menos
|
||||||
|
status_spoiler_show_more = Mostrar más
|
||||||
|
status_thread = Hilo
|
||||||
|
status_try_original_site = Ver en la página original
|
||||||
|
status_history_created = creado el {0}
|
||||||
|
status_history_edited = editado el {$date}
|
||||||
|
tab_for_you = Para ti
|
||||||
|
tab_hashtags = Hashtags
|
||||||
|
tab_media = Multimedia
|
||||||
|
tab_news = Noticias
|
||||||
|
tab_notifications_all = Todas
|
||||||
|
tab_notifications_mention = Menciones
|
||||||
|
tab_posts = Publicaciones
|
||||||
|
tab_posts_with_replies = Publicaciones y respuestas
|
||||||
|
tag_follow = Seguir
|
||||||
|
tag_follow_label = Seguir etiqueta {$tag}
|
||||||
|
tag_unfollow = Dejar de seguir
|
||||||
|
tag_unfollow_label = Dejar de seguir etiqueta {$tag}
|
||||||
|
time_ago_options_day_future = dentro de 0 días|mañana|dentro de {n} días
|
||||||
|
time_ago_options_day_past = hace 0 días|ayer|hace {n} días
|
||||||
|
time_ago_options_hour_future = dentro de 0 horas|dentro de 1 hora|dentro de {n} horas
|
||||||
|
time_ago_options_hour_past = hace 0 horas|hace 1 hora|hace {n} horas
|
||||||
|
time_ago_options_just_now = ahora mismo
|
||||||
|
time_ago_options_minute_future = dentro de 0 minutos|dentro de 1 minuto|dentro de {n} minutos
|
||||||
|
time_ago_options_minute_past = hace 0 minutos|hace 1 minuto|hace {n} minutos
|
||||||
|
time_ago_options_month_future = dentro de 0 meses|el próximo mes|dentro de {n} meses
|
||||||
|
time_ago_options_month_past = hace 0 meses|el mes pasado|hace {n} meses
|
||||||
|
time_ago_options_second_future = dentro de 0 segundos|dentro de {n} segundo|dentro de {n} segundos
|
||||||
|
time_ago_options_second_past = hace 0 segundos|hace {n} segundo|hace {n} segundos
|
||||||
|
time_ago_options_short_day_future = en {n}d
|
||||||
|
time_ago_options_short_day_past = {n}d
|
||||||
|
time_ago_options_short_hour_future = en {n}h
|
||||||
|
time_ago_options_short_hour_past = {$n}h
|
||||||
|
time_ago_options_short_minute_future = en {n}min
|
||||||
|
time_ago_options_short_minute_past = {$n}min
|
||||||
|
time_ago_options_short_month_future = en 0 meses|en 1 mes|en {n} meses
|
||||||
|
time_ago_options_short_month_past = 0 meses|1 mes|{n} meses
|
||||||
|
time_ago_options_short_second_future = en {n} seg
|
||||||
|
time_ago_options_short_second_past = {n} seg
|
||||||
|
time_ago_options_short_week_future = en {n} sem
|
||||||
|
time_ago_options_short_week_past = {n} sem
|
||||||
|
time_ago_options_short_year_future = en 0 años|en 1 año|en {n} años
|
||||||
|
time_ago_options_short_year_past = 0 años|1 año|{n} años
|
||||||
|
time_ago_options_week_future = dentro de 0 semanas|la próxima semana|dentro de {n} semanas
|
||||||
|
time_ago_options_week_past = hace 0 semanas|la semana pasada|hace {n} semanas
|
||||||
|
time_ago_options_year_future = dentro de 0 años|el próximo año|dentro de {n} años
|
||||||
|
time_ago_options_year_past = hace 0 años|el año pasado|hace {n} años
|
||||||
|
timeline_show_new_items = Mostrar {v} nuevas publicaciones|Mostrar {v} nueva publicación|Mostrar {v} nuevas publicaciones
|
||||||
|
timeline_view_older_posts = Es posible que no se muestren las publicaciones antiguas de otras instancias.
|
||||||
|
title_federated_timeline = Línea de tiempo federada
|
||||||
|
title_local_timeline = Línea de tiempo local
|
||||||
|
tooltip_add_content_warning = Añadir advertencia de contenido
|
||||||
|
tooltip_add_media = Añadir imágenes, video o audio
|
||||||
|
tooltip_add_publishable_content = Agregar contenido a publicar
|
||||||
|
tooltip_change_content_visibility = Cambiar visibilidad de contenido
|
||||||
|
tooltip_change_language = Cambiar idioma
|
||||||
|
tooltip_emoji = Emoji
|
||||||
|
tooltip_explore_links_intro = Estas noticias están siendo comentadas por la gente en este y otros servidores de la red descentralizada en este momento.
|
||||||
|
tooltip_explore_posts_intro = Estos mensajes de este y otros servidores de la red descentralizada están ganando tracción en este servidor en este momento.
|
||||||
|
tooltip_explore_tags_intro = Estas etiquetas están ganando tracción entre la gente de este y otros servidores de la red descentralizada en este momento.
|
||||||
|
tooltip_toggle_code_block = Cambiar a bloque de código
|
||||||
|
user_add_existing = Agregar una cuenta existente
|
||||||
|
user_server_address_label = Dirección de Servidor de Mastodon
|
||||||
|
user_sign_in_desc = Inicia sesión para seguir perfiles o hashtags, marcar como favorito, compartir and responder a publicaciones, o interactuar desde tu usuario con un servidor diferente.
|
||||||
|
user_sign_in_notice_title = Viendo información pública de {0}
|
||||||
|
user_sign_out_account = Cerrar sesión {$username}
|
||||||
|
user_tip_no_account = Si aún no tienes una cuenta Mastodon, {0}.
|
||||||
|
user_tip_register_account = selecciona tu servidor y registrate
|
||||||
|
visibility_direct = Directo
|
||||||
|
visibility_direct_desc = Sólo las personas mencionadas
|
||||||
|
visibility_private = Sólo seguidores
|
||||||
|
visibility_private_desc = Sólo las personas que te siguen
|
||||||
|
visibility_public = Público
|
||||||
|
visibility_public_desc = Todos
|
||||||
|
visibility_unlisted = Sin listar
|
||||||
|
visibility_unlisted_desc = Todos, pero sin descubrir
|
|
@ -1,468 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "Cargando página, espere por favor",
|
|
||||||
"loading_titled_page": "Cargando página {0}, espere por favor",
|
|
||||||
"locale_changed": "Idioma cambiado a {0}",
|
|
||||||
"locale_changing": "Cambiando idioma, espere por favor",
|
|
||||||
"route_loaded": "Página {0} cargada"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "avatar de {0}",
|
|
||||||
"blocked_by": "Estás bloqueado por este usuario.",
|
|
||||||
"blocked_domains": "Dominios bloqueados",
|
|
||||||
"blocked_users": "Usuarios bloqueados",
|
|
||||||
"blocking": "Bloqueado",
|
|
||||||
"bot": "BOT",
|
|
||||||
"favourites": "Favoritos",
|
|
||||||
"follow": "Seguir",
|
|
||||||
"follow_back": "Seguir de vuelta",
|
|
||||||
"follow_requested": "Solicitado",
|
|
||||||
"followers": "Seguidores",
|
|
||||||
"followers_count": "{0} Seguidores|{0} Seguidor|{0} Seguidores",
|
|
||||||
"following": "Siguiendo",
|
|
||||||
"following_count": "{0} Siguiendo",
|
|
||||||
"follows_you": "Te sigue",
|
|
||||||
"go_to_profile": "Ir al perfil",
|
|
||||||
"joined": "Se unió",
|
|
||||||
"moved_title": "ha indicado que su nueva cuenta ahora es:",
|
|
||||||
"muted_users": "Usuarios silenciados",
|
|
||||||
"muting": "Silenciado",
|
|
||||||
"mutuals": "Mutuo",
|
|
||||||
"pinned": "Publicaciones fijadas",
|
|
||||||
"posts": "Publicaciones",
|
|
||||||
"posts_count": "{0} Publicaciones|{0} Publicación|{0} Publicaciones",
|
|
||||||
"profile_description": "Encabezado del perfil de {0}",
|
|
||||||
"profile_unavailable": "Perfil no disponible",
|
|
||||||
"unblock": "Desbloquear",
|
|
||||||
"unfollow": "Dejar de seguir",
|
|
||||||
"unmute": "Dejar de silenciar"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "Aplicar",
|
|
||||||
"bookmark": "Añadir marcador",
|
|
||||||
"bookmarked": "Guardado como marcador",
|
|
||||||
"boost": "Retootear",
|
|
||||||
"boost_count": "{0}",
|
|
||||||
"boosted": "Retooteado",
|
|
||||||
"clear_upload_failed": "Limpiar errores de subida de archivos",
|
|
||||||
"close": "Cerrar",
|
|
||||||
"compose": "Redactar",
|
|
||||||
"confirm": "Confirmar",
|
|
||||||
"edit": "Editar",
|
|
||||||
"enter_app": "Entrar",
|
|
||||||
"favourite": "Favorito",
|
|
||||||
"favourite_count": "{0}",
|
|
||||||
"favourited": "Marcado como favorito",
|
|
||||||
"more": "Más",
|
|
||||||
"next": "Siguiente",
|
|
||||||
"prev": "Anterior",
|
|
||||||
"publish": "Publicar",
|
|
||||||
"reply": "Responder",
|
|
||||||
"reply_count": "{0}",
|
|
||||||
"reset": "Reiniciar",
|
|
||||||
"save": "Guardar",
|
|
||||||
"save_changes": "Guardar cambios",
|
|
||||||
"sign_in": "Iniciar sesión",
|
|
||||||
"switch_account": "Cambiar cuenta",
|
|
||||||
"vote": "Votar"
|
|
||||||
},
|
|
||||||
"app_desc_short": "Un cliente web ágil para Mastodon",
|
|
||||||
"app_logo": "Logotipo de Elk",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "Descripción",
|
|
||||||
"remove_label": "Eliminar archivo adjunto"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "Activar",
|
|
||||||
"complete": "Completar",
|
|
||||||
"compose_desc": "Escribir una nueva publicación",
|
|
||||||
"n-people-in-the-past-n-days": "{0} personas en los últimos {1} días",
|
|
||||||
"select_lang": "Seleccionar idioma",
|
|
||||||
"sign_in_desc": "Agregar una cuenta existente",
|
|
||||||
"switch_account": "Cambiar a {0}",
|
|
||||||
"switch_account_desc": "Cambiar a otra cuenta",
|
|
||||||
"toggle_dark_mode": "Cambiar a modo oscuro",
|
|
||||||
"toggle_zen_mode": "Cambiar a modo zen"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"confirm_dialog": {
|
|
||||||
"cancel": "No",
|
|
||||||
"confirm": "Si",
|
|
||||||
"title": "¿Estás seguro?"
|
|
||||||
},
|
|
||||||
"end_of_list": "Fin",
|
|
||||||
"error": "ERROR",
|
|
||||||
"in": "en",
|
|
||||||
"not_found": "404 No Encontrado",
|
|
||||||
"offline_desc": "Al parecer estás fuera de línea. Por favor, comprueba tu conexión a la red."
|
|
||||||
},
|
|
||||||
"compose": {
|
|
||||||
"draft_title": "Borrador {0}",
|
|
||||||
"drafts": "Borradores ({v})"
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "con"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "No se encontró la cuenta {0}",
|
|
||||||
"explore-list-empty": "No hay tendencias en este momento. ¡Vuelve más tarde!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "El tamaño del archivo no puede exceder los {0}MB",
|
|
||||||
"sign_in_error": "No se pudo conectar con el servidor.",
|
|
||||||
"status_not_found": "Estado no encontrado",
|
|
||||||
"unsupported_file_format": "Tipo de archivo no soportado"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Es normal encontrar algunos errores y características faltantes aquí y allá.",
|
|
||||||
"desc_para1": "¡Gracias por el interés en probar Elk, nuestro cliente genérico en desarrollo para Mastodon!",
|
|
||||||
"desc_para2": "Estamos trabajando duro en el desarrollo y mejorándolo constantemente. ¡Y pronto te invitaremos a que te unas una vez que lo hagamos de código abierto!",
|
|
||||||
"desc_para3": "Para ayudar a impulsar el desarrollo, puedes patrocinar a los miembros de nuestro equipo con los enlaces a continuación.",
|
|
||||||
"desc_para4": "Antes de eso, si te gustaría ayudar probando, dando opinión o contribuyendo,",
|
|
||||||
"desc_para5": "ponte en contacto con nosotros a través de Mastodon",
|
|
||||||
"desc_para6": "para participar.",
|
|
||||||
"title": "¡Elk está en Vista Previa!"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"none": "Ninguno",
|
|
||||||
"search": "Buscar"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Bloquear a {0}",
|
|
||||||
"block_domain": "Bloquear dominio {0}",
|
|
||||||
"copy_link_to_post": "Copiar enlace",
|
|
||||||
"delete": "Borrar",
|
|
||||||
"delete_and_redraft": "Borrar y volver a borrador",
|
|
||||||
"delete_confirm": {
|
|
||||||
"cancel": "Cancelar",
|
|
||||||
"confirm": "Borrar",
|
|
||||||
"title": "¿Estás seguro que deseas eliminar esta publicación?"
|
|
||||||
},
|
|
||||||
"direct_message_account": "Mensaje directo a {0}",
|
|
||||||
"edit": "Editar",
|
|
||||||
"hide_reblogs": "Ocultar retoots de {0}",
|
|
||||||
"mention_account": "Mencionar a {0}",
|
|
||||||
"mute_account": "Silenciar a {0}",
|
|
||||||
"mute_conversation": "Silenciar publicación",
|
|
||||||
"open_in_original_site": "Abrir página original",
|
|
||||||
"pin_on_profile": "Fijar en tu perfil",
|
|
||||||
"share_post": "Compartir esta publicación",
|
|
||||||
"show_favourited_and_boosted_by": "Mostrar quien marcó como favorito y quien retooteó",
|
|
||||||
"show_reblogs": "Mostrar retoots de {0}",
|
|
||||||
"show_untranslated": "Mostrar original",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Cambiar a modo oscuro",
|
|
||||||
"light": "Cambiar a modo claro"
|
|
||||||
},
|
|
||||||
"translate_post": "Traducir",
|
|
||||||
"unblock_account": "Desbloquear a {0}",
|
|
||||||
"unblock_domain": "Desbloquear dominio {0}",
|
|
||||||
"unmute_account": "Dejar de silenciar a {0}",
|
|
||||||
"unmute_conversation": "Dejar de silenciar la publicación",
|
|
||||||
"unpin_on_profile": "Desfijar del perfil"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"back": "Regresar",
|
|
||||||
"blocked_domains": "Dominios bloqueados",
|
|
||||||
"blocked_users": "Usuarios bloqueados",
|
|
||||||
"bookmarks": "Marcadores",
|
|
||||||
"built_at": "Compilado {0}",
|
|
||||||
"conversations": "Conversaciones",
|
|
||||||
"explore": "Explorar",
|
|
||||||
"favourites": "Favoritos",
|
|
||||||
"federated": "Federados",
|
|
||||||
"home": "Inicio",
|
|
||||||
"local": "Local",
|
|
||||||
"muted_users": "Usuarios silenciados",
|
|
||||||
"notifications": "Notificaciones",
|
|
||||||
"profile": "Perfil",
|
|
||||||
"search": "Buscar",
|
|
||||||
"select_feature_flags": "Cambiar marcadores de funcionalidades",
|
|
||||||
"select_font_size": "Cambiar tamaño de letra",
|
|
||||||
"select_language": "Cambiar idioma",
|
|
||||||
"settings": "Ajustes",
|
|
||||||
"show_intro": "Mostrar intro",
|
|
||||||
"toggle_theme": "Cambiar tema",
|
|
||||||
"zen_mode": "Modo Zen"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "marcó tu publicación como favorito",
|
|
||||||
"followed_you": "te ha seguido",
|
|
||||||
"followed_you_count": "{0} personas te siguieron|{0} persona te siguió|{0} personas te siguieron",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "retooteó tu publicación",
|
|
||||||
"request_to_follow": "ha solicitado seguirte",
|
|
||||||
"signed_up": "registrado",
|
|
||||||
"update_status": "ha actualizado su estado"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Escribe tu advertencia aquí",
|
|
||||||
"default_1": "¿En qué estás pensando?",
|
|
||||||
"reply_to_account": "Responder a {0}",
|
|
||||||
"replying": "Respondiendo",
|
|
||||||
"the_thread": "el hilo"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "Descartar",
|
|
||||||
"title": "Nueva versión de Elk disponible",
|
|
||||||
"update": "Actualizar",
|
|
||||||
"update_available_short": "Actualiza Elk",
|
|
||||||
"webmanifest": {
|
|
||||||
"canary": {
|
|
||||||
"description": "Un cliente web ágil para Mastodon (canary)",
|
|
||||||
"name": "Elk (canary)",
|
|
||||||
"short_name": "Elk (canary)"
|
|
||||||
},
|
|
||||||
"dev": {
|
|
||||||
"description": "Un cliente web ágil para Mastodon (desarrollo)",
|
|
||||||
"name": "Elk (desarrollo)",
|
|
||||||
"short_name": "Elk (desarrollo)"
|
|
||||||
},
|
|
||||||
"preview": {
|
|
||||||
"description": "Un cliente web ágil para Mastodon (vista previa)",
|
|
||||||
"name": "Elk (vista previa)",
|
|
||||||
"short_name": "Elk (vista previa)"
|
|
||||||
},
|
|
||||||
"release": {
|
|
||||||
"description": "Un cliente web ágil para Mastodon",
|
|
||||||
"name": "Elk",
|
|
||||||
"short_name": "Elk"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Buscar personas y etiquetas",
|
|
||||||
"search_empty": "No se pudo encontrar nada para estos términos de búsqueda"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "Acerca de"
|
|
||||||
},
|
|
||||||
"account_settings": {
|
|
||||||
"description": "Edita los ajustes de tu cuenta en la interfaz de Mastodon",
|
|
||||||
"label": "Ajustes de cuenta"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "Tarjetas GitHub",
|
|
||||||
"title": "Funcionalidades experimentales",
|
|
||||||
"user_picker": "Selector de usuarios",
|
|
||||||
"virtual_scroll": "Desplazamiento virtual"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Modo Color",
|
|
||||||
"dark_mode": "Modo Oscuro",
|
|
||||||
"default": " (por defecto)",
|
|
||||||
"font_size": "Tamaño de Letra",
|
|
||||||
"label": "Interfaz",
|
|
||||||
"light_mode": "Modo Claro",
|
|
||||||
"size_label": {
|
|
||||||
"lg": "Grande",
|
|
||||||
"md": "Mediana",
|
|
||||||
"sm": "Pequeña",
|
|
||||||
"xl": "Extra grande",
|
|
||||||
"xs": "Extra pequeña"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Idioma de pantalla",
|
|
||||||
"label": "Idioma"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notificaciones",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Ajustes de notificaciones"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "Favoritos",
|
|
||||||
"follow": "Nuevos seguidores",
|
|
||||||
"mention": "Menciones",
|
|
||||||
"poll": "Encuestas",
|
|
||||||
"reblog": "Retooteo de tus publicaciones",
|
|
||||||
"title": "¿Qué notificaciones recibir?"
|
|
||||||
},
|
|
||||||
"description": "Reciba notificaciones incluso cuando no estés utilizando Elk.",
|
|
||||||
"instructions": "¡No olvides guardar los cambios utilizando el botón @:settings.notifications.push_notifications.save_settings{'!'}",
|
|
||||||
"label": "Ajustes de notificaciones push",
|
|
||||||
"policy": {
|
|
||||||
"all": "De cualquier persona",
|
|
||||||
"followed": "De personas que sigo",
|
|
||||||
"follower": "De personas que me siguen",
|
|
||||||
"none": "De nadie",
|
|
||||||
"title": "¿De quién puedo recibir notificaciones?"
|
|
||||||
},
|
|
||||||
"save_settings": "Guardar cambios",
|
|
||||||
"subscription_error": {
|
|
||||||
"clear_error": "Limpiar error",
|
|
||||||
"permission_denied": "Permiso denegado: habilita las notificaciones en tu navegador.",
|
|
||||||
"request_error": "Se produjo un error al solicitar la suscripción, inténtalo de nuevo y si el error persiste, notifica la incidencia en el repositorio de Elk.",
|
|
||||||
"title": "No se pudo suscribir a las notificaciones push"
|
|
||||||
},
|
|
||||||
"title": "Ajustes de notificaciones push",
|
|
||||||
"undo_settings": "Deshacer cambios",
|
|
||||||
"unsubscribe": "Cancelar notificaciones push",
|
|
||||||
"unsupported": "Tu navegador no soporta notificaciones push.",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "Cerrar",
|
|
||||||
"enable_description": "Para recibir notificaciones cuando Elk no esté abierto, habilita las notificaciones push. Puedes controlar con precisión qué tipos de interacciones generan notificaciones push a través del botón \"@:settings.notifications.show_btn{'\"'} de arriba una vez que estén habilitadas.",
|
|
||||||
"enable_description_desktop": "Para recibir notificaciones cuando Elk no esté abierto, habilite las notificaciones push. Puedes controlar con precisión qué tipos de interacciones generan notificaciones push en el menú de navegación en \"Ajustes > Notificaciones > Ajustes de notificaciones push\" una vez que estén habilitadas.",
|
|
||||||
"enable_description_mobile": "También podrá acceder a la configuración utilizando el menú de navegación en \"Ajustes > Notificaciones > Ajutes de notificaciones push\".",
|
|
||||||
"enable_description_settings": "Para recibir notificaciones cuando Elk no esté abierto, habilita las notificaciones push. Podrás controlar con precisión qué tipos de interacciones generan notificaciones push en esta misma pantalla una vez las habilites.",
|
|
||||||
"enable_desktop": "Habilitar notificaciones push",
|
|
||||||
"enable_title": "Nunca te pierdas nada",
|
|
||||||
"re_auth": "Parece que tu servidor no soporta notificaciones push. Prueba a cerrar la sesión y volver a iniciarla, si este mensaje sigue apareciendo contacta con el administrador de tu servidor."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Ir a ajustes de notificaciones"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notificaciones",
|
|
||||||
"preferences": {
|
|
||||||
"label": "Preferencias"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Biografía",
|
|
||||||
"description": "Editar avatar, nombre de usuario, perfil, etc.",
|
|
||||||
"display_name": "Nombre a mostrar",
|
|
||||||
"label": "Apariencia",
|
|
||||||
"profile_metadata": "Metadatos de perfil",
|
|
||||||
"profile_metadata_desc": "Puede mostrar hasta 4 elementos en forma de tabla en tu perfil",
|
|
||||||
"title": "Editar perfil"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "Las personas pueden navegar por tus publicaciones públicas con estas hashtags.",
|
|
||||||
"label": "Hashtags destacados"
|
|
||||||
},
|
|
||||||
"label": "Perfil"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Seleccionar una configuración",
|
|
||||||
"users": {
|
|
||||||
"export": "Exportar tokens de usuario",
|
|
||||||
"import": "Importar tokens de usuario",
|
|
||||||
"label": "Usuarios conectados"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"attachments_exceed_server_limit": "Número máximo de archivos adjuntos por publicación excedido.",
|
|
||||||
"attachments_limit_error": "Límite por publicación excedido",
|
|
||||||
"edited": "(Editado)",
|
|
||||||
"editing": "Editando",
|
|
||||||
"loading": "Cargando...",
|
|
||||||
"upload_failed": "Subida fallida",
|
|
||||||
"uploading": "Subiendo..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"boosted_by": "Retooteado por",
|
|
||||||
"edited": "Editado {0}",
|
|
||||||
"favourited_by": "Marcado como favorito por",
|
|
||||||
"filter_hidden_phrase": "Filtrado por",
|
|
||||||
"filter_removed_phrase": "Eliminado por filtrado",
|
|
||||||
"filter_show_anyway": "Mostrar de todas formas",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Descripción",
|
|
||||||
"dismiss": "Descartar"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} votos|{0} voto|{0} votos",
|
|
||||||
"ends": "finaliza {0}",
|
|
||||||
"finished": "finalizada {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} retooteó",
|
|
||||||
"replying_to": "Respondiendo a {0}",
|
|
||||||
"show_full_thread": "Mostrar hilo completo",
|
|
||||||
"someone": "alguien",
|
|
||||||
"spoiler_show_less": "Mostrar menos",
|
|
||||||
"spoiler_show_more": "Mostrar más",
|
|
||||||
"thread": "Hilo",
|
|
||||||
"try_original_site": "Ver en la página original"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "creado el {0}",
|
|
||||||
"edited": "editado el {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "Para ti",
|
|
||||||
"hashtags": "Hashtags",
|
|
||||||
"media": "Multimedia",
|
|
||||||
"news": "Noticias",
|
|
||||||
"notifications_all": "Todas",
|
|
||||||
"notifications_mention": "Menciones",
|
|
||||||
"posts": "Publicaciones",
|
|
||||||
"posts_with_replies": "Publicaciones y respuestas"
|
|
||||||
},
|
|
||||||
"tag": {
|
|
||||||
"follow": "Seguir",
|
|
||||||
"follow_label": "Seguir etiqueta {0}",
|
|
||||||
"unfollow": "Dejar de seguir",
|
|
||||||
"unfollow_label": "Dejar de seguir etiqueta {0}"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "dentro de 0 días|mañana|dentro de {n} días",
|
|
||||||
"day_past": "hace 0 días|ayer|hace {n} días",
|
|
||||||
"hour_future": "dentro de 0 horas|dentro de 1 hora|dentro de {n} horas",
|
|
||||||
"hour_past": "hace 0 horas|hace 1 hora|hace {n} horas",
|
|
||||||
"just_now": "ahora mismo",
|
|
||||||
"minute_future": "dentro de 0 minutos|dentro de 1 minuto|dentro de {n} minutos",
|
|
||||||
"minute_past": "hace 0 minutos|hace 1 minuto|hace {n} minutos",
|
|
||||||
"month_future": "dentro de 0 meses|el próximo mes|dentro de {n} meses",
|
|
||||||
"month_past": "hace 0 meses|el mes pasado|hace {n} meses",
|
|
||||||
"second_future": "dentro de 0 segundos|dentro de {n} segundo|dentro de {n} segundos",
|
|
||||||
"second_past": "hace 0 segundos|hace {n} segundo|hace {n} segundos",
|
|
||||||
"short_day_future": "en {n}d",
|
|
||||||
"short_day_past": "{n}d",
|
|
||||||
"short_hour_future": "en {n}h",
|
|
||||||
"short_hour_past": "{n}h",
|
|
||||||
"short_minute_future": "en {n}min",
|
|
||||||
"short_minute_past": "{n}min",
|
|
||||||
"short_month_future": "en 0 meses|en 1 mes|en {n} meses",
|
|
||||||
"short_month_past": "0 meses|1 mes|{n} meses",
|
|
||||||
"short_second_future": "en {n} seg",
|
|
||||||
"short_second_past": "{n} seg",
|
|
||||||
"short_week_future": "en {n} sem",
|
|
||||||
"short_week_past": "{n} sem",
|
|
||||||
"short_year_future": "en 0 años|en 1 año|en {n} años",
|
|
||||||
"short_year_past": "0 años|1 año|{n} años",
|
|
||||||
"week_future": "dentro de 0 semanas|la próxima semana|dentro de {n} semanas",
|
|
||||||
"week_past": "hace 0 semanas|la semana pasada|hace {n} semanas",
|
|
||||||
"year_future": "dentro de 0 años|el próximo año|dentro de {n} años",
|
|
||||||
"year_past": "hace 0 años|el año pasado|hace {n} años"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Mostrar {v} nuevas publicaciones|Mostrar {v} nueva publicación|Mostrar {v} nuevas publicaciones",
|
|
||||||
"view_older_posts": "Es posible que no se muestren las publicaciones antiguas de otras instancias."
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Línea de tiempo federada",
|
|
||||||
"local_timeline": "Línea de tiempo local"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Añadir advertencia de contenido",
|
|
||||||
"add_media": "Añadir imágenes, video o audio",
|
|
||||||
"add_publishable_content": "Agregar contenido a publicar",
|
|
||||||
"change_content_visibility": "Cambiar visibilidad de contenido",
|
|
||||||
"change_language": "Cambiar idioma",
|
|
||||||
"emoji": "Emoji",
|
|
||||||
"explore_links_intro": "Estas noticias están siendo comentadas por la gente en este y otros servidores de la red descentralizada en este momento.",
|
|
||||||
"explore_posts_intro": "Estos mensajes de este y otros servidores de la red descentralizada están ganando tracción en este servidor en este momento.",
|
|
||||||
"explore_tags_intro": "Estas etiquetas están ganando tracción entre la gente de este y otros servidores de la red descentralizada en este momento.",
|
|
||||||
"toggle_code_block": "Cambiar a bloque de código"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Agregar una cuenta existente",
|
|
||||||
"server_address_label": "Dirección de Servidor de Mastodon",
|
|
||||||
"sign_in_desc": "Inicia sesión para seguir perfiles o hashtags, marcar como favorito, compartir and responder a publicaciones, o interactuar desde tu usuario con un servidor diferente.",
|
|
||||||
"sign_in_notice_title": "Viendo información pública de {0}",
|
|
||||||
"sign_out_account": "Cerrar sesión {0}",
|
|
||||||
"tip_no_account": "Si aún no tienes una cuenta Mastodon, {0}.",
|
|
||||||
"tip_register_account": "selecciona tu servidor y registrate"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Directo",
|
|
||||||
"direct_desc": "Sólo las personas mencionadas",
|
|
||||||
"private": "Sólo seguidores",
|
|
||||||
"private_desc": "Sólo las personas que te siguen",
|
|
||||||
"public": "Público",
|
|
||||||
"public_desc": "Todos",
|
|
||||||
"unlisted": "Sin listar",
|
|
||||||
"unlisted_desc": "Todos, pero sin descubrir"
|
|
||||||
}
|
|
||||||
}
|
|
335
locales/fr-FR.ftl
Normal file
335
locales/fr-FR.ftl
Normal file
|
@ -0,0 +1,335 @@
|
||||||
|
a11y_loading_page = Chargement de la page, veuillez patienter
|
||||||
|
a11y_loading_titled_page = Chargement de la page {$title}, veuillez patienter
|
||||||
|
a11y_locale_changed = Langue changée à {$lang}
|
||||||
|
a11y_locale_changing = Changement de langue, veuillez patienter
|
||||||
|
a11y_route_loaded = Page {$title} chargée
|
||||||
|
account_avatar_description = Avatar de {$username}
|
||||||
|
account_blocked_by = Vous êtes bloqué·e par cet·te utilisateur·ice.
|
||||||
|
account_blocked_domains = Domaines bloqués
|
||||||
|
account_blocked_users = utilisateur·ice·s bloqué·e·s
|
||||||
|
account_blocking = Blocked
|
||||||
|
account_bot = Automatisé
|
||||||
|
account_favourites = Favoris
|
||||||
|
account_follow = Suivre
|
||||||
|
account_follow_back = Suivre en retour
|
||||||
|
account_follow_requested = Abonnement demandé
|
||||||
|
account_followers = Abonné·e·s
|
||||||
|
# Should there be [many] here? d'abonnés?
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[one] {$formattedCount} abonné·e
|
||||||
|
*[other] {$formattedCount} abonné·e·s
|
||||||
|
}
|
||||||
|
account_following = Suivi·e
|
||||||
|
account_following_count = {$formattedCount} abonnements
|
||||||
|
account_follows_you = Vous suit
|
||||||
|
account_go_to_profile = Aller à son profil
|
||||||
|
account_joined = a rejoint
|
||||||
|
account_moved_title = a indiqué que son nouveau compte est désormais :
|
||||||
|
account_muted_users = Utilisateur·ice·s masqué·e·s
|
||||||
|
account_muting = Masqué·e
|
||||||
|
account_mutuals = @:account.following
|
||||||
|
account_pinned = Épinglés
|
||||||
|
account_posts = Messages
|
||||||
|
account_posts_count = {$formattedCount} Messages
|
||||||
|
account_profile_description = En-tête du profil de {$username}
|
||||||
|
account_profile_unavailable = Profil non accessible
|
||||||
|
account_unblock = Unblock
|
||||||
|
account_unfollow = Ne plus suivre
|
||||||
|
account_unmute = Unmute
|
||||||
|
action_apply = Appliquer
|
||||||
|
action_bookmark = Ajouter aux marque-pages
|
||||||
|
action_bookmarked = Ajouté aux marque-pages
|
||||||
|
action_boost = Partager
|
||||||
|
action_boosted = Partagé
|
||||||
|
action_clear_upload_failed = Effacer les erreurs de téléversement de fichier
|
||||||
|
action_close = Fermer
|
||||||
|
action_compose = Composer
|
||||||
|
action_confirm = Confirmer
|
||||||
|
action_edit = Editer
|
||||||
|
action_enter_app = Entrer dans l'application
|
||||||
|
action_favourite = Ajouter aux favoris
|
||||||
|
action_favourited = Ajouté aux favoris
|
||||||
|
action_more = Plus
|
||||||
|
action_next = Suivant
|
||||||
|
action_prev = Précédent
|
||||||
|
action_publish = Publier
|
||||||
|
action_reply = Répondre
|
||||||
|
action_reset = Réinitialiser
|
||||||
|
action_save = Enregistrer
|
||||||
|
action_save_changes = Enregistrer les changements
|
||||||
|
action_sign_in = Se connecter
|
||||||
|
action_switch_account = Changer de compte
|
||||||
|
action_vote = Voter
|
||||||
|
app_desc_short = Un client Mastodon fait avec 🧡
|
||||||
|
app_logo = Logo Elk
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = Description
|
||||||
|
attachment_remove_label = Retirer le fichier attaché
|
||||||
|
command_activate = Activer
|
||||||
|
command_complete = Compléter
|
||||||
|
command_compose_desc = Écrire un nouveau message
|
||||||
|
command_n-people-in-the-past-n-days = {$count} personnes dans les {$days} jours
|
||||||
|
command_select_lang = Sélectionner langue
|
||||||
|
command_sign_in_desc = Ajouter un compte existant
|
||||||
|
command_switch_account = Changer pour le compte {$username}
|
||||||
|
command_switch_account_desc = Changer vers un autre compte
|
||||||
|
command_toggle_dark_mode = Passer au thème foncé
|
||||||
|
command_toggle_zen_mode = Passer en mode zen
|
||||||
|
common_end_of_list = Fin de liste
|
||||||
|
common_error = ERREUR
|
||||||
|
common_in = sur
|
||||||
|
common_not_found = 404 Introuvable
|
||||||
|
common_offline_desc = Il semble que vous soyez hors-ligne. Vérifiez votre connexion internet.
|
||||||
|
conversation_with = avec
|
||||||
|
error_account_not_found = Compte {$username} non trouvé
|
||||||
|
error_explore-list-empty = Pas de tendence en ce moment. Revenez plus tard!
|
||||||
|
error_file_size_cannot_exceed_n_mb = La taille du fichier dépasse les {$size}MB
|
||||||
|
error_sign_in_error = Impossible de se connecter au serveur.
|
||||||
|
error_status_not_found = Message non trouvé
|
||||||
|
error_unsupported_file_format = Format de fichier non supporté
|
||||||
|
help_desc_highlight = Il est possible de rencontrer, par-ci par-là, quelques bugs et fonctionnalités manquantes.
|
||||||
|
help_desc_para1 = Merci de l'intérêt pour Elk, notre client Mastodon en cours de développement !
|
||||||
|
help_desc_para2 = Nous travaillons dur sur le développement et l'améliorons au fur et à mesure. Nous allons open-sourcer l'application une fois qu'elle sera prête pour un usage public.
|
||||||
|
help_desc_para3 = Pour supporter son développement, vous pouvez parrainer les membres de l'équipe avec les liens ci-dessous. Nous espérons que vous apprécierez Elk!
|
||||||
|
help_desc_para4 = Avant cela, si vous voulez aider à tester, donner des retours ou contribuer
|
||||||
|
help_desc_para5 = contactez nous sur Mastodon
|
||||||
|
help_desc_para6 = et rejoingez l'aventure.
|
||||||
|
help_title = Elk est mode Preview !
|
||||||
|
language_search = Recherche
|
||||||
|
menu_block_account = Bloquer {$username}
|
||||||
|
menu_block_domain = Bloquer le domaine {$domain}
|
||||||
|
menu_copy_link_to_post = Copier le lien du message
|
||||||
|
menu_delete = Supprimer
|
||||||
|
menu_delete_and_redraft = Supprimer et réécrire
|
||||||
|
menu_direct_message_account = Message direct à {$username}
|
||||||
|
menu_edit = Éditer
|
||||||
|
menu_mention_account = Mentionner {$username}
|
||||||
|
menu_mute_account = Mettre en sourdine {$username}
|
||||||
|
menu_mute_conversation = Message muet
|
||||||
|
menu_open_in_original_site = Ouvrir sur le site d'origine
|
||||||
|
menu_pin_on_profile = Épingler sur le profil
|
||||||
|
menu_share_post = Partager ce message
|
||||||
|
menu_show_untranslated = Montrer le message non-traduit
|
||||||
|
menu_toggle_theme_dark = Passer au thème foncé
|
||||||
|
menu_toggle_theme_light = Passer au thème clair
|
||||||
|
menu_translate_post = Traduire le message
|
||||||
|
menu_unblock_account = Débloquer {$username}
|
||||||
|
menu_unblock_domain = Débloquer le domaine {$domain}
|
||||||
|
menu_unmute_account = Enlever la sourdine à {$username}
|
||||||
|
menu_unmute_conversation = Réactiver le message
|
||||||
|
menu_unpin_on_profile = Désépingler du profil
|
||||||
|
nav_back = Retourner à la page précédente
|
||||||
|
nav_blocked_domains = Domaines bloqués
|
||||||
|
nav_blocked_users = Utilisateur·ice·s bloqué·e·s
|
||||||
|
nav_bookmarks = Marque-pages
|
||||||
|
nav_built_at = Dernier build {0}
|
||||||
|
nav_conversations = Conversations
|
||||||
|
nav_explore = Explorer
|
||||||
|
nav_favourites = Favoris
|
||||||
|
nav_federated = Fédérés
|
||||||
|
nav_home = Accueil
|
||||||
|
nav_local = Local
|
||||||
|
nav_muted_users = Utilisateur·ice·s masqué·e·s
|
||||||
|
nav_notifications = Notifications
|
||||||
|
nav_profile = Profil
|
||||||
|
nav_search = Rechercher
|
||||||
|
nav_select_feature_flags = Activer/Désactiver Feature Flags
|
||||||
|
nav_select_font_size = Taille de la police
|
||||||
|
nav_select_language = Selectionner langue
|
||||||
|
nav_settings = Paramètres
|
||||||
|
nav_show_intro = Ré-afficher l'introduction
|
||||||
|
nav_toggle_theme = Changer de thème
|
||||||
|
nav_zen_mode = Mode Zen
|
||||||
|
notification_favourited_post = aime votre message
|
||||||
|
notification_followed_you = vous suit
|
||||||
|
notification_followed_you_count = {0} personnes vous suivent|{0} personne vous suit|{0} personnes vous suivent
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = a relayé votre message
|
||||||
|
notification_request_to_follow = vous demande de le suivre
|
||||||
|
notification_signed_up = s'est inscrit·e
|
||||||
|
notification_update_status = a posté un nouveau message
|
||||||
|
placeholder_content_warning = Écrivez votre message d'avertissement ici
|
||||||
|
placeholder_default_1 = Quelque chose à partager ?
|
||||||
|
placeholder_reply_to_account = Répondre à {0}
|
||||||
|
placeholder_replying = Répondre
|
||||||
|
placeholder_the_thread = Le thread
|
||||||
|
pwa_dismiss = Fermer
|
||||||
|
pwa_title = Nouvelle mise à jour Elk disponible !
|
||||||
|
pwa_update = Mettre à jour
|
||||||
|
pwa_update_available_short = Mettre à jour Elk
|
||||||
|
pwa_webmanifest_canary_description = Un client Web Mastodon (canary)
|
||||||
|
pwa_webmanifest_canary_name = Elk (canary)
|
||||||
|
pwa_webmanifest_canary_short_name = Elk (canary)
|
||||||
|
pwa_webmanifest_dev_description = Un client Web Mastodon (dev)
|
||||||
|
pwa_webmanifest_dev_name = Elk (dev)
|
||||||
|
pwa_webmanifest_dev_short_name = Elk (dev)
|
||||||
|
pwa_webmanifest_preview_description = Un client Web Mastodon (aperçu)
|
||||||
|
pwa_webmanifest_preview_name = Elk (aperçu)
|
||||||
|
pwa_webmanifest_preview_short_name = Elk (aperçu)
|
||||||
|
pwa_webmanifest_release_description = Un client Web Mastodon
|
||||||
|
pwa_webmanifest_release_name = Elk
|
||||||
|
pwa_webmanifest_release_short_name = Elk
|
||||||
|
search_search_desc = Recherche de personnes & hashtags
|
||||||
|
search_search_empty = Aucun résultat avec ces mots-clefs
|
||||||
|
settings_about_label = À propos
|
||||||
|
settings_account_settings_description = Modifiez les paramètres de votre compte dans l'interface de Mastodon
|
||||||
|
settings_account_settings_label = Paramètres de compte
|
||||||
|
settings_feature_flags_github_cards = GitHub Cards
|
||||||
|
settings_feature_flags_title = Fonctionnalités expérimentales
|
||||||
|
settings_feature_flags_user_picker = User Picker
|
||||||
|
settings_feature_flags_virtual_scroll = Défilement virtuel
|
||||||
|
settings_interface_color_mode = Couleur de thème
|
||||||
|
settings_interface_dark_mode = Mode sombre
|
||||||
|
settings_interface_default = (par défaut)
|
||||||
|
settings_interface_font_size = Taille de police
|
||||||
|
settings_interface_label = Interface
|
||||||
|
settings_interface_light_mode = Mode lumineux
|
||||||
|
settings_interface_size_label_lg = Grande
|
||||||
|
settings_interface_size_label_md = Moyenne
|
||||||
|
settings_interface_size_label_sm = Petite
|
||||||
|
settings_interface_size_label_xl = Très grande
|
||||||
|
settings_interface_size_label_xs = Très petite
|
||||||
|
settings_language_display_language = Langue d'affichage
|
||||||
|
settings_language_label = Langue
|
||||||
|
settings_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = Favoris
|
||||||
|
settings_notifications_push_notifications_alerts_follow = Nouveaux abonné·e·s
|
||||||
|
settings_notifications_push_notifications_alerts_mention = Mentions
|
||||||
|
settings_notifications_push_notifications_alerts_poll = Sondages
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = A republié votre message
|
||||||
|
settings_notifications_push_notifications_alerts_title = Quelles notifications recevoir ?
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = De n'importe qui
|
||||||
|
settings_notifications_push_notifications_policy_followed = Des personnes que je suis
|
||||||
|
settings_notifications_push_notifications_policy_follower = Des personnes qui me suivent
|
||||||
|
settings_notifications_push_notifications_policy_none = De personne
|
||||||
|
settings_notifications_push_notifications_policy_title = De que je peux recevoir des notifications ?
|
||||||
|
settings_notifications_push_notifications_save_settings = Enregistrer les paramètres
|
||||||
|
settings_notifications_push_notifications_subscription_error_clear_error = Effacer l'erreur
|
||||||
|
settings_notifications_push_notifications_subscription_error_permission_denied = Autorisation refusée : activez les notifications dans votre navigateur.
|
||||||
|
settings_notifications_push_notifications_subscription_error_request_error = Une erreur s'est produite lors de la demande d'abonnement, réessayez et si l'erreur persiste, veuillez signaler le problème auprès du dépôt Elk.
|
||||||
|
settings_notifications_push_notifications_subscription_error_title = Impossible de s'abonner aux notifications push
|
||||||
|
settings_notifications_push_notifications_undo_settings = Annuler les changements de paramètres
|
||||||
|
settings_notifications_push_notifications_unsubscribe = Désactiver les notifications push
|
||||||
|
settings_notifications_push_notifications_unsupported = Votre navigateur ne prend pas en charge les notifications push.
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = Fermer
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = Pour recevoir des notifications lorsque Elk n'est pas ouvert, activez les notifications push.
|
||||||
|
Vous pouvez contrôler précisément quels types d'interactions génèrent des notifications push via le bouton "@:settings.notifications.show_btn{'"'} ci-dessus une fois activé.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = Activer les notifications push
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = Ne manquez jamais rien
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = Il semble que votre serveur ne supporte pas les notifications push.
|
||||||
|
Essayez de vous déconnecter et de vous reconnecter, si ce message persiste, contactez l'administrateur de votre serveur.
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_notifications_settings = Notifications settings
|
||||||
|
settings_preferences_label = Préférences
|
||||||
|
settings_profile_appearance_bio = Bio
|
||||||
|
settings_profile_appearance_description = Editer l'avatar, nom d'utilisateur·ice, profil, etc.
|
||||||
|
settings_profile_appearance_display_name = Nom d'affichage
|
||||||
|
settings_profile_appearance_label = Apparence
|
||||||
|
settings_profile_appearance_profile_metadata = Métadonnées de profil
|
||||||
|
settings_profile_appearance_profile_metadata_desc = Vous pouvez avoir jusqu'à 4 éléments affichés sous forme de tableau sur votre profil
|
||||||
|
settings_profile_appearance_title = Editer le profil
|
||||||
|
settings_profile_featured_tags_description = Les gens peuvent parcourir vos messages publics sous ces hashtags.
|
||||||
|
settings_profile_featured_tags_label = Hashtags en vedette
|
||||||
|
settings_profile_label = Profil
|
||||||
|
settings_select_a_settings = Sélectionner un paramètre
|
||||||
|
settings_users_export = Exporter les tokens d'utilisateur·ice
|
||||||
|
settings_users_import = Importer des tokens d'utilisateur·ice
|
||||||
|
settings_users_label = Utilisateur·ice·s connecté·e·s
|
||||||
|
state_attachments_exceed_server_limit = Le nombre de pièces jointes a dépassé la limite par message.
|
||||||
|
state_attachments_limit_error = Limite par publication dépassée
|
||||||
|
state_edited = (Édité)
|
||||||
|
state_editing = Édition
|
||||||
|
state_loading = Chargement...
|
||||||
|
state_upload_failed = Le téléversement a échoué
|
||||||
|
state_uploading = Téléversement en cours...
|
||||||
|
status_edited = Edité {$date}
|
||||||
|
status_filter_hidden_phrase = Filtré par
|
||||||
|
status_filter_removed_phrase = Caché par le filtre
|
||||||
|
status_filter_show_anyway = Montrer coûte que coûte
|
||||||
|
status_img_alt_desc = Description
|
||||||
|
status_img_alt_dismiss = Fermer
|
||||||
|
status_poll_count = {0} votes
|
||||||
|
status_poll_ends = se clôt {0}
|
||||||
|
status_poll_finished = clos {0}
|
||||||
|
status_reblogged = {0} relayé
|
||||||
|
status_replying_to = Répondre à {0}
|
||||||
|
status_someone = quelqu'un
|
||||||
|
status_spoiler_show_less = Voir moins
|
||||||
|
status_spoiler_show_more = Voir plus
|
||||||
|
status_try_original_site = Essayer le site d'origine
|
||||||
|
status_history_created = a écrit {0}
|
||||||
|
status_history_edited = a édité {$date}
|
||||||
|
tab_for_you = Pour vous
|
||||||
|
tab_hashtags = Hashtags
|
||||||
|
tab_media = Média
|
||||||
|
tab_news = Actualités
|
||||||
|
tab_notifications_all = Tout
|
||||||
|
tab_notifications_mention = Mentions
|
||||||
|
tab_posts = Messages
|
||||||
|
tab_posts_with_replies = Messages et réponses
|
||||||
|
tag_follow = Suivre
|
||||||
|
tag_follow_label = Suivre la balise {$tag}
|
||||||
|
tag_unfollow = Ne plus suivre
|
||||||
|
tag_unfollow_label = Ne plus suivre la balise {$tag}
|
||||||
|
time_ago_options_day_future = dans 0 jour|demain|dans {n} jours
|
||||||
|
time_ago_options_day_past = il y a 0 jour|hier|il y a {n} jours
|
||||||
|
time_ago_options_hour_future = dans 0 heure|dans 1 heure|dans {n} heures
|
||||||
|
time_ago_options_hour_past = il y a 0 heure|il y a 1 heure|il y a {n} heures
|
||||||
|
time_ago_options_just_now = juste maintenant
|
||||||
|
time_ago_options_minute_future = dans 0 minutes|dans 1 minute|dans {n} minutes
|
||||||
|
time_ago_options_minute_past = il y a 0 minute|il y a 1 minute|il y a {n} minutes
|
||||||
|
time_ago_options_month_future = dans 0 mois|le mois prochain|dans {n} mois
|
||||||
|
time_ago_options_month_past = il y a 0 mois|le dernier mois|il y a {n} mois
|
||||||
|
time_ago_options_second_future = maintenant|dans {n} secondes|dans {n} secondes
|
||||||
|
time_ago_options_second_past = maintenant|il y a {n} seconde|il y a {n} secondes
|
||||||
|
time_ago_options_short_day_future = dans {n}j
|
||||||
|
time_ago_options_short_day_past = {n}j
|
||||||
|
time_ago_options_short_hour_future = dans {n}h
|
||||||
|
time_ago_options_short_hour_past = {$n}h
|
||||||
|
time_ago_options_short_minute_future = dans {n}min
|
||||||
|
time_ago_options_short_minute_past = {$n}min
|
||||||
|
time_ago_options_short_month_future = dans {n}mo
|
||||||
|
time_ago_options_short_month_past = {n}mo
|
||||||
|
time_ago_options_short_second_future = dans {n}s
|
||||||
|
time_ago_options_short_second_past = {n}s
|
||||||
|
time_ago_options_short_week_future = dans {n}sm
|
||||||
|
time_ago_options_short_week_past = {n}sm
|
||||||
|
time_ago_options_short_year_future = dans {n}a
|
||||||
|
time_ago_options_short_year_past = {n}a
|
||||||
|
time_ago_options_week_future = dans 0 semaine|semaine prochaine|dans {n} semaines
|
||||||
|
time_ago_options_week_past = il y a 0 semaines|il y a 1 semaine|il y a {n} semaines
|
||||||
|
time_ago_options_year_future = dans 0 année|l'année prochaine|dans {n} années
|
||||||
|
time_ago_options_year_past = il y a 0 année|l'année dernière|il y a {n} années
|
||||||
|
timeline_show_new_items = Voir le nouveau message|Voir les {v} nouveaux messages
|
||||||
|
timeline_view_older_posts = Les messages plus anciens d'autres instances peuvent ne pas être affichés.
|
||||||
|
title_federated_timeline = Fil d'actualité fédéré
|
||||||
|
title_local_timeline = Fil d'actualité local
|
||||||
|
tooltip_add_content_warning = Ajouter un avertissement de contenu
|
||||||
|
tooltip_add_media = Ajouter des images, une vidéo ou un fichier audio
|
||||||
|
tooltip_change_content_visibility = Ajuster la confidentialité du message
|
||||||
|
tooltip_change_language = Changer la langue
|
||||||
|
tooltip_emoji = Emoji
|
||||||
|
tooltip_explore_links_intro = Ces actualités sont sujets à discussions sur ce serveur et sur d'autres serveurs du réseau décentralisé.
|
||||||
|
tooltip_explore_posts_intro = Ces publications de ce serveur et d'autres serveurs du réseau décentralisé gagnent du terrain sur ce serveur en ce moment.
|
||||||
|
tooltip_explore_tags_intro = Ces hashtags gagnent du terrain sur ce serveur et sur d'autres serveurs du réseau décentralisé.
|
||||||
|
tooltip_toggle_code_block = Ajouter un bloc de code
|
||||||
|
user_add_existing = Ajouter un compte existant
|
||||||
|
user_server_address_label = Adresse du serveur mastodon
|
||||||
|
user_sign_in_desc = Connectez-vous pour suivre des profils ou des hashtags, mettre en favoris, partager et répondre à des messages, ou interagir à partir de votre compte sur un autre serveur...
|
||||||
|
user_sign_in_notice_title = Affichage de {0} données publiques
|
||||||
|
user_sign_out_account = Se déconnecter de {$username}
|
||||||
|
user_tip_no_account = Si vous n'avez pas encore de compte Mastodon, {0}.
|
||||||
|
user_tip_register_account = choisissez votre serveur et enregistrez-en un
|
||||||
|
visibility_direct = Personnes mentionnées uniquement
|
||||||
|
visibility_direct_desc = Visibles uniquemnt par les comptes mentionnés
|
||||||
|
visibility_private = Abonnés uniquement
|
||||||
|
visibility_private_desc = Visible uniquement par vos abonnés
|
||||||
|
visibility_public = Public
|
||||||
|
visibility_public_desc = Visible par tout le monde
|
||||||
|
visibility_unlisted = Non listé
|
||||||
|
visibility_unlisted_desc = Visible pour tous, mais sans fonctionnalités de découverte
|
|
@ -1,439 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "Chargement de la page, veuillez patienter",
|
|
||||||
"loading_titled_page": "Chargement de la page {0}, veuillez patienter",
|
|
||||||
"locale_changed": "Langue changée à {0}",
|
|
||||||
"locale_changing": "Changement de langue, veuillez patienter",
|
|
||||||
"route_loaded": "Page {0} chargée"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "Avatar de {0}",
|
|
||||||
"blocked_by": "Vous êtes bloqué·e par cet·te utilisateur·ice.",
|
|
||||||
"blocked_domains": "Domaines bloqués",
|
|
||||||
"blocked_users": "utilisateur·ice·s bloqué·e·s",
|
|
||||||
"blocking": "Blocked",
|
|
||||||
"bot": "Automatisé",
|
|
||||||
"favourites": "Favoris",
|
|
||||||
"follow": "Suivre",
|
|
||||||
"follow_back": "Suivre en retour",
|
|
||||||
"follow_requested": "Abonnement demandé",
|
|
||||||
"followers": "Abonné·e·s",
|
|
||||||
"followers_count": "{0} abonné·e|{0} abonné·e|{0} abonné·e·s",
|
|
||||||
"following": "Suivi·e",
|
|
||||||
"following_count": "{0} abonnements",
|
|
||||||
"follows_you": "Vous suit",
|
|
||||||
"go_to_profile": "Aller à son profil",
|
|
||||||
"joined": "a rejoint",
|
|
||||||
"moved_title": "a indiqué que son nouveau compte est désormais :",
|
|
||||||
"muted_users": "Utilisateur·ice·s masqué·e·s",
|
|
||||||
"muting": "Masqué·e",
|
|
||||||
"mutuals": "@:account.following",
|
|
||||||
"pinned": "Épinglés",
|
|
||||||
"posts": "Messages",
|
|
||||||
"posts_count": "{0} Messages",
|
|
||||||
"profile_description": "En-tête du profil de {0}",
|
|
||||||
"profile_unavailable": "Profil non accessible",
|
|
||||||
"unblock": "Unblock",
|
|
||||||
"unfollow": "Ne plus suivre",
|
|
||||||
"unmute": "Unmute"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "Appliquer",
|
|
||||||
"bookmark": "Ajouter aux marque-pages",
|
|
||||||
"bookmarked": "Ajouté aux marque-pages",
|
|
||||||
"boost": "Partager",
|
|
||||||
"boosted": "Partagé",
|
|
||||||
"clear_upload_failed": "Effacer les erreurs de téléversement de fichier",
|
|
||||||
"close": "Fermer",
|
|
||||||
"compose": "Composer",
|
|
||||||
"confirm": "Confirmer",
|
|
||||||
"edit": "Editer",
|
|
||||||
"enter_app": "Entrer dans l'application",
|
|
||||||
"favourite": "Ajouter aux favoris",
|
|
||||||
"favourited": "Ajouté aux favoris",
|
|
||||||
"more": "Plus",
|
|
||||||
"next": "Suivant",
|
|
||||||
"prev": "Précédent",
|
|
||||||
"publish": "Publier",
|
|
||||||
"reply": "Répondre",
|
|
||||||
"reset": "Réinitialiser",
|
|
||||||
"save": "Enregistrer",
|
|
||||||
"save_changes": "Enregistrer les changements",
|
|
||||||
"sign_in": "Se connecter",
|
|
||||||
"switch_account": "Changer de compte",
|
|
||||||
"vote": "Voter"
|
|
||||||
},
|
|
||||||
"app_desc_short": "Un client Mastodon fait avec 🧡",
|
|
||||||
"app_logo": "Logo Elk",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "Description",
|
|
||||||
"remove_label": "Retirer le fichier attaché"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "Activer",
|
|
||||||
"complete": "Compléter",
|
|
||||||
"compose_desc": "Écrire un nouveau message",
|
|
||||||
"n-people-in-the-past-n-days": "{0} personnes dans les {1} jours",
|
|
||||||
"select_lang": "Sélectionner langue",
|
|
||||||
"sign_in_desc": "Ajouter un compte existant",
|
|
||||||
"switch_account": "Changer pour le compte {0}",
|
|
||||||
"switch_account_desc": "Changer vers un autre compte",
|
|
||||||
"toggle_dark_mode": "Passer au thème foncé",
|
|
||||||
"toggle_zen_mode": "Passer en mode zen"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "Fin de liste",
|
|
||||||
"error": "ERREUR",
|
|
||||||
"in": "sur",
|
|
||||||
"not_found": "404 Introuvable",
|
|
||||||
"offline_desc": "Il semble que vous soyez hors-ligne. Vérifiez votre connexion internet."
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "avec"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Compte {0} non trouvé",
|
|
||||||
"explore-list-empty": "Pas de tendence en ce moment. Revenez plus tard!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "La taille du fichier dépasse les {0}MB",
|
|
||||||
"sign_in_error": "Impossible de se connecter au serveur.",
|
|
||||||
"status_not_found": "Message non trouvé",
|
|
||||||
"unsupported_file_format": "Format de fichier non supporté"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Il est possible de rencontrer, par-ci par-là, quelques bugs et fonctionnalités manquantes.",
|
|
||||||
"desc_para1": "Merci de l'intérêt pour Elk, notre client Mastodon en cours de développement !",
|
|
||||||
"desc_para2": "Nous travaillons dur sur le développement et l'améliorons au fur et à mesure. Nous allons open-sourcer l'application une fois qu'elle sera prête pour un usage public.",
|
|
||||||
"desc_para3": "Pour supporter son développement, vous pouvez parrainer les membres de l'équipe avec les liens ci-dessous. Nous espérons que vous apprécierez Elk!",
|
|
||||||
"desc_para4": "Avant cela, si vous voulez aider à tester, donner des retours ou contribuer",
|
|
||||||
"desc_para5": "contactez nous sur Mastodon",
|
|
||||||
"desc_para6": "et rejoingez l'aventure.",
|
|
||||||
"title": "Elk est mode Preview !"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"search": "Recherche"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Bloquer {0}",
|
|
||||||
"block_domain": "Bloquer le domaine {0}",
|
|
||||||
"copy_link_to_post": "Copier le lien du message",
|
|
||||||
"delete": "Supprimer",
|
|
||||||
"delete_and_redraft": "Supprimer et réécrire",
|
|
||||||
"direct_message_account": "Message direct à {0}",
|
|
||||||
"edit": "Éditer",
|
|
||||||
"mention_account": "Mentionner {0}",
|
|
||||||
"mute_account": "Mettre en sourdine {0}",
|
|
||||||
"mute_conversation": "Message muet",
|
|
||||||
"open_in_original_site": "Ouvrir sur le site d'origine",
|
|
||||||
"pin_on_profile": "Épingler sur le profil",
|
|
||||||
"share_post": "Partager ce message",
|
|
||||||
"show_untranslated": "Montrer le message non-traduit",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Passer au thème foncé",
|
|
||||||
"light": "Passer au thème clair"
|
|
||||||
},
|
|
||||||
"translate_post": "Traduire le message",
|
|
||||||
"unblock_account": "Débloquer {0}",
|
|
||||||
"unblock_domain": "Débloquer le domaine {0}",
|
|
||||||
"unmute_account": "Enlever la sourdine à {0}",
|
|
||||||
"unmute_conversation": "Réactiver le message",
|
|
||||||
"unpin_on_profile": "Désépingler du profil"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"back": "Retourner à la page précédente",
|
|
||||||
"blocked_domains": "Domaines bloqués",
|
|
||||||
"blocked_users": "Utilisateur·ice·s bloqué·e·s",
|
|
||||||
"bookmarks": "Marque-pages",
|
|
||||||
"built_at": "Dernier build {0}",
|
|
||||||
"conversations": "Conversations",
|
|
||||||
"explore": "Explorer",
|
|
||||||
"favourites": "Favoris",
|
|
||||||
"federated": "Fédérés",
|
|
||||||
"home": "Accueil",
|
|
||||||
"local": "Local",
|
|
||||||
"muted_users": "Utilisateur·ice·s masqué·e·s",
|
|
||||||
"notifications": "Notifications",
|
|
||||||
"profile": "Profil",
|
|
||||||
"search": "Rechercher",
|
|
||||||
"select_feature_flags": "Activer/Désactiver Feature Flags",
|
|
||||||
"select_font_size": "Taille de la police",
|
|
||||||
"select_language": "Selectionner langue",
|
|
||||||
"settings": "Paramètres",
|
|
||||||
"show_intro": "Ré-afficher l'introduction",
|
|
||||||
"toggle_theme": "Changer de thème",
|
|
||||||
"zen_mode": "Mode Zen"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "aime votre message",
|
|
||||||
"followed_you": "vous suit",
|
|
||||||
"followed_you_count": "{0} personnes vous suivent|{0} personne vous suit|{0} personnes vous suivent",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "a relayé votre message",
|
|
||||||
"request_to_follow": "vous demande de le suivre",
|
|
||||||
"signed_up": "s'est inscrit·e",
|
|
||||||
"update_status": "a posté un nouveau message"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Écrivez votre message d'avertissement ici",
|
|
||||||
"default_1": "Quelque chose à partager ?",
|
|
||||||
"reply_to_account": "Répondre à {0}",
|
|
||||||
"replying": "Répondre",
|
|
||||||
"the_thread": "Le thread"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "Fermer",
|
|
||||||
"title": "Nouvelle mise à jour Elk disponible !",
|
|
||||||
"update": "Mettre à jour",
|
|
||||||
"update_available_short": "Mettre à jour Elk",
|
|
||||||
"webmanifest": {
|
|
||||||
"canary": {
|
|
||||||
"description": "Un client Web Mastodon (canary)",
|
|
||||||
"name": "Elk (canary)",
|
|
||||||
"short_name": "Elk (canary)"
|
|
||||||
},
|
|
||||||
"dev": {
|
|
||||||
"description": "Un client Web Mastodon (dev)",
|
|
||||||
"name": "Elk (dev)",
|
|
||||||
"short_name": "Elk (dev)"
|
|
||||||
},
|
|
||||||
"preview": {
|
|
||||||
"description": "Un client Web Mastodon (aperçu)",
|
|
||||||
"name": "Elk (aperçu)",
|
|
||||||
"short_name": "Elk (aperçu)"
|
|
||||||
},
|
|
||||||
"release": {
|
|
||||||
"description": "Un client Web Mastodon",
|
|
||||||
"name": "Elk",
|
|
||||||
"short_name": "Elk"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Recherche de personnes & hashtags",
|
|
||||||
"search_empty": "Aucun résultat avec ces mots-clefs"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "À propos"
|
|
||||||
},
|
|
||||||
"account_settings": {
|
|
||||||
"description": "Modifiez les paramètres de votre compte dans l'interface de Mastodon",
|
|
||||||
"label": "Paramètres de compte"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub Cards",
|
|
||||||
"title": "Fonctionnalités expérimentales",
|
|
||||||
"user_picker": "User Picker",
|
|
||||||
"virtual_scroll": "Défilement virtuel"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Couleur de thème",
|
|
||||||
"dark_mode": "Mode sombre",
|
|
||||||
"default": " (par défaut)",
|
|
||||||
"font_size": "Taille de police",
|
|
||||||
"label": "Interface",
|
|
||||||
"light_mode": "Mode lumineux",
|
|
||||||
"size_label": {
|
|
||||||
"lg": "Grande",
|
|
||||||
"md": "Moyenne",
|
|
||||||
"sm": "Petite",
|
|
||||||
"xl": "Très grande",
|
|
||||||
"xs": "Très petite"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Langue d'affichage",
|
|
||||||
"label": "Langue"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "Favoris",
|
|
||||||
"follow": "Nouveaux abonné·e·s",
|
|
||||||
"mention": "Mentions",
|
|
||||||
"poll": "Sondages",
|
|
||||||
"reblog": "A republié votre message",
|
|
||||||
"title": "Quelles notifications recevoir ?"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "De n'importe qui",
|
|
||||||
"followed": "Des personnes que je suis",
|
|
||||||
"follower": "Des personnes qui me suivent",
|
|
||||||
"none": "De personne",
|
|
||||||
"title": "De que je peux recevoir des notifications ?"
|
|
||||||
},
|
|
||||||
"save_settings": "Enregistrer les paramètres",
|
|
||||||
"subscription_error": {
|
|
||||||
"clear_error": "Effacer l'erreur",
|
|
||||||
"permission_denied": "Autorisation refusée : activez les notifications dans votre navigateur.",
|
|
||||||
"request_error": "Une erreur s'est produite lors de la demande d'abonnement, réessayez et si l'erreur persiste, veuillez signaler le problème auprès du dépôt Elk.",
|
|
||||||
"title": "Impossible de s'abonner aux notifications push"
|
|
||||||
},
|
|
||||||
"undo_settings": "Annuler les changements de paramètres",
|
|
||||||
"unsubscribe": "Désactiver les notifications push",
|
|
||||||
"unsupported": "Votre navigateur ne prend pas en charge les notifications push.",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "Fermer",
|
|
||||||
"enable_description": "Pour recevoir des notifications lorsque Elk n'est pas ouvert, activez les notifications push. \nVous pouvez contrôler précisément quels types d'interactions génèrent des notifications push via le bouton \"@:settings.notifications.show_btn{'\"'} ci-dessus une fois activé.",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "Activer les notifications push",
|
|
||||||
"enable_title": "Ne manquez jamais rien",
|
|
||||||
"re_auth": "Il semble que votre serveur ne supporte pas les notifications push. \nEssayez de vous déconnecter et de vous reconnecter, si ce message persiste, contactez l'administrateur de votre serveur."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notifications settings",
|
|
||||||
"preferences": {
|
|
||||||
"label": "Préférences"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Bio",
|
|
||||||
"description": "Editer l'avatar, nom d'utilisateur·ice, profil, etc.",
|
|
||||||
"display_name": "Nom d'affichage",
|
|
||||||
"label": "Apparence",
|
|
||||||
"profile_metadata": "Métadonnées de profil",
|
|
||||||
"profile_metadata_desc": "Vous pouvez avoir jusqu'à 4 éléments affichés sous forme de tableau sur votre profil",
|
|
||||||
"title": "Editer le profil"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "Les gens peuvent parcourir vos messages publics sous ces hashtags.",
|
|
||||||
"label": "Hashtags en vedette"
|
|
||||||
},
|
|
||||||
"label": "Profil"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Sélectionner un paramètre",
|
|
||||||
"users": {
|
|
||||||
"export": "Exporter les tokens d'utilisateur·ice",
|
|
||||||
"import": "Importer des tokens d'utilisateur·ice",
|
|
||||||
"label": "Utilisateur·ice·s connecté·e·s"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"attachments_exceed_server_limit": "Le nombre de pièces jointes a dépassé la limite par message.",
|
|
||||||
"attachments_limit_error": "Limite par publication dépassée",
|
|
||||||
"edited": "(Édité)",
|
|
||||||
"editing": "Édition",
|
|
||||||
"loading": "Chargement...",
|
|
||||||
"upload_failed": "Le téléversement a échoué",
|
|
||||||
"uploading": "Téléversement en cours..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "Edité {0}",
|
|
||||||
"filter_hidden_phrase": "Filtré par",
|
|
||||||
"filter_removed_phrase": "Caché par le filtre",
|
|
||||||
"filter_show_anyway": "Montrer coûte que coûte",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Description",
|
|
||||||
"dismiss": "Fermer"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} votes",
|
|
||||||
"ends": "se clôt {0}",
|
|
||||||
"finished": "clos {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} relayé",
|
|
||||||
"replying_to": "Répondre à {0}",
|
|
||||||
"someone": "quelqu'un",
|
|
||||||
"spoiler_show_less": "Voir moins",
|
|
||||||
"spoiler_show_more": "Voir plus",
|
|
||||||
"try_original_site": "Essayer le site d'origine"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "a écrit {0}",
|
|
||||||
"edited": "a édité {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "Pour vous",
|
|
||||||
"hashtags": "Hashtags",
|
|
||||||
"media": "Média",
|
|
||||||
"news": "Actualités",
|
|
||||||
"notifications_all": "Tout",
|
|
||||||
"notifications_mention": "Mentions",
|
|
||||||
"posts": "Messages",
|
|
||||||
"posts_with_replies": "Messages et réponses"
|
|
||||||
},
|
|
||||||
"tag": {
|
|
||||||
"follow": "Suivre",
|
|
||||||
"follow_label": "Suivre la balise {0}",
|
|
||||||
"unfollow": "Ne plus suivre",
|
|
||||||
"unfollow_label": "Ne plus suivre la balise {0}"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "dans 0 jour|demain|dans {n} jours",
|
|
||||||
"day_past": "il y a 0 jour|hier|il y a {n} jours",
|
|
||||||
"hour_future": "dans 0 heure|dans 1 heure|dans {n} heures",
|
|
||||||
"hour_past": "il y a 0 heure|il y a 1 heure|il y a {n} heures",
|
|
||||||
"just_now": "juste maintenant",
|
|
||||||
"minute_future": "dans 0 minutes|dans 1 minute|dans {n} minutes",
|
|
||||||
"minute_past": "il y a 0 minute|il y a 1 minute|il y a {n} minutes",
|
|
||||||
"month_future": "dans 0 mois|le mois prochain|dans {n} mois",
|
|
||||||
"month_past": "il y a 0 mois|le dernier mois|il y a {n} mois",
|
|
||||||
"second_future": "maintenant|dans {n} secondes|dans {n} secondes",
|
|
||||||
"second_past": "maintenant|il y a {n} seconde|il y a {n} secondes",
|
|
||||||
"short_day_future": "dans {n}j",
|
|
||||||
"short_day_past": "{n}j",
|
|
||||||
"short_hour_future": "dans {n}h",
|
|
||||||
"short_hour_past": "{n}h",
|
|
||||||
"short_minute_future": "dans {n}min",
|
|
||||||
"short_minute_past": "{n}min",
|
|
||||||
"short_month_future": "dans {n}mo",
|
|
||||||
"short_month_past": "{n}mo",
|
|
||||||
"short_second_future": "dans {n}s",
|
|
||||||
"short_second_past": "{n}s",
|
|
||||||
"short_week_future": "dans {n}sm",
|
|
||||||
"short_week_past": "{n}sm",
|
|
||||||
"short_year_future": "dans {n}a",
|
|
||||||
"short_year_past": "{n}a",
|
|
||||||
"week_future": "dans 0 semaine|semaine prochaine|dans {n} semaines",
|
|
||||||
"week_past": "il y a 0 semaines|il y a 1 semaine|il y a {n} semaines",
|
|
||||||
"year_future": "dans 0 année|l'année prochaine|dans {n} années",
|
|
||||||
"year_past": "il y a 0 année|l'année dernière|il y a {n} années"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Voir le nouveau message|Voir les {v} nouveaux messages",
|
|
||||||
"view_older_posts": "Les messages plus anciens d'autres instances peuvent ne pas être affichés."
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Fil d'actualité fédéré",
|
|
||||||
"local_timeline": "Fil d'actualité local"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Ajouter un avertissement de contenu",
|
|
||||||
"add_media": "Ajouter des images, une vidéo ou un fichier audio",
|
|
||||||
"change_content_visibility": "Ajuster la confidentialité du message",
|
|
||||||
"change_language": "Changer la langue",
|
|
||||||
"emoji": "Emoji",
|
|
||||||
"explore_links_intro": "Ces actualités sont sujets à discussions sur ce serveur et sur d'autres serveurs du réseau décentralisé.",
|
|
||||||
"explore_posts_intro": "Ces publications de ce serveur et d'autres serveurs du réseau décentralisé gagnent du terrain sur ce serveur en ce moment.",
|
|
||||||
"explore_tags_intro": "Ces hashtags gagnent du terrain sur ce serveur et sur d'autres serveurs du réseau décentralisé.",
|
|
||||||
"toggle_code_block": "Ajouter un bloc de code"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Ajouter un compte existant",
|
|
||||||
"server_address_label": "Adresse du serveur mastodon",
|
|
||||||
"sign_in_desc": "Connectez-vous pour suivre des profils ou des hashtags, mettre en favoris, partager et répondre à des messages, ou interagir à partir de votre compte sur un autre serveur...",
|
|
||||||
"sign_in_notice_title": "Affichage de {0} données publiques",
|
|
||||||
"sign_out_account": "Se déconnecter de {0}",
|
|
||||||
"tip_no_account": "Si vous n'avez pas encore de compte Mastodon, {0}.",
|
|
||||||
"tip_register_account": "choisissez votre serveur et enregistrez-en un"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Personnes mentionnées uniquement",
|
|
||||||
"direct_desc": "Visibles uniquemnt par les comptes mentionnés",
|
|
||||||
"private": "Abonnés uniquement",
|
|
||||||
"private_desc": "Visible uniquement par vos abonnés",
|
|
||||||
"public": "Public",
|
|
||||||
"public_desc": "Visible par tout le monde",
|
|
||||||
"unlisted": "Non listé",
|
|
||||||
"unlisted_desc": "Visible pour tous, mais sans fonctionnalités de découverte"
|
|
||||||
}
|
|
||||||
}
|
|
74
locales/ja-JP.ftl
Normal file
74
locales/ja-JP.ftl
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
account_blocked_domains = ブロックしたドメイン
|
||||||
|
account_blocked_users = ブロックしたユーザー
|
||||||
|
account_blocking = Blocked
|
||||||
|
account_favourites = お気に入り
|
||||||
|
account_follow = フォローする
|
||||||
|
account_follow_back = フォローバックする
|
||||||
|
account_follow_requested = リクエスト済み
|
||||||
|
account_followers_count = {$formattedCount} フォロワー
|
||||||
|
account_following_count = {$formattedCount} フォロー中
|
||||||
|
account_follows_you = フォローされています
|
||||||
|
account_muted_users = ミュート済み
|
||||||
|
account_muting = Muted
|
||||||
|
account_pinned = 固定された投稿
|
||||||
|
account_posts_count = {$formattedCount} 投稿
|
||||||
|
account_unblock = Unblock
|
||||||
|
account_unfollow = フォロー解除
|
||||||
|
account_unmute = Unmute
|
||||||
|
action_compose = 今なにしてる?
|
||||||
|
action_enter_app = 使い始める
|
||||||
|
action_publish = 投稿
|
||||||
|
action_save_changes = 変更を保存
|
||||||
|
action_sign_in = サインイン
|
||||||
|
action_vote = 投票
|
||||||
|
common_end_of_list = 他にはありません
|
||||||
|
common_error = ERROR
|
||||||
|
common_not_found = 404 Not Found
|
||||||
|
menu_block_account = {$username}さんをブロックする
|
||||||
|
menu_block_domain = {$domain}をドメインブロック
|
||||||
|
menu_direct_message_account = {$username}さんにダイレクトメッセージ
|
||||||
|
menu_mention_account = {$username}さんにメンション
|
||||||
|
menu_mute_account = {$username}さんをミュート
|
||||||
|
menu_mute_conversation = ミュートポスト
|
||||||
|
menu_open_in_original_site = 元のサイトで開く
|
||||||
|
menu_unblock_account = {$username}さんのブロックを解除
|
||||||
|
menu_unblock_domain = {$domain}のドメインブロックを解除
|
||||||
|
menu_unmute_account = {$username}さんのミュートを解除
|
||||||
|
menu_unmute_conversation = 投稿のミュートを解除
|
||||||
|
nav_bookmarks = ブックマーク
|
||||||
|
nav_conversations = 会話
|
||||||
|
nav_explore = 話題の投稿
|
||||||
|
nav_favourites = お気に入り
|
||||||
|
nav_federated = 連合
|
||||||
|
nav_home = ホーム
|
||||||
|
nav_local = ローカル
|
||||||
|
nav_notifications = 通知
|
||||||
|
nav_profile = プロフィール
|
||||||
|
nav_search = 検索
|
||||||
|
nav_select_feature_flags = 実験的機能を切り替え
|
||||||
|
nav_select_language = 言語を選択
|
||||||
|
nav_toggle_theme = テーマを切り替え
|
||||||
|
nav_zen_mode = 禅モード
|
||||||
|
notification_favourited_post = さんがあなたの投稿お気に入り登録しました
|
||||||
|
notification_followed_you = さんがあなたをフォローしました
|
||||||
|
notification_missing_type = MISSING notification.type:
|
||||||
|
notification_reblogged_post = さんがあなたの投稿をブーストしました
|
||||||
|
notification_request_to_follow = さんがあなたへフォローをリクエストしました
|
||||||
|
notification_update_status = さんが投稿を更新しました
|
||||||
|
settings_feature_flags_github_cards = GitHub Cards
|
||||||
|
settings_feature_flags_user_picker = User Picker
|
||||||
|
settings_feature_flags_virtual_scroll = 仮想スクロール
|
||||||
|
state_editing = 編集中
|
||||||
|
state_uploading = 更新中...
|
||||||
|
tab_hashtags = ハッシュタグ
|
||||||
|
tab_media = メディア
|
||||||
|
tab_posts = 投稿
|
||||||
|
tab_posts_with_replies = 投稿と返信
|
||||||
|
timeline_show_new_items = {v}件の新しい投稿
|
||||||
|
title_federated_timeline = 連合タイムライン
|
||||||
|
title_local_timeline = ローカルタイムライン
|
||||||
|
tooltip_add_content_warning = 警告を追加
|
||||||
|
tooltip_add_media = 画像、動画、音声ファイルを追加
|
||||||
|
tooltip_change_content_visibility = 公開範囲を変更
|
||||||
|
tooltip_toggle_code_block = コードブロックを切り替え
|
||||||
|
user_sign_in_desc = サインインすると、アカウントやハッシュタグをフォローしたり、お気に入りしたり、投稿を共有したり返信するほか、異なるサーバー上のあなたのアカウントから交流できます。
|
|
@ -1,104 +0,0 @@
|
||||||
{
|
|
||||||
"account": {
|
|
||||||
"blocked_domains": "ブロックしたドメイン",
|
|
||||||
"blocked_users": "ブロックしたユーザー",
|
|
||||||
"blocking": "Blocked",
|
|
||||||
"favourites": "お気に入り",
|
|
||||||
"follow": "フォローする",
|
|
||||||
"follow_back": "フォローバックする",
|
|
||||||
"follow_requested": "リクエスト済み",
|
|
||||||
"followers_count": "{0} フォロワー",
|
|
||||||
"following_count": "{0} フォロー中",
|
|
||||||
"follows_you": "フォローされています",
|
|
||||||
"muted_users": "ミュート済み",
|
|
||||||
"muting": "Muted",
|
|
||||||
"pinned": "固定された投稿",
|
|
||||||
"posts_count": "{0} 投稿",
|
|
||||||
"unblock": "Unblock",
|
|
||||||
"unfollow": "フォロー解除",
|
|
||||||
"unmute": "Unmute"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"compose": "今なにしてる?",
|
|
||||||
"enter_app": "使い始める",
|
|
||||||
"publish": "投稿",
|
|
||||||
"save_changes": "変更を保存",
|
|
||||||
"sign_in": "サインイン",
|
|
||||||
"vote": "投票"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "他にはありません",
|
|
||||||
"error": "ERROR",
|
|
||||||
"not_found": "404 Not Found"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "{0}さんをブロックする",
|
|
||||||
"block_domain": "{0}をドメインブロック",
|
|
||||||
"direct_message_account": "{0}さんにダイレクトメッセージ",
|
|
||||||
"mention_account": "{0}さんにメンション",
|
|
||||||
"mute_account": "{0}さんをミュート",
|
|
||||||
"mute_conversation": "ミュートポスト",
|
|
||||||
"open_in_original_site": "元のサイトで開く",
|
|
||||||
"unblock_account": "{0}さんのブロックを解除",
|
|
||||||
"unblock_domain": "{0}のドメインブロックを解除",
|
|
||||||
"unmute_account": "{0}さんのミュートを解除",
|
|
||||||
"unmute_conversation": "投稿のミュートを解除"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "ブックマーク",
|
|
||||||
"conversations": "会話",
|
|
||||||
"explore": "話題の投稿",
|
|
||||||
"favourites": "お気に入り",
|
|
||||||
"federated": "連合",
|
|
||||||
"home": "ホーム",
|
|
||||||
"local": "ローカル",
|
|
||||||
"notifications": "通知",
|
|
||||||
"profile": "プロフィール",
|
|
||||||
"search": "検索",
|
|
||||||
"select_feature_flags": "実験的機能を切り替え",
|
|
||||||
"select_language": "言語を選択",
|
|
||||||
"toggle_theme": "テーマを切り替え",
|
|
||||||
"zen_mode": "禅モード"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "さんがあなたの投稿お気に入り登録しました",
|
|
||||||
"followed_you": "さんがあなたをフォローしました",
|
|
||||||
"missing_type": "MISSING notification.type:",
|
|
||||||
"reblogged_post": "さんがあなたの投稿をブーストしました",
|
|
||||||
"request_to_follow": "さんがあなたへフォローをリクエストしました",
|
|
||||||
"update_status": "さんが投稿を更新しました"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub Cards",
|
|
||||||
"user_picker": "User Picker",
|
|
||||||
"virtual_scroll": "仮想スクロール"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"editing": "編集中",
|
|
||||||
"uploading": "更新中..."
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"hashtags": "ハッシュタグ",
|
|
||||||
"media": "メディア",
|
|
||||||
"posts": "投稿",
|
|
||||||
"posts_with_replies": "投稿と返信"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "{v}件の新しい投稿"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "連合タイムライン",
|
|
||||||
"local_timeline": "ローカルタイムライン"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "警告を追加",
|
|
||||||
"add_media": "画像、動画、音声ファイルを追加",
|
|
||||||
"change_content_visibility": "公開範囲を変更",
|
|
||||||
"toggle_code_block": "コードブロックを切り替え"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"sign_in_desc": "サインインすると、アカウントやハッシュタグをフォローしたり、お気に入りしたり、投稿を共有したり返信するほか、異なるサーバー上のあなたのアカウントから交流できます。"
|
|
||||||
}
|
|
||||||
}
|
|
314
locales/nl-NL.ftl
Normal file
314
locales/nl-NL.ftl
Normal file
|
@ -0,0 +1,314 @@
|
||||||
|
a11y_loading_page = Pagina laden, even wachten
|
||||||
|
a11y_loading_titled_page = Pagina {$title} laden, even wachten
|
||||||
|
a11y_locale_changed = Taal veranderd naar {$lang}
|
||||||
|
a11y_locale_changing = Taal veranderen, even wachten
|
||||||
|
a11y_route_loaded = Pagina {$title} geladen
|
||||||
|
account_avatar_description = {$username}'s avatar
|
||||||
|
account_blocked_by = Je bent geblokkeerd door deze gebruiker.
|
||||||
|
account_blocked_domains = Geblokkeerde domeinen
|
||||||
|
account_blocked_users = Geblokkeerde gebruikers
|
||||||
|
account_blocking = Geblokkeerd
|
||||||
|
account_bot = BOT
|
||||||
|
account_favourites = Favorieten
|
||||||
|
account_follow = Volg
|
||||||
|
account_follow_back = Volg terug
|
||||||
|
account_follow_requested = Aangevraagd
|
||||||
|
account_followers = Volgers
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[one] {$formattedCount} Follower
|
||||||
|
*[other] {$formattedCount} Followers
|
||||||
|
}
|
||||||
|
account_following = Volgend
|
||||||
|
account_following_count = {$formattedCount} Volgend
|
||||||
|
account_follows_you = Volgt jou
|
||||||
|
account_go_to_profile = Ga naar profiel
|
||||||
|
account_joined = Lid geworden
|
||||||
|
account_moved_title = heeft aangegeven hun nieuwe account is nu:
|
||||||
|
account_muted_users = Gedempte gebruikers
|
||||||
|
account_muting = Gedempt
|
||||||
|
account_mutuals = Gedeeld
|
||||||
|
account_pinned = Gepind
|
||||||
|
account_posts = Posts
|
||||||
|
account_posts_count = { $count ->
|
||||||
|
[one] {$formattedCount} Post
|
||||||
|
*[other] {$formattedCount} Posts
|
||||||
|
}
|
||||||
|
account_profile_description = {$username}'s profiel koptekst
|
||||||
|
account_profile_unavailable = Profiel niet beschikbaar
|
||||||
|
account_unblock = Deblokkeren
|
||||||
|
account_unfollow = Ontvolgen
|
||||||
|
account_unmute = Ontdempen
|
||||||
|
action_apply = Toepassen
|
||||||
|
action_bookmark = Bookmark
|
||||||
|
action_bookmarked = Gebookmarkt
|
||||||
|
action_boost = Boost
|
||||||
|
action_boost_count = {0}
|
||||||
|
action_boosted = Geboost
|
||||||
|
action_clear_upload_failed = Wis bestand upload fouten
|
||||||
|
action_close = Sluit
|
||||||
|
action_compose = Composeer
|
||||||
|
action_confirm = Confirmeer
|
||||||
|
action_edit = Aanpassen
|
||||||
|
action_enter_app = Ga naar App
|
||||||
|
action_favourite = Favoriet
|
||||||
|
action_favourite_count = {0}
|
||||||
|
action_favourited = Favoriet
|
||||||
|
action_more = Meer
|
||||||
|
action_next = Volgende
|
||||||
|
action_prev = Vorige
|
||||||
|
action_publish = Publiceer
|
||||||
|
action_reply = Beantwoord
|
||||||
|
action_reply_count = {0}
|
||||||
|
action_reset = Resetten
|
||||||
|
action_save = Opslaan
|
||||||
|
action_save_changes = Aanpassingen opslaan
|
||||||
|
action_sign_in = Sign in
|
||||||
|
action_switch_account = Wissel van account
|
||||||
|
action_vote = Stem
|
||||||
|
app_desc_short = Een vlotte Mastodon web client
|
||||||
|
app_logo = Elk Logo
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = Descriptie
|
||||||
|
attachment_remove_label = Verwijder bijlage
|
||||||
|
command_activate = Activeren
|
||||||
|
command_complete = Compleet
|
||||||
|
command_compose_desc = Schrijf een nieuwe post
|
||||||
|
command_n-people-in-the-past-n-days = {$count} mensen in de laatste {$days} dagen
|
||||||
|
command_select_lang = Selecteer een taal
|
||||||
|
command_sign_in_desc = Add an existing account
|
||||||
|
command_switch_account = Wissel naar {$username}
|
||||||
|
command_switch_account_desc = Wissel naar ander account
|
||||||
|
command_toggle_dark_mode = Dark modus wisselen
|
||||||
|
command_toggle_zen_mode = Zen modus schakelen
|
||||||
|
common_end_of_list = Einde van de lijst
|
||||||
|
common_error = FOUT
|
||||||
|
common_in = in
|
||||||
|
common_not_found = 404 Niet Gevonden
|
||||||
|
common_offline_desc = Zo te zien ben je offline. Check je internet verbinding.
|
||||||
|
conversation_with = met
|
||||||
|
error_account_not_found = Account {$username} niet gevonden
|
||||||
|
error_explore-list-empty = Er is nu niets trending. Kom later terug!
|
||||||
|
error_file_size_cannot_exceed_n_mb = Bestand grote mag niet groter zijn dan {$size}MB
|
||||||
|
error_sign_in_error = Kan geen connectie maken met de server.
|
||||||
|
error_status_not_found = Post niet gevonden
|
||||||
|
error_unsupported_file_format = Bestandstype niet ondersteund
|
||||||
|
help_desc_highlight = Expect some bugs and missing features here and there.
|
||||||
|
help_desc_para1 = Thanks for your interest in trying out Elk, our work-in-progress generic Mastodon client!
|
||||||
|
help_desc_para2 = We are working hard on the development and improving it over time. We will open source the app once it is ready for public use.
|
||||||
|
help_desc_para3 = To help boosting out development, you can sponsor our team members with the links below. We hope you enjoy Elk!
|
||||||
|
help_desc_para4 = Before that, if you'd like to help with testing, giving feedback, or contributing,
|
||||||
|
help_desc_para5 = reach out to us on Mastodon
|
||||||
|
help_desc_para6 = and get involved.
|
||||||
|
help_title = Elk is in Preview!
|
||||||
|
language_none = Niets
|
||||||
|
language_search = Opzoeken
|
||||||
|
menu_block_account = Blokkeer {$username}
|
||||||
|
menu_block_domain = Blokkeer domein {$domain}
|
||||||
|
menu_copy_link_to_post = Kopieer link naar deze post
|
||||||
|
menu_delete = Verwijder
|
||||||
|
menu_delete_and_redraft = Verwijder & Opnieuw opstellen
|
||||||
|
menu_direct_message_account = Direct bericht naar {$username}
|
||||||
|
menu_edit = Aanpassen
|
||||||
|
menu_mention_account = Noem {$username}
|
||||||
|
menu_mute_account = Demp {$username}
|
||||||
|
menu_mute_conversation = Demp deze post
|
||||||
|
menu_open_in_original_site = Open in originele site
|
||||||
|
menu_pin_on_profile = Pin op profiel
|
||||||
|
menu_share_post = Deel deze post
|
||||||
|
menu_show_untranslated = Laat onvertaalde zien
|
||||||
|
menu_toggle_theme_dark = Dark modus wisselen
|
||||||
|
menu_toggle_theme_light = Light modus wisselen
|
||||||
|
menu_translate_post = Vertaal post
|
||||||
|
menu_unblock_account = Deblokkeer {$username}
|
||||||
|
menu_unblock_domain = Deblokkeer domein {$domain}
|
||||||
|
menu_unmute_account = Ontdemp {$username}
|
||||||
|
menu_unmute_conversation = Ontdemp deze post
|
||||||
|
menu_unpin_on_profile = Ontpin op profiel
|
||||||
|
nav_bookmarks = Bookmarks
|
||||||
|
nav_built_at = Gebouwd {0}
|
||||||
|
nav_conversations = Conversaties
|
||||||
|
nav_explore = Ontdekken
|
||||||
|
nav_favourites = Favorieten
|
||||||
|
nav_federated = Gefedereerd
|
||||||
|
nav_home = Home
|
||||||
|
nav_local = Lokaal
|
||||||
|
nav_notifications = Notificaties
|
||||||
|
nav_profile = Profiel
|
||||||
|
nav_search = Zoeken
|
||||||
|
nav_select_feature_flags = Schakel Feature Vlaggen
|
||||||
|
nav_select_font_size = Font Grootte
|
||||||
|
nav_select_language = Display Taal
|
||||||
|
nav_settings = Instellingen
|
||||||
|
nav_show_intro = Laat intro zien
|
||||||
|
nav_toggle_theme = Schakel Thema
|
||||||
|
nav_zen_mode = Zen Modus
|
||||||
|
notification_favourited_post = vindt jou post favoriet
|
||||||
|
notification_followed_you = volgt jou
|
||||||
|
notification_followed_you_count = {0} mensen hebben je gevolgd|{0} persoon heeft je gevold|{0} mensen hebben je gevolgd
|
||||||
|
notification_missing_type = MISSEND notificatie.type:
|
||||||
|
notification_reblogged_post = herblogd je post
|
||||||
|
notification_request_to_follow = vraagt om jou te volgen
|
||||||
|
notification_signed_up = signed up
|
||||||
|
notification_update_status = heeft hun post aangepast
|
||||||
|
placeholder_content_warning = Schrijf je warning hier
|
||||||
|
placeholder_default_1 = Waar denk je aan?
|
||||||
|
placeholder_reply_to_account = Reageer op {0}
|
||||||
|
placeholder_replying = Reageren
|
||||||
|
placeholder_the_thread = de thread
|
||||||
|
pwa_dismiss = Afwijzen
|
||||||
|
pwa_title = Er is een nieuwe Elk update!
|
||||||
|
pwa_update = Update
|
||||||
|
pwa_update_available_short = Update Elk
|
||||||
|
search_search_desc = Zoek naar mensen & hashtags
|
||||||
|
search_search_empty = Deze zoektermen leveren geen resultaat op
|
||||||
|
settings_about_label = Over
|
||||||
|
settings_feature_flags_github_cards = GitHub Cards
|
||||||
|
settings_feature_flags_title = Experimentelen Functies
|
||||||
|
settings_feature_flags_user_picker = Gebruiker Picker
|
||||||
|
settings_feature_flags_virtual_scroll = Virtueel Scrollen
|
||||||
|
settings_interface_color_mode = Kleur Modus
|
||||||
|
settings_interface_dark_mode = Dark Modus
|
||||||
|
settings_interface_default = (standaard)
|
||||||
|
settings_interface_font_size = Font Grootte
|
||||||
|
settings_interface_label = Interface
|
||||||
|
settings_interface_light_mode = Light Modus
|
||||||
|
settings_language_display_language = Display Taal
|
||||||
|
settings_language_label = Taal
|
||||||
|
settings_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = Favorieten
|
||||||
|
settings_notifications_push_notifications_alerts_follow = Nieuwe volgers
|
||||||
|
settings_notifications_push_notifications_alerts_mention = Vermeldingen
|
||||||
|
settings_notifications_push_notifications_alerts_poll = Peilingen
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = Herblogd jou post
|
||||||
|
settings_notifications_push_notifications_alerts_title = Welke notificaties wil je krijgen?
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = Van iedereen
|
||||||
|
settings_notifications_push_notifications_policy_followed = Van mensen die ik volg
|
||||||
|
settings_notifications_push_notifications_policy_follower = Van mensen die mij volgen
|
||||||
|
settings_notifications_push_notifications_policy_none = Van niemand
|
||||||
|
settings_notifications_push_notifications_policy_title = Van wie kan ik notificaties krijgen?
|
||||||
|
settings_notifications_push_notifications_save_settings = Instellingen aanpassingen opslaan
|
||||||
|
settings_notifications_push_notifications_subscription_error_clear_error = Wis error
|
||||||
|
settings_notifications_push_notifications_subscription_error_permission_denied = Geen toestemming: zet notificaties aan in je browser.
|
||||||
|
settings_notifications_push_notifications_subscription_error_request_error = Er is een error tijdens het ophalen van de subscriptie, probeer opnieuw en als de error blijft, raporteer het probleem naar de Elk repository.
|
||||||
|
settings_notifications_push_notifications_subscription_error_title = Kon niet subscriben aan push notificaties
|
||||||
|
settings_notifications_push_notifications_undo_settings = Undo veranderden instellingen
|
||||||
|
settings_notifications_push_notifications_unsubscribe = Zet push notificaties uit
|
||||||
|
settings_notifications_push_notifications_unsupported = Je browser ondersteunt geen push notificaties.
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = Sluit
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = Om notificaties te krijgen terwijl Elk niet open is, zet push notificaties aan. Je kan precies instellen wat voor typen interacties push notificaties genereren via de "@:notification.settings.show_btn{'"'} knop hierboven wanneer ze aan staan.
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = Zet push notificaties aan
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = Mis niets
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = It seems that your server does not support push notifications. Try sign out and sign in again, if this message still appears contact your server administrator.
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_notifications_settings = Notifications
|
||||||
|
settings_preferences_label = Voorkeuren
|
||||||
|
settings_profile_appearance_bio = Bio
|
||||||
|
settings_profile_appearance_description = Aanpassen van avatar, username, profile, etc.
|
||||||
|
settings_profile_appearance_display_name = Zichtbare naam
|
||||||
|
settings_profile_appearance_label = Uiterlijk
|
||||||
|
settings_profile_appearance_profile_metadata = Profiel metadata
|
||||||
|
settings_profile_appearance_profile_metadata_desc = Je kan tot en met 4 elementen als table zetten op je profiel zetten
|
||||||
|
settings_profile_appearance_title = Aanpassen profiel
|
||||||
|
settings_profile_featured_tags_description = Mensen kunnen je publieke posts vinden onder deze hashtags.
|
||||||
|
settings_profile_featured_tags_label = Uitgelichte hashtags
|
||||||
|
settings_profile_label = Profiel
|
||||||
|
settings_select_a_settings = Selecteer een instelling
|
||||||
|
settings_users_export = Exporteer Gebruikers Tokens
|
||||||
|
settings_users_import = Importeer Gebruikers Tokens
|
||||||
|
settings_users_label = Ingelogde gebruikers
|
||||||
|
state_attachments_exceed_server_limit = De hoeveelheid bijlage is meer als het limiet per post.
|
||||||
|
state_attachments_limit_error = Limiet per post overschreden
|
||||||
|
state_edited = (Aangepast)
|
||||||
|
state_editing = Aanpassen
|
||||||
|
state_loading = Laden...
|
||||||
|
state_upload_failed = Upload gefaald
|
||||||
|
state_uploading = Uploading...
|
||||||
|
status_edited = Aangepast {$date}
|
||||||
|
status_filter_hidden_phrase = Gefilterd door
|
||||||
|
status_filter_removed_phrase = Verwijderd door filter
|
||||||
|
status_filter_show_anyway = Laat toch zien
|
||||||
|
status_img_alt_desc = Descriptie
|
||||||
|
status_img_alt_dismiss = Afwijzen
|
||||||
|
status_poll_count = {0} stemmen|{0} stem|{0} stemmen
|
||||||
|
status_poll_ends = eindigt {0}
|
||||||
|
status_poll_finished = geëindigd {0}
|
||||||
|
status_reblogged = {0} herblogd
|
||||||
|
status_someone = Iemand
|
||||||
|
status_spoiler_show_less = Minder zien
|
||||||
|
status_spoiler_show_more = Meer zien
|
||||||
|
status_try_original_site = Probeer originele site
|
||||||
|
status_history_created = gecreëerd {0}
|
||||||
|
status_history_edited = aangepast {$date}
|
||||||
|
tab_for_you = Voor jou
|
||||||
|
tab_hashtags = Hashtags
|
||||||
|
tab_media = Media
|
||||||
|
tab_news = Nieuws
|
||||||
|
tab_notifications_all = Alles
|
||||||
|
tab_notifications_mention = Vermelding
|
||||||
|
tab_posts = Posts
|
||||||
|
tab_posts_with_replies = Posts & Reacties
|
||||||
|
tag_follow = Volg
|
||||||
|
tag_follow_label = Volg {$tag} tag
|
||||||
|
tag_unfollow = Ontvolg
|
||||||
|
tag_unfollow_label = Ontvolg {$tag} tag
|
||||||
|
time_ago_options_day_future = in 0 dagen|morgen|in {n} dagen
|
||||||
|
time_ago_options_day_past = 0 dagen geleden|gisteren|{n} dagen geleden
|
||||||
|
time_ago_options_hour_future = in 0 uur|in 1 uur|in {n} uur
|
||||||
|
time_ago_options_hour_past = 0 uur geleden|1 uur geleden|{n} uur geleden
|
||||||
|
time_ago_options_just_now = nu net
|
||||||
|
time_ago_options_minute_future = in 0 minuten|in 1 minuut|in {n} minuten
|
||||||
|
time_ago_options_minute_past = 0 minuten geleden|1 minuut geleden|{n} minuten geleden
|
||||||
|
time_ago_options_month_future = in 0 maanden|volgende maand|in {n} maanden
|
||||||
|
time_ago_options_month_past = 0 maanden geleden|laatste maand|{n} maanden geleden
|
||||||
|
time_ago_options_second_future = nu net|in {n} seconden|in {n} seconden
|
||||||
|
time_ago_options_second_past = nu net|{n} seconden geleden|{n} seconden geleden
|
||||||
|
time_ago_options_short_day_future = in {n}d
|
||||||
|
time_ago_options_short_day_past = {n}d
|
||||||
|
time_ago_options_short_hour_future = in {n}u
|
||||||
|
time_ago_options_short_hour_past = {$n}u
|
||||||
|
time_ago_options_short_minute_future = in {n}min
|
||||||
|
time_ago_options_short_minute_past = {$n}min
|
||||||
|
time_ago_options_short_month_future = in {n}ma
|
||||||
|
time_ago_options_short_month_past = {n}ma
|
||||||
|
time_ago_options_short_second_future = in {n}s
|
||||||
|
time_ago_options_short_second_past = {n}s
|
||||||
|
time_ago_options_short_week_future = in {n}w
|
||||||
|
time_ago_options_short_week_past = {n}w
|
||||||
|
time_ago_options_short_year_future = in {n}j
|
||||||
|
time_ago_options_short_year_past = {n}j
|
||||||
|
time_ago_options_week_future = in 0 weken|volgende week|in {n} weken
|
||||||
|
time_ago_options_week_past = 0 weken geleden|vorige week|{n} weken geleden
|
||||||
|
time_ago_options_year_future = in 0 jaar|volgend jaar|in {n} jaar
|
||||||
|
time_ago_options_year_past = 0 jaar geleden|vorig jaar|{n} jaar geleden
|
||||||
|
timeline_show_new_items = Laat {v} nieuwe artikelen zien|Laat {v} nieuw artikel zien|Laat {v} nieuwe artikelen zien
|
||||||
|
title_federated_timeline = Gefedereerde Tijdlijn
|
||||||
|
title_local_timeline = Lokale Tijdlijn
|
||||||
|
tooltip_add_content_warning = Voeg inhoud waarschuwing toe
|
||||||
|
tooltip_add_media = Voeg fotos, een video of een audio bestand toe
|
||||||
|
tooltip_change_content_visibility = Verander inhoud zichtbaarheid
|
||||||
|
tooltip_change_language = Verander taal
|
||||||
|
tooltip_emoji = Emoji
|
||||||
|
tooltip_explore_links_intro = Deze nieuws artikelen worden veel over gepraat op deze en anderen servers op het decentralized network op dit moment.
|
||||||
|
tooltip_explore_posts_intro = Deze posts van deze en andere servers op het decentralized network krijgen veel aandacht op deze server op dit moment.
|
||||||
|
tooltip_explore_tags_intro = Deze hashtags krijgen veel aandacht op dit moment op deze en anderen servers op het decentralized network.
|
||||||
|
tooltip_toggle_code_block = Zet code blok aan/uit
|
||||||
|
user_add_existing = Voeg een bestaand account toe
|
||||||
|
user_server_address_label = Mastodon Server Address
|
||||||
|
user_sign_in_desc = Sign in om profielen te volgen of hashtags, markeer posts als favoriet, deel en reageer op posts, of interact vanaf je account op een anderen server.
|
||||||
|
user_sign_in_notice_title = Je bekijkt {0} publieke data
|
||||||
|
user_sign_out_account = Sign out {$username}
|
||||||
|
user_tip_no_account = Als je nog geen Mastodon account hebt, {0}.
|
||||||
|
user_tip_register_account = kies jou server en registreer een account
|
||||||
|
visibility_direct = Direct
|
||||||
|
visibility_direct_desc = Zichtbaar voor alleen vermelden gebruikers
|
||||||
|
visibility_private = Alleen volgers
|
||||||
|
visibility_private_desc = Alleen zichtbaar voor volgers
|
||||||
|
visibility_public = Publiek
|
||||||
|
visibility_public_desc = Zichtbaar voor iedereen
|
||||||
|
visibility_unlisted = Niet vermeld
|
||||||
|
visibility_unlisted_desc = Zichtbaar voor iedereen, maar kan niet gevonden worden via discovery functies
|
|
@ -1,404 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "Pagina laden, even wachten",
|
|
||||||
"loading_titled_page": "Pagina {0} laden, even wachten",
|
|
||||||
"locale_changed": "Taal veranderd naar {0}",
|
|
||||||
"locale_changing": "Taal veranderen, even wachten",
|
|
||||||
"route_loaded": "Pagina {0} geladen"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "{0}'s avatar",
|
|
||||||
"blocked_by": "Je bent geblokkeerd door deze gebruiker.",
|
|
||||||
"blocked_domains": "Geblokkeerde domeinen",
|
|
||||||
"blocked_users": "Geblokkeerde gebruikers",
|
|
||||||
"blocking": "Geblokkeerd",
|
|
||||||
"bot": "BOT",
|
|
||||||
"favourites": "Favorieten",
|
|
||||||
"follow": "Volg",
|
|
||||||
"follow_back": "Volg terug",
|
|
||||||
"follow_requested": "Aangevraagd",
|
|
||||||
"followers": "Volgers",
|
|
||||||
"followers_count": "{0} Followers|{0} Follower|{0} Followers",
|
|
||||||
"following": "Volgend",
|
|
||||||
"following_count": "{0} Volgend",
|
|
||||||
"follows_you": "Volgt jou",
|
|
||||||
"go_to_profile": "Ga naar profiel",
|
|
||||||
"joined": "Lid geworden",
|
|
||||||
"moved_title": "heeft aangegeven hun nieuwe account is nu:",
|
|
||||||
"muted_users": "Gedempte gebruikers",
|
|
||||||
"muting": "Gedempt",
|
|
||||||
"mutuals": "Gedeeld",
|
|
||||||
"pinned": "Gepind",
|
|
||||||
"posts": "Posts",
|
|
||||||
"posts_count": "{0} Posts|{0} Post|{0} Posts",
|
|
||||||
"profile_description": "{0}'s profiel koptekst",
|
|
||||||
"profile_unavailable": "Profiel niet beschikbaar",
|
|
||||||
"unblock": " Deblokkeren",
|
|
||||||
"unfollow": "Ontvolgen",
|
|
||||||
"unmute": "Ontdempen"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "Toepassen",
|
|
||||||
"bookmark": "Bookmark",
|
|
||||||
"bookmarked": "Gebookmarkt",
|
|
||||||
"boost": "Boost",
|
|
||||||
"boost_count": "{0}",
|
|
||||||
"boosted": "Geboost",
|
|
||||||
"clear_upload_failed": "Wis bestand upload fouten",
|
|
||||||
"close": "Sluit",
|
|
||||||
"compose": "Composeer",
|
|
||||||
"confirm": "Confirmeer",
|
|
||||||
"edit": "Aanpassen",
|
|
||||||
"enter_app": "Ga naar App",
|
|
||||||
"favourite": "Favoriet",
|
|
||||||
"favourite_count": "{0}",
|
|
||||||
"favourited": "Favoriet",
|
|
||||||
"more": "Meer",
|
|
||||||
"next": "Volgende",
|
|
||||||
"prev": "Vorige",
|
|
||||||
"publish": "Publiceer",
|
|
||||||
"reply": "Beantwoord",
|
|
||||||
"reply_count": "{0}",
|
|
||||||
"reset": "Resetten",
|
|
||||||
"save": "Opslaan",
|
|
||||||
"save_changes": "Aanpassingen opslaan",
|
|
||||||
"sign_in": "Sign in",
|
|
||||||
"switch_account": "Wissel van account",
|
|
||||||
"vote": "Stem"
|
|
||||||
},
|
|
||||||
"app_desc_short": "Een vlotte Mastodon web client",
|
|
||||||
"app_logo": "Elk Logo",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "Descriptie",
|
|
||||||
"remove_label": "Verwijder bijlage"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "Activeren",
|
|
||||||
"complete": "Compleet",
|
|
||||||
"compose_desc": "Schrijf een nieuwe post",
|
|
||||||
"n-people-in-the-past-n-days": "{0} mensen in de laatste {1} dagen",
|
|
||||||
"select_lang": "Selecteer een taal",
|
|
||||||
"sign_in_desc": "Add an existing account",
|
|
||||||
"switch_account": "Wissel naar {0}",
|
|
||||||
"switch_account_desc": "Wissel naar ander account",
|
|
||||||
"toggle_dark_mode": "Dark modus wisselen",
|
|
||||||
"toggle_zen_mode": "Zen modus schakelen"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "Einde van de lijst",
|
|
||||||
"error": "FOUT",
|
|
||||||
"in": "in",
|
|
||||||
"not_found": "404 Niet Gevonden",
|
|
||||||
"offline_desc": "Zo te zien ben je offline. Check je internet verbinding."
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "met"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Account {0} niet gevonden",
|
|
||||||
"explore-list-empty": "Er is nu niets trending. Kom later terug!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "Bestand grote mag niet groter zijn dan {0}MB",
|
|
||||||
"sign_in_error": "Kan geen connectie maken met de server.",
|
|
||||||
"status_not_found": "Post niet gevonden",
|
|
||||||
"unsupported_file_format": "Bestandstype niet ondersteund"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Expect some bugs and missing features here and there.",
|
|
||||||
"desc_para1": "Thanks for your interest in trying out Elk, our work-in-progress generic Mastodon client!",
|
|
||||||
"desc_para2": "We are working hard on the development and improving it over time. We will open source the app once it is ready for public use.",
|
|
||||||
"desc_para3": "To help boosting out development, you can sponsor our team members with the links below. We hope you enjoy Elk!",
|
|
||||||
"desc_para4": "Before that, if you'd like to help with testing, giving feedback, or contributing,",
|
|
||||||
"desc_para5": "reach out to us on Mastodon",
|
|
||||||
"desc_para6": "and get involved.",
|
|
||||||
"title": "Elk is in Preview!"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"none": "Niets",
|
|
||||||
"search": "Opzoeken"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Blokkeer {0}",
|
|
||||||
"block_domain": "Blokkeer domein {0}",
|
|
||||||
"copy_link_to_post": "Kopieer link naar deze post",
|
|
||||||
"delete": "Verwijder",
|
|
||||||
"delete_and_redraft": "Verwijder & Opnieuw opstellen",
|
|
||||||
"direct_message_account": "Direct bericht naar {0}",
|
|
||||||
"edit": "Aanpassen",
|
|
||||||
"mention_account": "Noem {0}",
|
|
||||||
"mute_account": "Demp {0}",
|
|
||||||
"mute_conversation": "Demp deze post",
|
|
||||||
"open_in_original_site": "Open in originele site",
|
|
||||||
"pin_on_profile": "Pin op profiel",
|
|
||||||
"share_post": "Deel deze post",
|
|
||||||
"show_untranslated": "Laat onvertaalde zien",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Dark modus wisselen",
|
|
||||||
"light": "Light modus wisselen"
|
|
||||||
},
|
|
||||||
"translate_post": "Vertaal post",
|
|
||||||
"unblock_account": "Deblokkeer {0}",
|
|
||||||
"unblock_domain": "Deblokkeer domein {0}",
|
|
||||||
"unmute_account": "Ontdemp {0}",
|
|
||||||
"unmute_conversation": "Ontdemp deze post",
|
|
||||||
"unpin_on_profile": "Ontpin op profiel"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "Bookmarks",
|
|
||||||
"built_at": "Gebouwd {0}",
|
|
||||||
"conversations": "Conversaties",
|
|
||||||
"explore": "Ontdekken",
|
|
||||||
"favourites": "Favorieten",
|
|
||||||
"federated": "Gefedereerd",
|
|
||||||
"home": "Home",
|
|
||||||
"local": "Lokaal",
|
|
||||||
"notifications": "Notificaties",
|
|
||||||
"profile": "Profiel",
|
|
||||||
"search": "Zoeken",
|
|
||||||
"select_feature_flags": "Schakel Feature Vlaggen",
|
|
||||||
"select_font_size": "Font Grootte",
|
|
||||||
"select_language": "Display Taal",
|
|
||||||
"settings": "Instellingen",
|
|
||||||
"show_intro": "Laat intro zien",
|
|
||||||
"toggle_theme": "Schakel Thema",
|
|
||||||
"zen_mode": "Zen Modus"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "vindt jou post favoriet",
|
|
||||||
"followed_you": "volgt jou",
|
|
||||||
"followed_you_count": "{0} mensen hebben je gevolgd|{0} persoon heeft je gevold|{0} mensen hebben je gevolgd",
|
|
||||||
"missing_type": "MISSEND notificatie.type:",
|
|
||||||
"reblogged_post": "herblogd je post",
|
|
||||||
"request_to_follow": "vraagt om jou te volgen",
|
|
||||||
"signed_up": "signed up",
|
|
||||||
"update_status": "heeft hun post aangepast"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Schrijf je warning hier",
|
|
||||||
"default_1": "Waar denk je aan?",
|
|
||||||
"reply_to_account": "Reageer op {0}",
|
|
||||||
"replying": "Reageren",
|
|
||||||
"the_thread": "de thread"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "Afwijzen",
|
|
||||||
"title": "Er is een nieuwe Elk update!",
|
|
||||||
"update": "Update",
|
|
||||||
"update_available_short": "Update Elk"
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Zoek naar mensen & hashtags",
|
|
||||||
"search_empty": "Deze zoektermen leveren geen resultaat op"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "Over"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub Cards",
|
|
||||||
"title": "Experimentelen Functies",
|
|
||||||
"user_picker": "Gebruiker Picker",
|
|
||||||
"virtual_scroll": "Virtueel Scrollen"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Kleur Modus",
|
|
||||||
"dark_mode": "Dark Modus",
|
|
||||||
"default": " (standaard)",
|
|
||||||
"font_size": "Font Grootte",
|
|
||||||
"label": "Interface",
|
|
||||||
"light_mode": "Light Modus"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Display Taal",
|
|
||||||
"label": "Taal"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "Favorieten",
|
|
||||||
"follow": "Nieuwe volgers",
|
|
||||||
"mention": " Vermeldingen",
|
|
||||||
"poll": "Peilingen",
|
|
||||||
"reblog": "Herblogd jou post",
|
|
||||||
"title": "Welke notificaties wil je krijgen?"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "Van iedereen",
|
|
||||||
"followed": "Van mensen die ik volg",
|
|
||||||
"follower": "Van mensen die mij volgen",
|
|
||||||
"none": "Van niemand",
|
|
||||||
"title": "Van wie kan ik notificaties krijgen?"
|
|
||||||
},
|
|
||||||
"save_settings": "Instellingen aanpassingen opslaan",
|
|
||||||
"subscription_error": {
|
|
||||||
"clear_error": "Wis error",
|
|
||||||
"permission_denied": "Geen toestemming: zet notificaties aan in je browser.",
|
|
||||||
"request_error": "Er is een error tijdens het ophalen van de subscriptie, probeer opnieuw en als de error blijft, raporteer het probleem naar de Elk repository.",
|
|
||||||
"title": "Kon niet subscriben aan push notificaties"
|
|
||||||
},
|
|
||||||
"undo_settings": "Undo veranderden instellingen",
|
|
||||||
"unsubscribe": "Zet push notificaties uit",
|
|
||||||
"unsupported": "Je browser ondersteunt geen push notificaties.",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "Sluit",
|
|
||||||
"enable_description": "Om notificaties te krijgen terwijl Elk niet open is, zet push notificaties aan. Je kan precies instellen wat voor typen interacties push notificaties genereren via de \"@:notification.settings.show_btn{'\"'} knop hierboven wanneer ze aan staan.",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "Zet push notificaties aan",
|
|
||||||
"enable_title": "Mis niets",
|
|
||||||
"re_auth": "It seems that your server does not support push notifications. Try sign out and sign in again, if this message still appears contact your server administrator."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notifications",
|
|
||||||
"preferences": {
|
|
||||||
"label": "Voorkeuren"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Bio",
|
|
||||||
"description": "Aanpassen van avatar, username, profile, etc.",
|
|
||||||
"display_name": "Zichtbare naam",
|
|
||||||
"label": "Uiterlijk",
|
|
||||||
"profile_metadata": "Profiel metadata",
|
|
||||||
"profile_metadata_desc": "Je kan tot en met 4 elementen als table zetten op je profiel zetten",
|
|
||||||
"title": "Aanpassen profiel"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "Mensen kunnen je publieke posts vinden onder deze hashtags.",
|
|
||||||
"label": "Uitgelichte hashtags"
|
|
||||||
},
|
|
||||||
"label": "Profiel"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Selecteer een instelling",
|
|
||||||
"users": {
|
|
||||||
"export": "Exporteer Gebruikers Tokens",
|
|
||||||
"import": "Importeer Gebruikers Tokens",
|
|
||||||
"label": "Ingelogde gebruikers"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"attachments_exceed_server_limit": "De hoeveelheid bijlage is meer als het limiet per post.",
|
|
||||||
"attachments_limit_error": "Limiet per post overschreden",
|
|
||||||
"edited": "(Aangepast)",
|
|
||||||
"editing": "Aanpassen",
|
|
||||||
"loading": "Laden...",
|
|
||||||
"upload_failed": "Upload gefaald",
|
|
||||||
"uploading": "Uploading..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "Aangepast {0}",
|
|
||||||
"filter_hidden_phrase": "Gefilterd door",
|
|
||||||
"filter_removed_phrase": "Verwijderd door filter",
|
|
||||||
"filter_show_anyway": "Laat toch zien",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Descriptie",
|
|
||||||
"dismiss": "Afwijzen"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} stemmen|{0} stem|{0} stemmen",
|
|
||||||
"ends": "eindigt {0}",
|
|
||||||
"finished": "geëindigd {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} herblogd",
|
|
||||||
"someone": "Iemand",
|
|
||||||
"spoiler_show_less": "Minder zien",
|
|
||||||
"spoiler_show_more": "Meer zien",
|
|
||||||
"try_original_site": "Probeer originele site"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "gecreëerd {0}",
|
|
||||||
"edited": "aangepast {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "Voor jou",
|
|
||||||
"hashtags": "Hashtags",
|
|
||||||
"media": "Media",
|
|
||||||
"news": "Nieuws",
|
|
||||||
"notifications_all": "Alles",
|
|
||||||
"notifications_mention": "Vermelding",
|
|
||||||
"posts": "Posts",
|
|
||||||
"posts_with_replies": "Posts & Reacties"
|
|
||||||
},
|
|
||||||
"tag": {
|
|
||||||
"follow": "Volg",
|
|
||||||
"follow_label": "Volg {0} tag",
|
|
||||||
"unfollow": "Ontvolg",
|
|
||||||
"unfollow_label": "Ontvolg {0} tag"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "in 0 dagen|morgen|in {n} dagen",
|
|
||||||
"day_past": "0 dagen geleden|gisteren|{n} dagen geleden",
|
|
||||||
"hour_future": "in 0 uur|in 1 uur|in {n} uur",
|
|
||||||
"hour_past": "0 uur geleden|1 uur geleden|{n} uur geleden",
|
|
||||||
"just_now": "nu net",
|
|
||||||
"minute_future": "in 0 minuten|in 1 minuut|in {n} minuten",
|
|
||||||
"minute_past": "0 minuten geleden|1 minuut geleden|{n} minuten geleden",
|
|
||||||
"month_future": "in 0 maanden|volgende maand|in {n} maanden",
|
|
||||||
"month_past": "0 maanden geleden|laatste maand|{n} maanden geleden",
|
|
||||||
"second_future": "nu net|in {n} seconden|in {n} seconden",
|
|
||||||
"second_past": "nu net|{n} seconden geleden|{n} seconden geleden",
|
|
||||||
"short_day_future": "in {n}d",
|
|
||||||
"short_day_past": "{n}d",
|
|
||||||
"short_hour_future": "in {n}u",
|
|
||||||
"short_hour_past": "{n}u",
|
|
||||||
"short_minute_future": "in {n}min",
|
|
||||||
"short_minute_past": "{n}min",
|
|
||||||
"short_month_future": "in {n}ma",
|
|
||||||
"short_month_past": "{n}ma",
|
|
||||||
"short_second_future": "in {n}s",
|
|
||||||
"short_second_past": "{n}s",
|
|
||||||
"short_week_future": "in {n}w",
|
|
||||||
"short_week_past": "{n}w",
|
|
||||||
"short_year_future": "in {n}j",
|
|
||||||
"short_year_past": "{n}j",
|
|
||||||
"week_future": "in 0 weken|volgende week|in {n} weken",
|
|
||||||
"week_past": "0 weken geleden|vorige week|{n} weken geleden",
|
|
||||||
"year_future": "in 0 jaar|volgend jaar|in {n} jaar",
|
|
||||||
"year_past": "0 jaar geleden|vorig jaar|{n} jaar geleden"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Laat {v} nieuwe artikelen zien|Laat {v} nieuw artikel zien|Laat {v} nieuwe artikelen zien"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Gefedereerde Tijdlijn",
|
|
||||||
"local_timeline": "Lokale Tijdlijn"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Voeg inhoud waarschuwing toe",
|
|
||||||
"add_media": "Voeg fotos, een video of een audio bestand toe",
|
|
||||||
"change_content_visibility": "Verander inhoud zichtbaarheid",
|
|
||||||
"change_language": "Verander taal",
|
|
||||||
"emoji": "Emoji",
|
|
||||||
"explore_links_intro": "Deze nieuws artikelen worden veel over gepraat op deze en anderen servers op het decentralized network op dit moment.",
|
|
||||||
"explore_posts_intro": "Deze posts van deze en andere servers op het decentralized network krijgen veel aandacht op deze server op dit moment.",
|
|
||||||
"explore_tags_intro": "Deze hashtags krijgen veel aandacht op dit moment op deze en anderen servers op het decentralized network.",
|
|
||||||
"toggle_code_block": "Zet code blok aan/uit"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Voeg een bestaand account toe",
|
|
||||||
"server_address_label": "Mastodon Server Address",
|
|
||||||
"sign_in_desc": "Sign in om profielen te volgen of hashtags, markeer posts als favoriet, deel en reageer op posts, of interact vanaf je account op een anderen server.",
|
|
||||||
"sign_in_notice_title": "Je bekijkt {0} publieke data",
|
|
||||||
"sign_out_account": "Sign out {0}",
|
|
||||||
"tip_no_account": "Als je nog geen Mastodon account hebt, {0}.",
|
|
||||||
"tip_register_account": "kies jou server en registreer een account"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Direct",
|
|
||||||
"direct_desc": "Zichtbaar voor alleen vermelden gebruikers",
|
|
||||||
"private": "Alleen volgers",
|
|
||||||
"private_desc": "Alleen zichtbaar voor volgers",
|
|
||||||
"public": "Publiek",
|
|
||||||
"public_desc": "Zichtbaar voor iedereen",
|
|
||||||
"unlisted": "Niet vermeld",
|
|
||||||
"unlisted_desc": "Zichtbaar voor iedereen, maar kan niet gevonden worden via discovery functies"
|
|
||||||
}
|
|
||||||
}
|
|
344
locales/uk-UA.ftl
Normal file
344
locales/uk-UA.ftl
Normal file
|
@ -0,0 +1,344 @@
|
||||||
|
a11y_loading_page = Завантаження сторінки, будь ласка, зачекайте
|
||||||
|
a11y_loading_titled_page = Завантаження сторінки {$title}, будь ласка, зачекайте
|
||||||
|
a11y_locale_changed = Мову змінено на {$lang}
|
||||||
|
a11y_locale_changing = Зміна мови, будь ласка, зачекайте
|
||||||
|
a11y_route_loaded = Сторінка {$title} завантажена
|
||||||
|
account_avatar_description = Аватар {$username}
|
||||||
|
account_blocked_by = Ви заблоковані цим користувачем.
|
||||||
|
account_blocked_domains = Заблоковані домени
|
||||||
|
account_blocked_users = Заблоковані користувачі
|
||||||
|
account_blocking = Заблоковані
|
||||||
|
account_bot = БОТ
|
||||||
|
account_favourites = Улюблені
|
||||||
|
account_follow = Підписатися
|
||||||
|
account_follow_back = Підписатися
|
||||||
|
account_follow_requested = Запити
|
||||||
|
account_followers = Підписники
|
||||||
|
account_followers_count = { $count ->
|
||||||
|
[one] {$formattedCount} підписник
|
||||||
|
[few] {$formattedCount} підписника
|
||||||
|
*[many] {$formattedCount} підписників
|
||||||
|
}
|
||||||
|
account_following = Підписаний
|
||||||
|
account_following_count = { $count ->
|
||||||
|
[one] {$formattedCount} підписка
|
||||||
|
[few] {$formattedCount} підписки
|
||||||
|
*[many] {$formattedCount} підписок
|
||||||
|
}
|
||||||
|
account_follows_you = Підписаний на вас
|
||||||
|
account_go_to_profile = Перейти до профілю
|
||||||
|
account_joined = Зареєстровано
|
||||||
|
account_moved_title = вказав, що його новий обліковий запис тепер:
|
||||||
|
account_muted_users = Приховані користувачі
|
||||||
|
account_muting = Приховано
|
||||||
|
account_mutuals = Взаємно
|
||||||
|
account_pinned = Закріплені дописи
|
||||||
|
account_posts = Дописи
|
||||||
|
account_posts_count = { $count ->
|
||||||
|
[one] {$formattedCount} допис
|
||||||
|
[few] {$formattedCount} дописи
|
||||||
|
*[many] {$formattedCount} дописів
|
||||||
|
}
|
||||||
|
account_profile_description = Заголовок профілю {$username}
|
||||||
|
account_profile_unavailable = Профіль недоступний
|
||||||
|
account_unblock = Розблокувати
|
||||||
|
account_unfollow = Відписатися
|
||||||
|
account_unmute = Приховати
|
||||||
|
action_apply = Застосувати
|
||||||
|
action_bookmark = Додати в закладки
|
||||||
|
action_bookmarked = Додано з закладки
|
||||||
|
action_boost = Поширити
|
||||||
|
action_boost_count = {0}
|
||||||
|
action_boosted = Поширено
|
||||||
|
action_clear_upload_failed = Очистити помилки завантаження
|
||||||
|
action_close = Закрити
|
||||||
|
action_compose = Написати
|
||||||
|
action_confirm = Підтвердити
|
||||||
|
action_edit = Редагувати
|
||||||
|
action_enter_app = Перейти до додатку
|
||||||
|
action_favourite = Вподобати
|
||||||
|
action_favourite_count = {0}
|
||||||
|
action_favourited = Подобається
|
||||||
|
action_more = Більше
|
||||||
|
action_next = Наступний
|
||||||
|
action_prev = Попередній
|
||||||
|
action_publish = Опублікувати
|
||||||
|
action_reply = Відповісти
|
||||||
|
action_reply_count = {0}
|
||||||
|
action_reset = Скинути
|
||||||
|
action_save = Зберегти
|
||||||
|
action_save_changes = Зберегти зміни
|
||||||
|
action_sign_in = Увійти
|
||||||
|
action_switch_account = Змінити обліковий запис
|
||||||
|
action_vote = Голосувати
|
||||||
|
app_desc_short = Спритний веб-клієнт для Mastodon
|
||||||
|
app_logo = Elk лого
|
||||||
|
app_name = Elk
|
||||||
|
attachment_edit_title = Опис
|
||||||
|
attachment_remove_label = Видалити вкладення
|
||||||
|
command_activate = Активувати
|
||||||
|
command_complete = Вибрати
|
||||||
|
command_compose_desc = Написати новий допис
|
||||||
|
command_n-people-in-the-past-n-days = {$count} користувачів за останні {$days} днів
|
||||||
|
command_select_lang = Змінити мову
|
||||||
|
command_sign_in_desc = Додати існуючий обліковий запис
|
||||||
|
command_switch_account = Змінити обліковий запис на {$username}
|
||||||
|
command_switch_account_desc = Змінити активний обліковий запис
|
||||||
|
command_toggle_dark_mode = Перемкнути темний режим
|
||||||
|
command_toggle_zen_mode = Перемкнути режим Zen
|
||||||
|
common_confirm_dialog_cancel = Відмінити
|
||||||
|
common_confirm_dialog_confirm = Так
|
||||||
|
common_confirm_dialog_title = Ви впевнені?
|
||||||
|
common_end_of_list = Кінець списку
|
||||||
|
common_error = ПОМИЛКА
|
||||||
|
common_in = в
|
||||||
|
common_not_found = 404 Не знайдено
|
||||||
|
common_offline_desc = Схоже, ви відключені від мережі. Будь ласка, перевірте ваше підключення до мережі.
|
||||||
|
compose_draft_title = Чернетка {0}
|
||||||
|
compose_drafts = Чернетки ({$count})
|
||||||
|
conversation_with = з
|
||||||
|
error_account_not_found = Обліковий запис {$username} не знайдено
|
||||||
|
error_explore-list-empty = Зараз нічого не в тренді. Перевірте пізніше!
|
||||||
|
error_file_size_cannot_exceed_n_mb = Розмір файлу не може перевищувати {$size} Мб
|
||||||
|
error_sign_in_error = Не вдалося підключитися до сервера.
|
||||||
|
error_status_not_found = Допис не знайдено
|
||||||
|
error_unsupported_file_format = Непідтримуваний формат файлу
|
||||||
|
help_desc_highlight = Очікуйте деякі помилки та відсутні функції тут і там.
|
||||||
|
help_desc_para1 = Дякуємо за ваш інтерес до випробування Elk, нашого універсального клієнта Mastodon, який ще у розробці!
|
||||||
|
help_desc_para2 = Ми наполегливо працюємо над розробкою та вдосконалюємо його. Ми відкриємо вихідний код, коли він буде готовий для загального використання.
|
||||||
|
help_desc_para3 = Щоб допомогти прискорити розробку, ви можете спонсорувати членів нашої команди за посиланнями нижче. Сподіваємося, вам сподобається Elk!
|
||||||
|
help_desc_para4 = До цього, якщо ви хочете допомогти з тестуванням, надіслати відгук або зробити внесок,
|
||||||
|
help_desc_para5 = зв’яжіться з нами на Mastodon
|
||||||
|
help_desc_para6 = і долучіться.
|
||||||
|
help_title = Elk у попередньому перегляді!
|
||||||
|
language_none = Жодного
|
||||||
|
language_search = Пошук
|
||||||
|
menu_block_account = Заблокувати {$username}
|
||||||
|
menu_block_domain = Заблокувати домен {$domain}
|
||||||
|
menu_copy_link_to_post = Скопіювати посилання на цей допис
|
||||||
|
menu_delete = Видалити
|
||||||
|
menu_delete_and_redraft = Видалити і переписати
|
||||||
|
menu_delete_confirm_cancel = Скасувати
|
||||||
|
menu_delete_confirm_confirm = Видалити
|
||||||
|
menu_delete_confirm_title = Ви впевнені, що хочете видалити цей допис?
|
||||||
|
menu_direct_message_account = Пряме повідомлення {$username}
|
||||||
|
menu_edit = Редагувати
|
||||||
|
menu_mention_account = Згадати {$username}
|
||||||
|
menu_mute_account = Приховати {$username}
|
||||||
|
menu_mute_conversation = Ігнорувати цей допис
|
||||||
|
menu_open_in_original_site = Відкрити на оригінальному сайті
|
||||||
|
menu_pin_on_profile = Закріпити на профілі
|
||||||
|
menu_share_post = Поділіться цим дописом
|
||||||
|
menu_show_untranslated = Показати без перекладу
|
||||||
|
menu_toggle_theme_dark = Увімкнути темний режим
|
||||||
|
menu_toggle_theme_light = Увімкнути світлий режим
|
||||||
|
menu_translate_post = Перекласти допис
|
||||||
|
menu_unblock_account = Розблокувати {$username}
|
||||||
|
menu_unblock_domain = Розблокувати домен {$domain}
|
||||||
|
menu_unmute_account = Не приховувати {$username}
|
||||||
|
menu_unmute_conversation = Не ігнорувати цей допис
|
||||||
|
menu_unpin_on_profile = Відкріпити з профілю
|
||||||
|
nav_back = Назад
|
||||||
|
nav_blocked_domains = Заблоковані домени
|
||||||
|
nav_blocked_users = Заблоковані користувачі
|
||||||
|
nav_bookmarks = Закладки
|
||||||
|
nav_built_at = Оновлено {0}
|
||||||
|
nav_conversations = Прямі повідомлення
|
||||||
|
nav_explore = Огляд
|
||||||
|
nav_favourites = Вподобане
|
||||||
|
nav_federated = Глобальна
|
||||||
|
nav_home = Головна
|
||||||
|
nav_local = Локальна
|
||||||
|
nav_muted_users = Приховані користувачі
|
||||||
|
nav_notifications = Сповіщення
|
||||||
|
nav_profile = Профіль
|
||||||
|
nav_search = Пошук
|
||||||
|
nav_select_feature_flags = Налаштування функцій
|
||||||
|
nav_select_font_size = Вибрати розмір шрифту
|
||||||
|
nav_select_language = Вибрати мову
|
||||||
|
nav_settings = Налаштування
|
||||||
|
nav_show_intro = Показати інтро
|
||||||
|
nav_toggle_theme = Змінити тему
|
||||||
|
nav_zen_mode = Zen-режим
|
||||||
|
notification_favourited_post = додали ваший допис до вибраного
|
||||||
|
notification_followed_you = підписались на вас
|
||||||
|
notification_followed_you_count = {0} людей підписалися на вас|{0} людина підписалися на вас|{0} людини підписалися на вас|{0} людей підписалися на вас
|
||||||
|
notification_missing_type = ВІДСУТНІЙ notification.type:
|
||||||
|
notification_reblogged_post = поширили ваш допис
|
||||||
|
notification_request_to_follow = попросили підписатися на вас
|
||||||
|
notification_signed_up = зареєструвалися
|
||||||
|
notification_update_status = оновили свою публікацію
|
||||||
|
placeholder_content_warning = Напишіть ваше попередження тут
|
||||||
|
placeholder_default_1 = Що у вас на думці?
|
||||||
|
placeholder_reply_to_account = Відповісти {0}
|
||||||
|
placeholder_replying = Відповідь
|
||||||
|
placeholder_the_thread = нитка
|
||||||
|
pwa_dismiss = Закрити
|
||||||
|
pwa_title = Доступна нова версія Elk!
|
||||||
|
pwa_update = Оновити
|
||||||
|
pwa_update_available_short = Оновити Elk
|
||||||
|
search_search_desc = Пошук користувачів та хештеґів
|
||||||
|
search_search_empty = Не вдалося знайти нічого, що відповідає цим пошуковим термінам
|
||||||
|
settings_about_label = Про нас
|
||||||
|
settings_account_settings_description = Відредагуйте налаштування облікового запису використовуєчи інтерфейс Mastodon
|
||||||
|
settings_account_settings_label = Налаштування облікового запису
|
||||||
|
settings_feature_flags_github_cards = GitHub картки
|
||||||
|
settings_feature_flags_title = Експериментальні налаштування
|
||||||
|
settings_interface_color_mode = Кольорова тема
|
||||||
|
settings_interface_dark_mode = Темна
|
||||||
|
settings_interface_default = (за замовчуванням)
|
||||||
|
settings_interface_font_size = Розмір шрифта
|
||||||
|
settings_interface_label = Інтерфейс
|
||||||
|
settings_interface_light_mode = Світла
|
||||||
|
settings_interface_size_label_lg = Великий
|
||||||
|
settings_interface_size_label_md = Середній
|
||||||
|
settings_interface_size_label_sm = Малий
|
||||||
|
settings_interface_size_label_xl = Дуже великий
|
||||||
|
settings_interface_size_label_xs = Дуже малий
|
||||||
|
settings_language_display_language = Мова інтерфейсу
|
||||||
|
settings_language_label = Мова
|
||||||
|
settings_notifications_label = Сповіщення
|
||||||
|
settings_notifications_notifications_label = Налаштування сповіщень
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = Вподобання
|
||||||
|
settings_notifications_push_notifications_alerts_follow = Нові підписники
|
||||||
|
settings_notifications_push_notifications_alerts_mention = Згадки
|
||||||
|
settings_notifications_push_notifications_alerts_poll = Опитування
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = Поширення вашого допису
|
||||||
|
settings_notifications_push_notifications_alerts_title = Які сповіщення отримувати?
|
||||||
|
settings_notifications_push_notifications_description = Отримуйте сповіщення, навіть якщо ви не використовуєте Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Не забудьте зберегти зміни за допомогою кнопки "@:settings.notifications.push_notifications.save_settings{'"'}!
|
||||||
|
settings_notifications_push_notifications_label = Налаштування push-сповіщень
|
||||||
|
settings_notifications_push_notifications_policy_all = Від будь-кого
|
||||||
|
settings_notifications_push_notifications_policy_followed = Людей, за якими я стежу
|
||||||
|
settings_notifications_push_notifications_policy_follower = Людей, які слідкують за мною
|
||||||
|
settings_notifications_push_notifications_policy_none = Ні від кого
|
||||||
|
settings_notifications_push_notifications_policy_title = Від кого отримувати сповіщення?
|
||||||
|
settings_notifications_push_notifications_save_settings = Зберегти налаштування
|
||||||
|
settings_notifications_push_notifications_subscription_error_clear_error = Очистити помилку
|
||||||
|
settings_notifications_push_notifications_subscription_error_permission_denied = У дозволі відмовлено: увімкніть сповіщення у своєму браузері.
|
||||||
|
settings_notifications_push_notifications_subscription_error_request_error = Під час запиту на підписку сталася помилка. Повторіть спробу, а якщо помилка не зникне, повідомте про проблему в репозиторій Elk.
|
||||||
|
settings_notifications_push_notifications_subscription_error_title = Не вдалося підписатися на push-сповіщення
|
||||||
|
settings_notifications_push_notifications_undo_settings = Скасувати зміни
|
||||||
|
settings_notifications_push_notifications_unsubscribe = Вимкнути push-сповіщення
|
||||||
|
settings_notifications_push_notifications_unsupported = Ваш браузер не підтримує push-сповіщення.
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = Закрити
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = Щоб отримувати сповіщення, коли Elk не відкрито, увімкніть push-сповіщення. Ви можете контролювати, які саме типи сповіщень генерують push-повідомлення, за допомогою кнопки "@:settings.notifications.show_btn{'"'} після ввімкнення.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = Увімкнути push-повідомлення
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = Ніколи нічого не пропускайте
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = Здається, ваш сервер не підтримує push-повідомлення. Спробуйте вийти та увійти знову, якщо це повідомлення все одно з’являється, зверніться до адміністратора свого сервера.
|
||||||
|
settings_notifications_show_btn = Перейти до налаштувань сповіщень
|
||||||
|
settings_notifications_settings = Сповіщення
|
||||||
|
settings_preferences_label = Налаштування
|
||||||
|
settings_profile_appearance_bio = Про Вас
|
||||||
|
settings_profile_appearance_description = Редагувати аватар, ім'я, профіль, тощо.
|
||||||
|
settings_profile_appearance_display_name = Ім'я
|
||||||
|
settings_profile_appearance_label = Вигляд
|
||||||
|
settings_profile_appearance_profile_metadata = Метадані профілю
|
||||||
|
settings_profile_appearance_profile_metadata_desc = У вашому профілі можна відображати до 4 елементів у вигляді таблиці
|
||||||
|
settings_profile_appearance_title = Редагувати профіль
|
||||||
|
settings_profile_featured_tags_description = Користувачі можуть фільтрувати ваші загальнодоступні дописи за цими хештеґами.
|
||||||
|
settings_profile_featured_tags_label = Рекомендовані хештеґи
|
||||||
|
settings_profile_label = Профіль
|
||||||
|
settings_select_a_settings = Виберіть налаштування
|
||||||
|
settings_users_export = Експортувати токени користувачів
|
||||||
|
settings_users_import = Імпортувати токени користувачів
|
||||||
|
settings_users_label = Користувачі
|
||||||
|
state_attachments_exceed_server_limit = Кількість вкладених файлів перевищила ліміт на допис.
|
||||||
|
state_attachments_limit_error = Перевищено максимальну кількість вкладень
|
||||||
|
state_edited = (Відредаговано)
|
||||||
|
state_editing = Редагування
|
||||||
|
state_loading = Завантаження...
|
||||||
|
state_upload_failed = Помилка завантаження
|
||||||
|
state_uploading = Завантаження...
|
||||||
|
status_edited = Редаговано {$date}
|
||||||
|
status_filter_hidden_phrase = Відфільтровано
|
||||||
|
status_filter_removed_phrase = Видалено фільтром
|
||||||
|
status_filter_show_anyway = Показати все одно
|
||||||
|
status_img_alt_desc = Опис зображення
|
||||||
|
status_img_alt_dismiss = Закрити
|
||||||
|
status_poll_count = {0} голосів|{0} голос|{0} голоси|{0} голосів
|
||||||
|
status_poll_ends = завершується {0}
|
||||||
|
status_poll_finished = зевершилось {0}
|
||||||
|
status_reblogged = {0} поширив
|
||||||
|
status_replying_to = Відповідає {0}
|
||||||
|
status_show_full_thread = Показати потік дописів
|
||||||
|
status_someone = комусь
|
||||||
|
status_spoiler_show_less = Показувати менше
|
||||||
|
status_spoiler_show_more = Показати більше
|
||||||
|
status_try_original_site = Спробуйте оригінальний сайт
|
||||||
|
status_history_created = створено {0}
|
||||||
|
status_history_edited = редаговано {$date}
|
||||||
|
tab_for_you = Для вас
|
||||||
|
tab_hashtags = Хештеґи
|
||||||
|
tab_media = Медіа
|
||||||
|
tab_news = Новини
|
||||||
|
tab_notifications_all = Усі
|
||||||
|
tab_notifications_mention = Згадки
|
||||||
|
tab_posts = Дописи
|
||||||
|
tab_posts_with_replies = Дописи та відповіді
|
||||||
|
tag_follow = Стежити
|
||||||
|
tag_follow_label = Стежити за хештеґом {$tag}
|
||||||
|
tag_unfollow = Не стежити
|
||||||
|
tag_unfollow_label = Не стежити за хештеґом {$tag}
|
||||||
|
time_ago_options_day_future = { $n ->
|
||||||
|
[1] завтра
|
||||||
|
[one] через {$n} день
|
||||||
|
[few] через {$n} дні
|
||||||
|
*[many] через {$n} днів
|
||||||
|
}
|
||||||
|
time_ago_options_day_past = {n} днів тому|{n} день тому|{n} дні тому|{n} днів тому
|
||||||
|
time_ago_options_hour_future = через {n} годин|через {n} годину|через {n} години|через {n} годин
|
||||||
|
time_ago_options_hour_past = {n} годин тому|{n} годину тому|{n} години тому|{n} годин тому
|
||||||
|
time_ago_options_just_now = тільки що
|
||||||
|
time_ago_options_minute_future = через {n} хвилин|через {n} хвилину|через {n} хвилини|через {n} хвилин
|
||||||
|
time_ago_options_minute_past = {n} хвилин тому|{n} хвилину тому|{n} хвилини тому|{n} хвилин тому
|
||||||
|
time_ago_options_month_future = через {n} місяців|через {n} місяць|через {n} місяці|через {n} місяців
|
||||||
|
time_ago_options_month_past = {n} місяців тому|{n} місяць тому|{n} місяці тому|{n} місяців тому
|
||||||
|
time_ago_options_second_future = тільки що|через {n} секунду|через {n} секунди|через {n} секунд
|
||||||
|
time_ago_options_second_past = тільки що|{n} секунду тому|{n} секунди тому|{n} секунд тому
|
||||||
|
time_ago_options_short_day_future = через {n}дн
|
||||||
|
time_ago_options_short_day_past = {n}дн
|
||||||
|
time_ago_options_short_hour_future = через {n}год
|
||||||
|
time_ago_options_short_hour_past = {$n}год
|
||||||
|
time_ago_options_short_minute_future = через {n}хв
|
||||||
|
time_ago_options_short_minute_past = {$n}хв
|
||||||
|
time_ago_options_short_month_future = через {n}міс
|
||||||
|
time_ago_options_short_month_past = {n}міс
|
||||||
|
time_ago_options_short_second_future = через {n}сек
|
||||||
|
time_ago_options_short_second_past = {n}сек
|
||||||
|
time_ago_options_short_week_future = через {n}тиж
|
||||||
|
time_ago_options_short_week_past = {n}тиж
|
||||||
|
time_ago_options_short_year_future = через {n}р
|
||||||
|
time_ago_options_short_year_past = {n}р
|
||||||
|
time_ago_options_week_future = через {n} тижнів|через {n} тиждень|через {n} тижні|через {n} тижнів
|
||||||
|
time_ago_options_week_past = {n} тижнів тому|{n} тиждень тому|{n} тижні тому|{n} тижнів тому
|
||||||
|
time_ago_options_year_future = через {n} років|через {n} рік|через {n} роки|через {n} років
|
||||||
|
time_ago_options_year_past = {n} років тому|{n} рік тому|{n} роки тому|{n} років тому
|
||||||
|
timeline_show_new_items = Показати {v} нових дописів|Показати {v} новий допис|Показати {v} нових дописи|Показати {v} нових дописів
|
||||||
|
timeline_view_older_posts = Старіші дописи з інших серверів можуть не відображатися.
|
||||||
|
title_federated_timeline = Глобальна стрічка
|
||||||
|
title_local_timeline = Локальна стрічка
|
||||||
|
tooltip_add_content_warning = Додати попередження про вміст
|
||||||
|
tooltip_add_media = Додати зображення, відео або аудіо
|
||||||
|
tooltip_change_content_visibility = Змінити видимість вмісту
|
||||||
|
tooltip_change_language = Змінити мову
|
||||||
|
tooltip_emoji = Емоджі
|
||||||
|
tooltip_explore_links_intro = Ці новини розповідають історії про людей на цих та інших серверах децентралізованої мережі прямо зараз.
|
||||||
|
tooltip_explore_posts_intro = Ці дописи з цього та інших серверів децентралізованої мережі зараз набирають популярності на цьому сервері.
|
||||||
|
tooltip_explore_tags_intro = Ці хештеґи зараз набирають популярності серед людей на цьому та інших серверах децентралізованої мережі.
|
||||||
|
tooltip_toggle_code_block = Блок коду
|
||||||
|
user_add_existing = Додати аккаунт
|
||||||
|
user_server_address_label = Адреса серверу Mastodon
|
||||||
|
user_sign_in_desc = Увійдіть, щоб слідкувати за профілями або хештеґами, додавати до обраного, розповсюджувати і відповідати на дописи, або взаємодіяти з вашого аккаунту на іншому сервері.
|
||||||
|
user_sign_in_notice_title = Перегляд публічних даних {0}
|
||||||
|
user_sign_out_account = Вийти з {$username}
|
||||||
|
user_tip_no_account = Якщо у вас ще немає аккаунту Mastodon, {0}.
|
||||||
|
user_tip_register_account = оберіть сервер і зареєструйтесь
|
||||||
|
visibility_direct = Лише згадані користувачі
|
||||||
|
visibility_direct_desc = Показати лише згаданим користувачам
|
||||||
|
visibility_private = Тільки для підписників
|
||||||
|
visibility_private_desc = Показати лише підписникам
|
||||||
|
visibility_public = Публічно
|
||||||
|
visibility_public_desc = Видимий для всіх
|
||||||
|
visibility_unlisted = Прихований
|
||||||
|
visibility_unlisted_desc = Видимий для всіх, але не через можливості виявлення
|
|
@ -1,433 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "Завантаження сторінки, будь ласка, зачекайте",
|
|
||||||
"loading_titled_page": "Завантаження сторінки {0}, будь ласка, зачекайте",
|
|
||||||
"locale_changed": "Мову змінено на {0}",
|
|
||||||
"locale_changing": "Зміна мови, будь ласка, зачекайте",
|
|
||||||
"route_loaded": "Сторінка {0} завантажена"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "Аватар {0}",
|
|
||||||
"blocked_by": "Ви заблоковані цим користувачем.",
|
|
||||||
"blocked_domains": "Заблоковані домени",
|
|
||||||
"blocked_users": "Заблоковані користувачі",
|
|
||||||
"blocking": "Заблоковані",
|
|
||||||
"bot": "БОТ",
|
|
||||||
"favourites": "Улюблені",
|
|
||||||
"follow": "Підписатися",
|
|
||||||
"follow_back": "Підписатися",
|
|
||||||
"follow_requested": "Запити",
|
|
||||||
"followers": "Підписники",
|
|
||||||
"followers_count": "{0} підписників|{0} підписник|{0} підписники|{0} підписників",
|
|
||||||
"following": "Підписаний",
|
|
||||||
"following_count": "{0} підписок",
|
|
||||||
"follows_you": "Підписаний на вас",
|
|
||||||
"go_to_profile": "Перейти до профілю",
|
|
||||||
"joined": "Зареєстровано",
|
|
||||||
"moved_title": "вказав, що його новий обліковий запис тепер:",
|
|
||||||
"muted_users": "Приховані користувачі",
|
|
||||||
"muting": "Приховано",
|
|
||||||
"mutuals": "Взаємно",
|
|
||||||
"pinned": "Закріплені дописи",
|
|
||||||
"posts": "Дописи",
|
|
||||||
"posts_count": "{0} дописів|{0} допис|{0} дописи|{0} дописів",
|
|
||||||
"profile_description": "Заголовок профілю {0}",
|
|
||||||
"profile_unavailable": "Профіль недоступний",
|
|
||||||
"unblock": "Розблокувати",
|
|
||||||
"unfollow": "Відписатися",
|
|
||||||
"unmute": "Приховати"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "Застосувати",
|
|
||||||
"bookmark": "Додати в закладки",
|
|
||||||
"bookmarked": "Додано з закладки",
|
|
||||||
"boost": "Поширити",
|
|
||||||
"boost_count": "{0}",
|
|
||||||
"boosted": "Поширено",
|
|
||||||
"clear_upload_failed": "Очистити помилки завантаження",
|
|
||||||
"close": "Закрити",
|
|
||||||
"compose": "Написати",
|
|
||||||
"confirm": "Підтвердити",
|
|
||||||
"edit": "Редагувати",
|
|
||||||
"enter_app": "Перейти до додатку",
|
|
||||||
"favourite": "Вподобати",
|
|
||||||
"favourite_count": "{0}",
|
|
||||||
"favourited": "Подобається",
|
|
||||||
"more": "Більше",
|
|
||||||
"next": "Наступний",
|
|
||||||
"prev": "Попередній",
|
|
||||||
"publish": "Опублікувати",
|
|
||||||
"reply": "Відповісти",
|
|
||||||
"reply_count": "{0}",
|
|
||||||
"reset": "Скинути",
|
|
||||||
"save": "Зберегти",
|
|
||||||
"save_changes": "Зберегти зміни",
|
|
||||||
"sign_in": "Увійти",
|
|
||||||
"switch_account": "Змінити обліковий запис",
|
|
||||||
"vote": "Голосувати"
|
|
||||||
},
|
|
||||||
"app_desc_short": "Спритний веб-клієнт для Mastodon",
|
|
||||||
"app_logo": "Elk лого",
|
|
||||||
"app_name": "Elk",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "Опис",
|
|
||||||
"remove_label": "Видалити вкладення"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "Активувати",
|
|
||||||
"complete": "Вибрати",
|
|
||||||
"compose_desc": "Написати новий допис",
|
|
||||||
"n-people-in-the-past-n-days": "{0} користувачів за останні {1} днів",
|
|
||||||
"select_lang": "Змінити мову",
|
|
||||||
"sign_in_desc": "Додати існуючий обліковий запис",
|
|
||||||
"switch_account": "Змінити обліковий запис на {0}",
|
|
||||||
"switch_account_desc": "Змінити активний обліковий запис",
|
|
||||||
"toggle_dark_mode": "Перемкнути темний режим",
|
|
||||||
"toggle_zen_mode": "Перемкнути режим Zen"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"confirm_dialog": {
|
|
||||||
"cancel": "Відмінити",
|
|
||||||
"confirm": "Так",
|
|
||||||
"title": "Ви впевнені?"
|
|
||||||
},
|
|
||||||
"end_of_list": "Кінець списку",
|
|
||||||
"error": "ПОМИЛКА",
|
|
||||||
"in": "в",
|
|
||||||
"not_found": "404 Не знайдено",
|
|
||||||
"offline_desc": "Схоже, ви відключені від мережі. Будь ласка, перевірте ваше підключення до мережі."
|
|
||||||
},
|
|
||||||
"compose": {
|
|
||||||
"draft_title": "Чернетка {0}",
|
|
||||||
"drafts": "Чернетки ({v})"
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "з"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "Обліковий запис {0} не знайдено",
|
|
||||||
"explore-list-empty": "Зараз нічого не в тренді. Перевірте пізніше!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "Розмір файлу не може перевищувати {0} Мб",
|
|
||||||
"sign_in_error": "Не вдалося підключитися до сервера.",
|
|
||||||
"status_not_found": "Допис не знайдено",
|
|
||||||
"unsupported_file_format": "Непідтримуваний формат файлу"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "Очікуйте деякі помилки та відсутні функції тут і там.",
|
|
||||||
"desc_para1": "Дякуємо за ваш інтерес до випробування Elk, нашого універсального клієнта Mastodon, який ще у розробці!",
|
|
||||||
"desc_para2": "Ми наполегливо працюємо над розробкою та вдосконалюємо його. Ми відкриємо вихідний код, коли він буде готовий для загального використання.",
|
|
||||||
"desc_para3": "Щоб допомогти прискорити розробку, ви можете спонсорувати членів нашої команди за посиланнями нижче. Сподіваємося, вам сподобається Elk!",
|
|
||||||
"desc_para4": "До цього, якщо ви хочете допомогти з тестуванням, надіслати відгук або зробити внесок,",
|
|
||||||
"desc_para5": "зв’яжіться з нами на Mastodon",
|
|
||||||
"desc_para6": "і долучіться.",
|
|
||||||
"title": "Elk у попередньому перегляді!"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"none": "Жодного",
|
|
||||||
"search": "Пошук"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "Заблокувати {0}",
|
|
||||||
"block_domain": "Заблокувати домен {0}",
|
|
||||||
"copy_link_to_post": "Скопіювати посилання на цей допис",
|
|
||||||
"delete": "Видалити",
|
|
||||||
"delete_and_redraft": "Видалити і переписати",
|
|
||||||
"delete_confirm": {
|
|
||||||
"cancel": "Скасувати",
|
|
||||||
"confirm": "Видалити",
|
|
||||||
"title": "Ви впевнені, що хочете видалити цей допис?"
|
|
||||||
},
|
|
||||||
"direct_message_account": "Пряме повідомлення {0}",
|
|
||||||
"edit": "Редагувати",
|
|
||||||
"mention_account": "Згадати {0}",
|
|
||||||
"mute_account": "Приховати {0}",
|
|
||||||
"mute_conversation": "Ігнорувати цей допис",
|
|
||||||
"open_in_original_site": "Відкрити на оригінальному сайті",
|
|
||||||
"pin_on_profile": "Закріпити на профілі",
|
|
||||||
"share_post": "Поділіться цим дописом",
|
|
||||||
"show_untranslated": "Показати без перекладу",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "Увімкнути темний режим",
|
|
||||||
"light": "Увімкнути світлий режим"
|
|
||||||
},
|
|
||||||
"translate_post": "Перекласти допис",
|
|
||||||
"unblock_account": "Розблокувати {0}",
|
|
||||||
"unblock_domain": "Розблокувати домен {0}",
|
|
||||||
"unmute_account": "Не приховувати {0}",
|
|
||||||
"unmute_conversation": "Не ігнорувати цей допис",
|
|
||||||
"unpin_on_profile": "Відкріпити з профілю"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"back": "Назад",
|
|
||||||
"blocked_domains": "Заблоковані домени",
|
|
||||||
"blocked_users": "Заблоковані користувачі",
|
|
||||||
"bookmarks": "Закладки",
|
|
||||||
"built_at": "Оновлено {0}",
|
|
||||||
"conversations": "Прямі повідомлення",
|
|
||||||
"explore": "Огляд",
|
|
||||||
"favourites": "Вподобане",
|
|
||||||
"federated": "Глобальна",
|
|
||||||
"home": "Головна",
|
|
||||||
"local": "Локальна",
|
|
||||||
"muted_users": "Приховані користувачі",
|
|
||||||
"notifications": "Сповіщення",
|
|
||||||
"profile": "Профіль",
|
|
||||||
"search": "Пошук",
|
|
||||||
"select_feature_flags": "Налаштування функцій",
|
|
||||||
"select_font_size": "Вибрати розмір шрифту",
|
|
||||||
"select_language": "Вибрати мову",
|
|
||||||
"settings": "Налаштування",
|
|
||||||
"show_intro": "Показати інтро",
|
|
||||||
"toggle_theme": "Змінити тему",
|
|
||||||
"zen_mode": "Zen-режим"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "додали ваший допис до вибраного",
|
|
||||||
"followed_you": "підписались на вас",
|
|
||||||
"followed_you_count": "{0} людей підписалися на вас|{0} людина підписалися на вас|{0} людини підписалися на вас|{0} людей підписалися на вас",
|
|
||||||
"missing_type": "ВІДСУТНІЙ notification.type:",
|
|
||||||
"reblogged_post": "поширили ваш допис",
|
|
||||||
"request_to_follow": "попросили підписатися на вас",
|
|
||||||
"signed_up": "зареєструвалися",
|
|
||||||
"update_status": "оновили свою публікацію"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "Напишіть ваше попередження тут",
|
|
||||||
"default_1": "Що у вас на думці?",
|
|
||||||
"reply_to_account": "Відповісти {0}",
|
|
||||||
"replying": "Відповідь",
|
|
||||||
"the_thread": "нитка"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "Закрити",
|
|
||||||
"title": "Доступна нова версія Elk!",
|
|
||||||
"update": "Оновити",
|
|
||||||
"update_available_short": "Оновити Elk"
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "Пошук користувачів та хештеґів",
|
|
||||||
"search_empty": "Не вдалося знайти нічого, що відповідає цим пошуковим термінам"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "Про нас"
|
|
||||||
},
|
|
||||||
"account_settings": {
|
|
||||||
"description": "Відредагуйте налаштування облікового запису використовуєчи інтерфейс Mastodon",
|
|
||||||
"label": "Налаштування облікового запису"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub картки",
|
|
||||||
"title": "Експериментальні налаштування"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "Кольорова тема",
|
|
||||||
"dark_mode": "Темна",
|
|
||||||
"default": " (за замовчуванням)",
|
|
||||||
"font_size": "Розмір шрифта",
|
|
||||||
"label": "Інтерфейс",
|
|
||||||
"light_mode": "Світла",
|
|
||||||
"size_label": {
|
|
||||||
"lg": "Великий",
|
|
||||||
"md": "Середній",
|
|
||||||
"sm": "Малий",
|
|
||||||
"xl": "Дуже великий",
|
|
||||||
"xs": "Дуже малий"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "Мова інтерфейсу",
|
|
||||||
"label": "Мова"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Сповіщення",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Налаштування сповіщень"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "Вподобання",
|
|
||||||
"follow": "Нові підписники",
|
|
||||||
"mention": "Згадки",
|
|
||||||
"poll": "Опитування",
|
|
||||||
"reblog": "Поширення вашого допису",
|
|
||||||
"title": "Які сповіщення отримувати?"
|
|
||||||
},
|
|
||||||
"description": "Отримуйте сповіщення, навіть якщо ви не використовуєте Elk.",
|
|
||||||
"instructions": "Не забудьте зберегти зміни за допомогою кнопки \"@:settings.notifications.push_notifications.save_settings{'\"'}!",
|
|
||||||
"label": "Налаштування push-сповіщень",
|
|
||||||
"policy": {
|
|
||||||
"all": "Від будь-кого",
|
|
||||||
"followed": "Людей, за якими я стежу",
|
|
||||||
"follower": "Людей, які слідкують за мною",
|
|
||||||
"none": "Ні від кого",
|
|
||||||
"title": "Від кого отримувати сповіщення?"
|
|
||||||
},
|
|
||||||
"save_settings": "Зберегти налаштування",
|
|
||||||
"subscription_error": {
|
|
||||||
"clear_error": "Очистити помилку",
|
|
||||||
"permission_denied": "У дозволі відмовлено: увімкніть сповіщення у своєму браузері.",
|
|
||||||
"request_error": "Під час запиту на підписку сталася помилка. Повторіть спробу, а якщо помилка не зникне, повідомте про проблему в репозиторій Elk.",
|
|
||||||
"title": "Не вдалося підписатися на push-сповіщення"
|
|
||||||
},
|
|
||||||
"undo_settings": "Скасувати зміни",
|
|
||||||
"unsubscribe": "Вимкнути push-сповіщення",
|
|
||||||
"unsupported": "Ваш браузер не підтримує push-сповіщення.",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "Закрити",
|
|
||||||
"enable_description": "Щоб отримувати сповіщення, коли Elk не відкрито, увімкніть push-сповіщення. Ви можете контролювати, які саме типи сповіщень генерують push-повідомлення, за допомогою кнопки \"@:settings.notifications.show_btn{'\"'} після ввімкнення.",
|
|
||||||
"enable_desktop": "Увімкнути push-повідомлення",
|
|
||||||
"enable_title": "Ніколи нічого не пропускайте",
|
|
||||||
"re_auth": "Здається, ваш сервер не підтримує push-повідомлення. Спробуйте вийти та увійти знову, якщо це повідомлення все одно з’являється, зверніться до адміністратора свого сервера."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Перейти до налаштувань сповіщень"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Сповіщення",
|
|
||||||
"preferences": {
|
|
||||||
"label": "Налаштування"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "Про Вас",
|
|
||||||
"description": "Редагувати аватар, ім'я, профіль, тощо.",
|
|
||||||
"display_name": "Ім'я",
|
|
||||||
"label": "Вигляд",
|
|
||||||
"profile_metadata": "Метадані профілю",
|
|
||||||
"profile_metadata_desc": "У вашому профілі можна відображати до 4 елементів у вигляді таблиці",
|
|
||||||
"title": "Редагувати профіль"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "Користувачі можуть фільтрувати ваші загальнодоступні дописи за цими хештеґами.",
|
|
||||||
"label": "Рекомендовані хештеґи"
|
|
||||||
},
|
|
||||||
"label": "Профіль"
|
|
||||||
},
|
|
||||||
"select_a_settings": "Виберіть налаштування",
|
|
||||||
"users": {
|
|
||||||
"export": "Експортувати токени користувачів",
|
|
||||||
"import": "Імпортувати токени користувачів",
|
|
||||||
"label": "Користувачі"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"attachments_exceed_server_limit": "Кількість вкладених файлів перевищила ліміт на допис.",
|
|
||||||
"attachments_limit_error": "Перевищено максимальну кількість вкладень",
|
|
||||||
"edited": "(Відредаговано)",
|
|
||||||
"editing": "Редагування",
|
|
||||||
"loading": "Завантаження...",
|
|
||||||
"upload_failed": "Помилка завантаження",
|
|
||||||
"uploading": "Завантаження..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "Редаговано {0}",
|
|
||||||
"filter_hidden_phrase": "Відфільтровано",
|
|
||||||
"filter_removed_phrase": "Видалено фільтром",
|
|
||||||
"filter_show_anyway": "Показати все одно",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "Опис зображення",
|
|
||||||
"dismiss": "Закрити"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} голосів|{0} голос|{0} голоси|{0} голосів",
|
|
||||||
"ends": "завершується {0}",
|
|
||||||
"finished": "зевершилось {0}"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} поширив",
|
|
||||||
"replying_to": "Відповідає {0}",
|
|
||||||
"show_full_thread": "Показати потік дописів",
|
|
||||||
"someone": "комусь",
|
|
||||||
"spoiler_show_less": "Показувати менше",
|
|
||||||
"spoiler_show_more": "Показати більше",
|
|
||||||
"try_original_site": "Спробуйте оригінальний сайт"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "створено {0}",
|
|
||||||
"edited": "редаговано {0}"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "Для вас",
|
|
||||||
"hashtags": "Хештеґи",
|
|
||||||
"media": "Медіа",
|
|
||||||
"news": "Новини",
|
|
||||||
"notifications_all": "Усі",
|
|
||||||
"notifications_mention": "Згадки",
|
|
||||||
"posts": "Дописи",
|
|
||||||
"posts_with_replies": "Дописи та відповіді"
|
|
||||||
},
|
|
||||||
"tag": {
|
|
||||||
"follow": "Стежити",
|
|
||||||
"follow_label": "Стежити за хештеґом {0}",
|
|
||||||
"unfollow": "Не стежити",
|
|
||||||
"unfollow_label": "Не стежити за хештеґом {0}"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "через {n} днів|через {n} день|через {n} дні|через {n} днів",
|
|
||||||
"day_past": "{n} днів томо|{n} день тому|{n} дні тому|{n} днів тому",
|
|
||||||
"hour_future": "через {n} годин|через {n} годину|через {n} години|через {n} годин",
|
|
||||||
"hour_past": "{n} годин тому|{n} годину тому|{n} години тому|{n} годин тому",
|
|
||||||
"just_now": "тільки що",
|
|
||||||
"minute_future": "через {n} хвилин|через {n} хвилину|через {n} хвилини|через {n} хвилин",
|
|
||||||
"minute_past": "{n} хвилин тому|{n} хвилину тому|{n} хвилини тому|{n} хвилин тому",
|
|
||||||
"month_future": "через {n} місяців|через {n} місяць|через {n} місяці|через {n} місяців",
|
|
||||||
"month_past": "{n} місяців тому|{n} місяць тому|{n} місяці тому|{n} місяців тому",
|
|
||||||
"second_future": "тільки що|через {n} секунду|через {n} секунди|через {n} секунд",
|
|
||||||
"second_past": "тільки що|{n} секунду тому|{n} секунди тому|{n} секунд тому",
|
|
||||||
"short_day_future": "через {n}дн",
|
|
||||||
"short_day_past": "{n}дн",
|
|
||||||
"short_hour_future": "через {n}год",
|
|
||||||
"short_hour_past": "{n}год",
|
|
||||||
"short_minute_future": "через {n}хв",
|
|
||||||
"short_minute_past": "{n}хв",
|
|
||||||
"short_month_future": "через {n}міс",
|
|
||||||
"short_month_past": "{n}міс",
|
|
||||||
"short_second_future": "через {n}сек",
|
|
||||||
"short_second_past": "{n}сек",
|
|
||||||
"short_week_future": "через {n}тиж",
|
|
||||||
"short_week_past": "{n}тиж",
|
|
||||||
"short_year_future": "через {n}р",
|
|
||||||
"short_year_past": "{n}р",
|
|
||||||
"week_future": "через {n} тижнів|через {n} тиждень|через {n} тижні|через {n} тижнів",
|
|
||||||
"week_past": "{n} тижнів тому|{n} тиждень тому|{n} тижні тому|{n} тижнів тому",
|
|
||||||
"year_future": "через {n} років|через {n} рік|через {n} роки|через {n} років",
|
|
||||||
"year_past": "{n} років тому|{n} рік тому|{n} роки тому|{n} років тому"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "Показати {v} нових дописів|Показати {v} новий допис|Показати {v} нових дописи|Показати {v} нових дописів",
|
|
||||||
"view_older_posts": "Старіші дописи з інших серверів можуть не відображатися."
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "Глобальна стрічка",
|
|
||||||
"local_timeline": "Локальна стрічка"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "Додати попередження про вміст",
|
|
||||||
"add_media": "Додати зображення, відео або аудіо",
|
|
||||||
"change_content_visibility": "Змінити видимість вмісту",
|
|
||||||
"change_language": "Змінити мову",
|
|
||||||
"emoji": "Емоджі",
|
|
||||||
"explore_links_intro": "Ці новини розповідають історії про людей на цих та інших серверах децентралізованої мережі прямо зараз.",
|
|
||||||
"explore_posts_intro": "Ці дописи з цього та інших серверів децентралізованої мережі зараз набирають популярності на цьому сервері.",
|
|
||||||
"explore_tags_intro": "Ці хештеґи зараз набирають популярності серед людей на цьому та інших серверах децентралізованої мережі.",
|
|
||||||
"toggle_code_block": "Блок коду"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "Додати аккаунт",
|
|
||||||
"server_address_label": "Адреса серверу Mastodon",
|
|
||||||
"sign_in_desc": "Увійдіть, щоб слідкувати за профілями або хештеґами, додавати до обраного, розповсюджувати і відповідати на дописи, або взаємодіяти з вашого аккаунту на іншому сервері.",
|
|
||||||
"sign_in_notice_title": "Перегляд публічних даних {0}",
|
|
||||||
"sign_out_account": "Вийти з {0}",
|
|
||||||
"tip_no_account": "Якщо у вас ще немає аккаунту Mastodon, {0}.",
|
|
||||||
"tip_register_account": "оберіть сервер і зареєструйтесь"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "Лише згадані користувачі",
|
|
||||||
"direct_desc": "Показати лише згаданим користувачам",
|
|
||||||
"private": "Тільки для підписників",
|
|
||||||
"private_desc": "Показати лише підписникам",
|
|
||||||
"public": "Публічно",
|
|
||||||
"public_desc": "Видимий для всіх",
|
|
||||||
"unlisted": "Прихований",
|
|
||||||
"unlisted_desc": "Видимий для всіх, але не через можливості виявлення"
|
|
||||||
}
|
|
||||||
}
|
|
315
locales/zh-CN.ftl
Normal file
315
locales/zh-CN.ftl
Normal file
|
@ -0,0 +1,315 @@
|
||||||
|
a11y_loading_page = 加载页面中,请稍后
|
||||||
|
a11y_loading_titled_page = 加载{$title}页面中,请稍后
|
||||||
|
a11y_locale_changed = 语言已更改为{$lang}
|
||||||
|
a11y_locale_changing = 更改语言中,请稍后
|
||||||
|
a11y_route_loaded = 页面{$title}已加载
|
||||||
|
account_avatar_description = {$username} 的头像
|
||||||
|
account_blocked_by = 您已被此用户拉黑
|
||||||
|
account_blocked_domains = 已拉黑的域名
|
||||||
|
account_blocked_users = 已拉黑的用户
|
||||||
|
account_blocking = 已拉黑
|
||||||
|
account_bot = 机器人
|
||||||
|
account_favourites = 喜欢的帖文
|
||||||
|
account_follow = 关注
|
||||||
|
account_follow_back = 回关
|
||||||
|
account_follow_requested = 已申请关注
|
||||||
|
account_followers = 关注者
|
||||||
|
account_followers_count = 被 {$formattedCount} 人关注
|
||||||
|
account_following = 正在关注
|
||||||
|
account_following_count = 正在关注 {$formattedCount} 人
|
||||||
|
account_follows_you = 已关注你
|
||||||
|
account_go_to_profile = 转到个人资料
|
||||||
|
account_joined = 已加入
|
||||||
|
account_moved_title = 的新账号是:
|
||||||
|
account_muted_users = 已屏蔽的用户
|
||||||
|
account_muting = 已屏蔽
|
||||||
|
account_mutuals = 互相关注
|
||||||
|
account_pinned = 置顶的帖文
|
||||||
|
account_posts = 帖文
|
||||||
|
account_posts_count = {$formattedCount} 条帖文
|
||||||
|
account_profile_description = {$username} 的个人资料头图
|
||||||
|
account_profile_unavailable = 个人资料不可见
|
||||||
|
account_unblock = 取消拉黑
|
||||||
|
account_unfollow = 取消关注
|
||||||
|
account_unmute = 取消屏蔽
|
||||||
|
action_apply = 应用
|
||||||
|
action_bookmark = 收藏
|
||||||
|
action_bookmarked = 已收藏
|
||||||
|
action_boost = 转发
|
||||||
|
action_boosted = 已转发
|
||||||
|
action_clear_upload_failed = 清除上传失败
|
||||||
|
action_close = 关闭
|
||||||
|
action_compose = 撰写
|
||||||
|
action_confirm = 确认
|
||||||
|
action_edit = 编辑
|
||||||
|
action_enter_app = 进入应用
|
||||||
|
action_favourite = 喜欢
|
||||||
|
action_favourited = 已喜欢
|
||||||
|
action_more = 更多
|
||||||
|
action_next = 下一个
|
||||||
|
action_prev = 上一个
|
||||||
|
action_publish = 发布
|
||||||
|
action_reply = 回复
|
||||||
|
action_save = 保存
|
||||||
|
action_save_changes = 保存更改
|
||||||
|
action_sign_in = 登鹿
|
||||||
|
action_switch_account = 切换帐号
|
||||||
|
action_vote = 投票
|
||||||
|
app_desc_short = 用 🧡 制作的 Mastodon 客户端
|
||||||
|
app_logo = 应用图标
|
||||||
|
app_name = 鹿鸣
|
||||||
|
attachment_edit_title = 描述
|
||||||
|
attachment_remove_label = 移除附件
|
||||||
|
command_activate = 执行
|
||||||
|
command_complete = 完成
|
||||||
|
command_compose_desc = 写一条新帖文
|
||||||
|
command_n-people-in-the-past-n-days = {$count} 人在过去 {$days} 天
|
||||||
|
command_select_lang = 选择语言
|
||||||
|
command_sign_in_desc = 添加现有帐户
|
||||||
|
command_switch_account = 切换到 {$username}
|
||||||
|
command_switch_account_desc = 切换到另一个帐户
|
||||||
|
command_toggle_dark_mode = 切换深色模式
|
||||||
|
command_toggle_zen_mode = 切换禅模式
|
||||||
|
common_end_of_list = 列表到底啦
|
||||||
|
common_error = 错误
|
||||||
|
common_in = 在
|
||||||
|
common_not_found = 无法找到相关内容
|
||||||
|
common_offline_desc = 您目前已离线,请检查网络连接。
|
||||||
|
conversation_with = 与
|
||||||
|
error_account_not_found = 未找到用户 {$username}
|
||||||
|
error_explore-list-empty = 目前没有热门话题,稍后再来看看吧!
|
||||||
|
error_file_size_cannot_exceed_n_mb = 文件大小不能超过 {$size}MB
|
||||||
|
error_sign_in_error = 无法连接服务器
|
||||||
|
error_status_not_found = 未找到帖文
|
||||||
|
error_unsupported_file_format = 不支持的文件格式
|
||||||
|
help_desc_highlight = 可能会在某些地方出现一些 bug 或缺失的功能。
|
||||||
|
help_desc_para1 = 感谢你有兴趣尝试鹿鸣,一个我们正在积极开发的通用 Mastodon 客户端。
|
||||||
|
help_desc_para2 = 我们正在努力开发中,并随着时间的推移不断完善。鹿鸣将很快开源,并邀请您参与进来!
|
||||||
|
help_desc_para3 = 为了帮助促进开发,你可以通过以下链接赞助我们的团队成员。希望你喜欢鹿鸣!
|
||||||
|
help_desc_para4 = 在此之前,如果你愿意帮助测试、提供反馈或作出贡献,
|
||||||
|
help_desc_para5 = 在 Mastodon 上联系我们
|
||||||
|
help_desc_para6 = 来参与其中。
|
||||||
|
help_title = 预览鹿鸣!
|
||||||
|
menu_block_account = 拉黑 {$username}
|
||||||
|
menu_block_domain = 拉黑域名 {$domain}
|
||||||
|
menu_copy_link_to_post = 复制这篇帖文的链接
|
||||||
|
menu_delete = 删除
|
||||||
|
menu_delete_and_redraft = 删除并重新编辑
|
||||||
|
menu_direct_message_account = 私信 {$username}
|
||||||
|
menu_edit = 编辑
|
||||||
|
menu_mention_account = 提及 {$username}
|
||||||
|
menu_mute_account = 屏蔽 {$username}
|
||||||
|
menu_mute_conversation = 静音帖子
|
||||||
|
menu_open_in_original_site = 从源站打开
|
||||||
|
menu_pin_on_profile = 置顶在个人资料上
|
||||||
|
menu_show_untranslated = 显示原文
|
||||||
|
menu_toggle_theme_dark = 切换深色模式
|
||||||
|
menu_toggle_theme_light = 切换亮色模式
|
||||||
|
menu_translate_post = 翻译帖文
|
||||||
|
menu_unblock_account = 解除拉黑 {$username}
|
||||||
|
menu_unblock_domain = 解除拉黑域名 {$domain}
|
||||||
|
menu_unmute_account = 解除屏蔽 {$username}
|
||||||
|
menu_unmute_conversation = 取消静音帖子
|
||||||
|
menu_unpin_on_profile = 取消置顶
|
||||||
|
nav_blocked_domains = 已拉黑的域名
|
||||||
|
nav_blocked_users = 已拉黑的用户
|
||||||
|
nav_bookmarks = 书签
|
||||||
|
nav_built_at = 于 {0}构建
|
||||||
|
nav_conversations = 私信
|
||||||
|
nav_explore = 探索
|
||||||
|
nav_favourites = 喜欢
|
||||||
|
nav_federated = 跨站
|
||||||
|
nav_home = 主页
|
||||||
|
nav_local = 本地
|
||||||
|
nav_muted_users = 已屏蔽的用户
|
||||||
|
nav_notifications = 通知
|
||||||
|
nav_profile = 个人资料
|
||||||
|
nav_search = 搜索
|
||||||
|
nav_select_feature_flags = 功能开关
|
||||||
|
nav_select_font_size = 字体大小
|
||||||
|
nav_select_language = 选择语言
|
||||||
|
nav_settings = 设置
|
||||||
|
nav_show_intro = 应用介绍
|
||||||
|
nav_toggle_theme = 切换主题
|
||||||
|
nav_zen_mode = 禅模式
|
||||||
|
notification_favourited_post = 点赞了你的帖文
|
||||||
|
notification_followed_you = 关注了你
|
||||||
|
notification_followed_you_count = {n} 人关注了你
|
||||||
|
notification_missing_type = 未知的通知类型:
|
||||||
|
notification_reblogged_post = 转发了你的帖文
|
||||||
|
notification_request_to_follow = 请求关注你
|
||||||
|
notification_signed_up = 注册了
|
||||||
|
notification_update_status = 更新了他们的状态
|
||||||
|
placeholder_content_warning = 写下你的警告
|
||||||
|
placeholder_default_1 = 在想些什么?
|
||||||
|
placeholder_reply_to_account = 回复 {0}
|
||||||
|
placeholder_replying = 回复
|
||||||
|
placeholder_the_thread = 这个帖文
|
||||||
|
pwa_dismiss = 忽略
|
||||||
|
pwa_title = 鹿鸣存在新的更新
|
||||||
|
pwa_update = 更新
|
||||||
|
pwa_update_available_short = 更新鹿鸣
|
||||||
|
pwa_webmanifest_canary_description = 用 🧡 制作的 Mastodon 客户端(Canary)
|
||||||
|
pwa_webmanifest_canary_name = 鹿鸣(Canary)
|
||||||
|
pwa_webmanifest_canary_short_name = 鹿鸣(Canary)
|
||||||
|
pwa_webmanifest_dev_description = 用 🧡 制作的 Mastodon 客户端(开发版)
|
||||||
|
pwa_webmanifest_dev_name = 鹿鸣 开发版
|
||||||
|
pwa_webmanifest_dev_short_name = 鹿鸣 开发版
|
||||||
|
pwa_webmanifest_preview_description = 用 🧡 制作的 Mastodon 客户端(预览版)
|
||||||
|
pwa_webmanifest_preview_name = 鹿鸣(预览版)
|
||||||
|
pwa_webmanifest_preview_short_name = 鹿鸣(预览版)
|
||||||
|
pwa_webmanifest_release_description = 用 🧡 制作的 Mastodon 客户端
|
||||||
|
pwa_webmanifest_release_name = 鹿鸣
|
||||||
|
pwa_webmanifest_release_short_name = 鹿鸣
|
||||||
|
search_search_desc = 搜索用户或话题标签
|
||||||
|
search_search_empty = 无法找到符合这些搜索词的任何内容
|
||||||
|
settings_about_label = 关于
|
||||||
|
settings_account_settings_label = 账号设置
|
||||||
|
settings_feature_flags_github_cards = GitHub 卡片
|
||||||
|
settings_feature_flags_title = 实验功能
|
||||||
|
settings_feature_flags_user_picker = 用户选择器
|
||||||
|
settings_feature_flags_virtual_scroll = 虚拟滚动
|
||||||
|
settings_interface_color_mode = 颜色
|
||||||
|
settings_interface_dark_mode = 暗色模式
|
||||||
|
settings_interface_default = (默认)
|
||||||
|
settings_interface_font_size = 字号
|
||||||
|
settings_interface_label = 外观
|
||||||
|
settings_interface_light_mode = 亮色模式
|
||||||
|
settings_interface_size_label_lg = 大
|
||||||
|
settings_interface_size_label_md = 中
|
||||||
|
settings_interface_size_label_sm = 小
|
||||||
|
settings_interface_size_label_xl = 特大
|
||||||
|
settings_interface_size_label_xs = 特小
|
||||||
|
settings_language_display_language = 首选语言
|
||||||
|
settings_language_label = 语言
|
||||||
|
settings_notification_settings = 通知设置
|
||||||
|
settings_notifications_label = 通知
|
||||||
|
settings_notifications_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = 喜欢的
|
||||||
|
settings_notifications_push_notifications_alerts_follow = 新的关注者
|
||||||
|
settings_notifications_push_notifications_alerts_mention = 提及
|
||||||
|
settings_notifications_push_notifications_alerts_poll = 投票
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = 转发了你的帖文
|
||||||
|
settings_notifications_push_notifications_alerts_title = 接收了什么通知?
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = 任何人
|
||||||
|
settings_notifications_push_notifications_policy_followed = 我关注的人
|
||||||
|
settings_notifications_push_notifications_policy_follower = 关注我的人
|
||||||
|
settings_notifications_push_notifications_policy_none = 无人
|
||||||
|
settings_notifications_push_notifications_policy_title = 我可以从谁那里接收通知?
|
||||||
|
settings_notifications_push_notifications_save_settings = 保存设置改动
|
||||||
|
settings_notifications_push_notifications_undo_settings = 撤销设置改动
|
||||||
|
settings_notifications_push_notifications_unsubscribe = 禁用桌面通知
|
||||||
|
settings_notifications_push_notifications_unsupported = 你的浏览器不支持桌面通知
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = 关闭
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = 若想在鹿鸣没有打开时接收通知,请启用桌面通知功能。一旦启动,你可以通过上面的“打开设置”按钮来 精确控制哪种类型的互动可以产生桌面通知。
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = 启用桌面通知功能
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = 不错过任何事
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = 您的服务器似乎不支持推送通知。尝试退出用户并重新登录。如果此消息仍然出现,请联系您服务器的管理员。
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_preferences_label = 首选项
|
||||||
|
settings_profile_appearance_bio = 简介
|
||||||
|
settings_profile_appearance_description = 编辑个人资料,例如头像、用户名、个人简介等。
|
||||||
|
settings_profile_appearance_display_name = 昵称
|
||||||
|
settings_profile_appearance_label = 个人资料
|
||||||
|
settings_profile_appearance_title = 编辑个人资料
|
||||||
|
settings_profile_featured_tags_description = 人们可以在这些标签下浏览你的公共嘟文。
|
||||||
|
settings_profile_featured_tags_label = 精选话题标签
|
||||||
|
settings_profile_label = 个人资料
|
||||||
|
settings_select_a_settings = 在左侧选择一个设置
|
||||||
|
settings_users_export = 导出用户令牌
|
||||||
|
settings_users_import = 导入用户令牌
|
||||||
|
settings_users_label = 当前用户
|
||||||
|
state_edited = (已编辑)
|
||||||
|
state_editing = 编辑中
|
||||||
|
state_loading = 加载中...
|
||||||
|
state_upload_failed = 上传失败
|
||||||
|
state_uploading = 上传中...
|
||||||
|
status_edited = 在 {$date} 编辑了
|
||||||
|
status_filter_hidden_phrase = 筛选依据
|
||||||
|
status_filter_removed_phrase = 从筛选中移除
|
||||||
|
status_filter_show_anyway = 仍然展示
|
||||||
|
status_img_alt_desc = 描述
|
||||||
|
status_img_alt_dismiss = 关闭
|
||||||
|
status_poll_count = {0} 次投票
|
||||||
|
status_poll_ends = 将在 {0} 结束
|
||||||
|
status_poll_finished = 已在 {0} 结束
|
||||||
|
status_reblogged = {0} 转发了
|
||||||
|
status_replying_to = 回复{0}
|
||||||
|
status_show_full_thread = 显示完整贴文串
|
||||||
|
status_someone = 某人
|
||||||
|
status_spoiler_show_less = 隐藏
|
||||||
|
status_spoiler_show_more = 显示更多
|
||||||
|
status_thread = 帖文串
|
||||||
|
status_try_original_site = 尝试从源站打开
|
||||||
|
status_history_created = 在 {0} 发布了
|
||||||
|
status_history_edited = 在 {$date} 编辑了
|
||||||
|
tab_for_you = 推荐关注
|
||||||
|
tab_hashtags = 话题标签
|
||||||
|
tab_media = 媒体
|
||||||
|
tab_news = 最新消息
|
||||||
|
tab_notifications_all = 全部
|
||||||
|
tab_notifications_mention = 提及
|
||||||
|
tab_posts = 帖文
|
||||||
|
tab_posts_with_replies = 帖文与留言
|
||||||
|
time_ago_options_day_future = 现在|明天|{n} 天后
|
||||||
|
time_ago_options_day_past = 现在|昨天|{n} 天前
|
||||||
|
time_ago_options_hour_future = 现在|1 小时后|{n} 小时后
|
||||||
|
time_ago_options_hour_past = 现在|1 小时前|{n} 小时前
|
||||||
|
time_ago_options_just_now = 刚刚
|
||||||
|
time_ago_options_minute_future = 现在|1 分钟后|{n} 分钟后
|
||||||
|
time_ago_options_minute_past = 现在|1 分钟前|{n} 分钟前
|
||||||
|
time_ago_options_month_future = 现在|下个月|{n} 个月后
|
||||||
|
time_ago_options_month_past = 现在|上个月|{n} 个月前
|
||||||
|
time_ago_options_second_future = 刚刚|{n} 秒后|{n} 秒后
|
||||||
|
time_ago_options_second_past = 刚刚|{n} 秒前|{n} 秒前
|
||||||
|
time_ago_options_short_day_future = {n} 天
|
||||||
|
time_ago_options_short_day_past = {n} 天
|
||||||
|
time_ago_options_short_hour_future = {n} 小时
|
||||||
|
time_ago_options_short_hour_past = {$n} 小时
|
||||||
|
time_ago_options_short_minute_future = {n} 分
|
||||||
|
time_ago_options_short_minute_past = {$n} 分
|
||||||
|
time_ago_options_short_month_future = {n} 月
|
||||||
|
time_ago_options_short_month_past = {n} 月
|
||||||
|
time_ago_options_short_second_future = {n} 秒
|
||||||
|
time_ago_options_short_second_past = {n} 秒
|
||||||
|
time_ago_options_short_week_future = {n} 周
|
||||||
|
time_ago_options_short_week_past = {n} 周
|
||||||
|
time_ago_options_short_year_future = {n} 年
|
||||||
|
time_ago_options_short_year_past = {n} 年
|
||||||
|
time_ago_options_week_future = 现在|下周|{n} 周后
|
||||||
|
time_ago_options_week_past = 现在|上周|{n} 周前
|
||||||
|
time_ago_options_year_future = 现在|明年|{n} 年后
|
||||||
|
time_ago_options_year_past = 现在|去年|{n} 年前
|
||||||
|
timeline_show_new_items = 展示 {v} 条新帖文
|
||||||
|
timeline_view_older_posts = 其他站点上更老的帖文可能不会在这里显示。
|
||||||
|
title_federated_timeline = 跨站时间线
|
||||||
|
title_local_timeline = 本地时间线
|
||||||
|
tooltip_add_content_warning = 添加内容警告标识
|
||||||
|
tooltip_add_media = 添加图片、视频或者音频文件
|
||||||
|
tooltip_change_content_visibility = 修改内容是否可见
|
||||||
|
tooltip_change_language = 更改语言
|
||||||
|
tooltip_emoji = 表情符号
|
||||||
|
tooltip_explore_links_intro = 这些新闻故事正被本站和分布式网络上其他站点的用户谈论。
|
||||||
|
tooltip_explore_posts_intro = 来自本站和分布式网络上其他站点的这些嘟文正在本站引起关注。
|
||||||
|
tooltip_explore_tags_intro = 这些标签正在本站和分布式网络上其他站点的用户中引起关注。
|
||||||
|
tooltip_toggle_code_block = 切换代码块
|
||||||
|
user_add_existing = 添加现有帐户
|
||||||
|
user_server_address_label = Mastodon 服务器地址
|
||||||
|
user_sign_in_desc = 登录后可关注其他人或标签、点赞、分享和回复帖文,或与不同服务器上的账号交互。
|
||||||
|
user_sign_in_notice_title = 正在查看 {0} 的公共数据
|
||||||
|
user_sign_out_account = 登出 {$username}
|
||||||
|
user_tip_no_account = 如果您还没有 Mastodon 账户,{0}。
|
||||||
|
user_tip_register_account = 选择您的服务器并注册一个
|
||||||
|
visibility_direct = 私信
|
||||||
|
visibility_direct_desc = 仅对提及的用户可见
|
||||||
|
visibility_private = 仅限关注者
|
||||||
|
visibility_private_desc = 仅关注者可见
|
||||||
|
visibility_public = 公开
|
||||||
|
visibility_public_desc = 所有人可见
|
||||||
|
visibility_unlisted = 不列出
|
||||||
|
visibility_unlisted_desc = 对所有人可见,但不出现在公共时间线上
|
|
@ -1,421 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "加载页面中,请稍后",
|
|
||||||
"loading_titled_page": "加载{0}页面中,请稍后",
|
|
||||||
"locale_changed": "语言已更改为{0}",
|
|
||||||
"locale_changing": "更改语言中,请稍后",
|
|
||||||
"route_loaded": "页面{0}已加载"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "{0} 的头像",
|
|
||||||
"blocked_by": "您已被此用户拉黑",
|
|
||||||
"blocked_domains": "已拉黑的域名",
|
|
||||||
"blocked_users": "已拉黑的用户",
|
|
||||||
"blocking": "已拉黑",
|
|
||||||
"bot": "机器人",
|
|
||||||
"favourites": "喜欢的帖文",
|
|
||||||
"follow": "关注",
|
|
||||||
"follow_back": "回关",
|
|
||||||
"follow_requested": "已申请关注",
|
|
||||||
"followers": "关注者",
|
|
||||||
"followers_count": "被 {0} 人关注",
|
|
||||||
"following": "正在关注",
|
|
||||||
"following_count": "正在关注 {0} 人",
|
|
||||||
"follows_you": "已关注你",
|
|
||||||
"go_to_profile": "转到个人资料",
|
|
||||||
"joined": "已加入",
|
|
||||||
"moved_title": "的新账号是:",
|
|
||||||
"muted_users": "已屏蔽的用户",
|
|
||||||
"muting": "已屏蔽",
|
|
||||||
"mutuals": "互相关注",
|
|
||||||
"pinned": "置顶的帖文",
|
|
||||||
"posts": "帖文",
|
|
||||||
"posts_count": "{0} 条帖文",
|
|
||||||
"profile_description": "{0} 的个人资料头图",
|
|
||||||
"profile_unavailable": "个人资料不可见",
|
|
||||||
"unblock": "取消拉黑",
|
|
||||||
"unfollow": "取消关注",
|
|
||||||
"unmute": "取消屏蔽"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "应用",
|
|
||||||
"bookmark": "收藏",
|
|
||||||
"bookmarked": "已收藏",
|
|
||||||
"boost": "转发",
|
|
||||||
"boosted": "已转发",
|
|
||||||
"clear_upload_failed": "清除上传失败",
|
|
||||||
"close": "关闭",
|
|
||||||
"compose": "撰写",
|
|
||||||
"confirm": "确认",
|
|
||||||
"edit": "编辑",
|
|
||||||
"enter_app": "进入应用",
|
|
||||||
"favourite": "喜欢",
|
|
||||||
"favourited": "已喜欢",
|
|
||||||
"more": "更多",
|
|
||||||
"next": "下一个",
|
|
||||||
"prev": "上一个",
|
|
||||||
"publish": "发布",
|
|
||||||
"reply": "回复",
|
|
||||||
"save": "保存",
|
|
||||||
"save_changes": "保存更改",
|
|
||||||
"sign_in": "登鹿",
|
|
||||||
"switch_account": "切换帐号",
|
|
||||||
"vote": "投票"
|
|
||||||
},
|
|
||||||
"app_desc_short": "用 🧡 制作的 Mastodon 客户端",
|
|
||||||
"app_logo": "应用图标",
|
|
||||||
"app_name": "鹿鸣",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "描述",
|
|
||||||
"remove_label": "移除附件"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "执行",
|
|
||||||
"complete": "完成",
|
|
||||||
"compose_desc": "写一条新帖文",
|
|
||||||
"n-people-in-the-past-n-days": "{0} 人在过去 {1} 天",
|
|
||||||
"select_lang": "选择语言",
|
|
||||||
"sign_in_desc": "添加现有帐户",
|
|
||||||
"switch_account": "切换到 {0}",
|
|
||||||
"switch_account_desc": "切换到另一个帐户",
|
|
||||||
"toggle_dark_mode": "切换深色模式",
|
|
||||||
"toggle_zen_mode": "切换禅模式"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "列表到底啦",
|
|
||||||
"error": "错误",
|
|
||||||
"in": "在",
|
|
||||||
"not_found": "无法找到相关内容",
|
|
||||||
"offline_desc": "您目前已离线,请检查网络连接。"
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "与"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "未找到用户 {0}",
|
|
||||||
"explore-list-empty": "目前没有热门话题,稍后再来看看吧!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "文件大小不能超过 {0}MB",
|
|
||||||
"sign_in_error": "无法连接服务器",
|
|
||||||
"status_not_found": "未找到帖文",
|
|
||||||
"unsupported_file_format": "不支持的文件格式"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "可能会在某些地方出现一些 bug 或缺失的功能。",
|
|
||||||
"desc_para1": "感谢你有兴趣尝试鹿鸣,一个我们正在积极开发的通用 Mastodon 客户端。",
|
|
||||||
"desc_para2": "我们正在努力开发中,并随着时间的推移不断完善。鹿鸣将很快开源,并邀请您参与进来!",
|
|
||||||
"desc_para3": "为了帮助促进开发,你可以通过以下链接赞助我们的团队成员。希望你喜欢鹿鸣!",
|
|
||||||
"desc_para4": "在此之前,如果你愿意帮助测试、提供反馈或作出贡献,",
|
|
||||||
"desc_para5": "在 Mastodon 上联系我们",
|
|
||||||
"desc_para6": "来参与其中。",
|
|
||||||
"title": "预览鹿鸣!"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "拉黑 {0}",
|
|
||||||
"block_domain": "拉黑域名 {0}",
|
|
||||||
"copy_link_to_post": "复制这篇帖文的链接",
|
|
||||||
"delete": "删除",
|
|
||||||
"delete_and_redraft": "删除并重新编辑",
|
|
||||||
"direct_message_account": "私信 {0}",
|
|
||||||
"edit": "编辑",
|
|
||||||
"mention_account": "提及 {0}",
|
|
||||||
"mute_account": "屏蔽 {0}",
|
|
||||||
"mute_conversation": "静音帖子",
|
|
||||||
"open_in_original_site": "从源站打开",
|
|
||||||
"pin_on_profile": "置顶在个人资料上",
|
|
||||||
"show_untranslated": "显示原文",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "切换深色模式",
|
|
||||||
"light": "切换亮色模式"
|
|
||||||
},
|
|
||||||
"translate_post": "翻译帖文",
|
|
||||||
"unblock_account": "解除拉黑 {0}",
|
|
||||||
"unblock_domain": "解除拉黑域名 {0}",
|
|
||||||
"unmute_account": "解除屏蔽 {0}",
|
|
||||||
"unmute_conversation": "取消静音帖子",
|
|
||||||
"unpin_on_profile": "取消置顶"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"blocked_domains": "已拉黑的域名",
|
|
||||||
"blocked_users": "已拉黑的用户",
|
|
||||||
"bookmarks": "书签",
|
|
||||||
"built_at": "于 {0}构建",
|
|
||||||
"conversations": "私信",
|
|
||||||
"explore": "探索",
|
|
||||||
"favourites": "喜欢",
|
|
||||||
"federated": "跨站",
|
|
||||||
"home": "主页",
|
|
||||||
"local": "本地",
|
|
||||||
"muted_users": "已屏蔽的用户",
|
|
||||||
"notifications": "通知",
|
|
||||||
"profile": "个人资料",
|
|
||||||
"search": "搜索",
|
|
||||||
"select_feature_flags": "功能开关",
|
|
||||||
"select_font_size": "字体大小",
|
|
||||||
"select_language": "选择语言",
|
|
||||||
"settings": "设置",
|
|
||||||
"show_intro": "应用介绍",
|
|
||||||
"toggle_theme": "切换主题",
|
|
||||||
"zen_mode": "禅模式"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "点赞了你的帖文",
|
|
||||||
"followed_you": "关注了你",
|
|
||||||
"followed_you_count": "{n} 人关注了你",
|
|
||||||
"missing_type": "未知的通知类型:",
|
|
||||||
"reblogged_post": "转发了你的帖文",
|
|
||||||
"request_to_follow": "请求关注你",
|
|
||||||
"signed_up": "注册了",
|
|
||||||
"update_status": "更新了他们的状态"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "写下你的警告",
|
|
||||||
"default_1": "在想些什么?",
|
|
||||||
"reply_to_account": "回复 {0}",
|
|
||||||
"replying": "回复",
|
|
||||||
"the_thread": "这个帖文"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "忽略",
|
|
||||||
"title": "鹿鸣存在新的更新",
|
|
||||||
"update": "更新",
|
|
||||||
"update_available_short": "更新鹿鸣",
|
|
||||||
"webmanifest": {
|
|
||||||
"canary": {
|
|
||||||
"description": "用 🧡 制作的 Mastodon 客户端(Canary)",
|
|
||||||
"name": "鹿鸣(Canary)",
|
|
||||||
"short_name": "鹿鸣(Canary)"
|
|
||||||
},
|
|
||||||
"dev": {
|
|
||||||
"description": "用 🧡 制作的 Mastodon 客户端(开发版)",
|
|
||||||
"name": "鹿鸣 开发版",
|
|
||||||
"short_name": "鹿鸣 开发版"
|
|
||||||
},
|
|
||||||
"preview": {
|
|
||||||
"description": "用 🧡 制作的 Mastodon 客户端(预览版)",
|
|
||||||
"name": "鹿鸣(预览版)",
|
|
||||||
"short_name": "鹿鸣(预览版)"
|
|
||||||
},
|
|
||||||
"release": {
|
|
||||||
"description": "用 🧡 制作的 Mastodon 客户端",
|
|
||||||
"name": "鹿鸣",
|
|
||||||
"short_name": "鹿鸣"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "搜索用户或话题标签",
|
|
||||||
"search_empty": "无法找到符合这些搜索词的任何内容"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "关于"
|
|
||||||
},
|
|
||||||
"account_settings": {
|
|
||||||
"label": "账号设置"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub 卡片",
|
|
||||||
"title": "实验功能",
|
|
||||||
"user_picker": "用户选择器",
|
|
||||||
"virtual_scroll": "虚拟滚动"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "颜色",
|
|
||||||
"dark_mode": "暗色模式",
|
|
||||||
"default": "(默认)",
|
|
||||||
"font_size": "字号",
|
|
||||||
"label": "外观",
|
|
||||||
"light_mode": "亮色模式",
|
|
||||||
"size_label": {
|
|
||||||
"lg": "大",
|
|
||||||
"md": "中",
|
|
||||||
"sm": "小",
|
|
||||||
"xl": "特大",
|
|
||||||
"xs": "特小"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "首选语言",
|
|
||||||
"label": "语言"
|
|
||||||
},
|
|
||||||
"notification_settings": "通知设置",
|
|
||||||
"notifications": {
|
|
||||||
"label": "通知",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "喜欢的",
|
|
||||||
"follow": "新的关注者",
|
|
||||||
"mention": "提及",
|
|
||||||
"poll": "投票",
|
|
||||||
"reblog": "转发了你的帖文",
|
|
||||||
"title": "接收了什么通知?"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "任何人",
|
|
||||||
"followed": "我关注的人",
|
|
||||||
"follower": "关注我的人",
|
|
||||||
"none": "无人",
|
|
||||||
"title": "我可以从谁那里接收通知?"
|
|
||||||
},
|
|
||||||
"save_settings": "保存设置改动",
|
|
||||||
"undo_settings": "撤销设置改动",
|
|
||||||
"unsubscribe": "禁用桌面通知",
|
|
||||||
"unsupported": "你的浏览器不支持桌面通知",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "关闭",
|
|
||||||
"enable_description": "若想在鹿鸣没有打开时接收通知,请启用桌面通知功能。一旦启动,你可以通过上面的“打开设置”按钮来 精确控制哪种类型的互动可以产生桌面通知。",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "启用桌面通知功能",
|
|
||||||
"enable_title": "不错过任何事",
|
|
||||||
"re_auth": "您的服务器似乎不支持推送通知。尝试退出用户并重新登录。如果此消息仍然出现,请联系您服务器的管理员。"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"preferences": {
|
|
||||||
"label": "首选项"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "简介",
|
|
||||||
"description": "编辑个人资料,例如头像、用户名、个人简介等。",
|
|
||||||
"display_name": "昵称",
|
|
||||||
"label": "个人资料",
|
|
||||||
"title": "编辑个人资料"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "人们可以在这些标签下浏览你的公共嘟文。",
|
|
||||||
"label": "精选话题标签"
|
|
||||||
},
|
|
||||||
"label": "个人资料"
|
|
||||||
},
|
|
||||||
"select_a_settings": "在左侧选择一个设置",
|
|
||||||
"users": {
|
|
||||||
"export": "导出用户令牌",
|
|
||||||
"import": "导入用户令牌",
|
|
||||||
"label": "当前用户"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"edited": "(已编辑)",
|
|
||||||
"editing": "编辑中",
|
|
||||||
"loading": "加载中...",
|
|
||||||
"upload_failed": "上传失败",
|
|
||||||
"uploading": "上传中..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "在 {0} 编辑了",
|
|
||||||
"filter_hidden_phrase": "筛选依据",
|
|
||||||
"filter_removed_phrase": "从筛选中移除",
|
|
||||||
"filter_show_anyway": "仍然展示",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "描述",
|
|
||||||
"dismiss": "关闭"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} 次投票",
|
|
||||||
"ends": "将在 {0} 结束",
|
|
||||||
"finished": "已在 {0} 结束"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} 转发了",
|
|
||||||
"replying_to": "回复{0}",
|
|
||||||
"show_full_thread": "显示完整贴文串",
|
|
||||||
"someone": "某人",
|
|
||||||
"spoiler_show_less": "隐藏",
|
|
||||||
"spoiler_show_more": "显示更多",
|
|
||||||
"thread": "帖文串",
|
|
||||||
"try_original_site": "尝试从源站打开"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "在 {0} 发布了",
|
|
||||||
"edited": "在 {0} 编辑了"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "推荐关注",
|
|
||||||
"hashtags": "话题标签",
|
|
||||||
"media": "媒体",
|
|
||||||
"news": "最新消息",
|
|
||||||
"notifications_all": "全部",
|
|
||||||
"notifications_mention": "提及",
|
|
||||||
"posts": "帖文",
|
|
||||||
"posts_with_replies": "帖文与留言"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "现在|明天|{n} 天后",
|
|
||||||
"day_past": "现在|昨天|{n} 天前",
|
|
||||||
"hour_future": "现在|1 小时后|{n} 小时后",
|
|
||||||
"hour_past": "现在|1 小时前|{n} 小时前",
|
|
||||||
"just_now": "刚刚",
|
|
||||||
"minute_future": "现在|1 分钟后|{n} 分钟后",
|
|
||||||
"minute_past": "现在|1 分钟前|{n} 分钟前",
|
|
||||||
"month_future": "现在|下个月|{n} 个月后",
|
|
||||||
"month_past": "现在|上个月|{n} 个月前",
|
|
||||||
"second_future": "刚刚|{n} 秒后|{n} 秒后",
|
|
||||||
"second_past": "刚刚|{n} 秒前|{n} 秒前",
|
|
||||||
"short_day_future": "{n} 天",
|
|
||||||
"short_day_past": "{n} 天",
|
|
||||||
"short_hour_future": "{n} 小时",
|
|
||||||
"short_hour_past": "{n} 小时",
|
|
||||||
"short_minute_future": "{n} 分",
|
|
||||||
"short_minute_past": "{n} 分",
|
|
||||||
"short_month_future": "{n} 月",
|
|
||||||
"short_month_past": "{n} 月",
|
|
||||||
"short_second_future": "{n} 秒",
|
|
||||||
"short_second_past": "{n} 秒",
|
|
||||||
"short_week_future": "{n} 周",
|
|
||||||
"short_week_past": "{n} 周",
|
|
||||||
"short_year_future": "{n} 年",
|
|
||||||
"short_year_past": "{n} 年",
|
|
||||||
"week_future": "现在|下周|{n} 周后",
|
|
||||||
"week_past": "现在|上周|{n} 周前",
|
|
||||||
"year_future": "现在|明年|{n} 年后",
|
|
||||||
"year_past": "现在|去年|{n} 年前"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "展示 {v} 条新帖文",
|
|
||||||
"view_older_posts": "其他站点上更老的帖文可能不会在这里显示。"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "跨站时间线",
|
|
||||||
"local_timeline": "本地时间线"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "添加内容警告标识",
|
|
||||||
"add_media": "添加图片、视频或者音频文件",
|
|
||||||
"change_content_visibility": "修改内容是否可见",
|
|
||||||
"change_language": "更改语言",
|
|
||||||
"emoji": "表情符号",
|
|
||||||
"explore_links_intro": "这些新闻故事正被本站和分布式网络上其他站点的用户谈论。",
|
|
||||||
"explore_posts_intro": "来自本站和分布式网络上其他站点的这些嘟文正在本站引起关注。",
|
|
||||||
"explore_tags_intro": "这些标签正在本站和分布式网络上其他站点的用户中引起关注。",
|
|
||||||
"toggle_code_block": "切换代码块"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "添加现有帐户",
|
|
||||||
"server_address_label": "Mastodon 服务器地址",
|
|
||||||
"sign_in_desc": "登录后可关注其他人或标签、点赞、分享和回复帖文,或与不同服务器上的账号交互。",
|
|
||||||
"sign_in_notice_title": "正在查看 {0} 的公共数据",
|
|
||||||
"sign_out_account": "登出 {0}",
|
|
||||||
"tip_no_account": "如果您还没有 Mastodon 账户,{0}。",
|
|
||||||
"tip_register_account": "选择您的服务器并注册一个"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "私信",
|
|
||||||
"direct_desc": "仅对提及的用户可见",
|
|
||||||
"private": "仅限关注者",
|
|
||||||
"private_desc": "仅关注者可见",
|
|
||||||
"public": "公开",
|
|
||||||
"public_desc": "所有人可见",
|
|
||||||
"unlisted": "不列出",
|
|
||||||
"unlisted_desc": "对所有人可见,但不出现在公共时间线上"
|
|
||||||
}
|
|
||||||
}
|
|
290
locales/zh-TW.ftl
Normal file
290
locales/zh-TW.ftl
Normal file
|
@ -0,0 +1,290 @@
|
||||||
|
a11y_loading_page = 加載頁面中,請稍後
|
||||||
|
a11y_loading_titled_page = 加載{$title}頁面中,請稍後
|
||||||
|
a11y_locale_changed = 語言已更改為{$lang}
|
||||||
|
a11y_locale_changing = 更改語言中,請稍後
|
||||||
|
a11y_route_loaded = 頁面{$title}已加載
|
||||||
|
account_avatar_description = {$username} 的頭像
|
||||||
|
account_blocked_by = 您已被此用戶拉黑
|
||||||
|
account_blocked_domains = 已拉黑的域名
|
||||||
|
account_blocked_users = 已拉黑的用戶
|
||||||
|
account_blocking = 已拉黑
|
||||||
|
account_bot = 機器人
|
||||||
|
account_favourites = 喜歡的帖文
|
||||||
|
account_follow = 關注
|
||||||
|
account_follow_back = 回關
|
||||||
|
account_follow_requested = 已申請關注
|
||||||
|
account_followers = 關注者
|
||||||
|
account_followers_count = 被 {$formattedCount} 人關注
|
||||||
|
account_following = 正在關注
|
||||||
|
account_following_count = 正在關注 {$formattedCount} 人
|
||||||
|
account_follows_you = 已關注你
|
||||||
|
account_go_to_profile = 轉到個人資料
|
||||||
|
account_joined = 已加入
|
||||||
|
account_moved_title = 的新賬號是:
|
||||||
|
account_muted_users = 已屏蔽的用戶
|
||||||
|
account_muting = 已屏蔽
|
||||||
|
account_mutuals = 互相關注
|
||||||
|
account_pinned = 置頂的帖文
|
||||||
|
account_posts = 帖文
|
||||||
|
account_posts_count = {$formattedCount} 條帖文
|
||||||
|
account_profile_description = {$username} 的個人資料頭圖
|
||||||
|
account_profile_unavailable = 個人資料不可見
|
||||||
|
account_unblock = 取消拉黑
|
||||||
|
account_unfollow = 取消關注
|
||||||
|
account_unmute = 取消屏蔽
|
||||||
|
action_apply = 應用
|
||||||
|
action_bookmark = 收藏
|
||||||
|
action_bookmarked = 已收藏
|
||||||
|
action_boost = 轉發
|
||||||
|
action_boosted = 已轉發
|
||||||
|
action_clear_upload_failed = 清除上傳失敗
|
||||||
|
action_close = 關閉
|
||||||
|
action_compose = 撰寫
|
||||||
|
action_confirm = 確認
|
||||||
|
action_edit = 編輯
|
||||||
|
action_enter_app = 進入應用
|
||||||
|
action_favourite = 喜歡
|
||||||
|
action_favourited = 已喜歡
|
||||||
|
action_more = 更多
|
||||||
|
action_next = 下一個
|
||||||
|
action_prev = 上一個
|
||||||
|
action_publish = 發布
|
||||||
|
action_reply = 回复
|
||||||
|
action_save = 保存
|
||||||
|
action_save_changes = 保存更改
|
||||||
|
action_sign_in = 登鹿
|
||||||
|
action_switch_account = 切換帳號
|
||||||
|
action_vote = 投票
|
||||||
|
app_desc_short = 用 🧡 製作的 Mastodon 客戶端
|
||||||
|
app_logo = 應用圖標
|
||||||
|
app_name = 鹿鳴
|
||||||
|
attachment_edit_title = 描述
|
||||||
|
attachment_remove_label = 移除附件
|
||||||
|
command_activate = 執行
|
||||||
|
command_complete = 完成
|
||||||
|
command_compose_desc = 寫一條新帖文
|
||||||
|
command_n-people-in-the-past-n-days = {$count} 人在過去 {$days} 天
|
||||||
|
command_select_lang = 選擇語言
|
||||||
|
command_sign_in_desc = 添加現有帳戶
|
||||||
|
command_switch_account = 切換到 {$username}
|
||||||
|
command_switch_account_desc = 切換到另一個帳戶
|
||||||
|
command_toggle_dark_mode = 切換深色模式
|
||||||
|
command_toggle_zen_mode = 切換禪模式
|
||||||
|
common_end_of_list = 列表到底啦
|
||||||
|
common_error = 錯誤
|
||||||
|
common_in = 在
|
||||||
|
common_not_found = 無法找到相關內容
|
||||||
|
common_offline_desc = 您目前已離線,請檢查網絡連接。
|
||||||
|
conversation_with = 與
|
||||||
|
error_account_not_found = 未找到用戶 {$username}
|
||||||
|
error_explore-list-empty = 目前沒有熱門話題,稍後再來看看吧!
|
||||||
|
error_file_size_cannot_exceed_n_mb = 文件大小不能超過 {$size}MB
|
||||||
|
error_sign_in_error = 無法連接服務器
|
||||||
|
error_status_not_found = 未找到帖文
|
||||||
|
error_unsupported_file_format = 不支持的文件格式
|
||||||
|
help_desc_highlight = 可能會在某些地方出現一些 bug 或缺失的功能。
|
||||||
|
help_desc_para1 = 感謝你有興趣嘗試鹿鳴,一個我們正在積極開發的通用 Mastodon 客戶端。
|
||||||
|
help_desc_para2 = 我們正在努力開發中,並隨著時間的推移不斷完善。鹿鳴將很快開源,並邀請您參與進來!
|
||||||
|
help_desc_para3 = 為了幫助促進開發,你可以通過以下鏈接贊助我們的團隊成員。希望你喜歡 Elk!
|
||||||
|
help_desc_para4 = 在此之前,如果你願意幫助測試、提供反饋或作出貢獻,
|
||||||
|
help_desc_para5 = 在 Mastodon 上聯繫我們
|
||||||
|
help_desc_para6 = 來參與其中。
|
||||||
|
help_title = 預覽鹿鳴!
|
||||||
|
menu_block_account = 拉黑 {$username}
|
||||||
|
menu_block_domain = 拉黑域名 {$domain}
|
||||||
|
menu_copy_link_to_post = 複製這篇帖文的鏈接
|
||||||
|
menu_delete = 刪除
|
||||||
|
menu_delete_and_redraft = 刪除並重新編輯
|
||||||
|
menu_direct_message_account = 私信 {$username}
|
||||||
|
menu_edit = 編輯
|
||||||
|
menu_mention_account = 提及 {$username}
|
||||||
|
menu_mute_account = 屏蔽 {$username}
|
||||||
|
menu_mute_conversation = 靜音帖子
|
||||||
|
menu_open_in_original_site = 從源站打開
|
||||||
|
menu_pin_on_profile = 置頂在個人資料上
|
||||||
|
menu_show_untranslated = 顯示原文
|
||||||
|
menu_toggle_theme_dark = 切換深色模式
|
||||||
|
menu_toggle_theme_light = 切換亮色模式
|
||||||
|
menu_translate_post = 翻譯帖文
|
||||||
|
menu_unblock_account = 解除拉黑 {$username}
|
||||||
|
menu_unblock_domain = 解除拉黑域名 {$domain}
|
||||||
|
menu_unmute_account = 解除屏蔽 {$username}
|
||||||
|
menu_unmute_conversation = 取消靜音帖子
|
||||||
|
menu_unpin_on_profile = 取消置頂
|
||||||
|
nav_bookmarks = 書籤
|
||||||
|
nav_built_at = 於 {0}構建
|
||||||
|
nav_conversations = 私信
|
||||||
|
nav_explore = 探索
|
||||||
|
nav_favourites = 喜歡
|
||||||
|
nav_federated = 跨站
|
||||||
|
nav_home = 主頁
|
||||||
|
nav_local = 本地
|
||||||
|
nav_notifications = 通知
|
||||||
|
nav_profile = 個人資料
|
||||||
|
nav_search = 搜索
|
||||||
|
nav_select_feature_flags = 功能開關
|
||||||
|
nav_select_font_size = 字體大小
|
||||||
|
nav_select_language = 選擇語言
|
||||||
|
nav_settings = 設置
|
||||||
|
nav_show_intro = 應用介紹
|
||||||
|
nav_toggle_theme = 切換主題
|
||||||
|
nav_zen_mode = 禪模式
|
||||||
|
notification_favourited_post = 點讚了你的帖文
|
||||||
|
notification_followed_you = 關注了你
|
||||||
|
notification_followed_you_count = {n} 人關注了你
|
||||||
|
notification_missing_type = 未知的通知類型:
|
||||||
|
notification_reblogged_post = 轉發了你的帖文
|
||||||
|
notification_request_to_follow = 請求關注你
|
||||||
|
notification_signed_up = 註冊了
|
||||||
|
notification_update_status = 更新了他們的狀態
|
||||||
|
placeholder_content_warning = 寫下你的警告
|
||||||
|
placeholder_default_1 = 在想些什麼?
|
||||||
|
placeholder_reply_to_account = 回复 {0}
|
||||||
|
placeholder_replying = 回复
|
||||||
|
placeholder_the_thread = 這個帖文
|
||||||
|
pwa_dismiss = 忽略
|
||||||
|
pwa_title = 鹿鳴存在新的更新
|
||||||
|
pwa_update = 更新
|
||||||
|
pwa_update_available_short = 更新鹿鳴
|
||||||
|
search_search_desc = 搜索用戶或話題標籤
|
||||||
|
search_search_empty = 無法找到符合搜尋條件之結果
|
||||||
|
settings_about_label = 關於
|
||||||
|
settings_feature_flags_github_cards = GitHub 卡片
|
||||||
|
settings_feature_flags_title = 實驗功能
|
||||||
|
settings_feature_flags_user_picker = 用戶選擇器
|
||||||
|
settings_feature_flags_virtual_scroll = 虛擬滾動
|
||||||
|
settings_interface_color_mode = 顏色
|
||||||
|
settings_interface_dark_mode = 暗色模式
|
||||||
|
settings_interface_default = (默認)
|
||||||
|
settings_interface_font_size = 字號
|
||||||
|
settings_interface_label = 外觀
|
||||||
|
settings_interface_light_mode = 亮色模式
|
||||||
|
settings_language_display_language = 首選語言
|
||||||
|
settings_language_label = 語言
|
||||||
|
settings_notifications_label = Notifications
|
||||||
|
settings_notifications_notifications_label = Notifications settings
|
||||||
|
settings_notifications_push_notifications_alerts_favourite = 喜歡的
|
||||||
|
settings_notifications_push_notifications_alerts_follow = 新的關注者
|
||||||
|
settings_notifications_push_notifications_alerts_mention = 提及
|
||||||
|
settings_notifications_push_notifications_alerts_poll = 投票
|
||||||
|
settings_notifications_push_notifications_alerts_reblog = 轉發了你的帖文
|
||||||
|
settings_notifications_push_notifications_alerts_title = 接收了什麼通知?
|
||||||
|
settings_notifications_push_notifications_description = Receive notifications even when you are not using Elk.
|
||||||
|
settings_notifications_push_notifications_instructions = Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!
|
||||||
|
settings_notifications_push_notifications_label = Push notifications settings
|
||||||
|
settings_notifications_push_notifications_policy_all = 任何人
|
||||||
|
settings_notifications_push_notifications_policy_followed = 我關注的人
|
||||||
|
settings_notifications_push_notifications_policy_follower = 關注我的人
|
||||||
|
settings_notifications_push_notifications_policy_none = 無人
|
||||||
|
settings_notifications_push_notifications_policy_title = 我可以從誰那裡接收通知?
|
||||||
|
settings_notifications_push_notifications_save_settings = 保存設置改動
|
||||||
|
settings_notifications_push_notifications_undo_settings = 撤銷設置改動
|
||||||
|
settings_notifications_push_notifications_unsubscribe = 禁用桌面通知
|
||||||
|
settings_notifications_push_notifications_unsupported = 你的瀏覽器不支持桌面通知
|
||||||
|
settings_notifications_push_notifications_warning_enable_close = 關閉
|
||||||
|
settings_notifications_push_notifications_warning_enable_description = 若想在鹿鳴沒有打開時接收通知,請啟用桌面通知功能。一旦啟動,你可以通過上面的“打開設置”按鈕來 精確控制哪種類型的互動可以產生桌面通知。
|
||||||
|
settings_notifications_push_notifications_warning_enable_description_settings = To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.
|
||||||
|
settings_notifications_push_notifications_warning_enable_desktop = 啟用桌面通知功能
|
||||||
|
settings_notifications_push_notifications_warning_enable_title = 不錯過任何事
|
||||||
|
settings_notifications_push_notifications_warning_re_auth = 您的服務器似乎不支持推送通知。嘗試退出用戶並重新登錄。如果此消息仍然出現,請聯繫您服務器的管理員。
|
||||||
|
settings_notifications_show_btn = Go to notifications settings
|
||||||
|
settings_notifications_settings = Notifications
|
||||||
|
settings_preferences_label = 首選項
|
||||||
|
settings_profile_appearance_bio = 簡介
|
||||||
|
settings_profile_appearance_description = 編輯個人資料,例如頭像、用戶名、個人簡介等。
|
||||||
|
settings_profile_appearance_display_name = 暱稱
|
||||||
|
settings_profile_appearance_label = 個人資料
|
||||||
|
settings_profile_appearance_title = 編輯個人資料
|
||||||
|
settings_profile_featured_tags_description = 人們可以在這些標籤下瀏覽你的公共嘟文。
|
||||||
|
settings_profile_featured_tags_label = 精選的話題標籤
|
||||||
|
settings_profile_label = 個人資料
|
||||||
|
settings_select_a_settings = 在左側選擇一個設置
|
||||||
|
settings_users_export = 導出用戶令牌
|
||||||
|
settings_users_import = 導入用戶令牌
|
||||||
|
settings_users_label = 當前用戶
|
||||||
|
state_edited = (已編輯)
|
||||||
|
state_editing = 編輯中
|
||||||
|
state_loading = 加載中...
|
||||||
|
state_upload_failed = 上傳失敗
|
||||||
|
state_uploading = 上傳中...
|
||||||
|
status_edited = 在 {$date} 編輯了
|
||||||
|
status_filter_hidden_phrase = 篩選依據
|
||||||
|
status_filter_removed_phrase = 從篩選中移除
|
||||||
|
status_filter_show_anyway = 仍然展示
|
||||||
|
status_img_alt_desc = 描述
|
||||||
|
status_img_alt_dismiss = 關閉
|
||||||
|
status_poll_count = {0} 次投票
|
||||||
|
status_poll_ends = 將在 {0} 結束
|
||||||
|
status_poll_finished = 已在 {0} 結束
|
||||||
|
status_reblogged = {0} 轉發了
|
||||||
|
status_someone = 某人
|
||||||
|
status_spoiler_show_less = 隱藏
|
||||||
|
status_spoiler_show_more = 顯示更多
|
||||||
|
status_thread = 帖文串
|
||||||
|
status_try_original_site = 嘗試從源站打開
|
||||||
|
status_history_created = 在 {0} 發布了
|
||||||
|
status_history_edited = 在 {$date} 編輯了
|
||||||
|
tab_for_you = 推薦關注
|
||||||
|
tab_hashtags = 話題標籤
|
||||||
|
tab_media = 媒體
|
||||||
|
tab_news = 最新消息
|
||||||
|
tab_notifications_all = 全部
|
||||||
|
tab_notifications_mention = 提及
|
||||||
|
tab_posts = 帖文
|
||||||
|
tab_posts_with_replies = 帖文與留言
|
||||||
|
time_ago_options_day_future = 現在|明天|{n} 天后
|
||||||
|
time_ago_options_day_past = 現在|昨天|{n} 天前
|
||||||
|
time_ago_options_hour_future = 現在|1 小時後|{n} 小時後
|
||||||
|
time_ago_options_hour_past = 現在|1 小時前|{n} 小時前
|
||||||
|
time_ago_options_just_now = 剛剛
|
||||||
|
time_ago_options_minute_future = 現在|1 分鐘後|{n} 分鐘後
|
||||||
|
time_ago_options_minute_past = 現在|1 分鐘前|{n} 分鐘前
|
||||||
|
time_ago_options_month_future = 現在|下個月|{n} 個月後
|
||||||
|
time_ago_options_month_past = 現在|上個月|{n} 個月前
|
||||||
|
time_ago_options_second_future = 剛剛|{n} 秒後|{n} 秒後
|
||||||
|
time_ago_options_second_past = 剛剛|{n} 秒前|{n} 秒前
|
||||||
|
time_ago_options_short_day_future = {n} 天
|
||||||
|
time_ago_options_short_day_past = {n} 天
|
||||||
|
time_ago_options_short_hour_future = {n} 小時
|
||||||
|
time_ago_options_short_hour_past = {$n} 小時
|
||||||
|
time_ago_options_short_minute_future = {n} 分
|
||||||
|
time_ago_options_short_minute_past = {$n} 分
|
||||||
|
time_ago_options_short_month_future = {n} 月
|
||||||
|
time_ago_options_short_month_past = {n} 月
|
||||||
|
time_ago_options_short_second_future = {n} 秒
|
||||||
|
time_ago_options_short_second_past = {n} 秒
|
||||||
|
time_ago_options_short_week_future = {n} 週
|
||||||
|
time_ago_options_short_week_past = {n} 週
|
||||||
|
time_ago_options_short_year_future = {n} 年
|
||||||
|
time_ago_options_short_year_past = {n} 年
|
||||||
|
time_ago_options_week_future = 現在|下週|{n} 週後
|
||||||
|
time_ago_options_week_past = 現在|上週|{n} 週前
|
||||||
|
time_ago_options_year_future = 現在|明年|{n} 年後
|
||||||
|
time_ago_options_year_past = 現在|去年|{n} 年前
|
||||||
|
timeline_show_new_items = 展示 {v} 條新帖文
|
||||||
|
title_federated_timeline = 跨站時間線
|
||||||
|
title_local_timeline = 本地時間線
|
||||||
|
tooltip_add_content_warning = 添加內容警告標識
|
||||||
|
tooltip_add_media = 添加圖片、視頻或者音頻文件
|
||||||
|
tooltip_change_content_visibility = 修改內容是否可見
|
||||||
|
tooltip_change_language = 改變語言
|
||||||
|
tooltip_emoji = 表情符號
|
||||||
|
tooltip_explore_links_intro = 這些新聞故事正被本站和分佈式網絡上其他站點的用戶談論。
|
||||||
|
tooltip_explore_posts_intro = 來自本站和分佈式網絡上其他站點的這些嘟文正在本站引起關注。
|
||||||
|
tooltip_explore_tags_intro = 這些標籤正在本站和分佈式網絡上其他站點的用戶中引起關注。
|
||||||
|
tooltip_toggle_code_block = 切換代碼塊
|
||||||
|
user_add_existing = 添加現有帳戶
|
||||||
|
user_server_address_label = Mastodon 服務器地址
|
||||||
|
user_sign_in_desc = 登錄後可關注其他人或標籤、點贊、分享和回复帖文,或與不同服務器上的賬號交互。
|
||||||
|
user_sign_in_notice_title = 正在查看 {0} 的公共數據
|
||||||
|
user_sign_out_account = 登出 {$username}
|
||||||
|
user_tip_no_account = 如果您還沒有 Mastodon 賬戶,{0}。
|
||||||
|
user_tip_register_account = 選擇您的服務器並註冊一個
|
||||||
|
visibility_direct = 私信
|
||||||
|
visibility_direct_desc = 僅對提及的用戶可見
|
||||||
|
visibility_private = 僅限關注者
|
||||||
|
visibility_private_desc = 僅關注者可見
|
||||||
|
visibility_public = 公開
|
||||||
|
visibility_public_desc = 所有人可見
|
||||||
|
visibility_unlisted = 不列出
|
||||||
|
visibility_unlisted_desc = 對所有人可見,但不出現在公共時間線上
|
|
@ -1,380 +0,0 @@
|
||||||
{
|
|
||||||
"a11y": {
|
|
||||||
"loading_page": "加載頁面中,請稍後",
|
|
||||||
"loading_titled_page": "加載{0}頁面中,請稍後",
|
|
||||||
"locale_changed": "語言已更改為{0}",
|
|
||||||
"locale_changing": "更改語言中,請稍後",
|
|
||||||
"route_loaded": "頁面{0}已加載"
|
|
||||||
},
|
|
||||||
"account": {
|
|
||||||
"avatar_description": "{0} 的頭像",
|
|
||||||
"blocked_by": "您已被此用戶拉黑",
|
|
||||||
"blocked_domains": "已拉黑的域名",
|
|
||||||
"blocked_users": "已拉黑的用戶",
|
|
||||||
"blocking": "已拉黑",
|
|
||||||
"bot": "機器人",
|
|
||||||
"favourites": "喜歡的帖文",
|
|
||||||
"follow": "關注",
|
|
||||||
"follow_back": "回關",
|
|
||||||
"follow_requested": "已申請關注",
|
|
||||||
"followers": "關注者",
|
|
||||||
"followers_count": "被 {0} 人關注",
|
|
||||||
"following": "正在關注",
|
|
||||||
"following_count": "正在關注 {0} 人",
|
|
||||||
"follows_you": "已關注你",
|
|
||||||
"go_to_profile": "轉到個人資料",
|
|
||||||
"joined": "已加入",
|
|
||||||
"moved_title": "的新賬號是:",
|
|
||||||
"muted_users": "已屏蔽的用戶",
|
|
||||||
"muting": "已屏蔽",
|
|
||||||
"mutuals": "互相關注",
|
|
||||||
"pinned": "置頂的帖文",
|
|
||||||
"posts": "帖文",
|
|
||||||
"posts_count": "{0} 條帖文",
|
|
||||||
"profile_description": "{0} 的個人資料頭圖",
|
|
||||||
"profile_unavailable": "個人資料不可見",
|
|
||||||
"unblock": "取消拉黑",
|
|
||||||
"unfollow": "取消關注",
|
|
||||||
"unmute": "取消屏蔽"
|
|
||||||
},
|
|
||||||
"action": {
|
|
||||||
"apply": "應用",
|
|
||||||
"bookmark": "收藏",
|
|
||||||
"bookmarked": "已收藏",
|
|
||||||
"boost": "轉發",
|
|
||||||
"boosted": "已轉發",
|
|
||||||
"clear_upload_failed": "清除上傳失敗",
|
|
||||||
"close": "關閉",
|
|
||||||
"compose": "撰寫",
|
|
||||||
"confirm": "確認",
|
|
||||||
"edit": "編輯",
|
|
||||||
"enter_app": "進入應用",
|
|
||||||
"favourite": "喜歡",
|
|
||||||
"favourited": "已喜歡",
|
|
||||||
"more": "更多",
|
|
||||||
"next": "下一個",
|
|
||||||
"prev": "上一個",
|
|
||||||
"publish": "發布",
|
|
||||||
"reply": "回复",
|
|
||||||
"save": "保存",
|
|
||||||
"save_changes": "保存更改",
|
|
||||||
"sign_in": "登鹿",
|
|
||||||
"switch_account": "切換帳號",
|
|
||||||
"vote": "投票"
|
|
||||||
},
|
|
||||||
"app_desc_short": "用 🧡 製作的 Mastodon 客戶端",
|
|
||||||
"app_logo": "應用圖標",
|
|
||||||
"app_name": "鹿鳴",
|
|
||||||
"attachment": {
|
|
||||||
"edit_title": "描述",
|
|
||||||
"remove_label": "移除附件"
|
|
||||||
},
|
|
||||||
"command": {
|
|
||||||
"activate": "執行",
|
|
||||||
"complete": "完成",
|
|
||||||
"compose_desc": "寫一條新帖文",
|
|
||||||
"n-people-in-the-past-n-days": "{0} 人在過去 {1} 天",
|
|
||||||
"select_lang": "選擇語言",
|
|
||||||
"sign_in_desc": "添加現有帳戶",
|
|
||||||
"switch_account": "切換到 {0}",
|
|
||||||
"switch_account_desc": "切換到另一個帳戶",
|
|
||||||
"toggle_dark_mode": "切換深色模式",
|
|
||||||
"toggle_zen_mode": "切換禪模式"
|
|
||||||
},
|
|
||||||
"common": {
|
|
||||||
"end_of_list": "列表到底啦",
|
|
||||||
"error": "錯誤",
|
|
||||||
"in": "在",
|
|
||||||
"not_found": "無法找到相關內容",
|
|
||||||
"offline_desc": "您目前已離線,請檢查網絡連接。"
|
|
||||||
},
|
|
||||||
"conversation": {
|
|
||||||
"with": "與"
|
|
||||||
},
|
|
||||||
"error": {
|
|
||||||
"account_not_found": "未找到用戶 {0}",
|
|
||||||
"explore-list-empty": "目前沒有熱門話題,稍後再來看看吧!",
|
|
||||||
"file_size_cannot_exceed_n_mb": "文件大小不能超過 {0}MB",
|
|
||||||
"sign_in_error": "無法連接服務器",
|
|
||||||
"status_not_found": "未找到帖文",
|
|
||||||
"unsupported_file_format": "不支持的文件格式"
|
|
||||||
},
|
|
||||||
"help": {
|
|
||||||
"desc_highlight": "可能會在某些地方出現一些 bug 或缺失的功能。",
|
|
||||||
"desc_para1": "感謝你有興趣嘗試鹿鳴,一個我們正在積極開發的通用 Mastodon 客戶端。",
|
|
||||||
"desc_para2": "我們正在努力開發中,並隨著時間的推移不斷完善。鹿鳴將很快開源,並邀請您參與進來!",
|
|
||||||
"desc_para3": "為了幫助促進開發,你可以通過以下鏈接贊助我們的團隊成員。希望你喜歡 Elk!",
|
|
||||||
"desc_para4": "在此之前,如果你願意幫助測試、提供反饋或作出貢獻,",
|
|
||||||
"desc_para5": "在 Mastodon 上聯繫我們",
|
|
||||||
"desc_para6": "來參與其中。",
|
|
||||||
"title": "預覽鹿鳴!"
|
|
||||||
},
|
|
||||||
"menu": {
|
|
||||||
"block_account": "拉黑 {0}",
|
|
||||||
"block_domain": "拉黑域名 {0}",
|
|
||||||
"copy_link_to_post": "複製這篇帖文的鏈接",
|
|
||||||
"delete": "刪除",
|
|
||||||
"delete_and_redraft": "刪除並重新編輯",
|
|
||||||
"direct_message_account": "私信 {0}",
|
|
||||||
"edit": "編輯",
|
|
||||||
"mention_account": "提及 {0}",
|
|
||||||
"mute_account": "屏蔽 {0}",
|
|
||||||
"mute_conversation": "靜音帖子",
|
|
||||||
"open_in_original_site": "從源站打開",
|
|
||||||
"pin_on_profile": "置頂在個人資料上",
|
|
||||||
"show_untranslated": "顯示原文",
|
|
||||||
"toggle_theme": {
|
|
||||||
"dark": "切換深色模式",
|
|
||||||
"light": "切換亮色模式"
|
|
||||||
},
|
|
||||||
"translate_post": "翻譯帖文",
|
|
||||||
"unblock_account": "解除拉黑 {0}",
|
|
||||||
"unblock_domain": "解除拉黑域名 {0}",
|
|
||||||
"unmute_account": "解除屏蔽 {0}",
|
|
||||||
"unmute_conversation": "取消靜音帖子",
|
|
||||||
"unpin_on_profile": "取消置頂"
|
|
||||||
},
|
|
||||||
"nav": {
|
|
||||||
"bookmarks": "書籤",
|
|
||||||
"built_at": "於 {0}構建",
|
|
||||||
"conversations": "私信",
|
|
||||||
"explore": "探索",
|
|
||||||
"favourites": "喜歡",
|
|
||||||
"federated": "跨站",
|
|
||||||
"home": "主頁",
|
|
||||||
"local": "本地",
|
|
||||||
"notifications": "通知",
|
|
||||||
"profile": "個人資料",
|
|
||||||
"search": "搜索",
|
|
||||||
"select_feature_flags": "功能開關",
|
|
||||||
"select_font_size": "字體大小",
|
|
||||||
"select_language": "選擇語言",
|
|
||||||
"settings": "設置",
|
|
||||||
"show_intro": "應用介紹",
|
|
||||||
"toggle_theme": "切換主題",
|
|
||||||
"zen_mode": "禪模式"
|
|
||||||
},
|
|
||||||
"notification": {
|
|
||||||
"favourited_post": "點讚了你的帖文",
|
|
||||||
"followed_you": "關注了你",
|
|
||||||
"followed_you_count": "{n} 人關注了你",
|
|
||||||
"missing_type": "未知的通知類型:",
|
|
||||||
"reblogged_post": "轉發了你的帖文",
|
|
||||||
"request_to_follow": "請求關注你",
|
|
||||||
"signed_up": "註冊了",
|
|
||||||
"update_status": "更新了他們的狀態"
|
|
||||||
},
|
|
||||||
"placeholder": {
|
|
||||||
"content_warning": "寫下你的警告",
|
|
||||||
"default_1": "在想些什麼?",
|
|
||||||
"reply_to_account": "回复 {0}",
|
|
||||||
"replying": "回复",
|
|
||||||
"the_thread": "這個帖文"
|
|
||||||
},
|
|
||||||
"pwa": {
|
|
||||||
"dismiss": "忽略",
|
|
||||||
"title": "鹿鳴存在新的更新",
|
|
||||||
"update": "更新",
|
|
||||||
"update_available_short": "更新鹿鳴"
|
|
||||||
},
|
|
||||||
"search": {
|
|
||||||
"search_desc": "搜索用戶或話題標籤",
|
|
||||||
"search_empty": "無法找到符合搜尋條件之結果"
|
|
||||||
},
|
|
||||||
"settings": {
|
|
||||||
"about": {
|
|
||||||
"label": "關於"
|
|
||||||
},
|
|
||||||
"feature_flags": {
|
|
||||||
"github_cards": "GitHub 卡片",
|
|
||||||
"title": "實驗功能",
|
|
||||||
"user_picker": "用戶選擇器",
|
|
||||||
"virtual_scroll": "虛擬滾動"
|
|
||||||
},
|
|
||||||
"interface": {
|
|
||||||
"color_mode": "顏色",
|
|
||||||
"dark_mode": "暗色模式",
|
|
||||||
"default": "(默認)",
|
|
||||||
"font_size": "字號",
|
|
||||||
"label": "外觀",
|
|
||||||
"light_mode": "亮色模式"
|
|
||||||
},
|
|
||||||
"language": {
|
|
||||||
"display_language": "首選語言",
|
|
||||||
"label": "語言"
|
|
||||||
},
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications",
|
|
||||||
"notifications": {
|
|
||||||
"label": "Notifications settings"
|
|
||||||
},
|
|
||||||
"push_notifications": {
|
|
||||||
"alerts": {
|
|
||||||
"favourite": "喜歡的",
|
|
||||||
"follow": "新的關注者",
|
|
||||||
"mention": "提及",
|
|
||||||
"poll": "投票",
|
|
||||||
"reblog": "轉發了你的帖文",
|
|
||||||
"title": "接收了什麼通知?"
|
|
||||||
},
|
|
||||||
"description": "Receive notifications even when you are not using Elk.",
|
|
||||||
"instructions": "Don't forget to save your changes using @:settings.notifications.push_notifications.save_settings button!",
|
|
||||||
"label": "Push notifications settings",
|
|
||||||
"policy": {
|
|
||||||
"all": "任何人",
|
|
||||||
"followed": "我關注的人",
|
|
||||||
"follower": "關注我的人",
|
|
||||||
"none": "無人",
|
|
||||||
"title": "我可以從誰那裡接收通知?"
|
|
||||||
},
|
|
||||||
"save_settings": "保存設置改動",
|
|
||||||
"undo_settings": "撤銷設置改動",
|
|
||||||
"unsubscribe": "禁用桌面通知",
|
|
||||||
"unsupported": "你的瀏覽器不支持桌面通知",
|
|
||||||
"warning": {
|
|
||||||
"enable_close": "關閉",
|
|
||||||
"enable_description": "若想在鹿鳴沒有打開時接收通知,請啟用桌面通知功能。一旦啟動,你可以通過上面的“打開設置”按鈕來 精確控制哪種類型的互動可以產生桌面通知。",
|
|
||||||
"enable_description_settings": "To receive notifications when Elk is not open, enable push notifications. You will be able to control precisely what types of interactions generate push notifications on this same screen once you enable them.",
|
|
||||||
"enable_desktop": "啟用桌面通知功能",
|
|
||||||
"enable_title": "不錯過任何事",
|
|
||||||
"re_auth": "您的服務器似乎不支持推送通知。嘗試退出用戶並重新登錄。如果此消息仍然出現,請聯繫您服務器的管理員。"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"show_btn": "Go to notifications settings"
|
|
||||||
},
|
|
||||||
"notifications_settings": "Notifications",
|
|
||||||
"preferences": {
|
|
||||||
"label": "首選項"
|
|
||||||
},
|
|
||||||
"profile": {
|
|
||||||
"appearance": {
|
|
||||||
"bio": "簡介",
|
|
||||||
"description": "編輯個人資料,例如頭像、用戶名、個人簡介等。",
|
|
||||||
"display_name": "暱稱",
|
|
||||||
"label": "個人資料",
|
|
||||||
"title": "編輯個人資料"
|
|
||||||
},
|
|
||||||
"featured_tags": {
|
|
||||||
"description": "人們可以在這些標籤下瀏覽你的公共嘟文。",
|
|
||||||
"label": "精選的話題標籤"
|
|
||||||
},
|
|
||||||
"label": "個人資料"
|
|
||||||
},
|
|
||||||
"select_a_settings": "在左側選擇一個設置",
|
|
||||||
"users": {
|
|
||||||
"export": "導出用戶令牌",
|
|
||||||
"import": "導入用戶令牌",
|
|
||||||
"label": "當前用戶"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"edited": "(已編輯)",
|
|
||||||
"editing": "編輯中",
|
|
||||||
"loading": "加載中...",
|
|
||||||
"upload_failed": "上傳失敗",
|
|
||||||
"uploading": "上傳中..."
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"edited": "在 {0} 編輯了",
|
|
||||||
"filter_hidden_phrase": "篩選依據",
|
|
||||||
"filter_removed_phrase": "從篩選中移除",
|
|
||||||
"filter_show_anyway": "仍然展示",
|
|
||||||
"img_alt": {
|
|
||||||
"desc": "描述",
|
|
||||||
"dismiss": "關閉"
|
|
||||||
},
|
|
||||||
"poll": {
|
|
||||||
"count": "{0} 次投票",
|
|
||||||
"ends": "將在 {0} 結束",
|
|
||||||
"finished": "已在 {0} 結束"
|
|
||||||
},
|
|
||||||
"reblogged": "{0} 轉發了",
|
|
||||||
"someone": "某人",
|
|
||||||
"spoiler_show_less": "隱藏",
|
|
||||||
"spoiler_show_more": "顯示更多",
|
|
||||||
"thread": "帖文串",
|
|
||||||
"try_original_site": "嘗試從源站打開"
|
|
||||||
},
|
|
||||||
"status_history": {
|
|
||||||
"created": "在 {0} 發布了",
|
|
||||||
"edited": "在 {0} 編輯了"
|
|
||||||
},
|
|
||||||
"tab": {
|
|
||||||
"for_you": "推薦關注",
|
|
||||||
"hashtags": "話題標籤",
|
|
||||||
"media": "媒體",
|
|
||||||
"news": "最新消息",
|
|
||||||
"notifications_all": "全部",
|
|
||||||
"notifications_mention": "提及",
|
|
||||||
"posts": "帖文",
|
|
||||||
"posts_with_replies": "帖文與留言"
|
|
||||||
},
|
|
||||||
"time_ago_options": {
|
|
||||||
"day_future": "現在|明天|{n} 天后",
|
|
||||||
"day_past": "現在|昨天|{n} 天前",
|
|
||||||
"hour_future": "現在|1 小時後|{n} 小時後",
|
|
||||||
"hour_past": "現在|1 小時前|{n} 小時前",
|
|
||||||
"just_now": "剛剛",
|
|
||||||
"minute_future": "現在|1 分鐘後|{n} 分鐘後",
|
|
||||||
"minute_past": "現在|1 分鐘前|{n} 分鐘前",
|
|
||||||
"month_future": "現在|下個月|{n} 個月後",
|
|
||||||
"month_past": "現在|上個月|{n} 個月前",
|
|
||||||
"second_future": "剛剛|{n} 秒後|{n} 秒後",
|
|
||||||
"second_past": "剛剛|{n} 秒前|{n} 秒前",
|
|
||||||
"short_day_future": "{n} 天",
|
|
||||||
"short_day_past": "{n} 天",
|
|
||||||
"short_hour_future": "{n} 小時",
|
|
||||||
"short_hour_past": "{n} 小時",
|
|
||||||
"short_minute_future": "{n} 分",
|
|
||||||
"short_minute_past": "{n} 分",
|
|
||||||
"short_month_future": "{n} 月",
|
|
||||||
"short_month_past": "{n} 月",
|
|
||||||
"short_second_future": "{n} 秒",
|
|
||||||
"short_second_past": "{n} 秒",
|
|
||||||
"short_week_future": "{n} 週",
|
|
||||||
"short_week_past": "{n} 週",
|
|
||||||
"short_year_future": "{n} 年",
|
|
||||||
"short_year_past": "{n} 年",
|
|
||||||
"week_future": "現在|下週|{n} 週後",
|
|
||||||
"week_past": "現在|上週|{n} 週前",
|
|
||||||
"year_future": "現在|明年|{n} 年後",
|
|
||||||
"year_past": "現在|去年|{n} 年前"
|
|
||||||
},
|
|
||||||
"timeline": {
|
|
||||||
"show_new_items": "展示 {v} 條新帖文"
|
|
||||||
},
|
|
||||||
"title": {
|
|
||||||
"federated_timeline": "跨站時間線",
|
|
||||||
"local_timeline": "本地時間線"
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"add_content_warning": "添加內容警告標識",
|
|
||||||
"add_media": "添加圖片、視頻或者音頻文件",
|
|
||||||
"change_content_visibility": "修改內容是否可見",
|
|
||||||
"change_language": "改變語言",
|
|
||||||
"emoji": "表情符號",
|
|
||||||
"explore_links_intro": "這些新聞故事正被本站和分佈式網絡上其他站點的用戶談論。",
|
|
||||||
"explore_posts_intro": "來自本站和分佈式網絡上其他站點的這些嘟文正在本站引起關注。",
|
|
||||||
"explore_tags_intro": "這些標籤正在本站和分佈式網絡上其他站點的用戶中引起關注。",
|
|
||||||
"toggle_code_block": "切換代碼塊"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"add_existing": "添加現有帳戶",
|
|
||||||
"server_address_label": "Mastodon 服務器地址",
|
|
||||||
"sign_in_desc": "登錄後可關注其他人或標籤、點贊、分享和回复帖文,或與不同服務器上的賬號交互。",
|
|
||||||
"sign_in_notice_title": "正在查看 {0} 的公共數據",
|
|
||||||
"sign_out_account": "登出 {0}",
|
|
||||||
"tip_no_account": "如果您還沒有 Mastodon 賬戶,{0}。",
|
|
||||||
"tip_register_account": "選擇您的服務器並註冊一個"
|
|
||||||
},
|
|
||||||
"visibility": {
|
|
||||||
"direct": "私信",
|
|
||||||
"direct_desc": "僅對提及的用戶可見",
|
|
||||||
"private": "僅限關注者",
|
|
||||||
"private_desc": "僅關注者可見",
|
|
||||||
"public": "公開",
|
|
||||||
"public_desc": "所有人可見",
|
|
||||||
"unlisted": "不列出",
|
|
||||||
"unlisted_desc": "對所有人可見,但不出現在公共時間線上"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,31 +1,63 @@
|
||||||
|
import { FluentBundle, FluentResource } from '@fluent/bundle'
|
||||||
|
import type { FluentValue } from '@fluent/bundle'
|
||||||
import { readFile } from 'fs-extra'
|
import { readFile } from 'fs-extra'
|
||||||
import { resolve } from 'pathe'
|
import { resolve } from 'pathe'
|
||||||
import type { ManifestOptions } from 'vite-plugin-pwa'
|
import type { ManifestOptions } from 'vite-plugin-pwa'
|
||||||
import { getEnv } from '../../config/env'
|
import { getEnv } from '../../config/env'
|
||||||
import { i18n } from '../../config/i18n'
|
import { defaultLocale, locales } from '../../config/i18n'
|
||||||
import type { LocaleObject } from '#i18n'
|
|
||||||
|
|
||||||
export type LocalizedWebManifest = Record<string, Partial<ManifestOptions>>
|
export type LocalizedWebManifest = Record<string, Partial<ManifestOptions>>
|
||||||
|
|
||||||
export const pwaLocales = i18n.locales as LocaleObject[]
|
|
||||||
|
|
||||||
type WebManifestEntry = Pick<ManifestOptions, 'name' | 'short_name' | 'description'>
|
type WebManifestEntry = Pick<ManifestOptions, 'name' | 'short_name' | 'description'>
|
||||||
type RequiredWebManifestEntry = Required<WebManifestEntry & Pick<ManifestOptions, 'dir' | 'lang'>>
|
type RequiredWebManifestEntry = Required<WebManifestEntry & Pick<ManifestOptions, 'dir' | 'lang'>>
|
||||||
|
|
||||||
|
async function readBundle(locale: string): Promise<FluentBundle> {
|
||||||
|
const messages = Buffer.from(
|
||||||
|
await readFile(resolve(`./locales/${locale}.ftl`), 'utf-8'),
|
||||||
|
).toString()
|
||||||
|
|
||||||
|
const bundle = new FluentBundle(locale)
|
||||||
|
bundle.addResource(new FluentResource(messages))
|
||||||
|
return bundle
|
||||||
|
}
|
||||||
|
|
||||||
|
function format(bundle: FluentBundle, key: string, values: Record<string, FluentValue>): string | undefined {
|
||||||
|
const message = bundle.getMessage(key)
|
||||||
|
if (!message || !message.value)
|
||||||
|
return undefined
|
||||||
|
|
||||||
|
return bundle.formatPattern(message.value, values)
|
||||||
|
}
|
||||||
|
|
||||||
|
export const pwaLocales = locales
|
||||||
|
|
||||||
export const createI18n = async (): Promise<LocalizedWebManifest> => {
|
export const createI18n = async (): Promise<LocalizedWebManifest> => {
|
||||||
const { env } = await getEnv()
|
const { env } = await getEnv()
|
||||||
const envName = `${env === 'release' ? '' : `(${env})`}`
|
const envName = `${env === 'release' ? '' : `(${env})`}`
|
||||||
const { pwa } = await readI18nFile('en-US.json')
|
const defaultBundle = await readBundle(defaultLocale)
|
||||||
|
|
||||||
const defaultManifest: Required<WebManifestEntry> = pwa.webmanifest[env]
|
const defaultManifest: Required<WebManifestEntry> = {
|
||||||
|
name: format(defaultBundle, 'pwa_webmanifest_name', { env: envName })!,
|
||||||
|
short_name: format(defaultBundle, 'pwa_webmanifest_short_name', { env: envName })!,
|
||||||
|
description: format(defaultBundle, 'pwa_webmanifest_name_description', { env: envName })!,
|
||||||
|
}
|
||||||
|
|
||||||
const locales: RequiredWebManifestEntry[] = await Promise.all(
|
const locales: RequiredWebManifestEntry[] = await Promise.all(
|
||||||
pwaLocales
|
pwaLocales
|
||||||
.filter(l => l.code !== 'en-US')
|
.filter(l => l.code !== 'en-US')
|
||||||
.map(async ({ code, dir = 'ltr', file }) => {
|
.map(async ({ code, dir = 'ltr' }) => {
|
||||||
// read locale file
|
// read locale file
|
||||||
const { pwa, app_name, app_desc_short } = await readI18nFile(file!)
|
const bundle = await readBundle(code)
|
||||||
const entry: WebManifestEntry = pwa?.webmanifest?.[env] ?? {}
|
|
||||||
|
const app_name = format(bundle, 'app_name', { env: envName })
|
||||||
|
const app_desc_short = format(bundle, 'app_desc_short', { env: envName })
|
||||||
|
|
||||||
|
const entry: Partial<WebManifestEntry> = {
|
||||||
|
name: format(bundle, 'pwa_webmanifest_name', { env: envName }),
|
||||||
|
short_name: format(bundle, 'pwa_webmanifest_short_name', { env: envName }),
|
||||||
|
description: format(bundle, 'pwa_webmanifest_name_description', { env: envName }),
|
||||||
|
}
|
||||||
|
|
||||||
if (!entry.name && app_name)
|
if (!entry.name && app_name)
|
||||||
entry.name = dir === 'rtl' ? `${envName} ${app_name}` : `${app_name} ${envName}`
|
entry.name = dir === 'rtl' ? `${envName} ${app_name}` : `${app_name} ${envName}`
|
||||||
|
|
||||||
|
@ -78,9 +110,3 @@ export const createI18n = async (): Promise<LocalizedWebManifest> => {
|
||||||
return acc
|
return acc
|
||||||
}, {} as LocalizedWebManifest)
|
}, {} as LocalizedWebManifest)
|
||||||
}
|
}
|
||||||
|
|
||||||
async function readI18nFile(file: string) {
|
|
||||||
return JSON.parse(Buffer.from(
|
|
||||||
await readFile(resolve(`./locales/${file}`), 'utf-8'),
|
|
||||||
).toString())
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
import Inspect from 'vite-plugin-inspect'
|
import Inspect from 'vite-plugin-inspect'
|
||||||
import { isCI, isDevelopment } from 'std-env'
|
import { isCI, isDevelopment } from 'std-env'
|
||||||
import { isPreview } from './config/env'
|
import { isPreview } from './config/env'
|
||||||
import { i18n } from './config/i18n'
|
|
||||||
import { pwa } from './config/pwa'
|
import { pwa } from './config/pwa'
|
||||||
import type { BuildInfo } from './types'
|
import type { BuildInfo } from './types'
|
||||||
|
|
||||||
|
@ -20,7 +19,6 @@ export default defineNuxtConfig({
|
||||||
'@unocss/nuxt',
|
'@unocss/nuxt',
|
||||||
'@pinia/nuxt',
|
'@pinia/nuxt',
|
||||||
'@vue-macros/nuxt',
|
'@vue-macros/nuxt',
|
||||||
'@nuxtjs/i18n',
|
|
||||||
'@nuxtjs/color-mode',
|
'@nuxtjs/color-mode',
|
||||||
'~/modules/purge-comments',
|
'~/modules/purge-comments',
|
||||||
'~/modules/setup-components',
|
'~/modules/setup-components',
|
||||||
|
@ -51,6 +49,7 @@ export default defineNuxtConfig({
|
||||||
'./composables/push-notifications',
|
'./composables/push-notifications',
|
||||||
'./composables/settings',
|
'./composables/settings',
|
||||||
'./composables/tiptap',
|
'./composables/tiptap',
|
||||||
|
'./composables/fluent',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
vite: {
|
vite: {
|
||||||
|
@ -135,7 +134,6 @@ export default defineNuxtConfig({
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
colorMode: { classSuffix: '' },
|
colorMode: { classSuffix: '' },
|
||||||
i18n,
|
|
||||||
pwa,
|
pwa,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
"release": "bumpp && esno scripts/release.ts"
|
"release": "bumpp && esno scripts/release.ts"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@fluent/bundle": "^0.17.1",
|
||||||
"@fnando/sparkline": "^0.3.10",
|
"@fnando/sparkline": "^0.3.10",
|
||||||
"@iconify-emoji/twemoji": "^1.0.2",
|
"@iconify-emoji/twemoji": "^1.0.2",
|
||||||
"@iconify/utils": "^2.0.7",
|
"@iconify/utils": "^2.0.7",
|
||||||
|
@ -46,6 +47,7 @@
|
||||||
"blurhash": "^2.0.4",
|
"blurhash": "^2.0.4",
|
||||||
"browser-fs-access": "^0.31.1",
|
"browser-fs-access": "^0.31.1",
|
||||||
"floating-vue": "2.0.0-beta.20",
|
"floating-vue": "2.0.0-beta.20",
|
||||||
|
"fluent-vue": "^3.2.0",
|
||||||
"focus-trap": "^7.2.0",
|
"focus-trap": "^7.2.0",
|
||||||
"form-data": "^4.0.0",
|
"form-data": "^4.0.0",
|
||||||
"fuse.js": "^6.6.2",
|
"fuse.js": "^6.6.2",
|
||||||
|
@ -76,7 +78,6 @@
|
||||||
"@iconify-json/ph": "^1.1.3",
|
"@iconify-json/ph": "^1.1.3",
|
||||||
"@iconify-json/ri": "^1.1.4",
|
"@iconify-json/ri": "^1.1.4",
|
||||||
"@iconify-json/twemoji": "^1.1.7",
|
"@iconify-json/twemoji": "^1.1.7",
|
||||||
"@nuxtjs/i18n": "^8.0.0-beta.7",
|
|
||||||
"@pinia/nuxt": "^0.4.6",
|
"@pinia/nuxt": "^0.4.6",
|
||||||
"@types/file-saver": "^2.0.5",
|
"@types/file-saver": "^2.0.5",
|
||||||
"@types/fnando__sparkline": "^0.3.4",
|
"@types/fnando__sparkline": "^0.3.4",
|
||||||
|
|
|
@ -6,8 +6,6 @@ definePageMeta({
|
||||||
const params = useRoute().params
|
const params = useRoute().params
|
||||||
const accountName = $(computedEager(() => toShortHandle(params.account as string)))
|
const accountName = $(computedEager(() => toShortHandle(params.account as string)))
|
||||||
|
|
||||||
const { t } = useI18n()
|
|
||||||
|
|
||||||
const { data: account, pending, refresh } = $(await useAsyncData(() => fetchAccountByHandle(accountName).catch(() => null), { watch: [isMastoInitialised], immediate: isMastoInitialised.value }))
|
const { data: account, pending, refresh } = $(await useAsyncData(() => fetchAccountByHandle(accountName).catch(() => null), { watch: [isMastoInitialised], immediate: isMastoInitialised.value }))
|
||||||
const relationship = $computed(() => account ? useRelationship(account).value : undefined)
|
const relationship = $computed(() => account ? useRelationship(account).value : undefined)
|
||||||
|
|
||||||
|
@ -21,7 +19,7 @@ onReactivated(() => {
|
||||||
<template>
|
<template>
|
||||||
<MainContent back>
|
<MainContent back>
|
||||||
<template #title>
|
<template #title>
|
||||||
<ContentRich timeline-title-style :content="account ? getDisplayName(account) : t('nav.profile')" />
|
<ContentRich timeline-title-style :content="account ? getDisplayName(account) : $t('nav_profile')" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template v-if="pending" />
|
<template v-if="pending" />
|
||||||
|
@ -31,17 +29,17 @@ onReactivated(() => {
|
||||||
|
|
||||||
<div v-if="relationship?.blockedBy" h-30 flex="~ col center gap-2">
|
<div v-if="relationship?.blockedBy" h-30 flex="~ col center gap-2">
|
||||||
<div text-secondary>
|
<div text-secondary>
|
||||||
{{ $t('account.profile_unavailable') }}
|
{{ $t('account_profile_unavailable') }}
|
||||||
</div>
|
</div>
|
||||||
<div text-secondary-light text-sm>
|
<div text-secondary-light text-sm>
|
||||||
{{ $t('account.blocked_by') }}
|
{{ $t('account_blocked_by') }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<NuxtPage v-else />
|
<NuxtPage v-else />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<CommonNotFound v-else>
|
<CommonNotFound v-else>
|
||||||
{{ $t('error.account_not_found', [`@${accountName}`]) }}
|
{{ $t('error_account_not_found', { username: `@${accountName}` }) }}
|
||||||
</CommonNotFound>
|
</CommonNotFound>
|
||||||
</MainContent>
|
</MainContent>
|
||||||
</template>
|
</template>
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue