Compare commits

..

28 commits

Author SHA1 Message Date
218602a7e8
Merge remote-tracking branch 'upstream/develop' into bnakkoma 2025-02-05 10:06:23 +09:00
floatingghost
2086522d64 Merge pull request '(arguably) improved layouting of user profile page' (#403) from Riedler/akkoma-fe:user-profile-changes into develop
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma-fe/pulls/403
2025-01-15 21:47:55 +00:00
Weblate
fa294e0003 Merge branch 'origin/develop' into Weblate. 2025-01-05 15:52:29 +00:00
floatingghost
d3fa5cfad0 Merge pull request 'post_status_form: enable sync flush for watcher' (#414) from novenary/akkoma-fe:sticky-drafts into develop
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma-fe/pulls/414
2025-01-05 15:52:26 +00:00
Weblate
9552287442 Merge branch 'origin/develop' into Weblate. 2025-01-05 15:52:19 +00:00
floatingghost
6b7c8f0def Merge pull request 'Allow using custom source URLs' (#421) from Oneric/akkoma-fe:custom-source into develop
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma-fe/pulls/421
2025-01-05 15:52:15 +00:00
Weblate
3386692e26 Merge branch 'origin/develop' into Weblate. 2025-01-05 15:51:50 +00:00
floatingghost
ad6bb47003 Merge pull request 'Add visual feedback when clicking translate' (#423) from ilja/akkoma-fe:provide_visual_feedback_when_clicking_translate_button into develop
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma-fe/pulls/423
2025-01-05 15:51:47 +00:00
ilja
9838545904 Add visual feedback when clicking translate
In a status, we can choose to translate the status (assuming there's a translator enabled on the backend)

It will translate, in practice generally according to detected language, and also provide an option to override the source language.

Translating can take a while, and there wasn't really a visual feedback when it was translating.
Now the translate button will be dissabled while translating.
2024-12-01 14:04:49 +01:00
Weblate
b3f25e5d84 Translated using Weblate (Polish)
Currently translated at 99.7% (1046 of 1049 strings)

Translated using Weblate (Polish)

Currently translated at 99.7% (1046 of 1049 strings)

Co-authored-by: ? <akkoma@mkljczk.pl>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: subtype <subtype@hollow.capital>
Translate-URL: http://translate.akkoma.dev/projects/akkoma/pleroma-fe/pl/
Translation: Pleroma fe/pleroma-fe
2024-11-22 04:56:24 +00:00
Weblate
248509073e Translated using Weblate (Italian)
Currently translated at 93.8% (985 of 1049 strings)

Co-authored-by: Steffo <akkoma@steffo.eu>
Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: http://translate.akkoma.dev/projects/akkoma/pleroma-fe/it/
Translation: Pleroma fe/pleroma-fe
2024-11-22 04:56:24 +00:00
Weblate
a7d6235131 Translated using Weblate (Lithuanian)
Currently translated at 8.1% (86 of 1049 strings)

Translated using Weblate (Lithuanian)

Currently translated at 5.5% (58 of 1049 strings)

Translated using Weblate (Lithuanian)

Currently translated at 1.9% (20 of 1049 strings)

Added translation using Weblate (Lithuanian)

Co-authored-by: Vaclovas Intas <Gateway_31@protonmail.com>
Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: http://translate.akkoma.dev/projects/akkoma/pleroma-fe/lt/
Translation: Pleroma fe/pleroma-fe
2024-11-22 04:56:24 +00:00
Oneric
42ba77ebf4 Allow using custom source URLs 2024-10-26 16:32:14 +02:00
novenary
ef242a1ddd post_status_form: enable sync flush for watcher
This fixes drafts not clearing after posting a reply.

Vue 3.3.11 changed watchers to stop firing after component unmount.
After posting a reply, the post form is removed, now causing the queued
event to be discarded.
Synchronous flush causes the handler to be called immediately when
changes happen, solving the problem.

The performance impact of this change seems non-existent. Even before,
typing would generate an event for each keystroke. Pasting is atomic.

See: https://github.com/vuejs/core/pull/7181
See: 80e2128d52
Fixes: a7dea2f70f
Fixes: #413
2024-10-15 00:16:45 +03:00
RiedleroD
94ed0991bc reverted 2e83ccefdc and clarified that compact user info is only used with enough room 2024-07-06 14:54:24 +02:00
RiedleroD
e955eb4503 oops, unfucked username placement 2024-07-03 18:58:50 +02:00
RiedleroD
c39d9fa64b fixed stuff overflowing in user popup e.g. in notifs 2024-07-03 18:30:51 +02:00
RiedleroD
a74a631793 stopped user handle from overflowing from its boundaries in user card 2024-07-03 17:45:40 +02:00
RiedleroD
2e83ccefdc disabled "compact user info" setting in mobile layout 2024-07-03 17:35:13 +02:00
RiedleroD
cf11b2523e disabled compact user card in mobile layout 2024-07-03 17:26:09 +02:00
RiedleroD
85001814a2 added setting for user info compactness 2024-06-26 18:09:13 +02:00
RiedleroD
c902219997 added setting to switch between center and left-aligned user bio 2024-06-26 17:20:50 +02:00
RiedleroD
754cd2fa57 slightly adjusted edit button spacing 2024-06-16 17:15:04 +02:00
RiedleroD
31055fb4f2 removed min-width statements that were messing up my layouts 2024-06-16 17:14:59 +02:00
RiedleroD
918b0e3770 stopped username from wrapping… 2024-06-16 17:14:14 +02:00
RiedleroD
88aae1706a oops, removed unneeded spacing 2024-06-16 17:14:08 +02:00
RiedleroD
3d2a8a3ca2 left-aligned bio text
why the fuck was it centered in the first place?!?
2024-06-16 17:14:03 +02:00
RiedleroD
a24fff5d5b moved user stats to between user info and user actions 2024-06-16 17:14:00 +02:00
16 changed files with 592 additions and 272 deletions

View file

@ -185,6 +185,12 @@ const setSettings = async ({ apiConfig, staticConfig, store }) => {
copyInstanceOption('renderMisskeyMarkdown') copyInstanceOption('renderMisskeyMarkdown')
copyInstanceOption('sidebarRight') copyInstanceOption('sidebarRight')
if (config.backendCommitUrl)
copyInstanceOption('backendCommitUrl')
if (config.frontendCommitUrl)
copyInstanceOption('frontendCommitUrl')
return store.dispatch('setTheme', config['theme']) return store.dispatch('setTheme', config['theme'])
} }

View file

@ -337,6 +337,7 @@ const PostStatusForm = {
watch: { watch: {
'newStatus': { 'newStatus': {
deep: true, deep: true,
flush: 'sync',
handler () { handler () {
this.statusChanged() this.statusChanged()
} }

View file

@ -159,6 +159,16 @@
{{ $t('settings.show_page_backgrounds') }} {{ $t('settings.show_page_backgrounds') }}
</BooleanSetting> </BooleanSetting>
</li> </li>
<li>
<BooleanSetting path="centerAlignBio">
{{ $t('settings.center_align_bio') }}
</BooleanSetting>
</li>
<li>
<BooleanSetting path="compactUserInfo">
{{ $t('settings.compact_user_info') }}
</BooleanSetting>
</li>
<li> <li>
<BooleanSetting path="stopGifs"> <BooleanSetting path="stopGifs">
{{ $t('settings.stop_gifs') }} {{ $t('settings.stop_gifs') }}

View file

@ -1,22 +1,25 @@
import { extractCommit } from 'src/services/version/version.service' import { extractCommit } from 'src/services/version/version.service'
const pleromaFeCommitUrl = 'https://akkoma.dev/AkkomaGang/pleroma-fe/commit/' function joinURL(base, subpath) {
const pleromaBeCommitUrl = 'https://akkoma.dev/AkkomaGang/akkoma/commit/' return URL.parse(subpath, base)?.href || "invalid base URL"
}
const VersionTab = { const VersionTab = {
data () { data () {
const instance = this.$store.state.instance const instance = this.$store.state.instance
return { return {
backendCommitUrl: instance.backendCommitUrl,
backendVersion: instance.backendVersion, backendVersion: instance.backendVersion,
frontendCommitUrl: instance.frontendCommitUrl,
frontendVersion: instance.frontendVersion frontendVersion: instance.frontendVersion
} }
}, },
computed: { computed: {
frontendVersionLink () { frontendVersionLink () {
return pleromaFeCommitUrl + this.frontendVersion return joinURL(this.frontendCommitUrl, this.frontendVersion)
}, },
backendVersionLink () { backendVersionLink () {
return pleromaBeCommitUrl + extractCommit(this.backendVersion) return joinURL(this.backendCommitUrl, extractCommit(this.backendVersion))
} }
} }
} }

View file

@ -41,7 +41,8 @@ const StatusContent = {
postLength: this.status.text.length, postLength: this.status.text.length,
parseReadyDone: false, parseReadyDone: false,
renderMisskeyMarkdown, renderMisskeyMarkdown,
translateFrom: null translateFrom: null,
translating: false
} }
}, },
computed: { computed: {
@ -135,7 +136,10 @@ const StatusContent = {
}, },
translateStatus () { translateStatus () {
const translateTo = this.$store.getters.mergedConfig.translationLanguage || this.$store.state.instance.interfaceLanguage const translateTo = this.$store.getters.mergedConfig.translationLanguage || this.$store.state.instance.interfaceLanguage
this.$store.dispatch('translateStatus', { id: this.status.id, language: translateTo, from: this.translateFrom }) this.translating = true
this.$store.dispatch(
'translateStatus', { id: this.status.id, language: translateTo, from: this.translateFrom }
).finally(() => { this.translating = false })
} }
} }
} }

View file

@ -91,6 +91,7 @@
{{ ' ' }} {{ ' ' }}
<button <button
class="btn button-default" class="btn button-default"
:disabled="translating"
@click="translateStatus" @click="translateStatus"
> >
{{ $t('status.translate') }} {{ $t('status.translate') }}

View file

@ -117,6 +117,11 @@ export default {
shouldConfirmMute () { shouldConfirmMute () {
return this.mergedConfig.modalOnMute return this.mergedConfig.modalOnMute
}, },
compactUserInfo () {
return this.$store.getters.mergedConfig.compactUserInfo
&& (this.$store.state.interface.layoutType !== 'mobile')
&& this.switcher
},
...mapGetters(['mergedConfig']) ...mapGetters(['mergedConfig'])
}, },
components: { components: {

View file

@ -21,6 +21,13 @@
position: relative; position: relative;
} }
.user-buttons {
grid-area: edit;
display: flex;
padding: .5em 0 .5em 0;
justify-self: end;
}
.panel-body { .panel-body {
word-wrap: break-word; word-wrap: break-word;
border-bottom-right-radius: inherit; border-bottom-right-radius: inherit;
@ -54,7 +61,6 @@
} }
&-bio { &-bio {
text-align: center;
display: block; display: block;
line-height: 1.3; line-height: 1.3;
padding: 1em; padding: 1em;
@ -101,15 +107,14 @@
padding: 0 26px; padding: 0 26px;
.container { .container {
min-width: 0;
padding: 16px 0 6px; padding: 16px 0 6px;
display: flex; display: grid;
align-items: flex-start; grid-template-areas:
max-height: 56px; "pfp name edit"
"pfp summary summary"
> * { "stats stats stats";
min-width: 0; grid-template-columns: auto 1fr auto;
} align-items: start;
.Avatar { .Avatar {
--_avatarShadowBox: var(--avatarShadow); --_avatarShadowBox: var(--avatarShadow);
@ -124,6 +129,7 @@
} }
&-avatar-link { &-avatar-link {
grid-area: pfp;
position: relative; position: relative;
cursor: pointer; cursor: pointer;
@ -154,8 +160,8 @@
.external-link-button, .edit-profile-button { .external-link-button, .edit-profile-button {
cursor: pointer; cursor: pointer;
width: 2.5em; width: 2.3em;
text-align: center; text-align: right;
margin: -0.5em 0; margin: -0.5em 0;
padding: 0.5em 0; padding: 0.5em 0;
@ -166,12 +172,16 @@
} }
.user-summary { .user-summary {
display: block; grid-area: summary;
display: grid;
grid-template-areas:
"name name name name name"
"hand role lock avg _";
grid-template-columns:
auto auto auto auto 1fr;
justify-items: start;
margin-left: 0.6em; margin-left: 0.6em;
text-align: left;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap;
flex: 1 1 0;
// This is so that text doesn't get overlapped by avatar's shadow if it has // This is so that text doesn't get overlapped by avatar's shadow if it has
// big one // big one
z-index: 1; z-index: 1;
@ -179,66 +189,84 @@
--emoji-size: 1.7em; --emoji-size: 1.7em;
.top-line, .user-locked {
.bottom-line {
display: flex;
}
}
.top-line {
.button-unstyled {
filter: drop-shadow(0 0 .5em var(--btn, $fallback--fg));
}
}
.user-name {
text-overflow: ellipsis;
overflow: hidden;
flex: 1 1 auto;
margin-right: 1em;
font-size: 1.1em;
text-shadow: 0 0 .5em var(--btn, $fallback--fg);
font-weight: bold;
}
.bottom-line {
font-weight: light;
font-size: 1.1em;
align-items: baseline;
.lock-icon {
margin-left: 0.5em; margin-left: 0.5em;
grid-area: lock;
} }
.user-screen-name { .user-screen-name {
min-width: 1px; min-width: 1px;
flex: 0 1 auto; max-width: 100%;
text-overflow: ellipsis; text-overflow: ellipsis;
overflow: hidden; overflow: hidden;
color: $fallback--lightText; color: $fallback--lightText;
color: var(--lightText, $fallback--lightText); color: var(--lightText, $fallback--lightText);
text-shadow: 0 0 .5em var(--btn, $fallback--fg); text-shadow: 0 0 .5em var(--btn, $fallback--fg);
grid-area: hand;
} }
.dailyAvg { .dailyAvg {
min-width: 1px; min-width: 1px;
flex: 0 0 auto;
margin-left: 1em; margin-left: 1em;
font-size: 0.7em; font-size: 0.7em;
color: $fallback--text; color: $fallback--text;
color: var(--text, $fallback--text); color: var(--text, $fallback--text);
text-shadow: 0 0 .5em var(--btn, $fallback--fg); text-shadow: 0 0 .5em var(--btn, $fallback--fg);
grid-area: avg;
} }
.user-role { .user-roles {
flex: none; display: flex;
color: $fallback--text; grid-area: role;
color: var(--alertNeutralText, $fallback--text);
background-color: $fallback--fg; .user-role {
background-color: var(--alertNeutral, $fallback--fg); color: $fallback--text;
color: var(--alertNeutralText, $fallback--text);
background-color: $fallback--fg;
background-color: var(--alertNeutral, $fallback--fg);
}
} }
} }
.user-counts {
grid-area: stats;
display: flex;
line-height:16px;
padding-top: 0.5em;
text-align: center;
justify-content: space-around;
color: $fallback--lightText;
color: var(--lightText, $fallback--lightText);
align-self: center;
.user-count {
padding: .5em 0 .5em 0;
margin: 0 .5em;
h5 {
font-size:1em;
font-weight: bolder;
margin: 0 0 0.25em;
}
a {
text-decoration: none;
}
}
}
.user-name {
text-align: start;
text-overflow: ellipsis;
overflow: hidden;
margin-left: 0.6em;
font-size: 1.1em;
grid-area: name;
align-self: center;
white-space: nowrap;
max-width: 100%;
z-index: 1; // so shadow from user avatar doesn't overlap it
}
.user-meta { .user-meta {
margin-bottom: .15em; margin-bottom: .15em;
display: flex; display: flex;
@ -304,34 +332,21 @@
margin: 0; margin: 0;
} }
} }
&.-compact {
.container {
grid-template-areas:
"pfp name stats edit"
"pfp summary stats edit";
grid-template-columns: auto auto 1fr auto;
}
.user-counts {
padding-top: 0;
justify-content: space-evenly;
}
}
} }
.sidebar .edit-profile-button { .sidebar .edit-profile-button {
display: none; display: none;
} }
.user-counts {
display: flex;
line-height:16px;
padding: .5em 1.5em 0em 1.5em;
text-align: center;
justify-content: space-between;
color: $fallback--lightText;
color: var(--lightText, $fallback--lightText);
flex-wrap: wrap;
}
.user-count {
flex: 1 0 auto;
padding: .5em 0 .5em 0;
margin: 0 .5em;
h5 {
font-size:1em;
font-weight: bolder;
margin: 0 0 0.25em;
}
a {
text-decoration: none;
}
}

View file

@ -9,7 +9,10 @@
class="background-image" class="background-image"
/> />
<div class="panel-heading -flexible-height"> <div class="panel-heading -flexible-height">
<div class="user-info"> <div
class="user-info"
:class="{ '-compact': this.compactUserInfo }"
>
<div class="container"> <div class="container">
<a <a
v-if="allowZoomingAvatar" v-if="allowZoomingAvatar"
@ -29,6 +32,7 @@
</a> </a>
<router-link <router-link
v-else v-else
class="user-info-avatar-link"
:to="userProfileLink(user)" :to="userProfileLink(user)"
> >
<UserAvatar <UserAvatar
@ -36,15 +40,80 @@
:user="user" :user="user"
/> />
</router-link> </router-link>
<RichContent
:title="user.name"
class="user-name"
:html="user.name"
:emoji="user.emoji"
/>
<div class="user-summary"> <div class="user-summary">
<div class="top-line"> <router-link
<RichContent class="user-screen-name"
:title="user.name" :title="user.screen_name_ui"
class="user-name" :to="userProfileLink(user)"
:html="user.name" >
:emoji="user.emoji" @{{ user.screen_name_ui }}
</router-link>
<span class="user-roles" v-if="!hideBio && (user.deactivated || !!visibleRole || user.bot)">
<span
v-if="user.deactivated"
class="alert user-role"
>
{{ $t('user_card.deactivated') }}
</span>
<span
v-if="!!visibleRole"
class="alert user-role"
>
{{ $t(`general.role.${visibleRole}`) }}
</span>
<span
v-if="user.bot"
class="alert user-role"
>
{{ $t('user_card.bot') }}
</span>
</span>
<span class="user-locked" v-if="user.locked">
<FAIcon
class="lock-icon"
icon="lock"
size="sm"
/> />
<button </span>
<span
v-if="!mergedConfig.hideUserStats && !hideBio"
class="dailyAvg"
>{{ dailyAvg }} {{ $t('user_card.per_day') }}</span>
</div>
<div
v-if="!mergedConfig.hideUserStats && switcher"
class="user-counts"
>
<div
class="user-count"
@click.prevent="setProfileView('statuses')"
>
<h5>{{ $t('user_card.statuses') }}</h5>
<span>{{ user.statuses_count }} <br></span>
</div>
<div
class="user-count"
@click.prevent="setProfileView('friends')"
>
<h5>{{ $t('user_card.followees') }}</h5>
<span>{{ hideFollowsCount ? $t('user_card.hidden') : user.friends_count }}</span>
</div>
<div
class="user-count"
@click.prevent="setProfileView('followers')"
>
<h5>{{ $t('user_card.followers') }}</h5>
<span>{{ hideFollowersCount ? $t('user_card.hidden') : user.followers_count }}</span>
</div>
</div>
<div class="user-buttons">
<button
v-if="!isOtherUser && user.is_local" v-if="!isOtherUser && user.is_local"
class="button-unstyled edit-profile-button" class="button-unstyled edit-profile-button"
@click.stop="openProfileTab" @click.stop="openProfileTab"
@ -83,47 +152,6 @@
:user="user" :user="user"
:relationship="relationship" :relationship="relationship"
/> />
</div>
<div class="bottom-line">
<router-link
class="user-screen-name"
:title="user.screen_name_ui"
:to="userProfileLink(user)"
>
@{{ user.screen_name_ui }}
</router-link>
<template v-if="!hideBio">
<span
v-if="user.deactivated"
class="alert user-role"
>
{{ $t('user_card.deactivated') }}
</span>
<span
v-if="!!visibleRole"
class="alert user-role"
>
{{ $t(`general.role.${visibleRole}`) }}
</span>
<span
v-if="user.bot"
class="alert user-role"
>
{{ $t('user_card.bot') }}
</span>
</template>
<span v-if="user.locked">
<FAIcon
class="lock-icon"
icon="lock"
size="sm"
/>
</span>
<span
v-if="!mergedConfig.hideUserStats && !hideBio"
class="dailyAvg"
>{{ dailyAvg }} {{ $t('user_card.per_day') }}</span>
</div>
</div> </div>
</div> </div>
<div class="user-meta"> <div class="user-meta">
@ -269,38 +297,13 @@
v-if="!hideBio" v-if="!hideBio"
class="panel-body" class="panel-body"
> >
<div
v-if="!mergedConfig.hideUserStats && switcher"
class="user-counts"
>
<div
class="user-count"
@click.prevent="setProfileView('statuses')"
>
<h5>{{ $t('user_card.statuses') }}</h5>
<span>{{ user.statuses_count }} <br></span>
</div>
<div
class="user-count"
@click.prevent="setProfileView('friends')"
>
<h5>{{ $t('user_card.followees') }}</h5>
<span>{{ hideFollowsCount ? $t('user_card.hidden') : user.friends_count }}</span>
</div>
<div
class="user-count"
@click.prevent="setProfileView('followers')"
>
<h5>{{ $t('user_card.followers') }}</h5>
<span>{{ hideFollowersCount ? $t('user_card.hidden') : user.followers_count }}</span>
</div>
</div>
<RichContent <RichContent
v-if="!hideBio" v-if="!hideBio"
class="user-card-bio" class="user-card-bio"
:html="user.description_html" :html="user.description_html"
:emoji="user.emoji" :emoji="user.emoji"
:handle-links="true" :handle-links="true"
:style='{"text-align": this.$store.getters.mergedConfig.centerAlignBio ? "center" : "start"}'
/> />
</div> </div>
<teleport to="#modal"> <teleport to="#modal">

View file

@ -482,6 +482,7 @@
"blocks_tab": "Blocks", "blocks_tab": "Blocks",
"bot": "Dies ist ein Bot Account", "bot": "Dies ist ein Bot Account",
"btnRadius": "Knöpfe", "btnRadius": "Knöpfe",
"center_align_bio": "Zentrale Textausrichtung in der Bio",
"cBlue": "Blau (Antworten, folgt dir)", "cBlue": "Blau (Antworten, folgt dir)",
"cGreen": "Grün (Retweet)", "cGreen": "Grün (Retweet)",
"cOrange": "Orange (Favorisieren)", "cOrange": "Orange (Favorisieren)",
@ -496,6 +497,7 @@
"checkboxRadius": "Auswahlfelder", "checkboxRadius": "Auswahlfelder",
"collapse_subject": "Beiträge mit Inhaltswarnungen einklappen", "collapse_subject": "Beiträge mit Inhaltswarnungen einklappen",
"columns": "Spalten", "columns": "Spalten",
"compact_user_info": "Kompakte Benutzerinfos wenn genug Platz",
"composing": "Verfassen", "composing": "Verfassen",
"confirm_dialogs": "Bestätigung erforderlich für:", "confirm_dialogs": "Bestätigung erforderlich für:",
"confirm_dialogs_approve_follow": "Annehmen einer Followanfrage", "confirm_dialogs_approve_follow": "Annehmen einer Followanfrage",

View file

@ -491,6 +491,7 @@
"blocks_tab": "Blocks", "blocks_tab": "Blocks",
"bot": "This is a bot account", "bot": "This is a bot account",
"btnRadius": "Buttons", "btnRadius": "Buttons",
"center_align_bio": "Center text in user bio",
"cBlue": "Blue (Reply, follow)", "cBlue": "Blue (Reply, follow)",
"cGreen": "Green (Retweet)", "cGreen": "Green (Retweet)",
"cOrange": "Orange (Favorite)", "cOrange": "Orange (Favorite)",
@ -505,6 +506,7 @@
"checkboxRadius": "Checkboxes", "checkboxRadius": "Checkboxes",
"collapse_subject": "Collapse posts with content warnings", "collapse_subject": "Collapse posts with content warnings",
"columns": "Columns", "columns": "Columns",
"compact_user_info": "Compact user info when enough space",
"composing": "Composing", "composing": "Composing",
"confirm_dialogs": "Require confirmation for:", "confirm_dialogs": "Require confirmation for:",
"confirm_dialogs_approve_follow": "Accepting a follow request", "confirm_dialogs_approve_follow": "Accepting a follow request",

View file

@ -503,7 +503,13 @@
"columns": "Colonne", "columns": "Colonne",
"composing": "Composizione", "composing": "Composizione",
"confirm_new_password": "Conferma la nuova password", "confirm_new_password": "Conferma la nuova password",
"conversation_display": "Stile di visualizzazione delle conversazioni",
"conversation_display_linear": "Stile lineare",
"conversation_display_tree": "Stile ad albero",
"conversation_other_replies_button": "Mostra il bottone \"altre risposte\"",
"conversation_other_replies_button_below": "Sotto i post",
"current_avatar": "La tua icona attuale", "current_avatar": "La tua icona attuale",
"current_mascot": "La tua mascotte attuale",
"current_password": "La tua password attuale", "current_password": "La tua password attuale",
"data_import_export_tab": "Importa o esporta dati", "data_import_export_tab": "Importa o esporta dati",
"default_vis": "Visibilità predefinita dei messaggi", "default_vis": "Visibilità predefinita dei messaggi",
@ -511,11 +517,15 @@
"delete_account_description": "Elimina definitivamente i tuoi dati e disattiva il tuo profilo.", "delete_account_description": "Elimina definitivamente i tuoi dati e disattiva il tuo profilo.",
"delete_account_error": "C'è stato un problema durante l'eliminazione del tuo profilo. Se il problema persiste contatta l'amministratore della tua stanza.", "delete_account_error": "C'è stato un problema durante l'eliminazione del tuo profilo. Se il problema persiste contatta l'amministratore della tua stanza.",
"delete_account_instructions": "Digita la tua password nel campo sottostante per eliminare il tuo profilo.", "delete_account_instructions": "Digita la tua password nel campo sottostante per eliminare il tuo profilo.",
"disable_sticky_headers": "Non fissare i titoli delle colonne in cima allo schermo",
"discoverable": "Permetti la scoperta di questo profilo a servizi di ricerca ed altro", "discoverable": "Permetti la scoperta di questo profilo a servizi di ricerca ed altro",
"domain_mutes": "Domini", "domain_mutes": "Domini",
"download_backup": "Scarica",
"email_language": "Lingua delle email ricevute dal server",
"emoji_reactions_on_timeline": "Mostra reazioni nelle sequenze", "emoji_reactions_on_timeline": "Mostra reazioni nelle sequenze",
"enable_web_push_notifications": "Abilita notifiche web push", "enable_web_push_notifications": "Abilita notifiche web push",
"enter_current_password_to_confirm": "Inserisci la tua password per identificarti", "enter_current_password_to_confirm": "Inserisci la tua password per identificarti",
"expert_mode": "Mostra avanzate",
"export_theme": "Salva impostazioni", "export_theme": "Salva impostazioni",
"file_export_import": { "file_export_import": {
"backup_restore": "Archiviazione impostazioni", "backup_restore": "Archiviazione impostazioni",
@ -543,18 +553,23 @@
"hide_all_muted_posts": "Nascondi messaggi silenziati", "hide_all_muted_posts": "Nascondi messaggi silenziati",
"hide_attachments_in_convo": "Nascondi gli allegati presenti nelle conversazioni", "hide_attachments_in_convo": "Nascondi gli allegati presenti nelle conversazioni",
"hide_attachments_in_tl": "Nascondi gli allegati presenti nelle sequenze", "hide_attachments_in_tl": "Nascondi gli allegati presenti nelle sequenze",
"hide_bot_indication": "Nascondi indicatore bot nei post",
"hide_favorites_description": "Non mostrare la lista dei miei preferiti (gli utenti verranno comunque notificati)",
"hide_filtered_statuses": "Nascondi messaggi filtrati", "hide_filtered_statuses": "Nascondi messaggi filtrati",
"hide_followers_count_description": "Non mostrare quanti seguaci ho", "hide_followers_count_description": "Non mostrare quanti seguaci ho",
"hide_followers_description": "Non mostrare i miei seguaci", "hide_followers_description": "Non mostrare i miei seguaci",
"hide_follows_count_description": "Non mostrare quanti utenti seguo", "hide_follows_count_description": "Non mostrare quanti utenti seguo",
"hide_follows_description": "Non mostrare chi seguo", "hide_follows_description": "Non mostrare chi seguo",
"hide_isp": "Nascondi pannello della stanza", "hide_isp": "Nascondi pannello della stanza",
"hide_list_aliases_error_action": "Chiudi",
"hide_media_previews": "Nascondi anteprime", "hide_media_previews": "Nascondi anteprime",
"hide_muted_posts": "Nascondi messaggi degli utenti silenziati", "hide_muted_posts": "Nascondi messaggi degli utenti silenziati",
"hide_muted_threads": "Nascondi conversazioni silenziate",
"hide_post_stats": "Nascondi statistiche dei messaggi (es. il numero di preferenze)", "hide_post_stats": "Nascondi statistiche dei messaggi (es. il numero di preferenze)",
"hide_shoutbox": "Nascondi muro dei graffiti", "hide_shoutbox": "Nascondi muro dei graffiti",
"hide_user_stats": "Nascondi statistiche dell'utente (es. il numero di seguaci)", "hide_user_stats": "Nascondi statistiche dell'utente (es. il numero di seguaci)",
"hide_wallpaper": "Nascondi sfondo della stanza", "hide_wallpaper": "Nascondi sfondo della stanza",
"hide_wordfiltered_statuses": "Nascondi post filtrati per parola",
"import_blocks_from_a_csv_file": "Importa blocchi da un file CSV", "import_blocks_from_a_csv_file": "Importa blocchi da un file CSV",
"import_followers_from_a_csv_file": "Importa una lista di chi segui da un file CSV", "import_followers_from_a_csv_file": "Importa una lista di chi segui da un file CSV",
"import_mutes_from_a_csv_file": "Importa silenziati da un file CSV", "import_mutes_from_a_csv_file": "Importa silenziati da un file CSV",
@ -567,10 +582,14 @@
"invalid_theme_imported": "Il file selezionato non è un tema supportato da Pleroma. Il tuo tema non è stato modificato.", "invalid_theme_imported": "Il file selezionato non è un tema supportato da Pleroma. Il tuo tema non è stato modificato.",
"limited_availability": "Non disponibile nel tuo browser", "limited_availability": "Non disponibile nel tuo browser",
"links": "Collegamenti", "links": "Collegamenti",
"list_aliases_error": "Errore nel recupero degli alias: {error}",
"list_backups_error": "Errore nel recupero della lista dei backup: {error}",
"lock_account_description": "Vaglia manualmente i nuovi seguaci", "lock_account_description": "Vaglia manualmente i nuovi seguaci",
"loop_video": "Riproduci video in ciclo continuo", "loop_video": "Riproduci video in ciclo continuo",
"loop_video_silent_only": "Riproduci solo video muti in ciclo continuo (es. le \"gif\" di Mastodon)", "loop_video_silent_only": "Riproduci solo video muti in ciclo continuo (es. le \"gif\" di Mastodon)",
"mascot": "Mascotte di MastodonFE",
"max_thumbnails": "Numero massimo di anteprime per messaggio", "max_thumbnails": "Numero massimo di anteprime per messaggio",
"mention_links": "Collegamenti delle menzioni",
"mfa": { "mfa": {
"authentication_methods": "Metodi di accesso", "authentication_methods": "Metodi di accesso",
"confirm_and_enable": "Conferma ed abilita OTP", "confirm_and_enable": "Conferma ed abilita OTP",
@ -594,6 +613,12 @@
}, },
"minimal_scopes_mode": "Riduci opzioni di visibilità", "minimal_scopes_mode": "Riduci opzioni di visibilità",
"more_settings": "Altre impostazioni", "more_settings": "Altre impostazioni",
"move_account": "Sposta account",
"move_account_error": "Errore nello spostamento dell'account: {error}",
"move_account_notes": "Se vuoi spostare questo account da qualche altra parte, devi andare all'account di destinazione e aggiungere un alias che punta qui.",
"move_account_target": "Account di destinazione (es. {example})",
"moved_account": "Account spostato.",
"mute_bot_posts": "Silenzia post dei bot",
"mute_export": "Esporta silenziati", "mute_export": "Esporta silenziati",
"mute_export_button": "Esporta i silenziati in un file CSV", "mute_export_button": "Esporta i silenziati in un file CSV",
"mute_import": "Carica silenziati", "mute_import": "Carica silenziati",
@ -603,6 +628,7 @@
"mutes_tab": "Silenziati", "mutes_tab": "Silenziati",
"name": "Nome", "name": "Nome",
"name_bio": "Nome ed introduzione", "name_bio": "Nome ed introduzione",
"new_alias_target": "Aggiungi nuovo alias (es. {example})",
"new_email": "Nuova email", "new_email": "Nuova email",
"new_password": "Nuova password", "new_password": "Nuova password",
"no_blocks": "Nessun utente bloccato", "no_blocks": "Nessun utente bloccato",
@ -620,6 +646,7 @@
"notification_visibility_likes": "Preferiti", "notification_visibility_likes": "Preferiti",
"notification_visibility_mentions": "Menzioni", "notification_visibility_mentions": "Menzioni",
"notification_visibility_moves": "Migrazioni utenti", "notification_visibility_moves": "Migrazioni utenti",
"notification_visibility_polls": "Termine dei poll in cui hai votato",
"notification_visibility_repeats": "Condivisioni", "notification_visibility_repeats": "Condivisioni",
"notifications": "Notifiche", "notifications": "Notifiche",
"nsfw_clickthrough": "Fai click per visualizzare gli allegati offuscati", "nsfw_clickthrough": "Fai click per visualizzare gli allegati offuscati",
@ -628,7 +655,9 @@
"panelRadius": "Pannelli", "panelRadius": "Pannelli",
"pause_on_unfocused": "Interrompi l'aggiornamento continuo mentre la scheda è in secondo piano", "pause_on_unfocused": "Interrompi l'aggiornamento continuo mentre la scheda è in secondo piano",
"play_videos_in_modal": "Riproduci video in un riquadro a sbalzo", "play_videos_in_modal": "Riproduci video in un riquadro a sbalzo",
"post_look_feel": "Aspetto dei post",
"post_status_content_type": "Tipo di contenuto dei messaggi", "post_status_content_type": "Tipo di contenuto dei messaggi",
"posts": "Post",
"preload_images": "Precarica immagini", "preload_images": "Precarica immagini",
"presets": "Valori predefiniti", "presets": "Valori predefiniti",
"profile_background": "Sfondo del tuo profilo", "profile_background": "Sfondo del tuo profilo",
@ -642,6 +671,8 @@
"profile_tab": "Profilo", "profile_tab": "Profilo",
"radii_help": "Imposta il raggio degli angoli (in pixel)", "radii_help": "Imposta il raggio degli angoli (in pixel)",
"refresh_token": "Aggiorna token", "refresh_token": "Aggiorna token",
"remove_alias": "Rimuovi questo alias",
"remove_backup": "Elimina",
"replies_in_timeline": "Risposte nelle sequenze", "replies_in_timeline": "Risposte nelle sequenze",
"reply_visibility_all": "Mostra tutte le risposte", "reply_visibility_all": "Mostra tutte le risposte",
"reply_visibility_following": "Mostra solo le risposte rivolte a me o agli utenti che seguo", "reply_visibility_following": "Mostra solo le risposte rivolte a me o agli utenti che seguo",
@ -666,12 +697,15 @@
"security_tab": "Sicurezza", "security_tab": "Sicurezza",
"sensitive_by_default": "Tutti i miei messaggi sono scabrosi", "sensitive_by_default": "Tutti i miei messaggi sono scabrosi",
"set_new_avatar": "Scegli una nuova icona", "set_new_avatar": "Scegli una nuova icona",
"set_new_mascot": "Imposta nuova mascotte",
"set_new_profile_background": "Scegli un nuovo sfondo", "set_new_profile_background": "Scegli un nuovo sfondo",
"set_new_profile_banner": "Scegli un nuovo gonfalone", "set_new_profile_banner": "Scegli un nuovo gonfalone",
"setting_changed": "Valore personalizzato", "setting_changed": "Valore personalizzato",
"setting_server_side": "Questa impostazione è legata al tuo profilo e ha effetto su tutte le sessioni e tutti i client",
"settings": "Impostazioni", "settings": "Impostazioni",
"show_admin_badge": "Mostra l'insegna di amministratore sul mio profilo", "show_admin_badge": "Mostra l'insegna di amministratore sul mio profilo",
"show_moderator_badge": "Mostra l'insegna di moderatore sul mio profilo", "show_moderator_badge": "Mostra l'insegna di moderatore sul mio profilo",
"show_scrollbars": "Mostra le barre di scorrimento delle colonne laterali",
"stop_gifs": "Riproduci GIF al passaggio del cursore", "stop_gifs": "Riproduci GIF al passaggio del cursore",
"streaming": "Mostra automaticamente i nuovi messaggi quando sei in cima alla pagina", "streaming": "Mostra automaticamente i nuovi messaggi quando sei in cima alla pagina",
"style": { "style": {
@ -780,66 +814,80 @@
}, },
"filter_hint": { "filter_hint": {
"always_drop_shadow": "Attenzione: quest'ombra usa sempre {0} se il tuo browser lo supporta.", "always_drop_shadow": "Attenzione: quest'ombra usa sempre {0} se il tuo browser lo supporta.",
"avatar_inset": "Tieni presente che combinare ombre (sia incluse che non) sulle icone utente potrebbe dare risultati strani con quelle trasparenti.", "avatar_inset": "Tieni presente che combinare ombre (sia incavate che non) sulle icone utente potrebbe dare risultati strani con avatar trasparenti.",
"drop_shadow_syntax": "{0} non supporta il parametro {1} né la keyword {2}.", "drop_shadow_syntax": "{0} non supporta il parametro {1} con la keyword {2}.",
"inset_classic": "Le ombre incluse usano {0}", "inset_classic": "Le ombre incavate usano {0}",
"spread_zero": "Lo spandimento maggiore di zero si azzera sulle ombre" "spread_zero": "Le ombre con espansione maggiore di zero appariranno come se l'espansione fosse zero"
}, },
"hintV3": "Per le ombre puoi anche usare la sintassi {0} per sfruttare il secondo colore.", "hintV3": "Per le ombre puoi anche usare la sintassi {0} per usare l'altro slot colore.",
"inset": "Includi", "inset": "Incavatura",
"override": "Sostituisci", "override": "Sovrascrivi",
"shadow_id": "Ombra numero {value}", "shadow_id": "Ombra #{value}",
"spread": "Spandi" "spread": "Espansione"
}, },
"switcher": { "switcher": {
"clear_all": "Azzera tutto", "clear_all": "Azzera tutto",
"clear_opacity": "Rimuovi opacità", "clear_opacity": "Azzera opacità",
"help": { "help": {
"fe_downgraded": "L'interfaccia è stata portata ad una versione precedente.", "fe_downgraded": "La versione di PleromaFE è riportata ad una versione precedente.",
"fe_upgraded": "Lo schema dei temi è stato aggiornato insieme all'interfaccia.", "fe_upgraded": "Il motore dei temi di PleromaFE è stato aggiornato insieme all'interfaccia.",
"future_version_imported": "Il tema importato è stato creato per una versione più recente dell'interfaccia.", "future_version_imported": "Il tema importato è stato creato per una versione più nuova del frontend.",
"migration_napshot_gone": "Anteprima del tema non trovata, non tutto potrebbe essere come ricordi.", "migration_napshot_gone": "Per qualche motivo non è stata trovata l'anteprima del tema, non tutto potrebbe essere come ricordi.",
"migration_snapshot_ok": "Ho caricato l'anteprima del tema. Puoi provare a caricarne i contenuti.", "migration_snapshot_ok": "Per sicurezza, è stata caricata l'anteprima del tema. Puoi provare a caricarne i contenuti.",
"older_version_imported": "Il tema importato è stato creato per una versione precedente dell'interfaccia.", "older_version_imported": "Il file importato è stato creato per una versione precedente del frontend.",
"snapshot_missing": "Il tema non è provvisto di anteprima, quindi potrebbe essere diverso da come appare.", "snapshot_missing": "Il file non è provvisto di anteprima, quindi potrebbe essere diverso da come appare.",
"snapshot_present": "Tutti i valori sono sostituiti dall'anteprima del tema. Puoi invece caricare i suoi contenuti.", "snapshot_present": "Tutti i valori sono sostituiti dall'anteprima del tema. Puoi invece caricare i suoi contenuti.",
"snapshot_source_mismatch": "Conflitto di versione: probabilmente l'interfaccia è stata portata indietro e poi aggiornata di nuovo. Se hai modificato il tema con una vecchia versione usa il tema precedente, altrimenti puoi usare il nuovo.", "snapshot_source_mismatch": "Conflitto di versione: probabilmente il frontend è stato deaggiornato e poi aggiornato di nuovo. Se hai modificato il tema con una vecchia versione usa il tema precedente, altrimenti usa quello nuovo.",
"upgraded_from_v2": "L'interfaccia è stata aggiornata, il tema potrebbe essere diverso da come lo ricordi.", "upgraded_from_v2": "PleromaFE è stato aggiornato, il tema potrebbe essere un pochino diverso da come lo ricordi.",
"v2_imported": "Il tema importato è stato creato per una vecchia interfaccia. Non tutto potrebbe essere come inteso." "v2_imported": "Il file importato è stato creato per un vecchio frontend. Cerchiamo di massimizzare la compatibilità, ma potrebbero esserci inconsistenze."
}, },
"keep_as_is": "Mantieni tal quale", "keep_as_is": "Mantieni com'è",
"keep_color": "Mantieni colori", "keep_color": "Mantieni colori",
"keep_fonts": "Mantieni font", "keep_fonts": "Mantieni font",
"keep_opacity": "Mantieni opacità", "keep_opacity": "Mantieni opacità",
"keep_roundness": "Mantieni vertici", "keep_roundness": "Mantieni vertici",
"keep_shadows": "Mantieni ombre", "keep_shadows": "Mantieni ombre",
"load_theme": "Carica tema", "load_theme": "Carica tema",
"reset": "Reimposta", "reset": "Azzera",
"save_load_hint": "Le opzioni \"mantieni\" conservano le impostazioni correnti quando selezioni o carichi un tema, e le salvano quando ne esporti uno. Quando nessuna casella è selezionata, tutte le impostazioni correnti saranno salvate nel tema.", "save_load_hint": "Le opzioni \"mantieni\" conservano le impostazioni correnti quando selezioni o carichi un tema, e le salvano quando ne esporti uno. Quando nessuna casella è selezionata, tutte le impostazioni correnti saranno salvate nel tema.",
"use_snapshot": "Versione precedente", "use_snapshot": "Versione precedente",
"use_source": "Nuova versione" "use_source": "Nuova versione"
} }
}, },
"subject_input_always_show": "Mostra sempre il campo Oggetto", "subject_input_always_show": "Mostra sempre il campo avvertenza sul contenuto",
"subject_line_behavior": "Copia oggetto quando rispondi", "subject_line_behavior": "Copia avvertenza sul contenuto quando rispondi",
"subject_line_email": "Come nelle email: \"re: oggetto\"", "subject_line_email": "Come nelle email: \"re: avvertenza\"",
"subject_line_mastodon": "Come in Mastodon: copia tal quale", "subject_line_mastodon": "Come su Mastodon: copia com'è",
"subject_line_noop": "Non copiare", "subject_line_noop": "Non copiare",
"text": "Testo", "text": "Testo",
"theme": "Tema", "theme": "Tema",
"theme_help": "Usa colori esadecimali (#rrggbb) per personalizzare il tuo schema di colori.", "theme_help": "Usa colori esadecimali (#rrvvbb) per personalizzare il tuo tema colori.",
"theme_help_v2_1": "Puoi anche forzare colore ed opacità di alcuni elementi selezionando la casella. Usa il pulsante \"Azzera\" per azzerare tutte le forzature.", "theme_help_v2_1": "Puoi anche sovrascrivere colore ed opacità di alcuni elementi spuntando la casella. Usa il pulsante \"Azzera\" per azzerare tutte le sovrascritture.",
"theme_help_v2_2": "Le icone vicino alcuni elementi sono indicatori del contrasto fra testo e sfondo, passaci sopra col puntatore per ulteriori informazioni. Se usani trasparenze, questi indicatori mostrano il peggior caso possibile.", "theme_help_v2_2": "Le icone vicino alcuni elementi sono indicatori del contrasto fra testo e sfondo, passaci sopra col puntatore per ulteriori informazioni. Se usano la trasparenza, questi indicatori mostrano come sarebbero nel peggior caso possibile.",
"third_column_mode": "Quando c'è abbastanza spazio, mostra una terza colonna contenente",
"third_column_mode_none": "Non mostrare proprio la terza colonna",
"third_column_mode_notifications": "Colonna notifiche",
"third_column_mode_postform": "Modulo post principale e navigazione",
"token": "Token", "token": "Token",
"tooltipRadius": "Suggerimenti/avvisi", "tooltipRadius": "Suggerimenti/allerte",
"translation_language": "Lingua finale di traduzione automatica",
"tree_advanced": "Mostra bottoni aggiuntivi per aprire e chiudere catene di risposte nelle conversazioni",
"tree_fade_ancestors": "Mostra antenati del post corrente in testo semitrasparente",
"type_domains_to_mute": "Cerca domini da silenziare", "type_domains_to_mute": "Cerca domini da silenziare",
"upload_a_photo": "Carica un'immagine", "upload_a_photo": "Carica una foto",
"useStreamingApi": "Ricevi messaggi e notifiche in tempo reale", "useStreamingApi": "Ricevi messaggi e notifiche in tempo reale",
"useStreamingApiWarning": "(Sconsigliato, sperimentale, può saltare messaggi)", "useStreamingApiWarning": "",
"use_blurhash": "Usa blurhash per anteprime NSFW",
"use_contain_fit": "Non ritagliare le anteprime degli allegati", "use_contain_fit": "Non ritagliare le anteprime degli allegati",
"use_one_click_nsfw": "Apri media offuscati con un solo click", "use_one_click_nsfw": "Apri allegati NSFW con un solo click",
"user_accepts_direct_messages_from": "Accetta post «diretti» da",
"user_accepts_direct_messages_from_everybody": "Tutti",
"user_accepts_direct_messages_from_nobody": "Nessuno",
"user_accepts_direct_messages_from_people_i_follow": "Persone che seguo",
"user_mutes": "Utenti", "user_mutes": "Utenti",
"user_settings": "Impostazioni Utente", "user_profile_default_tab": "Scheda predefinita sul profilo degli utenti",
"user_profiles": "Profili utente",
"user_settings": "Impostazioni utente",
"valid_until": "Valido fino a", "valid_until": "Valido fino a",
"values": { "values": {
"false": "no", "false": "no",
@ -847,86 +895,141 @@
}, },
"version": { "version": {
"backend_version": "Versione backend", "backend_version": "Versione backend",
"frontend_version": "Versione interfaccia", "frontend_version": "Versione frontend",
"title": "Versione" "title": "Versione"
}, },
"virtual_scrolling": "Velocizza l'elaborazione delle sequenze", "virtual_scrolling": "Velocizza rendering sequenze",
"word_filter": "Parole filtrate" "word_filter": "Filtro per parola",
"wordfilter": "Filtro per parola"
},
"settings_profile": {
"creating": "Creazione del nuovo profilo di impostazioni \"{profile}\"…",
"synchronization_error": "Non è stato possibile sincronizzare le impostazioni: {err}",
"synchronized": "Impostazioni sincronizzate!",
"synchronizing": "Sincronizzazione del profilo di impostazioni \"{profile}\"…"
}, },
"status": { "status": {
"ancestor_follow": "Vedi {numReplies} altra risposta sotto questo post | Vedi {numReplies} altre risposte sotto questo post",
"ancestor_follow_with_icon": "{icon} {text}",
"attachment_stop_flash": "Ferma Flash player",
"bookmark": "Aggiungi segnalibro", "bookmark": "Aggiungi segnalibro",
"copy_link": "Copia collegamento", "collapse_attachments": "Riduci allegati",
"delete": "Elimina messaggio", "copy_link": "Copia collegamento al post",
"delete_confirm": "Vuoi veramente eliminare questo messaggio?", "delete": "Elimina post",
"delete_confirm": "Vuoi davvero eliminare questo post?",
"delete_confirm_accept_button": "Sì, eliminalo",
"delete_confirm_cancel_button": "No, tienilo",
"delete_confirm_title": "Conferma eliminazione",
"edit": "Modifica",
"edit_history": "Cronologia modifiche",
"edit_history_modal_title": "Modificato {historyCount} volta | Modificato {historyCount} volte",
"edited_at": "Modificato {time}",
"expand": "Espandi", "expand": "Espandi",
"external_source": "Vai all'origine", "external_source": "Fonte originale",
"favorites": "Preferiti", "favorites": "Preferiti",
"hide_content": "Nascondi contenuti", "hide_attachment": "Nascondi allegato",
"hide_full_subject": "Nascondi oggetto intero", "hide_content": "Nascondi contenuto",
"hide_full_subject": "Nascondi avvertenza sul contenuto intera",
"many_attachments": "Il post ha {number} allegato | Il post ha {number} allegati",
"mentions": "Menzioni", "mentions": "Menzioni",
"move_down": "Muovi allegato a destra",
"move_up": "Muovi allegato a sinistra",
"mute_conversation": "Silenzia conversazione", "mute_conversation": "Silenzia conversazione",
"nsfw": "DISDICEVOLE", "nsfw": "NSFW",
"pin": "Intesta al profilo", "open_gallery": "Apri galleria",
"pinned": "Intestato", "override_translation_source_language": "Sovrascrivi lingua di origine",
"pin": "Fissa in cima al profilo",
"pinned": "Fissato",
"plus_more": "+{number} altri", "plus_more": "+{number} altri",
"repeats": "Condivisi", "redraft": "Elimina e correggi",
"redraft_confirm": "Vuoi davvero eliminare e correggere questo post? Le interazioni al post originale non saranno mantenute.",
"redraft_confirm_accept_button": "Sì, elimina e correggi",
"redraft_confirm_cancel_button": "No, tieni l'originale",
"redraft_confirm_title": "Conferma elimina e correggi",
"remove_attachment": "Rimuovi allegato",
"repeat_confirm": "Vuoi davvero condividere questo post?",
"repeat_confirm_accept_button": "Sì, condividilo",
"repeat_confirm_cancel_button": "No, non condividere",
"repeat_confirm_title": "Conferma condivisione",
"repeats": "Condivisioni",
"replies_list": "Risposte:", "replies_list": "Risposte:",
"replies_list_with_others": "Mostra {numReplies} altra risposta | Mostra {numReplies} altre risposte",
"reply_to": "In risposta a", "reply_to": "In risposta a",
"show_content": "Mostra contenuti", "show_all_attachments": "Mostra tutti gli allegati",
"show_full_subject": "Mostra oggetto intero", "show_all_conversation": "Mostra conversazione intera ({numStatus} altro post) | Mostra conversazione intera ({numStatus} altri post)",
"status_deleted": "Questo messagio è stato cancellato", "show_all_conversation_with_icon": "{icon} {text}",
"status_unavailable": "Messaggio non disponibile", "show_attachment_description": "Anteprima descrizione (apri l'allegato per la descrizione intera)",
"thread_muted": "Discussione silenziata", "show_attachment_in_modal": "Mostra allegato in una finestra",
"show_content": "Mostra contenuto",
"show_full_subject": "Mostra tutta l'avvertenza sul contenuto",
"show_only_conversation_under_this": "Mostra solo le risposte a questo post",
"status_deleted": "Questo post è stato eliminato",
"status_unavailable": "Post non disponibile",
"thread_follow": "Visualizza {numStatus} altra risposta | Visualizza {numStatus} altre risposte",
"thread_follow_with_icon": "{icon} {text}",
"thread_hide": "Nascondi questa conversazione",
"thread_muted": "Conversazione silenziata",
"thread_muted_and_words": ", contiene:", "thread_muted_and_words": ", contiene:",
"thread_show": "Mostra questa conversazione",
"thread_show_full": "Mostra {numStatus} risposta | Mostra tutte e {numStatus} le risposte",
"thread_show_full_with_icon": "{icon} {text}",
"translate": "Traduci",
"translated_from": "Tradotto da {language}",
"unbookmark": "Rimuovi segnalibro", "unbookmark": "Rimuovi segnalibro",
"unmute_conversation": "Riabilita conversazione", "unmute_conversation": "Desilenzia conversazione",
"unpin": "De-intesta", "unpin": "Rimuovi dalla cima del profilo",
"you": "(Tu)" "you": "(Tu)"
}, },
"time": { "time": {
"in_future": "fra {0}", "in_future": "fra {0}",
"in_past": "{0} fa", "in_past": "{0} fa",
"now": "adesso", "now": "proprio adesso",
"now_short": "adesso", "now_short": "ora",
"unit": { "unit": {
"days": "{0} giorni", "days": "{0} giorno | {0} giorni",
"days_short": "{0} g", "days_short": "{0} g",
"hours": "{0} ore", "hours": "{0} ora | {0} ore",
"hours_short": "{0} h", "hours_short": "{0} ora | {0} ore",
"minutes": "{0} minuti", "minutes": "{0} minuto | {0} minuti",
"minutes_short": "{0} min", "minutes_short": "{0} min",
"months": "{0} mesi", "months": "{0} mese | {0} mesi",
"months_short": "{0} mes", "months_short": "{0} mese | {0} mesi",
"seconds": "{0} secondi", "seconds": "{0} secondo | {0} secondi",
"seconds_short": "{0} sec", "seconds_short": "{0} sec",
"weeks": "{0} settimane", "weeks": "{0} settimana | {0} settimane",
"weeks_short": "{0} stm", "weeks_short": "{0} sett",
"years": "{0} anni", "years": "{0} anno | {0} anni",
"years_short": "{0} a" "years_short": "{0} a"
} }
}, },
"timeline": { "timeline": {
"collapse": "Ripiega", "collapse": "Riduci",
"conversation": "Conversazione", "conversation": "Conversazione",
"error": "Errore nel caricare la sequenza: {0}", "error": "Errore nel caricare la sequenza: {0}",
"load_older": "Carica messaggi precedenti", "follow_tag": "Segui hashtag",
"no_more_statuses": "Fine dei messaggi", "load_older": "Carica post precedenti",
"no_retweet_hint": "Il messaggio è diretto o solo per seguaci e non può essere condiviso", "no_more_statuses": "Non ci sono altri post",
"no_statuses": "Nessun messaggio", "no_retweet_hint": "Il messaggio è «solo per follower» o «diretto», quindi non può essere condiviso",
"no_statuses": "Nessun post",
"reload": "Ricarica", "reload": "Ricarica",
"repeated": "ha condiviso", "repeated": "ha condiviso",
"show_new": "Mostra nuovi", "show_new": "Mostra nuovi",
"socket_broke": "Connessione tempo reale interrotta: codice {0}", "socket_broke": "Connessione tempo reale interrotta: CloseEvent codice {0}",
"socket_reconnected": "Connesso in tempo reale", "socket_reconnected": "Connesso in tempo reale",
"unfollow_tag": "Smetti di seguire hashtag",
"up_to_date": "Aggiornato" "up_to_date": "Aggiornato"
}, },
"toast": {
"no_translation_target_set": "Nessuna lingua finale di traduzione impostata: la traduzione potrebbe fallire. Imposta una lingua finale di traduzione nelle tue impostazioni."
},
"tool_tip": { "tool_tip": {
"accept_follow_request": "Accetta seguace", "accept_follow_request": "Accetta richiesta di follow",
"add_reaction": "Reagisci", "add_reaction": "Aggiungi reazione",
"bookmark": "Aggiungi segnalibro", "bookmark": "Aggiungi segnalibro",
"favorite": "Gradisci", "favorite": "Rendi preferito",
"media_upload": "Carica allegati", "media_upload": "Carica media",
"reject_follow_request": "Rifiuta seguace", "quote": "Cita",
"reject_follow_request": "Rifiuta richiesta di follow",
"repeat": "Condividi", "repeat": "Condividi",
"reply": "Rispondi", "reply": "Rispondi",
"user_settings": "Impostazioni utente" "user_settings": "Impostazioni utente"
@ -934,7 +1037,7 @@
"upload": { "upload": {
"error": { "error": {
"base": "Caricamento fallito.", "base": "Caricamento fallito.",
"default": "Riprova in seguito", "default": "Riprova più tardi",
"file_too_big": "File troppo pesante [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]", "file_too_big": "File troppo pesante [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]",
"message": "Caricamento fallito: {0}" "message": "Caricamento fallito: {0}"
}, },
@ -948,79 +1051,115 @@
}, },
"user_card": { "user_card": {
"admin_menu": { "admin_menu": {
"activate_account": "Attiva profilo", "activate_account": "Riattiva account",
"deactivate_account": "Disattiva profilo", "deactivate_account": "Disattiva account",
"delete_account": "Elimina profilo", "delete_account": "Elimina account",
"delete_user": "Elimina utente", "delete_user": "Elimina utente",
"disable_any_subscription": "Rendi utente non seguibile", "delete_user_data_and_deactivate_confirmation": "Questo eliminerà permanentemente i dati dall'account e lo disattiverà. Sei sicuro al 100%?",
"disable_remote_subscription": "Blocca i tentativi di seguirlo da altre stanze", "disable_any_subscription": "Proibisci a tutti di seguire l'utente",
"force_nsfw": "Oscura tutti i messaggi", "disable_remote_subscription": "Proibisci ad istanze remote di seguire l'utente",
"force_unlisted": "Nascondi tutti i messaggi", "force_nsfw": "Marca tutti i post come NSFW",
"grant_admin": "Crea Amministratore", "force_unlisted": "Rendi tutti i post «non in elenco»",
"grant_moderator": "Crea Moderatore", "grant_admin": "Rendi amministratore",
"grant_moderator": "Rendi moderatore",
"moderation": "Moderazione", "moderation": "Moderazione",
"quarantine": "I messaggi non arriveranno alle altre stanze", "quarantine": "Impedisci la federazione dei post degli utenti",
"revoke_admin": "Divesti Amministratore", "revoke_admin": "Rimuovi da amministratore",
"revoke_moderator": "Divesti Moderatore", "revoke_moderator": "Rimuovi da moderatore",
"sandbox": "Rendi tutti i messaggi solo per seguaci", "sandbox": "Rendi tutti i messaggi \"solo per follower\"",
"strip_media": "Rimuovi ogni allegato ai messaggi" "strip_media": "Rimuovi media dai messaggi"
}, },
"approve": "Approva", "approve": "Accetta",
"approve_confirm": "Sei sicuro di voler permettere a questo utente di seguirti?",
"approve_confirm_accept_button": "Sì, accetta",
"approve_confirm_cancel_button": "No, annulla",
"approve_confirm_title": "Accetta richiesta di follow",
"block": "Blocca", "block": "Blocca",
"block_confirm": "Sei sicuro di voler bloccare {user}?",
"block_confirm_accept_button": "Sì, blocca",
"block_confirm_cancel_button": "No, non bloccare",
"block_confirm_title": "Blocca utente",
"block_progress": "Blocco…", "block_progress": "Blocco…",
"blocked": "Bloccato!", "blocked": "Bloccato!",
"blocks_you": "Ti blocca!",
"bot": "Bot", "bot": "Bot",
"deny": "Nega", "deactivated": "Disattivato",
"deny": "Rifiuta",
"deny_confirm": "Sei sicuro di voler rifiutare la richiesta di follow di questo utente?",
"deny_confirm_accept_button": "Sì, rifiuta",
"deny_confirm_cancel_button": "No, annulla",
"deny_confirm_title": "Rifiuta richiesta di follow",
"domain_muted": "Sblocca dominio",
"edit_profile": "Modifica profilo", "edit_profile": "Modifica profilo",
"favorites": "Preferiti", "favorites": "Preferiti",
"follow": "Segui", "follow": "Segui",
"follow_cancel": "Annulla richiesta",
"follow_progress": "Richiedo…", "follow_progress": "Richiedo…",
"follow_sent": "Richiesta inviata!", "follow_sent": "Richiesta inviata!",
"follow_unfollow": "Disconosci", "follow_tag": "Segui l'hashtag",
"followees": "Segue", "follow_unfollow": "Smetti di seguire",
"followers": "Seguaci", "followed_tags": "Hashtag seguiti",
"following": "Seguìto!", "followed_users": "Utenti seguiti",
"followees": "Seguiti",
"followers": "Follower",
"following": "Seguito!",
"follows_you": "Ti segue!", "follows_you": "Ti segue!",
"hidden": "Nascosto", "hidden": "Nascosto",
"hide_repeats": "Nascondi condivisioni", "hide_repeats": "Nascondi condivisioni",
"highlight": { "highlight": {
"disabled": "Nessun risalto", "disabled": "Nessuno sfondo",
"side": "Nastro a lato", "side": "Striscia laterale",
"solid": "Un colore", "solid": "Sfondo monocolore",
"striped": "A righe" "striped": "Sfondo a righe"
}, },
"its_you": "Sei tu!", "its_you": "Sei tu!",
"media": "Media", "media": "Media",
"mention": "Menziona", "mention": "Menziona",
"message": "Contatta", "message": "Contatta",
"mute": "Silenzia", "mute": "Silenzia",
"mute_progress": "Silenzio…", "mute_confirm": "Sei sicuro di voler silenziare {user}?",
"mute_confirm_accept_button": "Sì, silenzia",
"mute_confirm_cancel_button": "No, non silenziare",
"mute_confirm_title": "Silenzia utente",
"mute_domain": "Blocca dominio",
"mute_progress": "Silenziando…",
"muted": "Silenziato", "muted": "Silenziato",
"not_following_any_hashtags": "Non stai seguendo nessun hashtag",
"note": "Nota privata",
"per_day": "al giorno", "per_day": "al giorno",
"remote_follow": "Segui da remoto", "remote_follow": "Segui da remoto",
"remove_follower": "Rimuovi follower",
"replies": "Con risposte",
"report": "Segnala", "report": "Segnala",
"requested_by": "Ha chiesto di seguirti",
"show_repeats": "Mostra condivisioni", "show_repeats": "Mostra condivisioni",
"statuses": "Messaggi", "statuses": "Post",
"subscribe": "Abbònati", "subscribe": "Iscriviti",
"unblock": "Sblocca", "unblock": "Sblocca",
"unblock_progress": "Sblocco…", "unblock_progress": "Sblocco…",
"unmute": "Riabilita", "unfollow_confirm": "Sei sicuro di voler smettere di seguire {user}?",
"unmute_progress": "Riabilito…", "unfollow_confirm_accept_button": "Sì, smetti di seguire",
"unsubscribe": "Disdici" "unfollow_confirm_cancel_button": "No, non smettere di seguire",
"unfollow_confirm_title": "Smetti di seguire l'utente",
"unfollow_tag": "Smetti di seguire l'hashtag",
"unmute": "Desilenzia",
"unmute_progress": "Desilenziamento…",
"unsubscribe": "Disiscriviti"
}, },
"user_profile": { "user_profile": {
"field_validated": "Collegamento verificato",
"profile_does_not_exist": "Spiacente, questo profilo non esiste.", "profile_does_not_exist": "Spiacente, questo profilo non esiste.",
"profile_loading_error": "Spiacente, c'è stato un errore nel caricamento del profilo.", "profile_loading_error": "Spiacente, c'è stato un errore nel caricamento del profilo.",
"timeline_title": "Sequenza dell'utente" "timeline_title": "Sequenza dell'utente"
}, },
"user_reporting": { "user_reporting": {
"add_comment_description": "La segnalazione sarà inviata ai moderatori della tua stanza. Puoi motivarla qui sotto:", "add_comment_description": "La segnalazione sarà inviata ai moderatori della tua istanza. Puoi fornire una motivazione per cui stai segnalando questo account qui sotto:",
"additional_comments": "Osservazioni accessorie", "additional_comments": "Commenti aggiuntivi",
"forward_description": "Il profilo appartiene ad un'altra stanza. Inviare la segnalazione anche a quella?", "forward_description": "Il profilo appartiene ad un altro server. Inviare la segnalazione anche a quello?",
"forward_to": "Inoltra a {0}", "forward_to": "Inoltra a {0}",
"generic_error": "C'è stato un errore nell'elaborazione della tua richiesta.", "generic_error": "C'è stato un errore nell'elaborazione della tua richiesta.",
"submit": "Invia", "submit": "Invia",
"title": "Segnalo {0}" "title": "Segnala {0}"
}, },
"who_to_follow": { "who_to_follow": {
"more": "Altro", "more": "Altro",

124
src/i18n/lt.json Normal file
View file

@ -0,0 +1,124 @@
{
"about": {
"bubble_instances": "Vietiniai burbulo serveriai",
"bubble_instances_description": "Administratorių parinkti serveriai, kurie atstovauja šios serverio vietinę teritoriją",
"mrf": {
"federation": "Federacija",
"keyword": {
"ftl_removal": "Pašalinimas iš „Viso žinomo tinklo“ laiko skalės",
"is_replaced_by": "→",
"keyword_policies": "Raktažodžių politika",
"reject": "Atmesti",
"replace": "Pakeisti"
},
"mrf_policies": "Įjungta MRF politika",
"mrf_policies_desc": "MRF politika valdo serverio federacijos elgseną. Įjungtos toliau nurodytos politikos:",
"simple": {
"accept": "Priimti",
"accept_desc": "Šis serveris priima žinutes tik iš toliau nurodytų serverių:",
"ftl_removal": "Pašalinimas iš „Žinomo tinklo“ laiko skalės",
"ftl_removal_desc": "Šis serveris pašalina šiuos serverius iš „Žinomo tinklo“ laiko skalės:",
"instance": "Serveris",
"media_nsfw": "Medija priverstinai nustatyta kaip jautri",
"media_nsfw_desc": "Šis serveris priverčia nustatyti mediją kaip jautrią toliau nurodytų serverių įrašuose:",
"media_removal": "Medijos pašalinimas",
"media_removal_desc": "Šis serveris pašalina mediją iš toliau nurodytų serverių įrašų:",
"not_applicable": "Nėra",
"quarantine": "Karantinas",
"quarantine_desc": "Šis serveris nesiųs įrašų į toliau nurodytus serverius:",
"reason": "Priežastis",
"reject": "Atmesti",
"reject_desc": "Šis serveris nepriims žinučių iš toliau nurodytų serverių:",
"simple_policies": "Konkretaus serverio politika"
}
},
"staff": "Personalas"
},
"announcements": {
"all_day_prompt": "Tai visos dienos renginys",
"cancel_edit_action": "Atsisakyti",
"close_error": "Užverti",
"delete_action": "Ištrinti",
"edit_action": "Redaguoti",
"end_time_display": "Pasibaigia {time}",
"end_time_prompt": "Pabaigos laikas: ",
"inactive_message": "Šis skelbimas neaktyvus",
"mark_as_read_action": "Žymėti kaip skaitytą",
"page_header": "Skelbimai",
"post_action": "Siųsti",
"post_error": "Klaida: {error}",
"post_form_header": "Skelbti skelbimą"
},
"chats": {
"chats": "Pokalbiai",
"delete": "Ištrinti",
"more": "Daugiau",
"new": "Naujas pokalbis",
"you": "Jūs:"
},
"display_date": {
"today": "Šiandien"
},
"domain_mute_card": {
"mute": "Nutildyti",
"mute_progress": "Nutildoma…",
"unmute": "Atšaukti nutildymą",
"unmute_progress": "Atšaukiamas nutildymas…"
},
"emoji": {
"add_emoji": "Įterpti jaustuką",
"custom": "Pasirinktinis jaustukas",
"emoji": "Jaustukas",
"stickers": "Lipdukai",
"unicode": "Unikodo jaustukas"
},
"exporter": {
"export": "Eksportuoti"
},
"file_type": {
"audio": "Garso įrašas",
"file": "Failas",
"image": "Vaizdas",
"video": "Vaizdo įrašas"
},
"general": {
"more": "Daugiau",
"scope_in_timeline": {
"direct": "Tiesioginis",
"local": "Vietinis šį įrašą gali matyti tik jūsų serveris",
"private": "Tik sekėjams",
"public": "Vieša",
"unlisted": "Neįtrauktas į sąrašą"
},
"show_less": "Rodyti mažiau",
"show_more": "Rodyti daugiau",
"submit": "Pateikti",
"verify": "Patvirtinti"
},
"image_cropper": {
"cancel": "Atšaukti"
},
"importer": {
"submit": "Pateikti"
},
"user_card": {
"follow_tag": "Sekti saitažodį",
"not_following_any_hashtags": "Nesekate jokių saitažodžių.",
"unfollow_confirm_accept_button": "Taip, nebesekti",
"unfollow_confirm_cancel_button": "Ne, nenaikinti sekimą",
"unfollow_confirm_title": "Nebesekti naudotoją",
"unfollow_tag": "Nebesekti saitažodį"
},
"user_reporting": {
"additional_comments": "Papildomi komentarai",
"forward_description": "Paskyra yra iš kito serverio. Siųsti ataskaitos kopiją ir ten?",
"forward_to": "Persiųsti į {0}",
"generic_error": "Įvyko klaida apdorojant jūsų užklausą.",
"submit": "Pateikti",
"title": "Pranešama apie {0}"
},
"who_to_follow": {
"more": "Daugiau",
"who_to_follow": "Ką sekti"
}
}

View file

@ -599,7 +599,7 @@
"links": "Łącza", "links": "Łącza",
"list_aliases_error": "Błąd pobierania aliasów: {error}", "list_aliases_error": "Błąd pobierania aliasów: {error}",
"list_backups_error": "Błąd pobierania listy kopii zapasowych: {error}", "list_backups_error": "Błąd pobierania listy kopii zapasowych: {error}",
"lock_account_description": "Spraw, by konto mogli wyświetlać tylko zatwierdzeni obserwujący", "lock_account_description": "Wymagaj potwierdzenia nowych śledzących",
"loop_video": "Zapętlaj filmy", "loop_video": "Zapętlaj filmy",
"loop_video_silent_only": "Zapętlaj tylko filmy bez dźwięku (np. mastodonowe „gify”)", "loop_video_silent_only": "Zapętlaj tylko filmy bez dźwięku (np. mastodonowe „gify”)",
"mascot": "Maskotka Mastodon FE", "mascot": "Maskotka Mastodon FE",
@ -679,6 +679,7 @@
"pad_emoji": "Dodaj odstęp z obu stron emoji podczas dodawania selektorem", "pad_emoji": "Dodaj odstęp z obu stron emoji podczas dodawania selektorem",
"panelRadius": "Panele", "panelRadius": "Panele",
"pause_on_unfocused": "Wstrzymuj strumieniowanie kiedy karta nie jest aktywna", "pause_on_unfocused": "Wstrzymuj strumieniowanie kiedy karta nie jest aktywna",
"permit_followback_description": "Automatycznie potwierdź śledzenie przez użytkowników którch już śledzisz",
"play_videos_in_modal": "Odtwarzaj filmy bezpośrednio w przeglądarce mediów", "play_videos_in_modal": "Odtwarzaj filmy bezpośrednio w przeglądarce mediów",
"post_look_feel": "Wygląd wpisów", "post_look_feel": "Wygląd wpisów",
"post_status_content_type": "Domyślny typ zawartości wpisów", "post_status_content_type": "Domyślny typ zawartości wpisów",
@ -1148,7 +1149,7 @@
"followed_users": "Śledzeni użytkownicy", "followed_users": "Śledzeni użytkownicy",
"followees": "Obserwowani", "followees": "Obserwowani",
"followers": "Obserwujący", "followers": "Obserwujący",
"following": "Obserwowany!", "following": "Obserwujesz!",
"follows_you": "Obserwuje cię!", "follows_you": "Obserwuje cię!",
"hidden": "Ukryte", "hidden": "Ukryte",
"hide_repeats": "Ukryj powtórzenia", "hide_repeats": "Ukryj powtórzenia",

View file

@ -57,6 +57,8 @@ export const defaultState = {
autohideFloatingPostButton: false, autohideFloatingPostButton: false,
pauseOnUnfocused: true, pauseOnUnfocused: true,
displayPageBackgrounds: true, displayPageBackgrounds: true,
centerAlignBio: false,
compactUserInfo: true,
stopGifs: undefined, stopGifs: undefined,
replyVisibility: 'all', replyVisibility: 'all',
thirdColumnMode: 'notifications', thirdColumnMode: 'notifications',

View file

@ -73,6 +73,8 @@ const defaultState = {
conversationOtherRepliesButton: 'below', conversationOtherRepliesButton: 'below',
conversationTreeFadeAncestors: false, conversationTreeFadeAncestors: false,
maxDepthInThread: 6, maxDepthInThread: 6,
backendCommitUrl: 'https://akkoma.dev/AkkomaGang/akkoma/commit/',
frontendCommitUrl: 'https://akkoma.dev/AkkomaGang/pleroma-fe/commit/',
// Nasty stuff // Nasty stuff
customEmoji: [], customEmoji: [],