Merge remote-tracking branch 'parent/main' into kbtopic-remove-quote
This commit is contained in:
commit
04070aa608
50 changed files with 2139 additions and 2333 deletions
2
.github/workflows/test-js.yml
vendored
2
.github/workflows/test-js.yml
vendored
|
@ -43,4 +43,4 @@ jobs:
|
|||
uses: ./.github/actions/setup-javascript
|
||||
|
||||
- name: JavaScript testing
|
||||
run: yarn jest --reporters github-actions summary
|
||||
run: yarn test:js
|
||||
|
|
2
Gemfile
2
Gemfile
|
@ -64,7 +64,7 @@ gem 'kaminari', '~> 1.2'
|
|||
gem 'link_header', '~> 0.0'
|
||||
gem 'linzer', '~> 0.6.1'
|
||||
gem 'mario-redis-lock', '~> 1.2', require: 'redis_lock'
|
||||
gem 'mime-types', '~> 3.6.0', require: 'mime/types/columnar'
|
||||
gem 'mime-types', '~> 3.7.0', require: 'mime/types/columnar'
|
||||
gem 'mutex_m'
|
||||
gem 'nokogiri', '~> 1.15'
|
||||
gem 'oj', '~> 3.14'
|
||||
|
|
10
Gemfile.lock
10
Gemfile.lock
|
@ -423,10 +423,10 @@ GEM
|
|||
redis (>= 3.0.5)
|
||||
matrix (0.4.2)
|
||||
memory_profiler (1.1.0)
|
||||
mime-types (3.6.2)
|
||||
mime-types (3.7.0)
|
||||
logger
|
||||
mime-types-data (~> 3.2015)
|
||||
mime-types-data (3.2025.0408)
|
||||
mime-types-data (~> 3.2025, >= 3.2025.0507)
|
||||
mime-types-data (3.2025.0507)
|
||||
mini_mime (1.1.5)
|
||||
mini_portile2 (2.8.8)
|
||||
minitest (5.25.5)
|
||||
|
@ -627,7 +627,7 @@ GEM
|
|||
activesupport (>= 3.0.0)
|
||||
raabro (1.4.0)
|
||||
racc (1.8.1)
|
||||
rack (2.2.13)
|
||||
rack (2.2.14)
|
||||
rack-attack (6.7.0)
|
||||
rack (>= 1.0, < 4)
|
||||
rack-cors (2.0.2)
|
||||
|
@ -996,7 +996,7 @@ DEPENDENCIES
|
|||
mail (~> 2.8)
|
||||
mario-redis-lock (~> 1.2)
|
||||
memory_profiler
|
||||
mime-types (~> 3.6.0)
|
||||
mime-types (~> 3.7.0)
|
||||
mutex_m
|
||||
net-http (~> 0.6.0)
|
||||
net-ldap (~> 0.18)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class Api::V2::InstancesController < Api::BaseController
|
||||
skip_before_action :require_authenticated_user!, unless: :limited_federation_mode?
|
||||
skip_before_action :require_authenticated_user!
|
||||
skip_around_action :set_locale
|
||||
|
||||
vary_by ''
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||
|
||||
exports[`<AutosuggestEmoji /> renders emoji with custom url 1`] = `
|
||||
exports[`<AutosuggestEmoji /> > renders emoji with custom url 1`] = `
|
||||
<div
|
||||
className="autosuggest-emoji"
|
||||
>
|
||||
|
@ -17,7 +17,7 @@ exports[`<AutosuggestEmoji /> renders emoji with custom url 1`] = `
|
|||
</div>
|
||||
`;
|
||||
|
||||
exports[`<AutosuggestEmoji /> renders native emoji 1`] = `
|
||||
exports[`<AutosuggestEmoji /> > renders native emoji 1`] = `
|
||||
<div
|
||||
className="autosuggest-emoji"
|
||||
>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||
|
||||
exports[`<Avatar /> Autoplay renders a animated avatar 1`] = `
|
||||
exports[`<Avatar /> > Autoplay > renders a animated avatar 1`] = `
|
||||
<div
|
||||
className="account__avatar account__avatar--loading"
|
||||
onMouseEnter={[Function]}
|
||||
|
@ -21,7 +21,7 @@ exports[`<Avatar /> Autoplay renders a animated avatar 1`] = `
|
|||
</div>
|
||||
`;
|
||||
|
||||
exports[`<Avatar /> Still renders a still avatar 1`] = `
|
||||
exports[`<Avatar /> > Still > renders a still avatar 1`] = `
|
||||
<div
|
||||
className="account__avatar account__avatar--loading"
|
||||
onMouseEnter={[Function]}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||
|
||||
exports[`<AvatarOverlay renders a overlay avatar 1`] = `
|
||||
exports[`<AvatarOverlay > renders a overlay avatar 1`] = `
|
||||
<div
|
||||
className="account__avatar-overlay"
|
||||
onMouseEnter={[Function]}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||
|
||||
exports[`<Button /> adds class "button-secondary" if props.secondary given 1`] = `
|
||||
exports[`<Button /> > adds class "button-secondary" if props.secondary given 1`] = `
|
||||
<button
|
||||
className="button button-secondary"
|
||||
onClick={[Function]}
|
||||
|
@ -8,7 +8,7 @@ exports[`<Button /> adds class "button-secondary" if props.secondary given 1`] =
|
|||
/>
|
||||
`;
|
||||
|
||||
exports[`<Button /> renders a button element 1`] = `
|
||||
exports[`<Button /> > renders a button element 1`] = `
|
||||
<button
|
||||
className="button"
|
||||
onClick={[Function]}
|
||||
|
@ -16,7 +16,7 @@ exports[`<Button /> renders a button element 1`] = `
|
|||
/>
|
||||
`;
|
||||
|
||||
exports[`<Button /> renders a disabled attribute if props.disabled given 1`] = `
|
||||
exports[`<Button /> > renders a disabled attribute if props.disabled given 1`] = `
|
||||
<button
|
||||
className="button"
|
||||
disabled={true}
|
||||
|
@ -25,7 +25,7 @@ exports[`<Button /> renders a disabled attribute if props.disabled given 1`] = `
|
|||
/>
|
||||
`;
|
||||
|
||||
exports[`<Button /> renders class="button--block" if props.block given 1`] = `
|
||||
exports[`<Button /> > renders class="button--block" if props.block given 1`] = `
|
||||
<button
|
||||
className="button button--block"
|
||||
onClick={[Function]}
|
||||
|
@ -33,7 +33,7 @@ exports[`<Button /> renders class="button--block" if props.block given 1`] = `
|
|||
/>
|
||||
`;
|
||||
|
||||
exports[`<Button /> renders the children 1`] = `
|
||||
exports[`<Button /> > renders the children 1`] = `
|
||||
<button
|
||||
className="button"
|
||||
onClick={[Function]}
|
||||
|
@ -45,7 +45,7 @@ exports[`<Button /> renders the children 1`] = `
|
|||
</button>
|
||||
`;
|
||||
|
||||
exports[`<Button /> renders the given text 1`] = `
|
||||
exports[`<Button /> > renders the given text 1`] = `
|
||||
<button
|
||||
className="button"
|
||||
onClick={[Function]}
|
||||
|
@ -55,7 +55,7 @@ exports[`<Button /> renders the given text 1`] = `
|
|||
</button>
|
||||
`;
|
||||
|
||||
exports[`<Button /> renders the props.text instead of children 1`] = `
|
||||
exports[`<Button /> > renders the props.text instead of children 1`] = `
|
||||
<button
|
||||
className="button"
|
||||
onClick={[Function]}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
||||
|
||||
exports[`<DisplayName /> renders display name + account name 1`] = `
|
||||
exports[`<DisplayName /> > renders display name + account name 1`] = `
|
||||
<span
|
||||
className="display-name"
|
||||
onMouseEnter={[Function]}
|
||||
|
|
|
@ -21,7 +21,7 @@ describe('<Button />', () => {
|
|||
});
|
||||
|
||||
it('handles click events using the given handler', () => {
|
||||
const handler = jest.fn();
|
||||
const handler = vi.fn();
|
||||
render(<Button onClick={handler}>button</Button>);
|
||||
fireEvent.click(screen.getByText('button'));
|
||||
|
||||
|
@ -29,7 +29,7 @@ describe('<Button />', () => {
|
|||
});
|
||||
|
||||
it('does not handle click events if props.disabled given', () => {
|
||||
const handler = jest.fn();
|
||||
const handler = vi.fn();
|
||||
render(<Button onClick={handler} disabled>button</Button>);
|
||||
fireEvent.click(screen.getByText('button'));
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ const fakeIcon = () => <span />;
|
|||
describe('<Column />', () => {
|
||||
describe('<ColumnHeader /> click handler', () => {
|
||||
it('runs the scroll animation if the column contains scrollable content', () => {
|
||||
const scrollToMock = jest.fn();
|
||||
const scrollToMock = vi.fn();
|
||||
const { container } = render(
|
||||
<Column heading='notifications' icon='notifications' iconComponent={fakeIcon}>
|
||||
<div className='scrollable' />
|
||||
|
|
|
@ -24,10 +24,12 @@
|
|||
"account.copy": "Копиране на връзка към профила",
|
||||
"account.direct": "Частно споменаване на @{name}",
|
||||
"account.disable_notifications": "Спиране на известяване при публикуване от @{name}",
|
||||
"account.domain_blocking": "Блокиране на домейн",
|
||||
"account.edit_profile": "Редактиране на профила",
|
||||
"account.enable_notifications": "Известяване при публикуване от @{name}",
|
||||
"account.endorse": "Представи в профила",
|
||||
"account.featured": "Препоръчано",
|
||||
"account.featured.accounts": "Профили",
|
||||
"account.featured.hashtags": "Хаштагове",
|
||||
"account.featured.posts": "Публикации",
|
||||
"account.featured_tags.last_status_at": "Последна публикация на {date}",
|
||||
|
@ -40,6 +42,7 @@
|
|||
"account.following": "Последвано",
|
||||
"account.following_counter": "{count, plural, one {{counter} последван} other {{counter} последвани}}",
|
||||
"account.follows.empty": "Потребителят още никого не следва.",
|
||||
"account.follows_you": "Следва ви",
|
||||
"account.go_to_profile": "Към профила",
|
||||
"account.hide_reblogs": "Скриване на подсилвания от @{name}",
|
||||
"account.in_memoriam": "В памет на.",
|
||||
|
@ -54,13 +57,17 @@
|
|||
"account.mute_notifications_short": "Заглушаване на известията",
|
||||
"account.mute_short": "Заглушаване",
|
||||
"account.muted": "Заглушено",
|
||||
"account.muting": "Заглушаване",
|
||||
"account.mutual": "Взаимно се следвате",
|
||||
"account.no_bio": "Няма представен опис.",
|
||||
"account.open_original_page": "Отваряне на първообразната страница",
|
||||
"account.posts": "Публикации",
|
||||
"account.posts_with_replies": "Публ. и отговори",
|
||||
"account.remove_from_followers": "Премахване на {name} от последователи",
|
||||
"account.report": "Докладване на @{name}",
|
||||
"account.requested": "Чака се одобрение. Щракнете за отмяна на заявката за последване",
|
||||
"account.requested_follow": "{name} поиска да ви последва",
|
||||
"account.requests_to_follow_you": "Заявки да ви последват",
|
||||
"account.share": "Споделяне на профила на @{name}",
|
||||
"account.show_reblogs": "Показване на подсилвания от @{name}",
|
||||
"account.statuses_counter": "{count, plural, one {{counter} публикация} other {{counter} публикации}}",
|
||||
|
@ -227,6 +234,9 @@
|
|||
"confirmations.redraft.confirm": "Изтриване и преработване",
|
||||
"confirmations.redraft.message": "Наистина ли искате да изтриете тази публикация и да я направите чернова? Означаванията като любими и подсилванията ще се изгубят, а и отговорите към първоначалната публикация ще осиротеят.",
|
||||
"confirmations.redraft.title": "Изтривате и преработвате ли публикацията?",
|
||||
"confirmations.remove_from_followers.confirm": "Премахване на последовател",
|
||||
"confirmations.remove_from_followers.message": "{name} ще спре да ви следва. Наистина ли искате да продължите?",
|
||||
"confirmations.remove_from_followers.title": "Премахвате ли последовател?",
|
||||
"confirmations.reply.confirm": "Отговор",
|
||||
"confirmations.reply.message": "Отговарянето сега ще замени съобщението, което в момента съставяте. Сигурни ли сте, че искате да продължите?",
|
||||
"confirmations.reply.title": "Презаписвате ли публикацията?",
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
"account.enable_notifications": "Rhowch wybod i fi pan fydd @{name} yn postio",
|
||||
"account.endorse": "Dangos ar fy mhroffil",
|
||||
"account.featured": "Nodwedd",
|
||||
"account.featured.accounts": "Proffilau",
|
||||
"account.featured.hashtags": "Hashnodau",
|
||||
"account.featured.posts": "Postiadau",
|
||||
"account.featured_tags.last_status_at": "Y postiad olaf ar {date}",
|
||||
|
@ -405,8 +406,10 @@
|
|||
"hashtag.counter_by_accounts": "{count, plural, one {{counter} cyfranogwr} other {{counter} cyfranogwr}}",
|
||||
"hashtag.counter_by_uses": "{count, plural, one {postiad {counter}} other {postiad {counter}}}",
|
||||
"hashtag.counter_by_uses_today": "{count, plural, one {{counter} postiad} other {{counter} postiad}} heddiw",
|
||||
"hashtag.feature": "Nodwedd ar y proffil",
|
||||
"hashtag.follow": "Dilyn hashnod",
|
||||
"hashtag.mute": "Tewi #{hashtag}",
|
||||
"hashtag.unfeature": "Peidio a'i gynnwys ar y proffil",
|
||||
"hashtag.unfollow": "Dad-ddilyn hashnod",
|
||||
"hashtags.and_other": "…a {count, plural, other {# arall}}",
|
||||
"hints.profiles.followers_may_be_missing": "Mae'n bosibl bod dilynwyr y proffil hwn ar goll.",
|
||||
|
|
|
@ -24,9 +24,12 @@
|
|||
"account.copy": "Kopii ligilon al profilo",
|
||||
"account.direct": "Private mencii @{name}",
|
||||
"account.disable_notifications": "Ĉesu sciigi min kiam @{name} afiŝas",
|
||||
"account.domain_blocking": "Blokas domajnon",
|
||||
"account.edit_profile": "Redakti la profilon",
|
||||
"account.enable_notifications": "Sciigu min kiam @{name} afiŝos",
|
||||
"account.endorse": "Montri en profilo",
|
||||
"account.featured": "Montrita",
|
||||
"account.featured.accounts": "Profiloj",
|
||||
"account.featured.hashtags": "Kradvortoj",
|
||||
"account.featured.posts": "Afiŝoj",
|
||||
"account.featured_tags.last_status_at": "Lasta afîŝo je {date}",
|
||||
|
@ -39,13 +42,14 @@
|
|||
"account.following": "Sekvatoj",
|
||||
"account.following_counter": "{count, plural, one {{counter} sekvato} other {{counter} sekvatoj}}",
|
||||
"account.follows.empty": "La uzanto ankoraŭ ne sekvas iun ajn.",
|
||||
"account.follows_you": "Sekvas vin",
|
||||
"account.go_to_profile": "Iri al profilo",
|
||||
"account.hide_reblogs": "Kaŝi diskonigojn de @{name}",
|
||||
"account.in_memoriam": "Memore.",
|
||||
"account.joined_short": "Aliĝis",
|
||||
"account.languages": "Ŝanĝi la abonitajn lingvojn",
|
||||
"account.link_verified_on": "Propreco de tiu ligilo estis konfirmita je {date}",
|
||||
"account.locked_info": "Tiu konto estas privatigita. La posedanto mane akceptas tiun, kiu povas sekvi rin.",
|
||||
"account.link_verified_on": "La posedanto de tiu ligilo estis kontrolita je {date}",
|
||||
"account.locked_info": "La privateco de tiu konto estas elektita kiel fermita. La posedanto povas mane akcepti tiun, kiu povas sekvi rin.",
|
||||
"account.media": "Aŭdovidaĵoj",
|
||||
"account.mention": "Mencii @{name}",
|
||||
"account.moved_to": "{name} indikis, ke ria nova konto estas nun:",
|
||||
|
@ -53,14 +57,17 @@
|
|||
"account.mute_notifications_short": "Silentigu sciigojn",
|
||||
"account.mute_short": "Silentigu",
|
||||
"account.muted": "Silentigita",
|
||||
"account.muting": "Silentas",
|
||||
"account.mutual": "Vi sekvas unu la alian",
|
||||
"account.no_bio": "Neniu priskribo estas provizita.",
|
||||
"account.open_original_page": "Malfermi la originalan paĝon",
|
||||
"account.posts": "Afiŝoj",
|
||||
"account.posts_with_replies": "Afiŝoj kaj respondoj",
|
||||
"account.remove_from_followers": "Forigi {name}-n de sekvantoj",
|
||||
"account.report": "Raporti @{name}",
|
||||
"account.requested": "Atendo de aprobo. Klaku por nuligi la peton por sekvado",
|
||||
"account.requested_follow": "{name} petis sekvi vin",
|
||||
"account.requests_to_follow_you": "Petoj sekvi vin",
|
||||
"account.share": "Diskonigi la profilon de @{name}",
|
||||
"account.show_reblogs": "Montri diskonigojn de @{name}",
|
||||
"account.statuses_counter": "{count, plural,one {{counter} afiŝo} other {{counter} afiŝoj}}",
|
||||
|
@ -69,24 +76,24 @@
|
|||
"account.unblock_domain_short": "Malbloki",
|
||||
"account.unblock_short": "Malbloki",
|
||||
"account.unendorse": "Ne plu rekomendi ĉe la profilo",
|
||||
"account.unfollow": "Ĉesi sekvi",
|
||||
"account.unmute": "Ne plu silentigi @{name}",
|
||||
"account.unfollow": "Ne plu sekvi",
|
||||
"account.unmute": "Malsilentigi @{name}",
|
||||
"account.unmute_notifications_short": "Malsilentigu sciigojn",
|
||||
"account.unmute_short": "Ne plu silentigi",
|
||||
"account_note.placeholder": "Alklaku por aldoni noton",
|
||||
"admin.dashboard.daily_retention": "Uzantoretenprocento lau tag post registro",
|
||||
"admin.dashboard.monthly_retention": "Uzantoretenprocento lau monato post registro",
|
||||
"admin.dashboard.retention.average": "Averaĝe",
|
||||
"admin.dashboard.daily_retention": "Uzantoretenprocento laŭ tag post registro",
|
||||
"admin.dashboard.monthly_retention": "Uzantoretenprocento laŭ monato post registro",
|
||||
"admin.dashboard.retention.average": "Averaĝa",
|
||||
"admin.dashboard.retention.cohort": "Monato de registriĝo",
|
||||
"admin.dashboard.retention.cohort_size": "Novaj uzantoj",
|
||||
"admin.impact_report.instance_accounts": "Kontoj kaj profiloj tio forigus",
|
||||
"admin.impact_report.instance_accounts": "Kontojn kaj profilojn tio forigus",
|
||||
"admin.impact_report.instance_followers": "Sekvantojn niaj uzantoj perdus",
|
||||
"admin.impact_report.instance_follows": "Sekvantojn ties uzantoj perdus",
|
||||
"admin.impact_report.title": "Influa reporto",
|
||||
"alert.rate_limited.message": "Bonvolu reprovi poste {retry_time, time, medium}.",
|
||||
"alert.rate_limited.title": "Mesaĝkvante limigita",
|
||||
"alert.unexpected.message": "Neatendita eraro okazis.",
|
||||
"alert.unexpected.title": "Aj!",
|
||||
"alert.unexpected.title": "Ups!",
|
||||
"alt_text_badge.title": "Alt-teksto",
|
||||
"alt_text_modal.add_alt_text": "Aldoni alttekston",
|
||||
"alt_text_modal.add_text_from_image": "Aldoni tekston de bildo",
|
||||
|
@ -96,9 +103,9 @@
|
|||
"alt_text_modal.describe_for_people_with_visual_impairments": "Priskribi ĉi tion por homoj kun vidaj malkapabloj…",
|
||||
"alt_text_modal.done": "Farita",
|
||||
"announcement.announcement": "Anonco",
|
||||
"annual_report.summary.archetype.booster": "La Ĉasanto de Mojoso",
|
||||
"annual_report.summary.archetype.booster": "La ĉasanto de mojoso",
|
||||
"annual_report.summary.archetype.lurker": "La vidanto",
|
||||
"annual_report.summary.archetype.oracle": "La Orakolo",
|
||||
"annual_report.summary.archetype.oracle": "La orakolo",
|
||||
"annual_report.summary.archetype.pollster": "La balotenketisto",
|
||||
"annual_report.summary.archetype.replier": "La plej societema",
|
||||
"annual_report.summary.followers.followers": "sekvantoj",
|
||||
|
@ -108,11 +115,11 @@
|
|||
"annual_report.summary.highlighted_post.by_reblogs": "plej diskonigita afiŝo",
|
||||
"annual_report.summary.highlighted_post.by_replies": "afiŝo kun la plej multaj respondoj",
|
||||
"annual_report.summary.highlighted_post.possessive": "de {name}",
|
||||
"annual_report.summary.most_used_app.most_used_app": "plej uzita apo",
|
||||
"annual_report.summary.most_used_app.most_used_app": "plej uzita aplikaĵo",
|
||||
"annual_report.summary.most_used_hashtag.most_used_hashtag": "plej uzata kradvorto",
|
||||
"annual_report.summary.most_used_hashtag.none": "Nenio",
|
||||
"annual_report.summary.new_posts.new_posts": "novaj afiŝoj",
|
||||
"annual_report.summary.percentile.text": "<topLabel>Tio metas vin en la plej</topLabel><percentage></percentage><bottomLabel>de {domain} uzantoj.</bottomLabel>",
|
||||
"annual_report.summary.percentile.text": "<topLabel>Tion metas vin en la plej</topLabel><percentage></percentage><bottomLabel>de {domain} uzantoj.</bottomLabel>",
|
||||
"annual_report.summary.percentile.we_wont_tell_bernie": "Ni ne diros al Zamenhof.",
|
||||
"annual_report.summary.thanks": "Dankon pro esti parto de Mastodon!",
|
||||
"attachments_list.unprocessed": "(neprilaborita)",
|
||||
|
@ -144,7 +151,7 @@
|
|||
"closed_registrations_modal.description": "Krei konton ĉe {domain} aktuale ne eblas, tamen bonvole rimarku, ke vi ne bezonas konton specife ĉe {domain} por uzi Mastodon.",
|
||||
"closed_registrations_modal.find_another_server": "Trovi alian servilon",
|
||||
"closed_registrations_modal.preamble": "Mastodon estas malcentraliza, do sendepende de tio, kie vi kreas vian konton, vi povos sekvi kaj komuniki kun ĉiuj ajn el ĉi tiu servilo. Vi eĉ povas mem starigi propran servilon!",
|
||||
"closed_registrations_modal.title": "Krei konton en Mastodon",
|
||||
"closed_registrations_modal.title": "Registriĝi en Mastodon",
|
||||
"column.about": "Pri",
|
||||
"column.blocks": "Blokitaj uzantoj",
|
||||
"column.bookmarks": "Legosignoj",
|
||||
|
@ -162,18 +169,19 @@
|
|||
"column.lists": "Listoj",
|
||||
"column.mutes": "Silentigitaj uzantoj",
|
||||
"column.notifications": "Sciigoj",
|
||||
"column.public": "Fratara templinio",
|
||||
"column.pins": "Montritaj afiŝoj",
|
||||
"column.public": "Fratara tempolinio",
|
||||
"column_back_button.label": "Reveni",
|
||||
"column_header.hide_settings": "Kaŝi la agordojn",
|
||||
"column_header.hide_settings": "Kaŝi agordojn",
|
||||
"column_header.moveLeft_settings": "Movi kolumnon maldekstren",
|
||||
"column_header.moveRight_settings": "Movi kolumnon dekstren",
|
||||
"column_header.pin": "Fiksi",
|
||||
"column_header.show_settings": "Montri la agordojn",
|
||||
"column_header.show_settings": "Montri agordojn",
|
||||
"column_header.unpin": "Malfiksi",
|
||||
"column_search.cancel": "Nuligi",
|
||||
"column_subheading.settings": "Agordoj",
|
||||
"community.column_settings.local_only": "Nur loka",
|
||||
"community.column_settings.media_only": "Nur vidaŭdaĵoj",
|
||||
"community.column_settings.media_only": "Nur aŭdovidaĵoj",
|
||||
"community.column_settings.remote_only": "Nur fora",
|
||||
"compose.language.change": "Ŝanĝi lingvon",
|
||||
"compose.language.search": "Serĉi lingvojn...",
|
||||
|
@ -183,18 +191,18 @@
|
|||
"compose_form.direct_message_warning_learn_more": "Lerni pli",
|
||||
"compose_form.encryption_warning": "La afiŝoj en Mastodon ne estas tutvoje ĉifritaj. Ne kunhavigu tiklajn informojn ĉe Mastodon.",
|
||||
"compose_form.hashtag_warning": "Ĉi tiu afiŝo ne estos listigita en neniu kradvorto ĉar ĝi ne estas publika. Nur publikaj afiŝoj povas esti serĉitaj per kradvortoj.",
|
||||
"compose_form.lock_disclaimer": "Via konto ne estas {locked}. Iu ajn povas sekvi vin por vidi viajn afiŝojn nur al la sekvantoj.",
|
||||
"compose_form.lock_disclaimer": "Via konta ne estas {locked}. Iu ajn povas sekvi vin por vidi viajn mesaĝojn, kiuj estas nur por sekvantoj.",
|
||||
"compose_form.lock_disclaimer.lock": "ŝlosita",
|
||||
"compose_form.placeholder": "Kion vi pensas?",
|
||||
"compose_form.placeholder": "Pri kio vi pensas?",
|
||||
"compose_form.poll.duration": "Daŭro de la balotenketo",
|
||||
"compose_form.poll.multiple": "Multobla elekto",
|
||||
"compose_form.poll.multiple": "Multebla elekto",
|
||||
"compose_form.poll.option_placeholder": "Opcio {number}",
|
||||
"compose_form.poll.single": "Ununura elekto",
|
||||
"compose_form.poll.switch_to_multiple": "Ŝanĝi la balotenketon por permesi multajn elektojn",
|
||||
"compose_form.poll.switch_to_single": "Ŝanĝi la balotenketon por permesi unu solan elekton",
|
||||
"compose_form.poll.type": "Stilo",
|
||||
"compose_form.publish": "Afiŝo",
|
||||
"compose_form.publish_form": "Nova afiŝo",
|
||||
"compose_form.publish": "Afiŝi",
|
||||
"compose_form.publish_form": "Afiŝi",
|
||||
"compose_form.reply": "Respondi",
|
||||
"compose_form.save_changes": "Ĝisdatigi",
|
||||
"compose_form.spoiler.marked": "Forigi la averton de enhavo",
|
||||
|
@ -227,6 +235,9 @@
|
|||
"confirmations.redraft.confirm": "Forigi kaj reskribi",
|
||||
"confirmations.redraft.message": "Ĉu vi certas ke vi volas forigi tiun afiŝon kaj reskribi ĝin? Ĉiuj diskonigoj kaj stelumoj estos perditaj, kaj respondoj al la originala mesaĝo estos senparentaj.",
|
||||
"confirmations.redraft.title": "Ĉu forigi kaj redakcii afiŝon?",
|
||||
"confirmations.remove_from_followers.confirm": "Forigi sekvanton",
|
||||
"confirmations.remove_from_followers.message": "{name} ne plu sekvos vin. Ĉu vi certas ke vi volas daŭri?",
|
||||
"confirmations.remove_from_followers.title": "Forigi sekvanton?",
|
||||
"confirmations.reply.confirm": "Respondi",
|
||||
"confirmations.reply.message": "Respondi nun anstataŭigos la skribatan afiŝon. Ĉu vi certas, ke vi volas daŭrigi?",
|
||||
"confirmations.reply.title": "Ĉu superskribi afiŝon?",
|
||||
|
@ -251,7 +262,7 @@
|
|||
"disabled_account_banner.text": "Via konto {disabledAccount} estas nune malvalidigita.",
|
||||
"dismissable_banner.community_timeline": "Jen la plej novaj publikaj afiŝoj de uzantoj, kies kontojn gastigas {domain}.",
|
||||
"dismissable_banner.dismiss": "Eksigi",
|
||||
"dismissable_banner.explore_links": "Ĉi tiuj revuaĵoj plejkunhaviĝas en la fediverso hodiaŭ. Pli novaj revuaĵoj afiŝis de pli da homoj metis pli alte.",
|
||||
"dismissable_banner.explore_links": "Ĉi tiuj revuaĵoj kunhaviĝas pleje en la fediverso hodiaŭ. Pli novaj revuaĵoj afiŝis de pli da homoj metis pli alte.",
|
||||
"dismissable_banner.explore_statuses": "Ĉi tiuj afiŝoj populariĝas sur la fediverso hodiaŭ. Pli novaj afiŝoj kun pli da diskonigoj kaj stemuloj estas rangigitaj pli alte.",
|
||||
"dismissable_banner.explore_tags": "Ĉi tiuj kradvortoj populariĝas sur la fediverso hodiaŭ. Kradvortoj, kiuj estas uzataj de pli malsamaj homoj, estas rangigitaj pli alte.",
|
||||
"dismissable_banner.public_timeline": "Ĉi tiuj estas la plej ĵusaj publikaj afiŝoj de homoj en la fediverso, kiujn la homoj en {domain} sekvas.",
|
||||
|
@ -260,11 +271,11 @@
|
|||
"domain_block_modal.they_can_interact_with_old_posts": "Homoj de ĉi tiu servilo povas interagi kun viaj malnovaj afiŝoj.",
|
||||
"domain_block_modal.they_cant_follow": "Neniu el ĉi tiu servilo povas sekvi vin.",
|
||||
"domain_block_modal.they_wont_know": "Ili ne scios, ke ili estas blokitaj.",
|
||||
"domain_block_modal.title": "Ĉu bloki la domajnon?",
|
||||
"domain_block_modal.title": "Ĉu bloki domajnon?",
|
||||
"domain_block_modal.you_will_lose_num_followers": "Vi perdos {followersCount, plural, one {{followersCountDisplay} sekvanton} other {{followersCountDisplay} sekvantojn}} kaj {followingCount, plural, one {{followingCountDisplay} homon, kiu vi sekvas} other {{followingCountDisplay} homojn, kiuj vi sekvas}}.",
|
||||
"domain_block_modal.you_will_lose_relationships": "Vi perdos ĉiujn sekvantojn kaj homojn, kiujn vi sekvas de ĉi tiu servilo.",
|
||||
"domain_block_modal.you_wont_see_posts": "Vi ne vidos afiŝojn aŭ sciigojn de uzantoj sur ĉi tiu servilo.",
|
||||
"domain_pill.activitypub_lets_connect": "Ĝi ebligas vin konekti kaj interagi kun homoj ne nur sur Mastodon, sed ankaŭ tra diversaj sociaj apoj.",
|
||||
"domain_pill.activitypub_lets_connect": "Ĝi ebligas vin konekti kaj interagi kun homoj ne nur sur Mastodon, sed ankaŭ tra diversaj sociaj aplikaĵoj.",
|
||||
"domain_pill.activitypub_like_language": "ActivityPub estas kiel la lingvo kiun Mastodon parolas kun aliaj sociaj retoj.",
|
||||
"domain_pill.server": "Servilo",
|
||||
"domain_pill.their_handle": "Ilia identigo:",
|
||||
|
@ -294,6 +305,9 @@
|
|||
"emoji_button.search_results": "Serĉaj rezultoj",
|
||||
"emoji_button.symbols": "Simboloj",
|
||||
"emoji_button.travel": "Vojaĝoj kaj lokoj",
|
||||
"empty_column.account_featured.me": "Vi ankoraŭ ne prezentis ion ajn. Ĉu vi sciis ke vi povas prezenti viajn afiŝojn, viajn plej uzitajn kradvortojn, kaj eĉ la kontojn de viaj amikoj sur via profilo?",
|
||||
"empty_column.account_featured.other": "{acct} ne prezentis ion ajn. Ĉu vi sciis ke vi povas prezenti viajn afiŝojn, viajn plej uzitajn kradvortojn, kaj eĉ la kontojn de viaj amikoj sur via profilo?",
|
||||
"empty_column.account_featured_other.unknown": "Ĉi tiu konto ankoraŭ ne montris ion ajn.",
|
||||
"empty_column.account_hides_collections": "Ĉi tiu uzanto elektis ne disponebligi ĉi tiu informon",
|
||||
"empty_column.account_suspended": "Konto suspendita",
|
||||
"empty_column.account_timeline": "Neniuj afiŝoj ĉi tie!",
|
||||
|
@ -378,6 +392,8 @@
|
|||
"generic.saved": "Konservita",
|
||||
"getting_started.heading": "Por komenci",
|
||||
"hashtag.admin_moderation": "Malfermi fasadon de moderigado por #{name}",
|
||||
"hashtag.browse": "Folii afiŝojn en #{hashtag}",
|
||||
"hashtag.browse_from_account": "Folii afiŝojn de @{name} en #{hashtag}",
|
||||
"hashtag.column_header.tag_mode.all": "kaj {additional}",
|
||||
"hashtag.column_header.tag_mode.any": "aŭ {additional}",
|
||||
"hashtag.column_header.tag_mode.none": "sen {additional}",
|
||||
|
@ -390,7 +406,10 @@
|
|||
"hashtag.counter_by_accounts": "{count, plural,one {{counter} partoprenanto} other {{counter} partoprenantoj}}",
|
||||
"hashtag.counter_by_uses": "{count, plural,one {{counter} afiŝo} other {{counter} afiŝoj}}",
|
||||
"hashtag.counter_by_uses_today": "{count, plural,one {{counter} afiŝo} other {{counter} afiŝoj}} hodiaŭ",
|
||||
"hashtag.feature": "Prezenti en profilo",
|
||||
"hashtag.follow": "Sekvi la kradvorton",
|
||||
"hashtag.mute": "Silentigi #{hashtag}",
|
||||
"hashtag.unfeature": "Ne prezenti en profilo",
|
||||
"hashtag.unfollow": "Ne plu sekvi la kradvorton",
|
||||
"hashtags.and_other": "…kaj {count, plural,other {# pli}}",
|
||||
"hints.profiles.followers_may_be_missing": "Sekvantoj por ĉi tiu profilo eble mankas.",
|
||||
|
@ -461,6 +480,7 @@
|
|||
"keyboard_shortcuts.my_profile": "Malfermu vian profilon",
|
||||
"keyboard_shortcuts.notifications": "Malfermu la sciigajn kolumnon",
|
||||
"keyboard_shortcuts.open_media": "Malfermi vidaŭdaĵon",
|
||||
"keyboard_shortcuts.pinned": "Malfermu alpinglitajn afiŝliston",
|
||||
"keyboard_shortcuts.profile": "Malfermu la profilon de aŭtoroprofilo",
|
||||
"keyboard_shortcuts.reply": "Respondu al afiŝo",
|
||||
"keyboard_shortcuts.requests": "Malfermi la liston de petoj por sekvado",
|
||||
|
@ -544,6 +564,7 @@
|
|||
"navigation_bar.mutes": "Silentigitaj uzantoj",
|
||||
"navigation_bar.opened_in_classic_interface": "Afiŝoj, kontoj, kaj aliaj specifaj paĝoj kiuj estas malfermititaj defaulta en la klasika reta interfaco.",
|
||||
"navigation_bar.personal": "Persone",
|
||||
"navigation_bar.pins": "Prezentitaj afiŝoj",
|
||||
"navigation_bar.preferences": "Preferoj",
|
||||
"navigation_bar.public_timeline": "Fratara templinio",
|
||||
"navigation_bar.search": "Serĉi",
|
||||
|
@ -839,6 +860,7 @@
|
|||
"status.mute": "Silentigi @{name}",
|
||||
"status.mute_conversation": "Silentigi konversacion",
|
||||
"status.open": "Pligrandigu ĉi tiun afiŝon",
|
||||
"status.pin": "Prezenti en profilo",
|
||||
"status.read_more": "Legi pli",
|
||||
"status.reblog": "Diskonigi",
|
||||
"status.reblog_private": "Diskonigi kun la sama videbleco",
|
||||
|
@ -863,6 +885,7 @@
|
|||
"status.translated_from_with": "Tradukita el {lang} per {provider}",
|
||||
"status.uncached_media_warning": "Antaŭrigardo ne disponebla",
|
||||
"status.unmute_conversation": "Malsilentigi la konversacion",
|
||||
"status.unpin": "Ne prezenti en profilo",
|
||||
"subscribed_languages.lead": "Nur afiŝoj en elektitaj lingvoj aperos en viaj hejma kaj lista templinioj post la ŝanĝo. Elektu nenion por ricevi afiŝojn en ĉiuj lingvoj.",
|
||||
"subscribed_languages.save": "Konservi ŝanĝojn",
|
||||
"subscribed_languages.target": "Ŝanĝu abonitajn lingvojn por {target}",
|
||||
|
@ -904,5 +927,9 @@
|
|||
"video.mute": "Silentigi",
|
||||
"video.pause": "Paŭzigi",
|
||||
"video.play": "Ekigi",
|
||||
"video.unmute": "Ne plu silentigi"
|
||||
"video.skip_backward": "Preterpasi malantaŭen",
|
||||
"video.skip_forward": "Preterpasi antaŭen",
|
||||
"video.unmute": "Ne plu silentigi",
|
||||
"video.volume_down": "Laŭteco Malpliigi",
|
||||
"video.volume_up": "Laŭteco pliigi"
|
||||
}
|
||||
|
|
|
@ -19,13 +19,19 @@
|
|||
"account.block_domain": "Bac an àrainn {domain}",
|
||||
"account.block_short": "Bac",
|
||||
"account.blocked": "’Ga bhacadh",
|
||||
"account.blocking": "’Ga bhacadh",
|
||||
"account.cancel_follow_request": "Sguir dhen leantainn",
|
||||
"account.copy": "Dèan lethbhreac dhen cheangal dhan phròifil",
|
||||
"account.direct": "Thoir iomradh air @{name} gu prìobhaideach",
|
||||
"account.disable_notifications": "Na cuir brath thugam tuilleadh nuair a chuireas @{name} post ris",
|
||||
"account.domain_blocking": "Àrainn ’ga bacadh",
|
||||
"account.edit_profile": "Deasaich a’ phròifil",
|
||||
"account.enable_notifications": "Cuir brath thugam nuair a chuireas @{name} post ris",
|
||||
"account.endorse": "Brosnaich air a’ phròifil",
|
||||
"account.featured": "’Ga bhrosnachadh",
|
||||
"account.featured.accounts": "Pròifilean",
|
||||
"account.featured.hashtags": "Tagaichean hais",
|
||||
"account.featured.posts": "Postaichean",
|
||||
"account.featured_tags.last_status_at": "Am post mu dheireadh {date}",
|
||||
"account.featured_tags.last_status_never": "Gun phost",
|
||||
"account.follow": "Lean",
|
||||
|
@ -36,6 +42,7 @@
|
|||
"account.following": "A’ leantainn",
|
||||
"account.following_counter": "{count, plural, one {A’ leantainn {counter}} other {A’ leantainn {counter}}}",
|
||||
"account.follows.empty": "Chan eil an cleachdaiche seo a’ leantainn neach sam bith fhathast.",
|
||||
"account.follows_you": "’Gad leantainn",
|
||||
"account.go_to_profile": "Tadhail air a’ phròifil",
|
||||
"account.hide_reblogs": "Falaich na brosnachaidhean o @{name}",
|
||||
"account.in_memoriam": "Mar chuimhneachan.",
|
||||
|
@ -50,18 +57,23 @@
|
|||
"account.mute_notifications_short": "Mùch na brathan",
|
||||
"account.mute_short": "Mùch",
|
||||
"account.muted": "’Ga mhùchadh",
|
||||
"account.muting": "’Ga mhùchadh",
|
||||
"account.mutual": "A’ leantainn càch a chèile",
|
||||
"account.no_bio": "Cha deach tuairisgeul a sholar.",
|
||||
"account.open_original_page": "Fosgail an duilleag thùsail",
|
||||
"account.posts": "Postaichean",
|
||||
"account.posts_with_replies": "Postaichean ’s freagairtean",
|
||||
"account.remove_from_followers": "Thoir {name} air falbh on luchd-leantainn",
|
||||
"account.report": "Dèan gearan mu @{name}",
|
||||
"account.requested": "A’ feitheamh air aontachadh. Briog airson sgur dhen iarrtas leantainn",
|
||||
"account.requested_follow": "Dh’iarr {name} ’gad leantainn",
|
||||
"account.requests_to_follow_you": "Iarrtasan leantainn",
|
||||
"account.share": "Co-roinn a’ phròifil aig @{name}",
|
||||
"account.show_reblogs": "Seall na brosnachaidhean o @{name}",
|
||||
"account.statuses_counter": "{count, plural, one {{counter} phost} two {{counter} phost} few {{counter} postaichean} other {{counter} post}}",
|
||||
"account.unblock": "Dì-bhac @{name}",
|
||||
"account.unblock_domain": "Dì-bhac an àrainn {domain}",
|
||||
"account.unblock_domain_short": "Dì-bhac",
|
||||
"account.unblock_short": "Dì-bhac",
|
||||
"account.unendorse": "Na brosnaich air a’ phròifil",
|
||||
"account.unfollow": "Na lean tuilleadh",
|
||||
|
@ -83,6 +95,13 @@
|
|||
"alert.unexpected.message": "Thachair mearachd ris nach robh dùil.",
|
||||
"alert.unexpected.title": "Oich!",
|
||||
"alt_text_badge.title": "Roghainn teacsa",
|
||||
"alt_text_modal.add_alt_text": "Cuir roghainn teacsa ris",
|
||||
"alt_text_modal.add_text_from_image": "Cuir teacsa on dealbh ris",
|
||||
"alt_text_modal.cancel": "Sguir dheth",
|
||||
"alt_text_modal.change_thumbnail": "Atharraich an dealbhag",
|
||||
"alt_text_modal.describe_for_people_with_hearing_impairments": "Mìnich seo dhan fheadhainn air a bheil ciorram claisneachd…",
|
||||
"alt_text_modal.describe_for_people_with_visual_impairments": "Mìnich seo dhan fheadhainn air a bheil cion-lèirsinne…",
|
||||
"alt_text_modal.done": "Deiseil",
|
||||
"announcement.announcement": "Brath-fios",
|
||||
"annual_report.summary.archetype.booster": "Brosnaiche",
|
||||
"annual_report.summary.archetype.lurker": "Eala-bhalbh",
|
||||
|
@ -100,6 +119,7 @@
|
|||
"annual_report.summary.most_used_hashtag.most_used_hashtag": "an taga hais a chaidh a cleachdadh as trice",
|
||||
"annual_report.summary.most_used_hashtag.none": "Chan eil gin",
|
||||
"annual_report.summary.new_posts.new_posts": "postaichean ùra",
|
||||
"annual_report.summary.percentile.text": "<topLabel>Tha thu am measg</topLabel><percentage></percentage><bottomLabel>dhen luchd-cleachdaidh as cliùitiche air {domain}.</bottomLabel>",
|
||||
"annual_report.summary.percentile.we_wont_tell_bernie": "Ainmeil ’nad latha ’s ’nad linn.",
|
||||
"annual_report.summary.thanks": "Mòran taing airson conaltradh air Mastodon.",
|
||||
"attachments_list.unprocessed": "(gun phròiseasadh)",
|
||||
|
@ -125,6 +145,7 @@
|
|||
"bundle_column_error.routing.body": "Cha do lorg sinn an duilleag a dh’iarr thu. A bheil thu cinnteach gu bheil an t-URL ann am bàr an t-seòlaidh mar bu chòir?",
|
||||
"bundle_column_error.routing.title": "404",
|
||||
"bundle_modal_error.close": "Dùin",
|
||||
"bundle_modal_error.message": "Chaidh rudeigin ceàrr le luchdadh na sgrìn seo.",
|
||||
"bundle_modal_error.retry": "Feuch ris a-rithist",
|
||||
"closed_registrations.other_server_instructions": "Air sgàth ’s gu bheil Mastodon sgaoilte, ’s urrainn dhut cunntas a chruthachadh air frithealaiche eile agus conaltradh ris an fhrithealaiche seo co-dhiù.",
|
||||
"closed_registrations_modal.description": "Cha ghabh cunntas a chruthachadh air {domain} aig an àm seo ach thoir an aire nach fheum thu cunntas air {domain} gu sònraichte airson Mastodon a chleachdadh.",
|
||||
|
@ -135,16 +156,20 @@
|
|||
"column.blocks": "Cleachdaichean bacte",
|
||||
"column.bookmarks": "Comharran-lìn",
|
||||
"column.community": "Loidhne-ama ionadail",
|
||||
"column.create_list": "Cruthaich liosta",
|
||||
"column.direct": "Iomraidhean prìobhaideach",
|
||||
"column.directory": "Rùraich sna pròifilean",
|
||||
"column.domain_blocks": "Àrainnean bacte",
|
||||
"column.edit_list": "Deasaich an liosta",
|
||||
"column.favourites": "Annsachdan",
|
||||
"column.firehose": "An saoghal poblach",
|
||||
"column.follow_requests": "Iarrtasan leantainn",
|
||||
"column.home": "Dachaigh",
|
||||
"column.list_members": "Stiùir buill na liosta",
|
||||
"column.lists": "Liostaichean",
|
||||
"column.mutes": "Cleachdaichean mùchte",
|
||||
"column.notifications": "Brathan",
|
||||
"column.pins": "Postaichean brosnaichte",
|
||||
"column.public": "Loidhne-ama cho-naisgte",
|
||||
"column_back_button.label": "Air ais",
|
||||
"column_header.hide_settings": "Falaich na roghainnean",
|
||||
|
@ -153,6 +178,7 @@
|
|||
"column_header.pin": "Prìnich",
|
||||
"column_header.show_settings": "Seall na roghainnean",
|
||||
"column_header.unpin": "Dì-phrìnich",
|
||||
"column_search.cancel": "Sguir dheth",
|
||||
"column_subheading.settings": "Roghainnean",
|
||||
"community.column_settings.local_only": "Feadhainn ionadail a-mhàin",
|
||||
"community.column_settings.media_only": "Meadhanan a-mhàin",
|
||||
|
@ -195,13 +221,23 @@
|
|||
"confirmations.edit.confirm": "Deasaich",
|
||||
"confirmations.edit.message": "Ma nì thu deasachadh an-dràsta, thèid seo a sgrìobhadh thairis air an teachdaireachd a tha thu a’ sgrìobhadh an-dràsta. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?",
|
||||
"confirmations.edit.title": "A bheil thu airson sgrìobhadh thairis air a’ phost?",
|
||||
"confirmations.follow_to_list.confirm": "Lean ’s cuir ris an liosta",
|
||||
"confirmations.follow_to_list.message": "Feumaidh tu {name} a leantainn ron chur ri liosta.",
|
||||
"confirmations.follow_to_list.title": "A bheil thu airson an cleachdaiche a leantainn?",
|
||||
"confirmations.logout.confirm": "Clàraich a-mach",
|
||||
"confirmations.logout.message": "A bheil thu cinnteach gu bheil thu airson clàradh a-mach?",
|
||||
"confirmations.logout.title": "A bheil thu airson clàradh a-mach?",
|
||||
"confirmations.missing_alt_text.confirm": "Cuir roghainn teacsa ris",
|
||||
"confirmations.missing_alt_text.message": "Tha meadhan sa phost seo aig nach eil roghainn teacsa. Ma chuireas tu tuairisgeul ris, ’s urrainn do bharrachd daoine an t-susbaint agad a ruigsinn.",
|
||||
"confirmations.missing_alt_text.secondary": "Postaich e co-dhiù",
|
||||
"confirmations.missing_alt_text.title": "A bheil thu airson roghainn teacsa a chur ris?",
|
||||
"confirmations.mute.confirm": "Mùch",
|
||||
"confirmations.redraft.confirm": "Sguab às ⁊ dèan dreachd ùr",
|
||||
"confirmations.redraft.message": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às agus dreachd ùr a thòiseachadh? Caillidh tu gach annsachd is brosnachadh air agus thèid freagairtean dhan phost thùsail ’nan dìlleachdanan.",
|
||||
"confirmations.redraft.title": "A bheil thu airson am post a sguabadh às ⁊ dreachd ùr a dhèanamh dheth?",
|
||||
"confirmations.remove_from_followers.confirm": "Thoir an neach-leantainn air falbh",
|
||||
"confirmations.remove_from_followers.message": "Cha lean {name} thu tuilleadh. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?",
|
||||
"confirmations.remove_from_followers.title": "A bheil thu airson an neach-leantainn a thoirt air falbh?",
|
||||
"confirmations.reply.confirm": "Freagair",
|
||||
"confirmations.reply.message": "Ma bheir thu freagairt an-dràsta, thèid seo a sgrìobhadh thairis air an teachdaireachd a tha thu a’ sgrìobhadh an-dràsta. A bheil thu cinnteach gu bheil thu airson leantainn air adhart?",
|
||||
"confirmations.reply.title": "A bheil thu airson sgrìobhadh thairis air a’ phost?",
|
||||
|
@ -226,6 +262,10 @@
|
|||
"disabled_account_banner.text": "Tha an cunntas {disabledAccount} agad à comas aig an àm seo.",
|
||||
"dismissable_banner.community_timeline": "Seo na postaichean poblach as ùire o dhaoine aig a bheil cunntas air {domain}.",
|
||||
"dismissable_banner.dismiss": "Leig seachad",
|
||||
"dismissable_banner.explore_links": "Tha na naidheachdan seo gan co-roinneadh as trice air a’ cho-shaoghal an-diugh. Gheibh sgeulachdan-naidheachd nas ùire a chaidh a cho-roinneadh le barrachd dhaoine eadar-dhealaichte rangachadh nas àirde.",
|
||||
"dismissable_banner.explore_statuses": "Tha fèill air na postaichean seo a’ fàs thar a’ cho-shaoghail an-diugh. Gheibh postaichean nas ùire le barrachd brosnaichean is annsachdan rangachadh nas àirde.",
|
||||
"dismissable_banner.explore_tags": "Tha fèill air na tagaichean hais seo a’ fàs air a’ cho-shaoghal an-diugh. Gheibh tagaichean hais a tha gan cleachdadh le daoine eadar-dhealaichte rangachadh nas àirde.",
|
||||
"dismissable_banner.public_timeline": "Seo na postaichean poblach as ùire o dhaoine air a’ cho-shaoghal tha ’gan leantainn le daoine air {domain}.",
|
||||
"domain_block_modal.block": "Bac am frithealaiche",
|
||||
"domain_block_modal.block_account_instead": "Bac @{name} ’na àite",
|
||||
"domain_block_modal.they_can_interact_with_old_posts": "’S urrainn do dhaoine a th’ air an fhrithealaiche seo eadar-ghabhail leis na seann-phostaichean agad.",
|
||||
|
@ -265,6 +305,9 @@
|
|||
"emoji_button.search_results": "Toraidhean an luirg",
|
||||
"emoji_button.symbols": "Samhlaidhean",
|
||||
"emoji_button.travel": "Siubhal ⁊ àitichean",
|
||||
"empty_column.account_featured.me": "Chan eil thu a’ brosnachadh dad fhathast. An robh fios agad gur urrainn dhut na postaichean agad, na tagaichean hais a chleachdas tu as trice agus fiù ’s cunntasan do charaidean a bhrosnachadh air a’ phròifil agad?",
|
||||
"empty_column.account_featured.other": "Chan eil {acct} a’ brosnachadh dad fhathast. An robh fios agad gur urrainn dhut na postaichean agad, na tagaichean hais a chleachdas tu as trice agus fiù ’s cunntasan do charaidean a bhrosnachadh air a’ phròifil agad?",
|
||||
"empty_column.account_featured_other.unknown": "Chan eil an cunntas seo a’ brosnachadh dad fhathast.",
|
||||
"empty_column.account_hides_collections": "Chuir an cleachdaiche seo roimhe nach eil am fiosrachadh seo ri fhaighinn",
|
||||
"empty_column.account_suspended": "Chaidh an cunntas a chur à rèim",
|
||||
"empty_column.account_timeline": "Chan eil post an-seo!",
|
||||
|
@ -345,8 +388,12 @@
|
|||
"footer.privacy_policy": "Poileasaidh prìobhaideachd",
|
||||
"footer.source_code": "Seall am bun-tùs",
|
||||
"footer.status": "Staid",
|
||||
"footer.terms_of_service": "Teirmichean na seirbheise",
|
||||
"generic.saved": "Chaidh a shàbhaladh",
|
||||
"getting_started.heading": "Toiseach",
|
||||
"hashtag.admin_moderation": "Fosgail eadar-aghaidh na maorsainneachd dha #{name}",
|
||||
"hashtag.browse": "Rùraich na postaichean sa bheil #{hashtag}",
|
||||
"hashtag.browse_from_account": "Rùraich na postaichean aig @{name} ’s #{hashtag} annta",
|
||||
"hashtag.column_header.tag_mode.all": "agus {additional}",
|
||||
"hashtag.column_header.tag_mode.any": "no {additional}",
|
||||
"hashtag.column_header.tag_mode.none": "às aonais {additional}",
|
||||
|
@ -359,7 +406,10 @@
|
|||
"hashtag.counter_by_accounts": "{count, plural, one {{counter} chom-pàirtiche} two {{counter} chom-pàirtiche} few {{counter} com-pàirtiche} other {{counter} com-pàirtiche}}",
|
||||
"hashtag.counter_by_uses": "{count, plural, one {{counter} phost} two {{counter} phost} few {{counter} postaichean} other {{counter} post}}",
|
||||
"hashtag.counter_by_uses_today": "{count, plural, one {{counter} phost} two {{counter} phost} few {{counter} postaichean} other {{counter} post}} an-diugh",
|
||||
"hashtag.feature": "Brosnaich air a’ phròifil",
|
||||
"hashtag.follow": "Lean an taga hais",
|
||||
"hashtag.mute": "Mùch #{hashtag}",
|
||||
"hashtag.unfeature": "Na brosnaich air a’ phròifil",
|
||||
"hashtag.unfollow": "Na lean an taga hais tuilleadh",
|
||||
"hashtags.and_other": "…agus {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}",
|
||||
"hints.profiles.followers_may_be_missing": "Dh’fhaoidte gu bheil cuid dhen luchd-leantainn na pròifil seo a dhìth.",
|
||||
|
@ -388,6 +438,15 @@
|
|||
"ignore_notifications_modal.not_followers_title": "A bheil thu airson na brathan o dhaoine nach eil ’gad leantainn a leigeil seachad?",
|
||||
"ignore_notifications_modal.not_following_title": "A bheil thu airson na brathan o dhaoine nach eil thu a’ leantainn a leigeil seachad?",
|
||||
"ignore_notifications_modal.private_mentions_title": "A bheil thu airson na brathan o iomraidhean phrìobhaideach gun iarraidh a leigeil seachad?",
|
||||
"info_button.label": "Cobhair",
|
||||
"info_button.what_is_alt_text": "<h1>Dè a th’ ann an roghainn teacsa?</h1> <p>Bheir roghainn teacsa tuairisgeulan dhealbhan dhan fheadhainn air a bheil cion lèirsinne, aig a bheil ceangal air leud-banna cumhang no a tha a’ sireadh barrachd co-theacsa.</p> <p>’S urrainn dhut piseach a thoirt air an t-so-ruigsinneachd is an tuigse dhan a h-uile duine ma sgrìobhas tu roghainn teacsa a tha soilleir, goirid is cuspaireach.</p> <ul> <li>Gabh a-steach na nithean cudromach</li> <li>Dèan geàrr-chunntas dhen teacsa sna dealbhan</li> <li>Cleachd structar sheantansan àbhaisteach</li><li>\\nSeachainn fiosrachadh anabarrach</li> <li>Cùm an aire air treandaichean is puingean cudromach ann an dealbhan iom-fhillte (mar diagram no mapa)</li> </ul>",
|
||||
"interaction_modal.action.favourite": "Airson leantainn air adhart, feumaidh tu a chur ris na h-annsachdan on chunntas agad.",
|
||||
"interaction_modal.action.follow": "Airson leantainn air adhart, feumaidh tu a leantainn on chunntas agad.",
|
||||
"interaction_modal.action.reblog": "Airson leantainn air adhart, feumaidh tu a bhrosnachadh on chunntas agad.",
|
||||
"interaction_modal.action.reply": "Airson leantainn air adhart, feumaidh tu fhreagairt on chunntas agad.",
|
||||
"interaction_modal.action.vote": "Airson leantainn air adhart, feumaidh tu bhòtadh on chunntas agad.",
|
||||
"interaction_modal.go": "Siuthad",
|
||||
"interaction_modal.no_account_yet": "Nach eil cunntas agad fhathast?",
|
||||
"interaction_modal.on_another_server": "Air frithealaiche eile",
|
||||
"interaction_modal.on_this_server": "Air an frithealaiche seo",
|
||||
"interaction_modal.title.favourite": "Cuir am post aig {name} ris na h-annsachdan",
|
||||
|
@ -395,6 +454,7 @@
|
|||
"interaction_modal.title.reblog": "Brosnaich am post aig {name}",
|
||||
"interaction_modal.title.reply": "Freagair dhan phost aig {name}",
|
||||
"interaction_modal.title.vote": "Bhòt sa chunntas-bheachd aig {name}",
|
||||
"interaction_modal.username_prompt": "M.e. {example}",
|
||||
"intervals.full.days": "{number, plural, one {# latha} two {# latha} few {# làithean} other {# latha}}",
|
||||
"intervals.full.hours": "{number, plural, one {# uair a thìde} two {# uair a thìde} few {# uairean a thìde} other {# uair a thìde}}",
|
||||
"intervals.full.minutes": "{number, plural, one {# mhionaid} two {# mhionaid} few {# mionaidean} other {# mionaid}}",
|
||||
|
@ -420,6 +480,7 @@
|
|||
"keyboard_shortcuts.my_profile": "Fosgail a’ phròifil agad",
|
||||
"keyboard_shortcuts.notifications": "Fosgail colbh nam brathan",
|
||||
"keyboard_shortcuts.open_media": "Fosgail meadhan",
|
||||
"keyboard_shortcuts.pinned": "Fosgail liosta nam postaichean ’gam brosnachadh",
|
||||
"keyboard_shortcuts.profile": "Fosgail pròifil an ùghdair",
|
||||
"keyboard_shortcuts.reply": "Freagair do phost",
|
||||
"keyboard_shortcuts.requests": "Fosgail liosta nan iarrtasan leantainn",
|
||||
|
@ -429,6 +490,7 @@
|
|||
"keyboard_shortcuts.toggle_hidden": "Seall/Falaich an teacsa fo rabhadh susbainte",
|
||||
"keyboard_shortcuts.toggle_sensitivity": "Seall/Falaich na meadhanan",
|
||||
"keyboard_shortcuts.toot": "Tòisich air post ùr",
|
||||
"keyboard_shortcuts.translate": "airson post eadar-theangachadh",
|
||||
"keyboard_shortcuts.unfocus": "Thoir am fòcas far raon teacsa an sgrìobhaidh/an luirg",
|
||||
"keyboard_shortcuts.up": "Gluais suas air an liosta",
|
||||
"lightbox.close": "Dùin",
|
||||
|
@ -441,11 +503,32 @@
|
|||
"link_preview.author": "Le {name}",
|
||||
"link_preview.more_from_author": "Barrachd le {name}",
|
||||
"link_preview.shares": "{count, plural, one {{counter} phost} two {{counter} phost} few {{counter} postaichean} other {{counter} post}}",
|
||||
"lists.add_member": "Cuir ris",
|
||||
"lists.add_to_list": "Cuir ris an liosta",
|
||||
"lists.add_to_lists": "Cuir {name} ri liostaichean",
|
||||
"lists.create": "Cruthaich",
|
||||
"lists.create_a_list_to_organize": "Cruthaich liosta ùr airson rian a chur air do dhachaigh",
|
||||
"lists.create_list": "Cruthaich liosta",
|
||||
"lists.delete": "Sguab às an liosta",
|
||||
"lists.done": "Deiseil",
|
||||
"lists.edit": "Deasaich an liosta",
|
||||
"lists.exclusive": "Falaich na buill san dachaigh",
|
||||
"lists.exclusive_hint": "Falaich an fheadhainn a tha air an liosta seo air loidhne-ama na dachaigh ach nach fhaic thu na postaichean aca dà thuras.",
|
||||
"lists.find_users_to_add": "Lorg cleachdaichean ri chur ris",
|
||||
"lists.list_members": "Buill na liosta",
|
||||
"lists.list_members_count": "{count, plural, one {# bhall} two {# bhall} few {# buill} other {# ball}}",
|
||||
"lists.list_name": "Ainm na liosta",
|
||||
"lists.new_list_name": "Ainm na liosta ùire",
|
||||
"lists.no_lists_yet": "Chan eil liosta ann fhathast.",
|
||||
"lists.no_members_yet": "Chan eil ball ann fhathast.",
|
||||
"lists.no_results_found": "Cha deach toradh a lorg.",
|
||||
"lists.remove_member": "Thoir air falbh",
|
||||
"lists.replies_policy.followed": "Cleachdaiche sam bith a leanas mi",
|
||||
"lists.replies_policy.list": "Buill na liosta",
|
||||
"lists.replies_policy.none": "Na seall idir",
|
||||
"lists.save": "Sàbhail",
|
||||
"lists.search": "Lorg",
|
||||
"lists.show_replies_to": "Gabh a-staigh freagairtean o bhuill na liosta gu",
|
||||
"load_pending": "{count, plural, one {# nì ùr} two {# nì ùr} few {# nithean ùra} other {# nì ùr}}",
|
||||
"loading_indicator.label": "’Ga luchdadh…",
|
||||
"media_gallery.hide": "Falaich",
|
||||
|
@ -481,6 +564,7 @@
|
|||
"navigation_bar.mutes": "Cleachdaichean mùchte",
|
||||
"navigation_bar.opened_in_classic_interface": "Thèid postaichean, cunntasan ’s duilleagan sònraichte eile fhosgladh san eadar-aghaidh-lìn chlasaigeach a ghnàth.",
|
||||
"navigation_bar.personal": "Pearsanta",
|
||||
"navigation_bar.pins": "Postaichean brosnaichte",
|
||||
"navigation_bar.preferences": "Roghainnean",
|
||||
"navigation_bar.public_timeline": "Loidhne-ama cho-naisgte",
|
||||
"navigation_bar.search": "Lorg",
|
||||
|
@ -497,6 +581,8 @@
|
|||
"notification.annual_report.view": "Seall #Wrapstodon",
|
||||
"notification.favourite": "Is annsa le {name} am post agad",
|
||||
"notification.favourite.name_and_others_with_link": "Is annsa le {name} ’s <a>{count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}</a> am post agad",
|
||||
"notification.favourite_pm": "Is annsa le {name} an t-iomradh prìobhaideach agad",
|
||||
"notification.favourite_pm.name_and_others_with_link": "Is annsa le {name} ’s <a>{count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}</a> an t-iomradh prìobhaideach agad",
|
||||
"notification.follow": "Tha {name} ’gad leantainn a-nis",
|
||||
"notification.follow.name_and_others": "Lean {name} ’s <a>{count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}</a> thu",
|
||||
"notification.follow_request": "Dh’iarr {name} ’gad leantainn",
|
||||
|
@ -601,7 +687,10 @@
|
|||
"notifications_permission_banner.enable": "Cuir brathan deasga an comas",
|
||||
"notifications_permission_banner.how_to_control": "Airson brathan fhaighinn nuair nach eil Mastodon fosgailte, cuir na brathan deasga an comas. Tha an smachd agad fhèin air dè na seòrsaichean de chonaltradh a ghineas brathan deasga leis a’ phutan {icon} gu h-àrd nuair a bhios iad air an cur an comas.",
|
||||
"notifications_permission_banner.title": "Na caill dad gu bràth tuilleadh",
|
||||
"onboarding.follows.done": "Deiseil",
|
||||
"onboarding.follows.empty": "Gu mì-fhortanach, chan urrainn dhuinn toradh a shealltainn an-dràsta. Feuch gleus an luirg no duilleag an rùrachaidh airson daoine ri leantainn a lorg no feuch ris a-rithist an ceann tamaill.",
|
||||
"onboarding.follows.search": "Lorg",
|
||||
"onboarding.follows.title": "Lean daoine airson tòiseachadh",
|
||||
"onboarding.profile.discoverable": "Bu mhath leam gun gabh a’ phròifil agam a rùrachadh",
|
||||
"onboarding.profile.discoverable_hint": "Ma chuir thu romhad gun gabh a’ phròifil agad a rùrachadh air Mastodon, faodaidh na postaichean agad nochdadh ann an toraidhean luirg agus treandaichean agus dh’fhaoidte gun dèid a’ phròifil agad a mholadh dhan fheadhainn aig a bheil ùidhean coltach ri d’ ùidhean-sa.",
|
||||
"onboarding.profile.display_name": "Ainm-taisbeanaidh",
|
||||
|
@ -627,6 +716,7 @@
|
|||
"poll_button.remove_poll": "Thoir air falbh an cunntas-bheachd",
|
||||
"privacy.change": "Cuir gleus air prìobhaideachd a’ phuist",
|
||||
"privacy.direct.long": "A h-uile duine air a bheil iomradh sa phost",
|
||||
"privacy.direct.short": "Iomradh prìobhaideach",
|
||||
"privacy.private.long": "An luchd-leantainn agad a-mhàin",
|
||||
"privacy.private.short": "Luchd-leantainn",
|
||||
"privacy.public.long": "Duine sam bith taobh a-staigh no a-muigh Mhastodon",
|
||||
|
@ -638,6 +728,8 @@
|
|||
"privacy_policy.title": "Poileasaidh prìobhaideachd",
|
||||
"recommended": "Molta",
|
||||
"refresh": "Ath-nuadhaich",
|
||||
"regeneration_indicator.please_stand_by": "Fuirich ort.",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Ag ullachadh do dhachaighe…",
|
||||
"relative_time.days": "{number}l",
|
||||
"relative_time.full.days": "{number, plural, one {# latha} two {# latha} few {# làithean} other {# latha}} air ais",
|
||||
"relative_time.full.hours": "{number, plural, one {# uair a thìde} two {# uair a thìde} few {# uairean a thìde} other {# uair a thìde}} air ais",
|
||||
|
@ -721,8 +813,11 @@
|
|||
"search_results.accounts": "Pròifilean",
|
||||
"search_results.all": "Na h-uile",
|
||||
"search_results.hashtags": "Tagaichean hais",
|
||||
"search_results.no_results": "Gun toradh.",
|
||||
"search_results.no_search_yet": "Feuch an lorg thu postaichean, pròifilean no tagaichean hais.",
|
||||
"search_results.see_all": "Seall na h-uile",
|
||||
"search_results.statuses": "Postaichean",
|
||||
"search_results.title": "Lorg “{q}”",
|
||||
"server_banner.about_active_users": "Daoine a chleachd am frithealaiche seo rè an 30 latha mu dheireadh (Cleachdaichean gnìomhach gach mìos)",
|
||||
"server_banner.active_users": "cleachdaichean gnìomhach",
|
||||
"server_banner.administered_by": "Rianachd le:",
|
||||
|
@ -764,6 +859,7 @@
|
|||
"status.mute": "Mùch @{name}",
|
||||
"status.mute_conversation": "Mùch an còmhradh",
|
||||
"status.open": "Leudaich am post seo",
|
||||
"status.pin": "Brosnaich air a’ phròifil",
|
||||
"status.read_more": "Leugh an còrr",
|
||||
"status.reblog": "Brosnaich",
|
||||
"status.reblog_private": "Brosnaich leis an t-so-fhaicsinneachd tùsail",
|
||||
|
@ -772,6 +868,7 @@
|
|||
"status.reblogs.empty": "Chan deach am post seo a bhrosnachadh le duine sam bith fhathast. Nuair a bhrosnaicheas cuideigin e, nochdaidh iad an-seo.",
|
||||
"status.redraft": "Sguab às ⁊ dèan dreachd ùr",
|
||||
"status.remove_bookmark": "Thoir an comharra-lìn air falbh",
|
||||
"status.remove_favourite": "Thoir air falbh o na h-annsachdan",
|
||||
"status.replied_in_thread": "Freagairt do shnàithlean",
|
||||
"status.replied_to": "Air {name} fhreagairt",
|
||||
"status.reply": "Freagair",
|
||||
|
@ -787,11 +884,15 @@
|
|||
"status.translated_from_with": "Air eadar-theangachadh o {lang} le {provider}",
|
||||
"status.uncached_media_warning": "Chan eil ro-shealladh ri fhaighinn",
|
||||
"status.unmute_conversation": "Dì-mhùch an còmhradh",
|
||||
"status.unpin": "Na brosnaich air a’ phròifil",
|
||||
"subscribed_languages.lead": "Cha nochd ach na postaichean sna cànanan a thagh thu air loidhnichean-ama na dachaigh ’s nan liostaichean às dèidh an atharrachaidh seo. Na tagh gin ma tha thu airson na postaichean uile fhaighinn ge b’ e dè an cànan.",
|
||||
"subscribed_languages.save": "Sàbhail na h-atharraichean",
|
||||
"subscribed_languages.target": "Atharraich fo-sgrìobhadh nan cànan airson {target}",
|
||||
"tabs_bar.home": "Dachaigh",
|
||||
"tabs_bar.notifications": "Brathan",
|
||||
"terms_of_service.effective_as_of": "Èifeachdach on {date}",
|
||||
"terms_of_service.title": "Teirmichean na seirbheise",
|
||||
"terms_of_service.upcoming_changes_on": "Tha atharraichean ri thighinn air {date}",
|
||||
"time_remaining.days": "{number, plural, one {# latha} two {# latha} few {# làithean} other {# latha}} air fhàgail",
|
||||
"time_remaining.hours": "{number, plural, one {# uair a thìde} two {# uair a thìde} few {# uairean a thìde} other {# uair a thìde}} air fhàgail",
|
||||
"time_remaining.minutes": "{number, plural, one {# mhionaid} two {# mhionaid} few {# mionaidean} other {# mionaid}} air fhàgail",
|
||||
|
@ -822,6 +923,12 @@
|
|||
"video.expand": "Leudaich a’ video",
|
||||
"video.fullscreen": "Làn-sgrìn",
|
||||
"video.hide": "Falaich a’ video",
|
||||
"video.mute": "Mùch",
|
||||
"video.pause": "Cuir ’na stad",
|
||||
"video.play": "Cluich"
|
||||
"video.play": "Cluich",
|
||||
"video.skip_backward": "Geàrr leum air ais",
|
||||
"video.skip_forward": "Geàrr leum air adhart",
|
||||
"video.unmute": "Dì-mhùch",
|
||||
"video.volume_down": "Lùghdaich an fhuaim",
|
||||
"video.volume_up": "Cuir an fhuaim an àirde"
|
||||
}
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
"account.enable_notifications": "Avvisami quando @{name} pubblica un post",
|
||||
"account.endorse": "In evidenza sul profilo",
|
||||
"account.featured": "In primo piano",
|
||||
"account.featured.accounts": "Profili",
|
||||
"account.featured.hashtags": "Hashtag",
|
||||
"account.featured.posts": "Post",
|
||||
"account.featured_tags.last_status_at": "Ultimo post il {date}",
|
||||
|
@ -168,6 +169,7 @@
|
|||
"column.lists": "Liste",
|
||||
"column.mutes": "Utenti silenziati",
|
||||
"column.notifications": "Notifiche",
|
||||
"column.pins": "Post in evidenza",
|
||||
"column.public": "Timeline federata",
|
||||
"column_back_button.label": "Indietro",
|
||||
"column_header.hide_settings": "Nascondi impostazioni",
|
||||
|
@ -404,8 +406,10 @@
|
|||
"hashtag.counter_by_accounts": "{count, plural, one {{counter} partecipante} other {{counter} partecipanti}}",
|
||||
"hashtag.counter_by_uses": "{count, plural, one {{counter} post} other {{counter} post}}",
|
||||
"hashtag.counter_by_uses_today": "{count, plural, one {{counter} post} other {{counter} post}} oggi",
|
||||
"hashtag.feature": "In evidenza sul profilo",
|
||||
"hashtag.follow": "Segui l'hashtag",
|
||||
"hashtag.mute": "Silenzia #{hashtag}",
|
||||
"hashtag.unfeature": "Non mettere in evidenza sul profilo",
|
||||
"hashtag.unfollow": "Smetti di seguire l'hashtag",
|
||||
"hashtags.and_other": "…e {count, plural, other {# in più}}",
|
||||
"hints.profiles.followers_may_be_missing": "I seguaci per questo profilo potrebbero essere mancanti.",
|
||||
|
@ -476,6 +480,7 @@
|
|||
"keyboard_shortcuts.my_profile": "Apre il tuo profilo",
|
||||
"keyboard_shortcuts.notifications": "Apre la colonna delle notifiche",
|
||||
"keyboard_shortcuts.open_media": "Apre i multimedia",
|
||||
"keyboard_shortcuts.pinned": "Apri la lista dei post in evidenza",
|
||||
"keyboard_shortcuts.profile": "Apre il profilo dell'autore",
|
||||
"keyboard_shortcuts.reply": "Risponde al post",
|
||||
"keyboard_shortcuts.requests": "Apre l'elenco delle richieste di seguirti",
|
||||
|
@ -559,6 +564,7 @@
|
|||
"navigation_bar.mutes": "Utenti silenziati",
|
||||
"navigation_bar.opened_in_classic_interface": "Post, account e altre pagine specifiche sono aperti per impostazione predefinita nella classica interfaccia web.",
|
||||
"navigation_bar.personal": "Personale",
|
||||
"navigation_bar.pins": "Post in evidenza",
|
||||
"navigation_bar.preferences": "Preferenze",
|
||||
"navigation_bar.public_timeline": "Cronologia federata",
|
||||
"navigation_bar.search": "Cerca",
|
||||
|
@ -854,6 +860,7 @@
|
|||
"status.mute": "Silenzia @{name}",
|
||||
"status.mute_conversation": "Silenzia conversazione",
|
||||
"status.open": "Espandi questo post",
|
||||
"status.pin": "In evidenza sul profilo",
|
||||
"status.read_more": "Leggi di più",
|
||||
"status.reblog": "Reblog",
|
||||
"status.reblog_private": "Reblog con visibilità originale",
|
||||
|
@ -878,6 +885,7 @@
|
|||
"status.translated_from_with": "Tradotto da {lang} utilizzando {provider}",
|
||||
"status.uncached_media_warning": "Anteprima non disponibile",
|
||||
"status.unmute_conversation": "Annulla silenziamento conversazione",
|
||||
"status.unpin": "Non mettere in evidenza sul profilo",
|
||||
"subscribed_languages.lead": "Solo i post nelle lingue selezionate appariranno sulla tua home e nelle cronologie dopo la modifica. Seleziona nessuno per ricevere i post in tutte le lingue.",
|
||||
"subscribed_languages.save": "Salva le modifiche",
|
||||
"subscribed_languages.target": "Modifica le lingue in cui sei iscritto per {target}",
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
"account.mute_short": "뮤트",
|
||||
"account.muted": "뮤트됨",
|
||||
"account.muting": "뮤트함",
|
||||
"account.mutual": "서로 팔로우",
|
||||
"account.mutual": "맞팔로우 중입니다",
|
||||
"account.no_bio": "제공된 설명이 없습니다.",
|
||||
"account.open_original_page": "원본 페이지 열기",
|
||||
"account.posts": "게시물",
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
"account.enable_notifications": "佇 {name} PO文ê時通知我",
|
||||
"account.endorse": "用個人資料推薦對方",
|
||||
"account.featured": "精選ê",
|
||||
"account.featured.accounts": "個人資料",
|
||||
"account.featured.hashtags": "Hashtag",
|
||||
"account.featured.posts": "PO文",
|
||||
"account.featured_tags.last_status_at": "頂kái tī {date} Po文",
|
||||
|
@ -405,8 +406,10 @@
|
|||
"hashtag.counter_by_accounts": "{count, plural, one {{counter} ê} other {{counter} ê}}參與ê",
|
||||
"hashtag.counter_by_uses": "{count, plural, one {{counter} 篇} other {{counter} 篇}} PO文",
|
||||
"hashtag.counter_by_uses_today": "Kin-á日有 {count, plural, one {{counter} 篇} other {{counter} 篇}} PO文",
|
||||
"hashtag.feature": "Tī個人資料推薦",
|
||||
"hashtag.follow": "跟tuè hashtag",
|
||||
"hashtag.mute": "消音 #{hashtag}",
|
||||
"hashtag.unfeature": "Mài tī個人資料推薦",
|
||||
"hashtag.unfollow": "取消跟tuè hashtag",
|
||||
"hashtags.and_other": "……kap 其他 {count, plural, other {# ê}}",
|
||||
"hints.profiles.followers_may_be_missing": "Tsit ê個人資料ê跟tuè者資訊可能有落勾ê。",
|
||||
|
@ -678,6 +681,10 @@
|
|||
"notifications.policy.filter_not_followers_title": "無跟tuè lí ê lâng",
|
||||
"notifications.policy.filter_not_following_hint": "直到lí手動允准in",
|
||||
"notifications.policy.filter_not_following_title": "Lí無跟tuè ê lâng",
|
||||
"notifications.policy.filter_private_mentions_hint": "通知ē受過濾,除非是tī lí ê提起ê回應內底,á是lí跟tuè送PO文ê lâng",
|
||||
"notifications.policy.filter_private_mentions_title": "家kī直接送來ê私人提起",
|
||||
"notifications.policy.title": "管理通知tuì……",
|
||||
"notifications_permission_banner.enable": "啟用桌面ê通知",
|
||||
"notifications_permission_banner.title": "逐ê著看",
|
||||
"onboarding.follows.back": "轉去",
|
||||
"onboarding.follows.done": "做好ah",
|
||||
|
@ -705,6 +712,10 @@
|
|||
"privacy.private.short": "跟tuè lí ê",
|
||||
"privacy.public.long": "逐ê lâng(無論佇Mastodon以內á是以外)",
|
||||
"privacy.public.short": "公開ê",
|
||||
"privacy.unlisted.short": "恬靜ê公開",
|
||||
"privacy_policy.last_updated": "上尾更新tī:{date}",
|
||||
"privacy_policy.title": "隱私權政策",
|
||||
"recommended": "推薦",
|
||||
"refresh": "Koh更新",
|
||||
"regeneration_indicator.please_stand_by": "請sió等leh。",
|
||||
"regeneration_indicator.preparing_your_home_feed": "Leh準備lí ê厝ê時間線……",
|
||||
|
@ -715,6 +726,28 @@
|
|||
"relative_time.full.minutes": "{number, plural, other {# 分鐘}}進前",
|
||||
"relative_time.full.seconds": "{number, plural, other {# 秒}}進前",
|
||||
"relative_time.hours": "{number}點鐘前",
|
||||
"relative_time.just_now": "頭tú-á",
|
||||
"relative_time.minutes": "{number} 分進前",
|
||||
"relative_time.seconds": "{number} 秒進前",
|
||||
"relative_time.today": "今á日",
|
||||
"reply_indicator.attachments": "{count, plural, other {# ê附件}}",
|
||||
"reply_indicator.cancel": "取消",
|
||||
"reply_indicator.poll": "投票",
|
||||
"report.block": "封鎖",
|
||||
"report.categories.legal": "法律ê問題",
|
||||
"report.categories.other": "其他",
|
||||
"report.categories.spam": "Pùn-sò訊息",
|
||||
"report.categories.violation": "內容違反tsi̍t ê以上服侍器ê規則",
|
||||
"report.category.subtitle": "揀上合ê選項",
|
||||
"report.category.title": "Kā guán講tsit ê {type} 有siánn-mih代誌",
|
||||
"report.category.title_account": "個人資料",
|
||||
"report.category.title_status": "PO文",
|
||||
"report.close": "完成",
|
||||
"report.comment.title": "Lí敢有別ê想beh hōo guán知ê?",
|
||||
"report.forward": "轉送kàu {target}",
|
||||
"report.forward_hint": "Tsit ê口座是別ê服侍器ê。Kám iā beh送bô落名ê檢舉ê khóo-pih?",
|
||||
"report.mute": "消音",
|
||||
"report.mute_explanation": "Lí bē koh看著in ê PO文。In iáu是ē當跟tuè lí,看lí ê PO文,而且m̄知in受消音。",
|
||||
"report.next": "繼續",
|
||||
"report.placeholder": "其他ê註釋",
|
||||
"report.reasons.dislike": "我無kah意",
|
||||
|
@ -728,6 +761,13 @@
|
|||
"report.reasons.violation": "伊違反服侍器ê規定",
|
||||
"report.reasons.violation_description": "Lí明知伊違反特定ê規定",
|
||||
"report.rules.subtitle": "請揀所有符合ê選項",
|
||||
"report.rules.title": "違反siánn-mih規則?",
|
||||
"report.statuses.subtitle": "請揀所有符合ê選項",
|
||||
"report.statuses.title": "Kám有任何PO文證明tsit ê檢舉?",
|
||||
"report.submit": "送出",
|
||||
"search_popout.language_code": "ISO語言代碼",
|
||||
"search_results.see_all": "看全部",
|
||||
"search_results.statuses": "PO文",
|
||||
"search_results.title": "Tshiau-tshuē「{q}」",
|
||||
"status.translated_from_with": "用 {provider} 翻譯 {lang}"
|
||||
}
|
||||
|
|
|
@ -19,13 +19,19 @@
|
|||
"account.block_domain": "Bloquear domínio {domain}",
|
||||
"account.block_short": "Bloquear",
|
||||
"account.blocked": "Bloqueado",
|
||||
"account.blocking": "A bloquear",
|
||||
"account.cancel_follow_request": "Retirar pedido para seguir",
|
||||
"account.copy": "Copiar hiperligação do perfil",
|
||||
"account.direct": "Mencionar @{name} em privado",
|
||||
"account.disable_notifications": "Parar de me notificar das publicações de @{name}",
|
||||
"account.domain_blocking": "A bloquear domínio",
|
||||
"account.edit_profile": "Editar perfil",
|
||||
"account.enable_notifications": "Notificar-me das publicações de @{name}",
|
||||
"account.endorse": "Destacar no perfil",
|
||||
"account.featured": "Destaques",
|
||||
"account.featured.accounts": "Perfis",
|
||||
"account.featured.hashtags": "Etiquetas",
|
||||
"account.featured.posts": "Publicações",
|
||||
"account.featured_tags.last_status_at": "Última publicação em {date}",
|
||||
"account.featured_tags.last_status_never": "Sem publicações",
|
||||
"account.follow": "Seguir",
|
||||
|
@ -36,6 +42,7 @@
|
|||
"account.following": "A seguir",
|
||||
"account.following_counter": "{count, plural, one {A seguir {counter}} other {A seguir {counter}}}",
|
||||
"account.follows.empty": "Este utilizador ainda não segue ninguém.",
|
||||
"account.follows_you": "Segue-te",
|
||||
"account.go_to_profile": "Ir para o perfil",
|
||||
"account.hide_reblogs": "Esconder partilhas impulsionadas de @{name}",
|
||||
"account.in_memoriam": "Em Memória.",
|
||||
|
@ -50,13 +57,17 @@
|
|||
"account.mute_notifications_short": "Ocultar notificações",
|
||||
"account.mute_short": "Ocultar",
|
||||
"account.muted": "Ocultada",
|
||||
"account.muting": "A silenciar",
|
||||
"account.mutual": "Seguem-se mutuamente",
|
||||
"account.no_bio": "Nenhuma descrição fornecida.",
|
||||
"account.open_original_page": "Abrir a página original",
|
||||
"account.posts": "Publicações",
|
||||
"account.posts_with_replies": "Publicações e respostas",
|
||||
"account.remove_from_followers": "Remover {name} dos seguidores",
|
||||
"account.report": "Denunciar @{name}",
|
||||
"account.requested": "A aguardar aprovação. Clica para cancelar o pedido para seguir",
|
||||
"account.requested_follow": "{name} pediu para seguir-te",
|
||||
"account.requests_to_follow_you": "Pediu para seguir-te",
|
||||
"account.share": "Partilhar o perfil @{name}",
|
||||
"account.show_reblogs": "Mostrar partilhas impulsionadas de @{name}",
|
||||
"account.statuses_counter": "{count, plural, one {{counter} publicação} other {{counter} publicações}}",
|
||||
|
@ -158,6 +169,7 @@
|
|||
"column.lists": "Listas",
|
||||
"column.mutes": "Utilizadores ocultados",
|
||||
"column.notifications": "Notificações",
|
||||
"column.pins": "Publicação destacada",
|
||||
"column.public": "Cronologia federada",
|
||||
"column_back_button.label": "Voltar",
|
||||
"column_header.hide_settings": "Ocultar configurações",
|
||||
|
@ -223,6 +235,9 @@
|
|||
"confirmations.redraft.confirm": "Eliminar e reescrever",
|
||||
"confirmations.redraft.message": "Tens a certeza de que queres eliminar e tornar a escrever esta publicação? Os favoritos e as publicações impulsionadas perder-se-ão e as respostas à publicação original ficarão órfãs.",
|
||||
"confirmations.redraft.title": "Eliminar e reescrever publicação?",
|
||||
"confirmations.remove_from_followers.confirm": "Remover seguidor",
|
||||
"confirmations.remove_from_followers.message": "{name} vai parar de seguir-te. Tens a certeza que prentedes continuar?",
|
||||
"confirmations.remove_from_followers.title": "Remover seguidor?",
|
||||
"confirmations.reply.confirm": "Responder",
|
||||
"confirmations.reply.message": "Se responderes agora, a mensagem que estás a escrever será substituída. Tens a certeza que pretendes continuar?",
|
||||
"confirmations.reply.title": "Substituir publicação?",
|
||||
|
@ -290,6 +305,9 @@
|
|||
"emoji_button.search_results": "Resultados da pesquisa",
|
||||
"emoji_button.symbols": "Símbolos",
|
||||
"emoji_button.travel": "Viagens e lugares",
|
||||
"empty_column.account_featured.me": "Ainda não destacaste nada. Sabias que podes destacar as tuas publicações, as etiquetas que mais utilizas e até as contas dos teus amigos no teu perfil?",
|
||||
"empty_column.account_featured.other": "{acct} ainda não colocou nada em destaque. Sabias que podes destacar as tuas publicações, as etiquetas que mais utilizas e até as contas dos teus amigos no teu perfil?",
|
||||
"empty_column.account_featured_other.unknown": "Esta conta ainda não colocou nada em destaque.",
|
||||
"empty_column.account_hides_collections": "Este utilizador escolheu não disponibilizar esta informação",
|
||||
"empty_column.account_suspended": "Conta suspensa",
|
||||
"empty_column.account_timeline": "Sem publicações por aqui!",
|
||||
|
@ -374,6 +392,8 @@
|
|||
"generic.saved": "Guardado",
|
||||
"getting_started.heading": "Primeiros passos",
|
||||
"hashtag.admin_moderation": "Abrir interface de moderação para #{name}",
|
||||
"hashtag.browse": "Ver publicações em #{hashtag}",
|
||||
"hashtag.browse_from_account": "Ver publicações de @{name} em #{hashtag}",
|
||||
"hashtag.column_header.tag_mode.all": "e {additional}",
|
||||
"hashtag.column_header.tag_mode.any": "ou {additional}",
|
||||
"hashtag.column_header.tag_mode.none": "sem {additional}",
|
||||
|
@ -388,6 +408,7 @@
|
|||
"hashtag.counter_by_uses_today": "{count, plural, one {{counter} publicação} other {{counter} publicações}} hoje",
|
||||
"hashtag.feature": "Destacar no perfil",
|
||||
"hashtag.follow": "Seguir #etiqueta",
|
||||
"hashtag.mute": "Silenciar #{hashtag}",
|
||||
"hashtag.unfeature": "Não destacar no perfil",
|
||||
"hashtag.unfollow": "Deixar de seguir #etiqueta",
|
||||
"hashtags.and_other": "…e {count, plural, other {mais #}}",
|
||||
|
@ -459,6 +480,7 @@
|
|||
"keyboard_shortcuts.my_profile": "abrir o teu perfil",
|
||||
"keyboard_shortcuts.notifications": "abrir a coluna das notificações",
|
||||
"keyboard_shortcuts.open_media": "abrir multimédia",
|
||||
"keyboard_shortcuts.pinned": "Abrir lista de publicações destacadas",
|
||||
"keyboard_shortcuts.profile": "abrir o perfil do autor",
|
||||
"keyboard_shortcuts.reply": "responder à publicação",
|
||||
"keyboard_shortcuts.requests": "abrir a lista dos pedidos de seguidor",
|
||||
|
@ -542,6 +564,7 @@
|
|||
"navigation_bar.mutes": "Utilizadores ocultados",
|
||||
"navigation_bar.opened_in_classic_interface": "Por norma, publicações, contas e outras páginas específicas são abertas na interface web clássica.",
|
||||
"navigation_bar.personal": "Pessoal",
|
||||
"navigation_bar.pins": "Publicações destacadas",
|
||||
"navigation_bar.preferences": "Preferências",
|
||||
"navigation_bar.public_timeline": "Cronologia federada",
|
||||
"navigation_bar.search": "Pesquisar",
|
||||
|
@ -837,6 +860,7 @@
|
|||
"status.mute": "Ocultar @{name}",
|
||||
"status.mute_conversation": "Ocultar conversa",
|
||||
"status.open": "Expandir esta publicação",
|
||||
"status.pin": "Destacar no perfil",
|
||||
"status.read_more": "Ler mais",
|
||||
"status.reblog": "Impulsionar",
|
||||
"status.reblog_private": "Impulsionar com a visibilidade original",
|
||||
|
@ -861,6 +885,7 @@
|
|||
"status.translated_from_with": "Traduzido do {lang} usando {provider}",
|
||||
"status.uncached_media_warning": "Pré-visualização não disponível",
|
||||
"status.unmute_conversation": "Desocultar esta conversa",
|
||||
"status.unpin": "Não destacar no perfil",
|
||||
"subscribed_languages.lead": "Após a alteração, apenas as publicações nos idiomas selecionados aparecerão na cronologia da tua página inicial e das tuas listas. Não seleciones nenhum idioma para receberes publicações em todos os idiomas.",
|
||||
"subscribed_languages.save": "Guardar alterações",
|
||||
"subscribed_languages.target": "Alterar idiomas subscritos para {target}",
|
||||
|
@ -899,6 +924,12 @@
|
|||
"video.expand": "Expandir vídeo",
|
||||
"video.fullscreen": "Ecrã completo",
|
||||
"video.hide": "Ocultar vídeo",
|
||||
"video.mute": "Silenciar",
|
||||
"video.pause": "Pausar",
|
||||
"video.play": "Reproduzir"
|
||||
"video.play": "Reproduzir",
|
||||
"video.skip_backward": "Saltar para trás",
|
||||
"video.skip_forward": "Saltar para a frente",
|
||||
"video.unmute": "Ativar som",
|
||||
"video.volume_down": "Diminuir volume",
|
||||
"video.volume_up": "Aumentar volume"
|
||||
}
|
||||
|
|
|
@ -639,7 +639,7 @@
|
|||
"notifications.column_settings.admin.sign_up": "Người mới tham gia:",
|
||||
"notifications.column_settings.alert": "Báo trên máy tính",
|
||||
"notifications.column_settings.favourite": "Lượt thích:",
|
||||
"notifications.column_settings.filter_bar.advanced": "Toàn bộ",
|
||||
"notifications.column_settings.filter_bar.advanced": "Hiện tất cả loại thông báo",
|
||||
"notifications.column_settings.filter_bar.category": "Thanh lọc nhanh",
|
||||
"notifications.column_settings.follow": "Người theo dõi:",
|
||||
"notifications.column_settings.follow_request": "Yêu cầu theo dõi:",
|
||||
|
@ -654,10 +654,10 @@
|
|||
"notifications.column_settings.unread_notifications.category": "Thông báo chưa đọc",
|
||||
"notifications.column_settings.unread_notifications.highlight": "Nổi bật thông báo chưa đọc",
|
||||
"notifications.column_settings.update": "Sửa tút:",
|
||||
"notifications.filter.all": "Toàn bộ",
|
||||
"notifications.filter.all": "Tất cả",
|
||||
"notifications.filter.boosts": "Đăng lại",
|
||||
"notifications.filter.favourites": "Lượt thích",
|
||||
"notifications.filter.follows": "Đang theo dõi",
|
||||
"notifications.filter.follows": "Người theo dõi mới",
|
||||
"notifications.filter.mentions": "Lượt nhắc đến",
|
||||
"notifications.filter.polls": "Kết quả bình chọn",
|
||||
"notifications.filter.statuses": "Cập nhật từ những người bạn theo dõi",
|
||||
|
@ -667,21 +667,21 @@
|
|||
"notifications.permission_denied": "Trình duyệt không cho phép hiển thị thông báo trên màn hình.",
|
||||
"notifications.permission_denied_alert": "Không thể bật thông báo trên màn hình bởi vì trình duyệt đã cấm trước đó",
|
||||
"notifications.permission_required": "Không hiện thông báo trên màn hình bởi vì chưa cho phép.",
|
||||
"notifications.policy.accept": "Có",
|
||||
"notifications.policy.accept": "Cho phép",
|
||||
"notifications.policy.accept_hint": "Hiện trong thông báo",
|
||||
"notifications.policy.drop": "Không",
|
||||
"notifications.policy.drop": "Bỏ qua",
|
||||
"notifications.policy.drop_hint": "Loại bỏ vĩnh viễn",
|
||||
"notifications.policy.filter": "Lọc",
|
||||
"notifications.policy.filter_hint": "Cho vào mục thông báo bị lọc",
|
||||
"notifications.policy.filter_limited_accounts_hint": "Chỉ dành cho kiểm duyệt viên",
|
||||
"notifications.policy.filter_limited_accounts_title": "Kiểm duyệt tài khoản",
|
||||
"notifications.policy.filter_limited_accounts_title": "Kiểm duyệt máy chủ",
|
||||
"notifications.policy.filter_new_accounts.hint": "Đã tạo trong vòng {days, plural, other {# ngày}}",
|
||||
"notifications.policy.filter_new_accounts_title": "Tài khoản mới",
|
||||
"notifications.policy.filter_not_followers_hint": "Bao gồm những người đã theo dõi bạn ít hơn {days, plural, other {# ngày}}",
|
||||
"notifications.policy.filter_new_accounts_title": "Người mới tạo tài khoản",
|
||||
"notifications.policy.filter_not_followers_hint": "Gồm những ai theo dõi bạn ít hơn {days, plural, other {# ngày}}",
|
||||
"notifications.policy.filter_not_followers_title": "Những người không theo dõi bạn",
|
||||
"notifications.policy.filter_not_following_hint": "Cho tới khi bạn duyệt họ",
|
||||
"notifications.policy.filter_not_following_title": "Những người bạn không theo dõi",
|
||||
"notifications.policy.filter_private_mentions_hint": "Trừ khi nó trả lời lượt nhắc từ bạn hoặc nếu bạn có theo dõi người gửi",
|
||||
"notifications.policy.filter_private_mentions_hint": "Trừ khi đó là trả lời lượt nhắc từ bạn hoặc nếu bạn có theo dõi người gửi",
|
||||
"notifications.policy.filter_private_mentions_title": "Lượt nhắn riêng không mong muốn",
|
||||
"notifications.policy.title": "Quản lý thông báo từ…",
|
||||
"notifications_permission_banner.enable": "Cho phép thông báo trên màn hình",
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
"account.enable_notifications": "当 @{name} 发布嘟文时通知我",
|
||||
"account.endorse": "在个人资料中推荐此用户",
|
||||
"account.featured": "精选",
|
||||
"account.featured.accounts": "个人资料",
|
||||
"account.featured.hashtags": "话题",
|
||||
"account.featured.posts": "嘟文",
|
||||
"account.featured_tags.last_status_at": "上次发言于 {date}",
|
||||
|
@ -62,6 +63,7 @@
|
|||
"account.open_original_page": "打开原始页面",
|
||||
"account.posts": "嘟文",
|
||||
"account.posts_with_replies": "嘟文和回复",
|
||||
"account.remove_from_followers": "从关注者中移除 {name}",
|
||||
"account.report": "举报 @{name}",
|
||||
"account.requested": "正在等待对方同意。点击取消发送关注请求",
|
||||
"account.requested_follow": "{name} 向你发送了关注请求",
|
||||
|
@ -167,6 +169,7 @@
|
|||
"column.lists": "列表",
|
||||
"column.mutes": "已隐藏的用户",
|
||||
"column.notifications": "通知",
|
||||
"column.pins": "精选嘟文",
|
||||
"column.public": "跨站公共时间线",
|
||||
"column_back_button.label": "返回",
|
||||
"column_header.hide_settings": "隐藏设置",
|
||||
|
@ -233,6 +236,7 @@
|
|||
"confirmations.redraft.message": "确定删除这条嘟文并重写吗?所有相关的喜欢和转嘟都将丢失,嘟文的回复也会失去关联。",
|
||||
"confirmations.redraft.title": "是否删除并重新编辑嘟文?",
|
||||
"confirmations.remove_from_followers.confirm": "移除关注者",
|
||||
"confirmations.remove_from_followers.message": "{name} 将停止关注您。您确定要继续吗?",
|
||||
"confirmations.remove_from_followers.title": "移除关注者?",
|
||||
"confirmations.reply.confirm": "回复",
|
||||
"confirmations.reply.message": "回复此消息将会覆盖当前正在编辑的信息。确定继续吗?",
|
||||
|
|
|
@ -3,17 +3,17 @@ import { IntlProvider } from 'react-intl';
|
|||
import { MemoryRouter } from 'react-router';
|
||||
|
||||
import type { RenderOptions } from '@testing-library/react';
|
||||
// eslint-disable-next-line import/no-extraneous-dependencies
|
||||
import { render as rtlRender } from '@testing-library/react';
|
||||
|
||||
import { IdentityContext } from './identity_context';
|
||||
|
||||
beforeEach(() => {
|
||||
global.requestIdleCallback = jest
|
||||
.fn()
|
||||
.mockImplementation((fn: () => void) => {
|
||||
fn();
|
||||
});
|
||||
beforeAll(() => {
|
||||
global.requestIdleCallback = vi.fn((cb: IdleRequestCallback) => {
|
||||
// @ts-expect-error IdleRequestCallback expects an argument of type IdleDeadline,
|
||||
// but that doesn't exist in this environment.
|
||||
cb();
|
||||
return 0;
|
||||
});
|
||||
});
|
||||
|
||||
function render(
|
||||
|
@ -46,7 +46,6 @@ function render(
|
|||
}
|
||||
|
||||
// re-export everything
|
||||
// eslint-disable-next-line import/no-extraneous-dependencies
|
||||
export * from '@testing-library/react';
|
||||
|
||||
// override render method
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
import '@testing-library/jest-dom';
|
|
@ -99,7 +99,7 @@ module User::Omniauthable
|
|||
external: true,
|
||||
account_attributes: {
|
||||
username: ensure_unique_username(ensure_valid_username(auth.uid)),
|
||||
display_name: auth.info.full_name || auth.info.name || [auth.info.first_name, auth.info.last_name].join(' '),
|
||||
display_name: display_name_from_auth(auth),
|
||||
},
|
||||
}
|
||||
end
|
||||
|
@ -121,5 +121,10 @@ module User::Omniauthable
|
|||
temp_username = starting_username.gsub(/[^a-z0-9_]+/i, '')
|
||||
temp_username.truncate(30, omission: '')
|
||||
end
|
||||
|
||||
def display_name_from_auth(auth)
|
||||
display_name = auth.info.full_name || auth.info.name || [auth.info.first_name, auth.info.last_name].join(' ')
|
||||
display_name.truncate(Account::DISPLAY_NAME_LENGTH_LIMIT, omission: '')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -117,7 +117,7 @@ class User < ApplicationRecord
|
|||
validates_with RegistrationFormTimeValidator, on: :create
|
||||
validates :website, absence: true, on: :create
|
||||
validates :confirm_password, absence: true, on: :create
|
||||
validates :date_of_birth, presence: true, date_of_birth: true, on: :create, if: -> { Setting.min_age.present? }
|
||||
validates :date_of_birth, presence: true, date_of_birth: true, on: :create, if: -> { Setting.min_age.present? && !bypass_registration_checks? }
|
||||
validate :validate_role_elevation
|
||||
|
||||
scope :account_not_suspended, -> { joins(:account).merge(Account.without_suspended) }
|
||||
|
@ -149,7 +149,7 @@ class User < ApplicationRecord
|
|||
delegate :can?, to: :role
|
||||
|
||||
attr_reader :invite_code, :date_of_birth
|
||||
attr_writer :external, :bypass_invite_request_check, :current_account
|
||||
attr_writer :external, :bypass_registration_checks, :current_account
|
||||
|
||||
def self.those_who_can(*any_of_privileges)
|
||||
matching_role_ids = UserRole.that_can(*any_of_privileges).map(&:id)
|
||||
|
@ -524,8 +524,8 @@ class User < ApplicationRecord
|
|||
!!@external
|
||||
end
|
||||
|
||||
def bypass_invite_request_check?
|
||||
@bypass_invite_request_check
|
||||
def bypass_registration_checks?
|
||||
@bypass_registration_checks
|
||||
end
|
||||
|
||||
def sanitize_role
|
||||
|
@ -573,7 +573,7 @@ class User < ApplicationRecord
|
|||
end
|
||||
|
||||
def invite_text_required?
|
||||
Setting.require_invite_text && !open_registrations? && !invited? && !external? && !bypass_invite_request_check?
|
||||
Setting.require_invite_text && !open_registrations? && !invited? && !external? && !bypass_registration_checks?
|
||||
end
|
||||
|
||||
def trigger_webhooks
|
||||
|
|
|
@ -51,7 +51,7 @@ class REST::InstanceSerializer < ActiveModel::Serializer
|
|||
def usage
|
||||
{
|
||||
users: {
|
||||
active_month: object.active_user_count(4),
|
||||
active_month: limited_federation? ? 0 : object.active_user_count(4),
|
||||
},
|
||||
}
|
||||
end
|
||||
|
@ -123,6 +123,8 @@ class REST::InstanceSerializer < ActiveModel::Serializer
|
|||
search: {
|
||||
enabled: Chewy.enabled?,
|
||||
},
|
||||
|
||||
limited_federation: limited_federation?,
|
||||
}
|
||||
end
|
||||
|
||||
|
@ -152,6 +154,10 @@ class REST::InstanceSerializer < ActiveModel::Serializer
|
|||
markdown.render(Setting.closed_registrations_message) if Setting.closed_registrations_message.present?
|
||||
end
|
||||
|
||||
def limited_federation?
|
||||
Rails.configuration.x.limited_federation_mode
|
||||
end
|
||||
|
||||
def markdown
|
||||
@markdown ||= Redcarpet::Markdown.new(Redcarpet::Render::HTML, no_images: true)
|
||||
end
|
||||
|
|
|
@ -22,7 +22,7 @@ class ActivityPub::FetchAllRepliesWorker
|
|||
@root_status.touch(:fetched_replies_at)
|
||||
Rails.logger.debug { "FetchAllRepliesWorker - #{@root_status.uri}: Fetching all replies for status: #{@root_status}" }
|
||||
|
||||
uris_to_fetch, n_pages = get_replies(@root_status.uri, MAX_PAGES, options)
|
||||
uris_to_fetch, n_pages = get_root_replies(@root_status.uri, options)
|
||||
return if uris_to_fetch.nil?
|
||||
|
||||
fetched_uris = uris_to_fetch.clone.to_set
|
||||
|
@ -49,20 +49,39 @@ class ActivityPub::FetchAllRepliesWorker
|
|||
|
||||
private
|
||||
|
||||
def get_replies(status_uri, max_pages, options = {})
|
||||
replies_collection_or_uri = get_replies_uri(status_uri)
|
||||
# @param status [String, Hash]
|
||||
# status URI, or the prefetched body of the Note object
|
||||
def get_replies(status, max_pages, options = {})
|
||||
replies_collection_or_uri = get_replies_uri(status)
|
||||
return if replies_collection_or_uri.nil?
|
||||
|
||||
ActivityPub::FetchAllRepliesService.new.call(status_uri, replies_collection_or_uri, max_pages: max_pages, **options.deep_symbolize_keys)
|
||||
ActivityPub::FetchAllRepliesService.new.call(value_or_id(status), replies_collection_or_uri, max_pages: max_pages, **options.deep_symbolize_keys)
|
||||
end
|
||||
|
||||
def get_replies_uri(parent_status_uri)
|
||||
fetch_resource(parent_status_uri, true)&.fetch('replies', nil)
|
||||
# Get the URI of the replies collection of a status
|
||||
#
|
||||
# @param parent_status [String, Hash]
|
||||
# status URI, or the prefetched body of the Note object
|
||||
def get_replies_uri(parent_status)
|
||||
resource = parent_status.is_a?(Hash) ? parent_status : fetch_resource(parent_status, true)
|
||||
resource&.fetch('replies', nil)
|
||||
rescue => e
|
||||
Rails.logger.info { "FetchAllRepliesWorker - #{@root_status.uri}: Caught exception while resolving replies URI #{parent_status_uri}: #{e} - #{e.message}" }
|
||||
Rails.logger.info { "FetchAllRepliesWorker - #{@root_status.uri}: Caught exception while resolving replies URI #{parent_status}: #{e} - #{e.message}" }
|
||||
# Raise if we can't get the collection for top-level status to trigger retry
|
||||
raise e if parent_status_uri == @root_status.uri
|
||||
raise e if value_or_id(parent_status) == @root_status.uri
|
||||
|
||||
nil
|
||||
end
|
||||
|
||||
# Get the root status, updating the status without fetching it twice
|
||||
#
|
||||
# @param root_status_uri [String]
|
||||
def get_root_replies(root_status_uri, options = {})
|
||||
root_status_body = fetch_resource(root_status_uri, true)
|
||||
raise RuntimeError("FetchAllRepliesWorker - #{@root_status.uri}: Root status could not be fetched") if root_status_body.nil?
|
||||
|
||||
FetchReplyWorker.perform_async(root_status_uri, { **options, prefetched_body: root_status_body })
|
||||
|
||||
get_replies(root_status_body, MAX_PAGES, options)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -7,6 +7,6 @@ class FetchReplyWorker
|
|||
sidekiq_options queue: 'pull', retry: 3
|
||||
|
||||
def perform(child_url, options = {})
|
||||
FetchRemoteStatusService.new.call(child_url, **options.deep_symbolize_keys)
|
||||
FetchRemoteStatusService.new.call(child_url, **options.symbolize_keys)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -3,14 +3,16 @@
|
|||
if ENV['REDIS_NAMESPACE']
|
||||
es_configured = ENV['ES_ENABLED'] == 'true' || ENV.fetch('ES_HOST', 'localhost') != 'localhost' || ENV.fetch('ES_PORT', '9200') != '9200' || ENV.fetch('ES_PASS', 'password') != 'password'
|
||||
|
||||
warn <<~MESSAGE
|
||||
WARNING: the REDIS_NAMESPACE environment variable is deprecated and will be removed in Mastodon 4.4.0.
|
||||
message = <<~MESSAGE
|
||||
ERROR: the REDIS_NAMESPACE environment variable is no longer supported, and a migration is required.
|
||||
|
||||
Please see documentation at https://github.com/mastodon/redis_namespace_migration
|
||||
MESSAGE
|
||||
|
||||
warn <<~MESSAGE if es_configured && !ENV['ES_PREFIX']
|
||||
message += <<~MESSAGE if es_configured && !ENV['ES_PREFIX']
|
||||
|
||||
In addition, as REDIS_NAMESPACE is being used as a prefix for Elasticsearch, please do not forget to set ES_PREFIX to "#{ENV.fetch('REDIS_NAMESPACE')}".
|
||||
MESSAGE
|
||||
|
||||
abort message
|
||||
end
|
||||
|
|
|
@ -23,6 +23,8 @@ gd:
|
|||
models:
|
||||
account:
|
||||
attributes:
|
||||
fields:
|
||||
fields_with_values_missing_labels: "– tha luachan ann air a bheil leubail a dhìth"
|
||||
username:
|
||||
invalid: "– chan fhaod ach litrichean gun sràcan, àireamhan ’s fo-loidhnichean a bhith ’na bhroinn"
|
||||
reserved: "– tha e glèidhte"
|
||||
|
@ -38,12 +40,23 @@ gd:
|
|||
attributes:
|
||||
data:
|
||||
malformed: "– chan eil cruth dligheach air"
|
||||
list_account:
|
||||
attributes:
|
||||
account_id:
|
||||
taken: "– tha seo air an liosta mu thràth"
|
||||
must_be_following: "– feumaidh e a bhith ’na chunntas ga leantainn"
|
||||
status:
|
||||
attributes:
|
||||
reblog:
|
||||
taken: "– tha seo aig a’ phost mu thràth"
|
||||
terms_of_service:
|
||||
attributes:
|
||||
effective_date:
|
||||
too_soon: "– tha seo ro aithghearr, feumaidh e a bhith nas anmoiche na %{date}"
|
||||
user:
|
||||
attributes:
|
||||
date_of_birth:
|
||||
below_limit: "– tha seo fo chrìoch na h-aoise"
|
||||
email:
|
||||
blocked: "– tha seo a’ chleachdadh solaraiche puist-d nach eil ceadaichte"
|
||||
unreachable: "– tha coltas nach eil seo ann"
|
||||
|
|
|
@ -319,6 +319,7 @@ eo:
|
|||
create: Krei anoncon
|
||||
title: Nova anonco
|
||||
preview:
|
||||
disclaimer: Pro uzantoj ne povas elekti ne ricevi ilin, retpoŝtaj sciigoj devus esti uzata nur por gravaj anoncoj kiel memaj breĉoj de datumo aŭ sciigoj pri la fermado de la servilo.
|
||||
explanation_html: 'La retpoŝto estos sendita al <strong>%{display_count} uzantoj</strong>. La jena teksto estos inkluzivita en la retmesaĝon:'
|
||||
title: Antaŭrigardu sciigan anoncon
|
||||
publish: Publikigi
|
||||
|
@ -482,13 +483,33 @@ eo:
|
|||
fasp:
|
||||
debug:
|
||||
callbacks:
|
||||
created_at: Kreita je
|
||||
delete: Forigi
|
||||
ip: IP-adreso
|
||||
request_body: Enhavo de la peto
|
||||
title: Revokoj de ĝustigado
|
||||
providers:
|
||||
active: Aktivaj
|
||||
base_url: Funda URL
|
||||
callback: Revoko
|
||||
delete: Forigi
|
||||
edit: Donanto de ŝanĝo
|
||||
finish_registration: Fini registradon
|
||||
name: Nomo
|
||||
providers: Donantoj
|
||||
public_key_fingerprint: Publikoŝloŝila fingrospuro
|
||||
registration_requested: Registrado postulita
|
||||
registrations:
|
||||
confirm: Konfirmi
|
||||
description: Vi ricevis registradon de FASP. Malakcepti ĝin se vi ne komencis ĉi tiun. Se vi ja, zorge kompari nomon kaj ŝloŝilafingrospuron antaŭ ol konfirmas la registradon.
|
||||
reject: Malakcepti
|
||||
title: Konfirmi registradon de FASP
|
||||
save: Konservi
|
||||
select_capabilities: Elekti mandatojn
|
||||
sign_in: Ensaluti
|
||||
status: Stato
|
||||
title: Fediversaj helpaj servicaj donantoj
|
||||
title: FASP
|
||||
follow_recommendations:
|
||||
description_html: "<strong>Sekvorekomendoj helpi novajn uzantojn rapide trovi interesa enhavo</strong>. Ili rekalkulitas ĉiutage lau interagoj kaj sekvantokvantoj."
|
||||
language: Por la lingvo
|
||||
|
@ -882,6 +903,8 @@ eo:
|
|||
system_checks:
|
||||
database_schema_check:
|
||||
message_html: Estas pritraktataj datumbazaj migradoj. Bonvolu ekzekuti ilin por certigi, ke la apliko kondutas kiel atendite
|
||||
elasticsearch_analysis_index_mismatch:
|
||||
message_html: Agordoj de la indeksa analizilo estas malmodernaj. Bonvolu plenumi <code>tootctl search deploy --only-mapping --only=%{value}</code>
|
||||
elasticsearch_health_red:
|
||||
message_html: Elasticsearch peniko estas malsana (ruĝa statuso), trajtoj de serĉo malhaveblas
|
||||
elasticsearch_health_yellow:
|
||||
|
|
|
@ -220,6 +220,7 @@ gd:
|
|||
enable_user: Cuir an cleachdaiche an comas
|
||||
memorialize_account: Dèan cuimhneachan dhen chunntas
|
||||
promote_user: Àrdaich an cleachdaiche
|
||||
publish_terms_of_service: Foillsich teirmichean na seirbheise
|
||||
reject_appeal: Diùlt an t-ath-thagradh
|
||||
reject_user: Diùlt an cleachdaiche
|
||||
remove_avatar_user: Thoir air falbh an t-avatar
|
||||
|
@ -284,6 +285,7 @@ gd:
|
|||
enable_user_html: Chuir %{name} an clàradh a-steach an comas dhan chleachdaiche %{target}
|
||||
memorialize_account_html: Rinn %{name} duilleag cuimhneachain dhen chunntas aig %{target}
|
||||
promote_user_html: Dh’àrdaich %{name} an cleachdaiche %{target}
|
||||
publish_terms_of_service_html: Dh’fhoillsich %{name} ùrachadh air teirmichean na seirbheise
|
||||
reject_appeal_html: Dhiùlt %{name} an t-ath-thagradh air co-dhùnadh na maorsainneachd o %{target}
|
||||
reject_user_html: Dhiùlt %{name} an clàradh o %{target}
|
||||
remove_avatar_user_html: Thug %{name} avatar aig %{target} air falbh
|
||||
|
@ -313,6 +315,7 @@ gd:
|
|||
title: Sgrùd an loga
|
||||
unavailable_instance: "(chan eil ainm na h-àrainn ri fhaighinn)"
|
||||
announcements:
|
||||
back: Air ais gu na brathan
|
||||
destroyed_msg: Chaidh am brath-fios a sguabadh às!
|
||||
edit:
|
||||
title: Deasaich am brath-fios
|
||||
|
@ -321,6 +324,10 @@ gd:
|
|||
new:
|
||||
create: Cruthaich brath-fios
|
||||
title: Brath-fios ùr
|
||||
preview:
|
||||
disclaimer: Air sgàth ’s nach urrainn dhan luchd-cleachdaidh an diùltadh, bu chòir dhut na brathan air a’ phost-d a chuingeachadh air brathan-fios cudromach mar briseadh a-steach air dàta pearsanta no brath-fios mu dhùnadh an fhrithealaiche.
|
||||
explanation_html: 'Thèid am post-d seo a chur gu <strong>%{display_count} luchd-cleachdaidh</strong>. Thèid an teacsa seo a ghabhail a-staigh sa phost-d:'
|
||||
title: Ro-shealladh air a’ bhrath-fhios
|
||||
publish: Foillsich
|
||||
published_msg: Chaidh am brath-fios fhoillseachadh!
|
||||
scheduled_for: Chaidh a chur air an sgeideal %{time}
|
||||
|
@ -489,6 +496,36 @@ gd:
|
|||
new:
|
||||
title: Ion-phortaich bacaidhean àrainne
|
||||
no_file: Cha deach faidhle a thaghadh
|
||||
fasp:
|
||||
debug:
|
||||
callbacks:
|
||||
created_at: Air a chruthachadh
|
||||
delete: Sguab às
|
||||
ip: Seòladh IP
|
||||
request_body: Bodhaig an iarrtais
|
||||
title: Gairmean air ais dì-bhugachaidh
|
||||
providers:
|
||||
active: Gnìomhach
|
||||
base_url: URL bunaiteach
|
||||
callback: Gairm air ais
|
||||
delete: Sguab às
|
||||
edit: Deasaich an solaraiche
|
||||
finish_registration: Crìochnaich an clàradh
|
||||
name: Ainm
|
||||
providers: Solaraichean
|
||||
public_key_fingerprint: Lorg-meòir na h-iuchrach poblaiche
|
||||
registration_requested: Chaidh clàradh iarraidh
|
||||
registrations:
|
||||
confirm: Dearbh
|
||||
description: Fhuair thu clàradh o FASP. Diùlt e mur an do chuir thu fhèin seo a’ dol. Mas e tusa a bh’ ann, dèan coimeas cùramach air ainm agus lorg-meòir na h-iuchraiche mus dearbh thu an clàradh.
|
||||
reject: Diùlt
|
||||
title: Dearbh an clàradh FASP
|
||||
save: Sàbhail
|
||||
select_capabilities: Tagh comasan
|
||||
sign_in: Clàraich a-steach
|
||||
status: Staid
|
||||
title: Fediverse Auxiliary Service Providers
|
||||
title: FASP
|
||||
follow_recommendations:
|
||||
description_html: "<strong>Cuidichidh molaidhean leantainn an luchd-cleachdaidh ùr ach an lorg iad susbaint inntinneach gu luath</strong>. Mur an do ghabh cleachdaiche conaltradh gu leòr le càch airson molaidhean leantainn gnàthaichte fhaighinn, mholamaid na cunntasan seo ’nan àite. Thèid an àireamhachadh às ùr gach latha, stèidhichte air na cunntasan air an robh an conaltradh as trice ’s an luchd-leantainn ionadail as motha sa chànan."
|
||||
language: Dhan chànan
|
||||
|
@ -894,6 +931,8 @@ gd:
|
|||
system_checks:
|
||||
database_schema_check:
|
||||
message_html: Tha imrichean stòir-dhàta ri dhèiligeadh ann. Ruith iad a dhèanamh cinnteach gum bi giùlan na h-aplacaid mar a bhiodhte ’n dùil
|
||||
elasticsearch_analysis_index_mismatch:
|
||||
message_html: Tha roghainnean anailis an inneacs Elasticsearch ro shean. Ruith <code>tootctl search deploy --only-mapping --only=%{value}</code>
|
||||
elasticsearch_health_red:
|
||||
message_html: Tha droch-shlàinte air bagaid Elasticsearch (staid dhearg), chan eil gleusan an luirg ri fhaighinn
|
||||
elasticsearch_health_yellow:
|
||||
|
@ -953,6 +992,38 @@ gd:
|
|||
search: Lorg
|
||||
title: Tagaichean hais
|
||||
updated_msg: Chaidh roghainnean an taga hais ùrachadh
|
||||
terms_of_service:
|
||||
back: Air ais gu teirmichean na seirbheise
|
||||
changelog: Na chaidh atharrachadh
|
||||
create: Cleachd feadhainn agad fhèin
|
||||
current: Làithreach
|
||||
draft: Dreachd
|
||||
generate: Cleachd teamplaid
|
||||
generates:
|
||||
action: Gin
|
||||
chance_to_review_html: "<strong>Cha dèid na teirmichean na seirbheise air an gintinn fhoillseachadh gu fèin-obrachail.</strong> Bidh teans agad gus lèirmheas a dhèanamh air an toradh. Lean am fiosrachadh riatanach airson leantainn air adhart."
|
||||
explanation_html: Tha an teamplaid airson teirmichean na seirbheise ’ga sholar a chùm fiosrachaidh a-mhàin agus cha bu chòir a mheas mar chomhairle laghail air cuspair sam bith. Gabh comhairle o neach-lagha agad fhèin air an t-suidheachadh agad ’s air ceistean sam bith agad mun lagh.
|
||||
title: Suidheachadh teirmichean na seirbheise
|
||||
going_live_on_html: Beò, èifeachdach on %{date}
|
||||
history: Eachdraidh
|
||||
live: Beò
|
||||
no_history: Cha deach atharrachadh sam bith air teirmichean na seirbheise a chlàradh fhathast.
|
||||
no_terms_of_service_html: Cha do rèitich thu teirmichean na seirbheise aig an àm seo. Tha teirmichean seirbheise ag amas nithean a dhèanamh soilleir agus do dhìon o uallaichean ann an connspaidean leis an luchd-cleachdaidh agad a dh’èireas ma dh’fhaoidte.
|
||||
notified_on_html: Fhuair an luchd-cleachdaidh brath %{date}
|
||||
notify_users: Cuir brath dhan luchd-chleachdaidh
|
||||
preview:
|
||||
explanation_html: 'Thèid am post-d seo a chur gu <strong>%{display_count} luchd-cleachdaidh</strong> a chlàraich ro %{date}. Thèid an teacsa seo a ghabhail a-staigh sa phost-d:'
|
||||
send_preview: Cuir ro-shealladh gu %{email}
|
||||
send_to_all:
|
||||
few: Cuir %{display_count} puist-d
|
||||
one: Cuir %{display_count} phost-d
|
||||
other: Cuir %{display_count} post-d
|
||||
two: Cuir %{display_count} phost-d
|
||||
title: Ro-shealladh air brath-fios mu theirmichean na seirbheise
|
||||
publish: Foillsich
|
||||
published_on_html: Air fhoillseachadh %{date}
|
||||
save_draft: Sàbhail dreachd
|
||||
title: Teirmichean na seirbheise
|
||||
title: Rianachd
|
||||
trends:
|
||||
allow: Ceadaich
|
||||
|
@ -1192,6 +1263,7 @@ gd:
|
|||
set_new_password: Suidhich facal-faire ùr
|
||||
setup:
|
||||
email_below_hint_html: Thoir sùil air pasgan an spama agad no iarr fear eile. ’S urrainn dhut an seòladh puist-d agad a chur ceart ma tha e ceàrr.
|
||||
email_settings_hint_html: Briog air a’ cheangal a chuir sinn gu %{email} airson tòiseachadh air Mastodon a chleachdadh. Fuirichidh sinn ort an-seo.
|
||||
link_not_received: Nach d’fhuair thu ceangal?
|
||||
new_confirmation_instructions_sent: Gheibh thu post-d ùr le ceangal dearbhaidh an ceann corra mionaid!
|
||||
title: Thoir sùil air a’ bhogsa a-steach agad
|
||||
|
@ -1200,6 +1272,7 @@ gd:
|
|||
title: Clàraich a-steach gu %{domain}
|
||||
sign_up:
|
||||
manual_review: Nì na maoir againn lèirmheas a làimh air clàraidhean air %{domain}. Airson ar cuideachadh le làimhseachadh do chlàraidh, sgrìobh beagan mu do dhèidhinn agus carson a tha thu ag iarraidh cunntas air %{domain}.
|
||||
preamble: Le cunntas air an fhrithealaiche Mastodon seo, ’s urrainn dhut neach sam bith a leantainn air a’ cho-shaoghal, ge b’ e càit a bheil an cunntas aca-san ’ga òstadh.
|
||||
title: Suidhicheamaid %{domain} dhut.
|
||||
status:
|
||||
account_status: Staid a’ chunntais
|
||||
|
@ -1211,6 +1284,8 @@ gd:
|
|||
view_strikes: Seall na rabhaidhean a fhuair an cunntas agad roimhe
|
||||
too_fast: Chaidh am foirm a chur a-null ro luath, feuch ris a-rithist.
|
||||
use_security_key: Cleachd iuchair tèarainteachd
|
||||
user_agreement_html: Leugh mi agus tha mi ag aontachadh ri <a href="%{terms_of_service_path}" target="_blank">teirmichean na seirbheise</a> agus am <a href="%{privacy_policy_path}" target="_blank">poileasaidh prìobhaideachd</a>
|
||||
user_privacy_agreement_html: Leugh mi is tha mi ag aontachadh ris a’ <a href="%{privacy_policy_path}" target="_blank">phoileasaidh prìobhaideachd</a>
|
||||
author_attribution:
|
||||
example_title: Ball-sampaill teacsa
|
||||
hint_html: An sgrìobh thu naidheachdan no bloga taobh a-muigh Mhastodon? Stiùirich mar a thèid iomradh a thoirt ort nuair a bhios na h-artaigilean agad ’gan co-roinneadh air Mastodon.
|
||||
|
@ -1749,6 +1824,7 @@ gd:
|
|||
scheduled_statuses:
|
||||
over_daily_limit: Chaidh thu thar na crìoch de %{limit} post(aichean) sgeidealaichte an-diugh
|
||||
over_total_limit: Chaidh thu thar na crìoch de %{limit} post(aichean) sgeidealaichte
|
||||
too_soon: feumaidh an ceann-latha a bhith san àm ri teachd
|
||||
self_destruct:
|
||||
lead_html: Gu mì-fhortanach, thèid <strong>%{domain}</strong> a dhùnadh gu buan. Ma tha cunntas agad ann, chan urrainn dhut cumail a’ gol ’ga chleachdadh ach ’s urrainn dhut lethbhreac-glèidhidh dhen dàta agad iarraidh fhathast.
|
||||
title: Tha am frithealaiche seo gu bhith dùnadh
|
||||
|
@ -1919,6 +1995,8 @@ gd:
|
|||
too_late: Tha e ro anmoch airson an rabhadh seo ath-thagradh
|
||||
tags:
|
||||
does_not_match_previous_name: "– chan eil seo a-rèir an ainm roimhe"
|
||||
terms_of_service:
|
||||
title: Teirmichean na seirbheise
|
||||
themes:
|
||||
contrast: Mastodon (iomsgaradh àrd)
|
||||
default: Mastodon (dorcha)
|
||||
|
@ -1950,6 +2028,10 @@ gd:
|
|||
recovery_instructions_html: Ma chailleas tu an t-inntrigeadh dhan fhòn agad, ’s urrainn dhut fear dhe na còdan aisig gu h-ìosal a chleachdadh airson faighinn a-steach dhan chunntas agad a-rithist. <strong>Cùm na còdan aisig sàbhailte</strong>. Mar eisimpleir, ’s urrainn dhut an clò-bhualadh ’s a chumail far a bheil thu a’ cumail na sgrìobhainnean cudromach eile agad.
|
||||
webauthn: Iuchraichean tèarainteachd
|
||||
user_mailer:
|
||||
announcement_published:
|
||||
description: 'Tha na rianairean aig %{domain} a’ dèanamh brath-fios:'
|
||||
subject: Brath-fios na seirbheise
|
||||
title: Brath-fios na seirbheise %{domain}
|
||||
appeal_approved:
|
||||
action: Roghainnean a’ chunntais
|
||||
explanation: Chaidh aontachadh ris an ath-thagradh agad air an rabhadh o %{strike_date} a chuir thu a-null %{appeal_date}. Tha an cunntas agad ann an deagh-chor a-rithist.
|
||||
|
@ -1979,6 +2061,15 @@ gd:
|
|||
further_actions_html: Mur e thu fhèin a bh’ ann, mholamaid gun %{action} sa bhad agus gun cuir thu an dearbhadh dà-cheumnach an comas airson an cunntas agad a chumail tèarainte.
|
||||
subject: Chaidh an cunntas agad inntrigeadh o sheòladh IP ùr
|
||||
title: Clàradh a-steach ùr
|
||||
terms_of_service_changed:
|
||||
agreement: Ma chumas tu a’ dol a chleachdadh %{domain}, aontaichidh tu ris na teirmichean seo. Mur aontaich thu ris na teirmichean ùra, ’s urrainn dhut crìoch a chur air d’ aonta le %{domain} uair sam bith le sguabadh às a’ chunntais agad.
|
||||
changelog: 'Ann am priobadh na sùla, seo na tha an t-ùrachadh seo a’ ciallachadh dhut:'
|
||||
description: 'Tha thu a’ faighinn a’ phuist-d seo air sgàth ’s gu bheil sinn ag atharrachadh teirmichean na seirbheise againn airson %{domain}. Bidh na h-ùrachaidhean seo èifeachdach an %{date}. Mholamaid gun dèan thu lèirmheas air na teirmichean ùra slàna an-seo:'
|
||||
description_html: Tha thu a’ faighinn a’ phuist-d seo air sgàth ’s gu bheil sinn ag atharrachadh teirmichean na seirbheise againn airson %{domain}. Bidh na h-ùrachaidhean seo èifeachdach an <strong>%{date}</strong>. Mholamaid gun dèan thu lèirmheas air <a href="%{path}" target="_blank">na teirmichean ùra slàna an-seo</a>.
|
||||
sign_off: Sgioba %{domain}
|
||||
subject: Ùrachaidhean air teirmichean na seirbheise againn
|
||||
subtitle: Tha teirmichean na seirbheise aig %{domain} gan atharrachadh
|
||||
title: Naidheachd cudromach
|
||||
warning:
|
||||
appeal: Cuir ath-thagradh a-null
|
||||
appeal_description: Ma tha thu dhen bheachd gur e mearachd a th’ ann, ’s urrainn dhut ath-thagradh a chur a-null gun sgioba aig %{instance}.
|
||||
|
|
|
@ -903,6 +903,8 @@ it:
|
|||
system_checks:
|
||||
database_schema_check:
|
||||
message_html: Ci sono migrazioni del database in attesa. Sei pregato di eseguirle per assicurarti che l'applicazione si comporti come previsto
|
||||
elasticsearch_analysis_index_mismatch:
|
||||
message_html: Le impostazioni dell'analizzatore di indice Elasticsearch sono obsolete. Si prega di eseguire <code>tootctl search deploy --only-mapping --only=%{value}</code>
|
||||
elasticsearch_health_red:
|
||||
message_html: Il cluster Elasticsearch non è integro (stato rosso), le funzionalità di ricerca non sono disponibili
|
||||
elasticsearch_health_yellow:
|
||||
|
|
|
@ -316,6 +316,7 @@ lv:
|
|||
create: Izveidot paziņojumu
|
||||
title: Jauns paziņojums
|
||||
preview:
|
||||
disclaimer: Tā kā lietotāji nevar atteikties no e-pasta paziņojumiem, tos vajadzētu izmantot tikai svarīgiem paziņojumiem, piemēram, personīgo datu noplūdi vai servera aizvēršanas paziņojumiem.
|
||||
explanation_html: 'E-pasta ziņojums tiks nosūtīts <strong>%{display_count} lietotājiem</strong>. Šis teksts tiks iekļauts e-pasta ziņojumā:'
|
||||
title: Priekšskatīt paziņojumu
|
||||
publish: Publicēt
|
||||
|
|
|
@ -56,7 +56,7 @@ eo:
|
|||
scopes: Kiujn API-ojn la aplikaĵo permesiĝos atingi. Se vi elektas supran amplekson, vi ne bezonas elekti la individuajn.
|
||||
setting_aggregate_reblogs: Ne montri novajn plusendojn de mesaĝoj lastatempe plusenditaj (nur efikas al nove ricevitaj plusendoj)
|
||||
setting_always_send_emails: Normale, la sciigoj per retpoŝto ne estos senditaj kiam vi uzas Mastodon aktive
|
||||
setting_default_sensitive: Tiklaj vidaŭdaĵoj estas implicite kaŝitaj kaj povas esti montritaj per alklako
|
||||
setting_default_sensitive: La tiklaj vidaŭdaĵoj estas implicite kaŝitaj kaj povas esti malkaŝitaj per alklako
|
||||
setting_display_media_default: Kaŝi plurmediojn markitajn kiel tiklaj
|
||||
setting_display_media_hide_all: Ĉiam kaŝi la vidaŭdaĵojn
|
||||
setting_display_media_show_all: Ĉiam montri la vidaŭdaĵojn
|
||||
|
@ -89,6 +89,7 @@ eo:
|
|||
favicon: WEBP, PNG, GIF aŭ JPG. Anstataŭigas la defaŭltan Mastodon-favikono kun propra bildsimbolo.
|
||||
mascot: Anstatauigi la ilustraĵon en la altnivela retinterfaco.
|
||||
media_cache_retention_period: Amaskomunikilaj dosieroj de afiŝoj faritaj de foraj uzantoj estas konservitaj en kaŝmemoro en via servilo. Kiam agordita al pozitiva valoro, amaskomunikilaro estos forigita post la specifita nombro da tagoj. Se la amaskomunikilaro-datumoj estas petitaj post kiam ĝi estas forigita, ĝi estos re-elŝutita, se la fonta enhavo ankoraŭ disponeblas. Pro limigoj pri kiom ofte ligaj antaŭrigardaj kartoj enketas retejojn de ekstera liveranto, oni rekomendas agordi ĉi tiun valoron al almenaŭ 14 tagoj, aŭ ligaj antaŭrigardaj kartoj ne estos ĝisdatigitaj laŭpostule antaŭ tiu tempo.
|
||||
min_age: Uzantoj demandos konfirmi siajn naskiĝtagon dum registrado
|
||||
peers_api_enabled: Listo de domajnaj nomoj kiujn ĉi tiu servilo renkontis en la fediverso. Neniuj datumoj estas inkluditaj ĉi tie pri ĉu vi federacias kun donita servilo, nur ke via servilo scias pri ĝi. Ĉi tio estas uzata de servoj kiuj kolektas statistikojn pri federacio en ĝenerala signifo.
|
||||
profile_directory: La profilujo listigas ĉiujn uzantojn kiu volonte malkovrebli.
|
||||
require_invite_text: Kiam registroj bezonas permanan aprobon, igi la "Kial vi volas aliĝi?" tekstoenigon deviga anstau nedeviga
|
||||
|
@ -137,10 +138,14 @@ eo:
|
|||
text: Povas esti strukturita per sintakso Markdown-a.
|
||||
terms_of_service_generator:
|
||||
admin_email: Legalaj sciigoj povas esti kontraŭsciigoj, postulaĵoj de tribunalo, postulaĵoj pri forigo, kaj postulaĵoj de la policaro.
|
||||
arbitration_address: Povas esti la sama kiel fizika adreso supre, aŭ "N/A" se oni uzas retpoŝton.
|
||||
arbitration_website: Povas esti retformularo, aŭ "N/A" se oni uzas retpoŝton.
|
||||
choice_of_law: Urbo, regiono, teritorio aŭ ŝtato, kies internaj substantivaj leĝoj regos iujn kaj ĉiujn asertojn.
|
||||
dmca_address: Por tenantoj en Usono, uzu la adreson registritan en la DMCA Designated Agenŭ Directory. Registrolibro de poŝtskatoloj haveblas per direkta postulo, uzu la DMCA Designated Agent Post Office Box Waiver Request por retpoŝti la Ofico de Kopirajto kaj priskribu, ke vi estas hejm-trovigita administranto por enhavo kaj devas uzi Poŝtskatolon por forigi vian hejmadreson de publika vido.
|
||||
dmca_email: Povas esti la sama retpoŝtadreso uzita en "Retpoŝtadreso por legalaj sciigoj" supre.
|
||||
domain: Unika identigilo de la retaj servicoj, ke vi provizas.
|
||||
jurisdiction: Enlistigu la landon, kie loĝas kiu pagas la fakturojn. Se ĝi estas kompanio aŭ alia ento, listigu la landon, kie ĝi estas enkorpigita, kaj la urbon, regionon, teritorion aŭ ŝtaton laŭeble.
|
||||
min_age: Ne devus esti malsupre la minimuma aĝo postulita de la leĝoj de via jurisdikcio.
|
||||
user:
|
||||
chosen_languages: Kun tio markita nur mesaĝoj en elektitaj lingvoj aperos en publikaj tempolinioj
|
||||
date_of_birth: Ni devas certigi, ke vi estas almenaŭ %{age} por uzi Mastodon. Ni ne konservos ĉi tion.
|
||||
|
|
|
@ -3,6 +3,7 @@ gd:
|
|||
simple_form:
|
||||
hints:
|
||||
account:
|
||||
attribution_domains: Loidhne fa leth do gach fear. Dìonaidh seo o iomraidhean meallta.
|
||||
discoverable: Dh’fhaoidte gun dèid na postaichean poblach ’s a’ phròifil agad a bhrosnachadh no a mholadh ann an caochladh roinnean de Mhastodon agus gun dèid a’ phròifil agad a mholadh do chàch.
|
||||
display_name: D’ ainm slàn no spòrsail.
|
||||
fields: An duilleag-dhachaigh agad, roimhearan, aois, rud sam bith a thogras tu.
|
||||
|
@ -59,6 +60,7 @@ gd:
|
|||
setting_display_media_default: Falaich meadhanan ris a bheil comharra gu bheil iad frionasach
|
||||
setting_display_media_hide_all: Falaich na meadhanan an-còmhnaidh
|
||||
setting_display_media_show_all: Seall na meadhanan an-còmhnaidh
|
||||
setting_system_scrollbars_ui: Chan obraich seo ach air brabhsairean desktop stèidhichte air Safari ’s Chrome
|
||||
setting_use_blurhash: Tha caiseadan stèidhichte air dathan nan nithean lèirsinneach a chaidh fhalach ach chan fhaicear am mion-fhiosrachadh
|
||||
setting_use_pending_items: Falaich ùrachaidhean na loidhne-ama air cùlaibh briogaidh seach a bhith a’ sgroladh nam postaichean gu fèin-obrachail
|
||||
username: Faodaidh tu litrichean, àireamhan is fo-loidhnichean a chleachdadh
|
||||
|
@ -73,6 +75,7 @@ gd:
|
|||
filters:
|
||||
action: Tagh na thachras nuair a bhios post a’ maidseadh na criathraige
|
||||
actions:
|
||||
blur: Falaich na meadhanan air cùlaibh rabhaidh gun a bhith a’ falach an teacsa fhèin
|
||||
hide: Falaich an t-susbaint chriathraichte uile gu lèir mar nach robh i ann idir
|
||||
warn: Falaich an t-susbaint chriathraichte air cùlaibh rabhaidh a dh’innseas tiotal na criathraige
|
||||
form_admin_settings:
|
||||
|
@ -86,6 +89,7 @@ gd:
|
|||
favicon: WEBP, PNG, GIF no JPG. Tar-àithnidh seo favicon bunaiteach Mhastodon le ìomhaigheag ghnàthaichte.
|
||||
mascot: Tar-àithnidh seo an sgead-dhealbh san eadar-aghaidh-lìn adhartach.
|
||||
media_cache_retention_period: Thèid faidhlichean meadhain o phostaichean a chruthaich cleachdaichean cèine a chur ri tasgadan an fhrithealaiche agad. Nuair a shuidhicheas tu seo air luach dearbh, thèid na meadhanan a sguabadh às às dèidh na h-àireimh de làithean a shònraich thu. Ma tha dàta meadhain ga iarraidh às dèidh a sguabaidh às, thèid a luchdadh a-nuas a-rithist ma tha susbaint an tùis ri fhaighinn fhathast. Ri linn cuingeachaidhean air mar a cheasnaicheas cairtean ro-sheallaidh làraichean threas-phàrtaidhean, mholamaid gun suidhich thu an luach seo air 14 làithean ar a char as giorra no cha dèid an ùrachadh nuair a thèid an iarraidh ron àm sin.
|
||||
min_age: Thèid iarraidh air an luchd-cleachdaidh gun dearbh iad an là-breith rè a’ chlàraidh
|
||||
peers_api_enabled: Seo liosta de dh’ainmean àrainne ris an do thachair am frithealaiche seo sa cho-shaoghal. Chan eil dàta sam bith ’ga ghabhail a-staigh an-seo mu a bheil thu co-naisgte ri frithealaiche sònraichte gus nach eil ach dìreach gu bheil am frithealaiche agad eòlach air. Thèid seo a chleachdadh le seirbheisean a chruinnicheas stadastaireachd air a’ cho-nasgadh san fharsaingeachd.
|
||||
profile_directory: Seallaidh eòlaire nam pròifil liosta dhen luchd-cleachdaidh a dh’aontaich gun gabh an rùrachadh.
|
||||
require_invite_text: Nuair a bhios aontachadh a làimh riatanach dhan chlàradh, dèan an raon teacsa “Carson a bu mhiann leat ballrachd fhaighinn?” riatanach seach roghainneil
|
||||
|
@ -128,8 +132,23 @@ gd:
|
|||
show_application: Gidheadh, chì thu dè an aplacaid a dh’fhoillsich am post agad an-còmhnaidh.
|
||||
tag:
|
||||
name: Mar eisimpleir, ’s urrainn dhut measgachadh de litrichean mòra ’s beaga a chleachdadh ach an gabh a leughadh nas fhasa
|
||||
terms_of_service:
|
||||
changelog: "’S urrainn dhut structar a chur air le co-chàradh Markdown."
|
||||
effective_date: Faodaidh ceann-ama reusanta a bhith rud sam bith eadar 10 is 30 latha on cheann-là a chuireas tu brath-fios dhan luchd-cleachdaidh agad.
|
||||
text: "’S urrainn dhut structar a chur air le co-chàradh Markdown."
|
||||
terms_of_service_generator:
|
||||
admin_email: Gabhaidh sanasan laghail a-staigh brathan-àichidh, òrduighean cùirte, iarrtasan toirt air falbh agus iarrtasan co-èigneachadh an lagha.
|
||||
arbitration_address: Faodaidh e a bhith co-ionnan ris an t-seòladh fhiosaigeach gu h-àrd no “N/A” ma tha thu a’ cleachdadh post-d.
|
||||
arbitration_website: Faodaidh e a bhith na fhoirm-lìn no “N/A” ma tha thu a’ cleachdadh post-d.
|
||||
choice_of_law: Am baile, an sgìre, an ranntair no an stàit a riaghlas na laghan brìoghmhor sònraichte aige tagraidhean sam bith.
|
||||
dmca_address: Airson gnìomharaichean sna SA, cleachd an seòladh a tha clàraichte san DMCA Designated Agent Directory. Faodaidh tu cleachdadh seòladh P.O. Box iarraidh, cleachd DMCA Designated Agent Post Office Box Waiver Request airson post-d a chur gun Copyright Office agus mìnich gur e “home-based content moderator” a th’ annad agus eagal ort ro dhìoghaltas no dìoladh-fiach air do ghnìomhan agus gum feum thu P.O. Box a chleachdadh airson seòladh do dhachaigh fhalach o shealladh poblach.
|
||||
dmca_email: Faodaidh tu an t-aon phost-d a chleachdadh ’s a chleachd thu airson “Seòladh puist-d airson sanasan laghail” gu h-àrd.
|
||||
domain: Aithneachadh àraidh dhen t-seirbheis air loidhne a tha thu a’ solar.
|
||||
jurisdiction: Innis an dùthaich far a bheil an neach a phàigheas na bilichean a’ fuireach. Mas e companaidh no eintiteas eile a th’ ann, innis an dùthaich far a bheil e corpaichte agus am baile, sgìre, ranntair no stàit mar a tha iomchaidh.
|
||||
min_age: Cha bu chòir seo a bhith fon aois as lugha a dh’iarras laghain an t-uachdranais laghail agad.
|
||||
user:
|
||||
chosen_languages: Nuair a bhios cromag ris, cha nochd ach postaichean sna cànain a thagh thu air loidhnichean-ama poblach
|
||||
date_of_birth: Feumaidh sinn dèanamh cinnteach gu bheil thu %{age} bliadhna(ichean) a dh’aois air a char as lugha mus cleachd thu Mastodon. Cha chlàraich sinn seo.
|
||||
role: Stiùiridh an dreuchd dè na ceadan a bhios aig cleachdaiche.
|
||||
user_role:
|
||||
color: An datha a bhios air an dreuchd air feadh na h-eadar-aghaidh, ’na RGB san fhòrmat sia-dheicheach
|
||||
|
@ -143,6 +162,7 @@ gd:
|
|||
url: Far an dèid na tachartasan a chur
|
||||
labels:
|
||||
account:
|
||||
attribution_domains: Na làraichean-lìn a dh’fhaodas iomradh a thoirt ort
|
||||
discoverable: Brosnaich a’ phròifil is postaichean agad sna h-algairimean rùrachaidh
|
||||
fields:
|
||||
name: Leubail
|
||||
|
@ -219,8 +239,10 @@ gd:
|
|||
setting_display_media_show_all: Seall na h-uile
|
||||
setting_expand_spoilers: Leudaich postaichean ris a bheil rabhadh susbainte an-còmhnaidh
|
||||
setting_hide_network: Falaich an graf sòisealta agad
|
||||
setting_missing_alt_text_modal: Faic còmhradh dearbhaidh mus postaich thu meadhan às aonais roghainn teacsa
|
||||
setting_reduce_motion: Ìslich an gluasad sna beòthachaidhean
|
||||
setting_system_font_ui: Cleachd cruth-clò bunaiteach an t-siostaim
|
||||
setting_system_scrollbars_ui: Seall bàr-sgrolaidh bunaiteach an t-siostaim
|
||||
setting_theme: Ùrlar na làraich
|
||||
setting_trends: Seall na treandaichean an-diugh
|
||||
setting_unfollow_modal: Seall còmhradh dearbhaidh mus sguir thu de chuideigin a leantainn
|
||||
|
@ -239,6 +261,7 @@ gd:
|
|||
name: Taga hais
|
||||
filters:
|
||||
actions:
|
||||
blur: Falaich na meadhanan le rabhadh
|
||||
hide: Falaich uile gu lèir
|
||||
warn: Falaich le rabhadh
|
||||
form_admin_settings:
|
||||
|
@ -252,6 +275,7 @@ gd:
|
|||
favicon: Favicon
|
||||
mascot: Suaichnean gnàthaichte (dìleabach)
|
||||
media_cache_retention_period: Ùine glèidhidh aig tasgadan nam meadhanan
|
||||
min_age: Riatanas aoise as lugha
|
||||
peers_api_enabled: Foillsich liosta nam frithealaichean a chaidh a rùrachadh san API
|
||||
profile_directory: Cuir eòlaire nam pròifil an comas
|
||||
registrations_mode: Cò dh’fhaodas clàradh
|
||||
|
@ -315,7 +339,24 @@ gd:
|
|||
name: Taga hais
|
||||
trendable: Faodaidh an taga hais seo nochdadh am measg nan treandaichean
|
||||
usable: Faodaidh postaichean an taga hais seo a chleachdadh gu h-ionadail
|
||||
terms_of_service:
|
||||
changelog: Dè tha air atharrachadh?
|
||||
effective_date: Ceann-là èifeachd
|
||||
text: Teirmichean na seirbheise
|
||||
terms_of_service_generator:
|
||||
admin_email: Seòladh puist-d airson sanasan laghail
|
||||
arbitration_address: Seòladh fiosaigeach airson sanasan eadar-bhreith
|
||||
arbitration_website: Làrach-lìn airson sanasan eadar-bhreith a chur a-null
|
||||
choice_of_law: Taghadh an lagha
|
||||
dmca_address: Seòladh fiosaigeach airson sanasan DMCA/còir-lethbhreac
|
||||
dmca_email: Seòladh puist-d airson sanasan DMCA/còir-lethbhreac
|
||||
domain: Àrainn
|
||||
jurisdiction: Uachdranas laghail
|
||||
min_age: An aois as lugha
|
||||
user:
|
||||
date_of_birth_1i: Latha
|
||||
date_of_birth_2i: Mìos
|
||||
date_of_birth_3i: Bliadhna
|
||||
role: Dreuchd
|
||||
time_zone: Roinn-tìde
|
||||
user_role:
|
||||
|
|
|
@ -339,6 +339,7 @@ lv:
|
|||
terms_of_service_generator:
|
||||
admin_email: E-pasta adrese juridiskiem paziņojumiem
|
||||
choice_of_law: Likuma izvēle
|
||||
dmca_email: E-pasta adrese DMCA/autortiesību pārstāvju sūdzību iesniegšanai
|
||||
domain: Domēna vārds
|
||||
min_age: Mazākais pieļaujamais vecums
|
||||
user:
|
||||
|
|
|
@ -1165,7 +1165,7 @@ vi:
|
|||
welcome_title: Chào mừng, %{name}!
|
||||
wrong_email_hint: Nếu địa chỉ email đó không chính xác, bạn có thể đổi lại trong cài đặt tài khoản.
|
||||
delete_account: Xóa tài khoản
|
||||
delete_account_html: Nếu bạn muốn xóa tài khoản của mình, hãy <a href="%{path}">yêu cầu tại đây</a>. Bạn sẽ được yêu cầu xác nhận.
|
||||
delete_account_html: Thực hiện <a href="%{path}">xóa tài khoản</a> của bạn.
|
||||
description:
|
||||
prefix_invited_by_user: "@%{name} mời bạn tham gia máy chủ Mastodon này!"
|
||||
prefix_sign_up: Tham gia Mastodon ngay hôm nay!
|
||||
|
@ -1826,7 +1826,7 @@ vi:
|
|||
unlisted_long: Không hiện trên bảng tin máy chủ
|
||||
statuses_cleanup:
|
||||
enabled: Tự động xóa những tút cũ
|
||||
enabled_hint: Tự động xóa các tút của bạn khi chúng tới thời điểm nhất định, trừ những trường hợp ngoại lệ bên dưới
|
||||
enabled_hint: Sau thời điểm nhất định, trừ những trường hợp ngoại lệ bên dưới
|
||||
exceptions: Ngoại lệ
|
||||
explanation: Số lượng tút sẽ tăng dần theo năm tháng. Bạn nên xóa những tút cũ khi tới một thời điểm nhất định.
|
||||
ignore_favs: Bỏ qua số lượt thích
|
||||
|
|
17
config/vite.json
Normal file
17
config/vite.json
Normal file
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"all": {
|
||||
"sourceCodeDir": "app/javascript",
|
||||
"additionalEntrypoints": ["~/{icons,images}/**/*", "~/styles/*.scss"],
|
||||
"watchAdditionalPaths": []
|
||||
},
|
||||
"development": {
|
||||
"autoBuild": true,
|
||||
"publicOutputDir": "vite-dev",
|
||||
"port": 3036
|
||||
},
|
||||
"test": {
|
||||
"autoBuild": true,
|
||||
"publicOutputDir": "vite-test",
|
||||
"port": 3037
|
||||
}
|
||||
}
|
|
@ -1,5 +1,7 @@
|
|||
// @ts-check
|
||||
|
||||
import path from 'node:path';
|
||||
|
||||
import js from '@eslint/js';
|
||||
import { globalIgnores } from 'eslint/config';
|
||||
import formatjs from 'eslint-plugin-formatjs';
|
||||
|
@ -204,7 +206,9 @@ export default tseslint.config([
|
|||
'import/ignore': ['node_modules', '\\.(css|scss|json)$'],
|
||||
|
||||
'import/resolver': {
|
||||
typescript: {},
|
||||
typescript: {
|
||||
project: path.resolve(import.meta.dirname, './tsconfig.json'),
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
|
@ -247,6 +251,7 @@ export default tseslint.config([
|
|||
'config/webpack/**',
|
||||
'app/javascript/mastodon/performance.js',
|
||||
'app/javascript/mastodon/test_setup.js',
|
||||
'app/javascript/mastodon/test_helpers.tsx',
|
||||
'app/javascript/**/__tests__/**',
|
||||
],
|
||||
},
|
||||
|
@ -387,9 +392,7 @@ export default tseslint.config([
|
|||
files: ['**/__tests__/*.js', '**/__tests__/*.jsx'],
|
||||
|
||||
languageOptions: {
|
||||
globals: {
|
||||
...globals.jest,
|
||||
},
|
||||
globals: globals.vitest,
|
||||
},
|
||||
},
|
||||
]);
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
/** @type {import('jest').Config} */
|
||||
const config = {
|
||||
testEnvironment: 'jsdom',
|
||||
testPathIgnorePatterns: [
|
||||
'<rootDir>/node_modules/',
|
||||
'<rootDir>/vendor/',
|
||||
'<rootDir>/config/',
|
||||
'<rootDir>/log/',
|
||||
'<rootDir>/public/',
|
||||
'<rootDir>/tmp/',
|
||||
],
|
||||
setupFilesAfterEnv: ['<rootDir>/app/javascript/mastodon/test_setup.js'],
|
||||
collectCoverageFrom: [
|
||||
'app/javascript/mastodon/**/*.{js,jsx,ts,tsx}',
|
||||
'!app/javascript/mastodon/features/emoji/emoji_compressed.js',
|
||||
'!app/javascript/mastodon/service_worker/entry.js',
|
||||
'!app/javascript/mastodon/test_setup.js',
|
||||
],
|
||||
// Those packages are ESM, so we need them to be processed by Babel
|
||||
transformIgnorePatterns: ['/node_modules/(?!(redent|strip-indent)/)'],
|
||||
coverageDirectory: '<rootDir>/coverage',
|
||||
moduleDirectories: ['node_modules', '<rootDir>/app/javascript'],
|
||||
moduleNameMapper: {
|
||||
'\\.svg\\?react$': '<rootDir>/app/javascript/__mocks__/svg.js',
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = config;
|
|
@ -79,7 +79,14 @@ module Mastodon::CLI
|
|||
|
||||
account = Account.new(username: username)
|
||||
password = SecureRandom.hex
|
||||
user = User.new(email: options[:email], password: password, agreement: true, role_id: role_id, confirmed_at: options[:confirmed] ? Time.now.utc : nil, bypass_invite_request_check: true)
|
||||
user = User.new(
|
||||
email: options[:email],
|
||||
password: password,
|
||||
agreement: true,
|
||||
role_id: role_id,
|
||||
confirmed_at: options[:confirmed] ? Time.now.utc : nil,
|
||||
bypass_registration_checks: true
|
||||
)
|
||||
|
||||
if options[:reattach]
|
||||
account = Account.find_local(username) || Account.new(username: username)
|
||||
|
|
|
@ -552,7 +552,7 @@ namespace :mastodon do
|
|||
password = SecureRandom.hex(16)
|
||||
|
||||
owner_role = UserRole.find_by(name: 'Owner')
|
||||
user = User.new(email: email, password: password, confirmed_at: Time.now.utc, account_attributes: { username: username }, bypass_invite_request_check: true, role: owner_role)
|
||||
user = User.new(email: email, password: password, confirmed_at: Time.now.utc, account_attributes: { username: username }, bypass_registration_checks: true, role: owner_role)
|
||||
user.save(validate: false)
|
||||
user.approve!
|
||||
|
||||
|
|
14
package.json
14
package.json
|
@ -22,14 +22,14 @@
|
|||
"format": "prettier --write --log-level warn .",
|
||||
"format:check": "prettier --check --ignore-unknown .",
|
||||
"i18n:extract": "formatjs extract 'app/javascript/**/*.{js,jsx,ts,tsx}' --ignore '**/*.d.ts' --out-file app/javascript/mastodon/locales/en.json --format config/formatjs-formatter.js",
|
||||
"jest": "cross-env NODE_ENV=test jest",
|
||||
"lint:js": "cd $INIT_CWD && eslint --cache --report-unused-disable-directives",
|
||||
"lint:css": "stylelint \"**/*.{css,scss}\"",
|
||||
"lint": "yarn lint:js && yarn lint:css",
|
||||
"postversion": "git push --tags",
|
||||
"postinstall": "test -d node_modules/husky && husky || echo \"husky is not installed\"",
|
||||
"start": "node ./streaming/index.js",
|
||||
"test": "yarn lint && yarn run typecheck && yarn jest",
|
||||
"test": "yarn lint && yarn run typecheck && yarn test:js run",
|
||||
"test:js": "vitest",
|
||||
"typecheck": "tsc --noEmit"
|
||||
},
|
||||
"repository": {
|
||||
|
@ -132,6 +132,7 @@
|
|||
"tiny-queue": "^0.2.1",
|
||||
"twitter-text": "3.1.0",
|
||||
"use-debounce": "^10.0.0",
|
||||
"vite": "^6.3.5",
|
||||
"webpack": "^4.47.0",
|
||||
"webpack-assets-manifest": "^4.0.6",
|
||||
"webpack-bundle-analyzer": "^4.8.0",
|
||||
|
@ -149,7 +150,6 @@
|
|||
"@eslint/js": "^9.23.0",
|
||||
"@formatjs/cli": "^6.1.1",
|
||||
"@testing-library/dom": "^10.2.0",
|
||||
"@testing-library/jest-dom": "^6.0.0",
|
||||
"@testing-library/react": "^16.0.0",
|
||||
"@types/babel__core": "^7.20.1",
|
||||
"@types/emoji-mart": "3.0.14",
|
||||
|
@ -158,7 +158,6 @@
|
|||
"@types/hoist-non-react-statics": "^3.3.1",
|
||||
"@types/http-link-header": "^1.0.3",
|
||||
"@types/intl": "^1.2.0",
|
||||
"@types/jest": "^29.5.2",
|
||||
"@types/js-yaml": "^4.0.5",
|
||||
"@types/lodash": "^4.14.195",
|
||||
"@types/object-assign": "^4.0.30",
|
||||
|
@ -179,7 +178,7 @@
|
|||
"@types/requestidlecallback": "^0.3.5",
|
||||
"@types/webpack": "^4.41.33",
|
||||
"@types/webpack-env": "^1.18.4",
|
||||
"babel-jest": "^29.5.0",
|
||||
"@vitejs/plugin-react": "^4.2.1",
|
||||
"eslint": "^9.23.0",
|
||||
"eslint-import-resolver-typescript": "^4.2.5",
|
||||
"eslint-plugin-formatjs": "^5.3.1",
|
||||
|
@ -191,8 +190,6 @@
|
|||
"eslint-plugin-react-hooks": "^5.2.0",
|
||||
"globals": "^16.0.0",
|
||||
"husky": "^9.0.11",
|
||||
"jest": "^29.5.0",
|
||||
"jest-environment-jsdom": "^29.5.0",
|
||||
"lint-staged": "^15.0.0",
|
||||
"prettier": "^3.3.3",
|
||||
"react-test-renderer": "^18.2.0",
|
||||
|
@ -201,6 +198,9 @@
|
|||
"stylelint-config-standard-scss": "^14.0.0",
|
||||
"typescript": "~5.7.3",
|
||||
"typescript-eslint": "^8.28.0",
|
||||
"vite-plugin-rails": "^0.5.0",
|
||||
"vite-plugin-svgr": "^4.2.0",
|
||||
"vitest": "^3.1.3",
|
||||
"webpack-dev-server": "^3.11.3"
|
||||
},
|
||||
"resolutions": {
|
||||
|
|
|
@ -70,6 +70,25 @@ RSpec.describe Mastodon::CLI::Accounts do
|
|||
end
|
||||
end
|
||||
|
||||
context 'with min_age setting' do
|
||||
let(:options) { { email: 'tootctl@example.com', confirmed: true } }
|
||||
|
||||
before do
|
||||
Setting.min_age = 42
|
||||
end
|
||||
|
||||
it_behaves_like 'a new user with given email address and username'
|
||||
|
||||
it 'creates a new user with confirmed status' do
|
||||
expect { subject }
|
||||
.to output_results('New password')
|
||||
|
||||
user = User.find_by(email: options[:email])
|
||||
|
||||
expect(user.confirmed?).to be(true)
|
||||
end
|
||||
end
|
||||
|
||||
context 'with --confirmed option' do
|
||||
let(:options) { { email: 'tootctl@example.com', confirmed: true } }
|
||||
|
||||
|
|
|
@ -125,6 +125,7 @@ RSpec.describe ActivityPub::FetchAllRepliesWorker do
|
|||
before do
|
||||
stub_const('Status::FetchRepliesConcern::FETCH_REPLIES_ENABLED', true)
|
||||
allow(FetchReplyWorker).to receive(:push_bulk)
|
||||
allow(FetchReplyWorker).to receive(:perform_async)
|
||||
all_items.each do |item|
|
||||
next if [top_note_uri, reply_note_uri].include? item
|
||||
|
||||
|
@ -146,6 +147,12 @@ RSpec.describe ActivityPub::FetchAllRepliesWorker do
|
|||
got_uris = subject.perform(status.id)
|
||||
expect(got_uris).to match_array(top_items + top_items_paged)
|
||||
end
|
||||
|
||||
it 'fetches the top status only once' do
|
||||
_ = subject.perform(status.id, { request_id: 0 })
|
||||
expect(FetchReplyWorker).to have_received(:perform_async).with(top_note_uri, { prefetched_body: top_object.deep_stringify_keys, request_id: 0 })
|
||||
expect(a_request(:get, top_note_uri)).to have_been_made.once
|
||||
end
|
||||
end
|
||||
|
||||
describe 'perform' do
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
// @ts-check
|
||||
|
||||
import path from 'node:path';
|
||||
|
||||
import globals from 'globals';
|
||||
import tseslint from 'typescript-eslint';
|
||||
|
||||
|
@ -20,7 +22,9 @@ export default tseslint.config([
|
|||
settings: {
|
||||
'import/ignore': ['node_modules', '\\.(json)$'],
|
||||
'import/resolver': {
|
||||
typescript: {},
|
||||
typescript: {
|
||||
project: path.resolve(import.meta.dirname, './tsconfig.json'),
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
|
|
|
@ -11,16 +11,20 @@
|
|||
"noUncheckedIndexedAccess": true,
|
||||
"esModuleInterop": true,
|
||||
"skipLibCheck": true,
|
||||
"types": ["vitest/globals", "@types/webpack-env"],
|
||||
"baseUrl": "./",
|
||||
"incremental": true,
|
||||
"tsBuildInfoFile": "tmp/cache/tsconfig.tsbuildinfo",
|
||||
"paths": {
|
||||
"@/*": ["app/javascript/*"],
|
||||
"mastodon": ["app/javascript/mastodon"],
|
||||
"mastodon/*": ["app/javascript/mastodon/*"],
|
||||
"@/*": ["app/javascript/*"]
|
||||
"images/*": ["app/javascript/images/*"],
|
||||
"styles/*": ["app/javascript/styles/*"]
|
||||
}
|
||||
},
|
||||
"include": [
|
||||
"vite.config.mts",
|
||||
"app/javascript/mastodon",
|
||||
"app/javascript/entrypoints",
|
||||
"app/javascript/types"
|
||||
|
|
58
vite.config.mts
Normal file
58
vite.config.mts
Normal file
|
@ -0,0 +1,58 @@
|
|||
/// <reference types="vitest" />
|
||||
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
|
||||
import react from '@vitejs/plugin-react';
|
||||
import RailsPlugin from 'vite-plugin-rails';
|
||||
import svgr from 'vite-plugin-svgr';
|
||||
import { defineConfig, configDefaults } from 'vitest/config';
|
||||
|
||||
const sourceCodeDir = 'app/javascript';
|
||||
const items = fs.readdirSync(sourceCodeDir);
|
||||
const directories = items.filter((item) =>
|
||||
fs.lstatSync(path.join(sourceCodeDir, item)).isDirectory(),
|
||||
);
|
||||
const aliasesFromJavascriptRoot: Record<string, string> = {};
|
||||
directories.forEach((directory) => {
|
||||
aliasesFromJavascriptRoot[directory] = path.resolve(
|
||||
__dirname,
|
||||
sourceCodeDir,
|
||||
directory,
|
||||
);
|
||||
});
|
||||
|
||||
export default defineConfig({
|
||||
resolve: {
|
||||
alias: {
|
||||
...aliasesFromJavascriptRoot,
|
||||
},
|
||||
},
|
||||
plugins: [
|
||||
RailsPlugin(),
|
||||
react({
|
||||
include: ['**/*.jsx', '**/*.tsx'],
|
||||
babel: {
|
||||
plugins: ['formatjs', 'preval', 'transform-react-remove-prop-types'],
|
||||
},
|
||||
}),
|
||||
svgr(),
|
||||
],
|
||||
test: {
|
||||
environment: 'jsdom',
|
||||
include: [
|
||||
...configDefaults.include,
|
||||
'**/__tests__/**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}',
|
||||
],
|
||||
exclude: [
|
||||
...configDefaults.exclude,
|
||||
'**/node_modules/**',
|
||||
'vendor/**',
|
||||
'config/**',
|
||||
'log/**',
|
||||
'public/**',
|
||||
'tmp/**',
|
||||
],
|
||||
globals: true,
|
||||
},
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue