those objects always have the normal prototype, and can't have
`hasOwnProperty` redefined, let me call it normally
(otherwise I'd have to write
`Object.prototype.hasOwnProperty.call(newUser, field)` and that's
ugly)
* editing _just the poll_ is now recognised as an actual change to the
note
* the "poll ended" notification job is now replaced (with potentially
the new expiry time)
when showing a reply, browser will request the replied-to avatar twice
at the same time, and get confused if one of the requests is refused
something similar seems to happen with videos and their previews
This isn't perfect, theoretically if some massive number of users
blocked the user making this request the set lookup could take a long
amount of time, but eh, it works, and that scenario is highly unlikely.
This also increases the default `recursionLimit` for `Resolver`, as it
theoretically will go higher that it previously would and could possibly
fail on non-malicious collection activities.
Ideally, the user property should also be hidden (as leaving it in leaks
information slightly), but given the schema of the note endpoint, I
don't think that would be possible without introducing some kind of
"ghost" user, who is attributed for posts by users who have you blocked.
One might argue that we could make this one actually preform access
checks against the returned activity object, but I feel like that's a
lot more work than just restricting it to administrators, since, to me
at least, it seems more like a debugging tool than anything else.
This commit implements the `following/requests/sent` interface firstly
implemented on Firefish, and provides a UI interface to view the pending
follow requests users sent.
I'm not sure about the get function pattern here as it doesn't include a value to base reactivity on; I might be too used to Svelte though and maybe that's fine
since `misskeyApi` doesn't pass us the request, we close over a copy
of the username we requested, to make sure it still matches the
current username value
* person starts typing "abcd"
* request for user "abcd" is sent to server
* person continues typing "ef"
* request for user "abcdef" is sent to server
* response for user "abcdef" arrives, icon for user "abcdef" is shown
* response for user "abcd" arrives, icon for user "abcd" was shown –
with this commit, this response is ignored instead
This is not just "showing the wrong avatar", btw: `MkSignin` uses the
`user` variable to decide whether to use 2FA, so having the wrong data
in user can make a login attempt fail.
Despite the cache, different processes can race to insert a row for
the same remote host.
This is particularly apparent in our unit tests, with
`test/unit/activitypub.ts` randomly failing.
This is a (somewhat clumsy) attempt at working around that race: trap
the "duplicate key value" error, and fetch the record.
Tests pass, with or without values in the cache.
Custom emoji names and aliases that include capital letters can now be found in the emoji picker.
I kind of hate copy-pasting `.toLowerCase()` like this but apparently I'm not allowed to refactor Misskey code.
Upstreams linter was mad about the attributes not being before the event
handlers, so this fixes that to match upstream when we end up merging
2024.9 (assuming it gets included in that release)
* Sign in with passkey (PoC)
* 💄 Added "Login with Passkey" Button
* refactor: Improve error response when WebAuthn challenge fails
* signinResponse should be placed under the SigninWithPasskeyResponse object.
* Frontend fix
* Fix: Rate limiting key for passkey signin
Use specific rate limiting key: 'signin-with-passkey' for passkey sign-in API to avoid collisions with signin rate-limit.
* Refactor: enhance Passkey sign-in flow and error handling
- Increased the rate limit for Passkey sign-in attempts to accommodate the two API calls needed per sign-in.
- Improved error messages and handling in both the `WebAuthnService` and the `SigninWithPasskeyApiService`, providing more context and better usability.
- Updated error messages to provide more specific and helpful details to the user.
These changes aim to enhance the Passkey sign-in experience by providing more robust error handling, improving security by limiting API calls, and delivering a more user-friendly interface.
* Refactor: Streamline 2FA flow and remove redundant Passkey button.
- Separate the flow of 1FA and 2FA.
- Remove duplicate passkey buttons
* Fix: Add error messages to MkSignin
* chore: Hide passkey button if the entered user does not use passkey login
* Update CHANGELOG.md
* Refactor: Rename functions and Add comments
* Update locales/ja-JP.yml
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* Fix: Update translation
- update index.d.ts
- update ko-KR.yml, en-US.yml
- Fix: Reflect Changed i18n key on MkSignin
---------
Co-authored-by: Squarecat-meow <kw7551@gmail.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* Only accept HTML `<link rel="alternate">` on success
(cherry picked from commit 6ea48be84a)
* Use `res.ok` instead of 200-299
(cherry picked from commit b667a68bd4)
* jsdomに戻す
* Update Changelog
* Revert "jsdomに戻す"
This reverts commit c03603611b74d16df52e77e44c558e958a82f3f4.
* 🎨
---------
Co-authored-by: Julia Johannesen <julia@insertdomain.name>
* chore(lint): Fix linting in misskey-reversi
(cherry picked from commit 894934a1a7743472b2d051e2690007ae373efd76)
* chore(lint): Fix linting in misskey-bubble-game
(cherry picked from commit 1ba9c37a8d5e4ae6a98494026b87f6f6439790c7)
* enhance(gh): add lint ci for misskey games packages
* enhance(gh): fix lint ci
* fix
* revert some changes that nothing to do with lint rules
* fix
* lint fixes
* refactor: strict type def
* lint fixes
* 🎨
* 🎨
---------
Co-authored-by: 4censord <mail@4censord.de>
* removed `menuDisplay` computed variable
* directly access `defaultStore` in `calcViewState`
* actually call `calcViewState` at setup!
all three these changes were copied from `universal.vue`, the default
view.
* move rate-limit-exceeded error reporting, earlier
a rate-limit-exceeded error has `kind:'client'`, so the branch that
adds the `Retry-After` would never get taken
(cherry picked from commit 8a982c61c0)
* Update Changelog
* fix
* indent
---------
Co-authored-by: dakkar <dakkar@thenautilus.net>
* bump happy-dom, disable all JS&c when parsing
version 10 didn't quite support disabling all of that
I have tested that `MfmService` (the other code that uses `happy-dom`)
still works fine: the RSS feed for a user is generated correctly, with
HTML rendered from MFM
(cherry picked from commit 26e0412fbb)
* Update Changelog
* lint
* fix possible memory leak
---------
Co-authored-by: dakkar <dakkar@thenautilus.net>
This reduces the time for subsequent lints significantly.
e.g. for `package/frontend`, the first run takes ~10min.
With the cache, every subsequent run takes only a few seconds.
version 10 didn't quite support disabling all of that
I have tested that `MfmService` (the other code that uses `happy-dom`)
still works fine: the RSS feed for a user is generated correctly, with
HTML rendered from MFM
It's trivial to have more than 128 requests in flight: open a busy
timeline, scroll a bit down, wait for many notes to arrive, scroll to
the top. The frontend will send "subscribe to note" messages for each
new note that it accumulated, all at once. We don't want to shut down
the connection in those common cases!
* the frontend opens 2 websockets at startup (I'm not completely clear
why), and that `minInterval:1sec` was breaking the second connection
* as the comment says, "catching up" generates many noteSubscribe
messages
3f73251df5 reworked the way `offsetMode`
is handled, to allow reactive `ComputedRef<boolean>` in addition to a
simple `boolean`, so that custom emoji search could easily switch
between the faster `sinceId`/`untilId` pagination and the slower
`offset` as needed.
Or it would have, if I had written the correct expression! I wrote
`props.offsetMode` instead of `props.pagination.offsetMode`, so it was
always `false`
I have *no idea* how I didn't notice, I swear I tested it ☹
Anyway, factoring out the nested ternaries makes the whole thing
clearer and less prone to mistakes. And I have tested it, this time.
* fix: pass current user into `InstanceEntityService.packMany`
(cherry picked from commit 858ba18876)
* Update Changelog
* origin
* Update Changelog
---------
Co-authored-by: Hazel K <acomputerdog@gmail.com>
* fix(backend): missing `visibility` param in packing flash
* fix(frontend): use `visibility` value got from API
* enhance(frontend): change preview appearance of private Play
* Update CHANGELOG.md
* refactor: add and use isJsonObject
* fix: readNotification message without body is not working
* docs(changelog): WSの`readAllNotifications` メッセージが `body` を持たない場合に動作しない問題
* Update CHANGELOG.md
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* fix(backend): check visibility of following/followers of remote users
Resolves https://github.com/misskey-dev/misskey/issues/13362.
* test(backend): add tests for visibility of following/followers of remote users
* docs(changelog): update CHANGELOG.md
* feat: moderators can see following/followers of all users
* docs(changelog): update CHANGELOG.md
* refactor(backend): minor refactoring
`createPerson`と`if`の条件を統一するとともに、異常系の
処理をearly returnに追い出すための変更。
* feat(backend): moderators can see following/followers count of all users
As per https://github.com/misskey-dev/misskey/pull/14375#issuecomment-2275044908.
as @fEmber noticed, if `findOneByOrFail` throws, we would have marked
the report as resolved, without logging that
this way, the whole operation fails (the frontend should not send us
ids of users that can't be resolved!)
Some remote instances may send garbage. If the `sensitive` value
passed to `driveService.uploadFromUrl` is not a boolean, eventually
we'll get an exception from the database complaining about that. This
change avoids that problem.
`id` in particular is necessary if one wants to do a working basic
configuration without a config file at all, thanks to @4censord for
making me notice
phopshor doesn't have anything decent for "folder symlink", the
"folder dashed" I picked is pretty bad
the three classes not prefixed with `ti ` are inside a conditional in
`packages/frontend/src/pages/admin/abuse-report/notification-recipient.item.vue`
* chore: improve withReplies toggle for user following
* chore: improve withReplies toggle for list
* docs(changelog): フォロー中のユーザーに関する"TLに他の人への返信を含める"の設定が分かりづらい問題を修正
* Fix CHANGELOG.md
* docs(changelog): update insertion position
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* fix: reply to my follower notes are not shown on the home timeline
* fix: reply to follower note by non-following is on social timeline
* docs: changelog
* test: add endpoint test for changes
* test(e2e): 自分のfollowers投稿に対するリプライが流れる
* test(e2e/streaming): 自分のfollowers投稿に対するリプライが流れる
* test(e2e/streaming): フォローしていないユーザによるフォロワー限定投稿に対するリプライがソーシャルタイムラインで表示されることがある問題
* test(e2e/timelines): try fixing typecheck error
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* chore(frontend): reorder assignments
* fix(frontend): visibleUserIds is not kept when deleteAndEdit
* fix(frontend): quoteId is not kept on draft
* fix(frontend): reactionAcceptance is not kept for draft/deleteAndEdit
* docs(changelog): update changelog
* fix: correct typos
* chore: convert indentation to tabs
* fix: missing lang
* chore: trim unnecessary whitespaces and newlines
* chore: use local path
* chore: use GFM alerts
* fix: missing use GFM alerts
* chore(misskey-js): Unchanged files with check annotationsで紛らわしい部分の警告を抑制 ロジック面は後で直す
* dummy change to see if the feature do not report them (to be reverted after the check)
* refactor: 型合わせ
* refactor: fix warnings from c22dd6358ba4e068c49be033a07d9fbb001f2347
* lint
* 型合わせ
* キャスト
* pnpm build-misskey-js-with-types
* Revert "dummy change to see if the feature do not report them (to be reverted after the check)"
This reverts commit 67072e3ca6e3e16342ca3b35feadcb41afcbe04f.
* eliminate reversiGame any
* move reversiGame types
* lint
* Update packages/misskey-js/src/streaming.ts
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* Update acct.ts
* run api extractor
* re-run api extractor
---------
Co-authored-by: Kisaragi Marine <kisaragi.effective@gmail.com>
Co-authored-by: kakkokari-gtyih <67428053+kakkokari-gtyih@users.noreply.github.com>
Setting `clusterLimit` to 0 means no workers are started, which
usually breaks things. Also, some "hardening" things may prevent node
from seeing how many CPUs the machine has, which has the same effect.
With this commit we provide hopefully-useful error messages.
* fix(frontend): blurhashが無い場合に何も出力されないのを修正
* Update Changelog
* Update packages/frontend/src/components/MkImgWithBlurhash.vue
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
* attempt to fix test
* Update packages/frontend/src/components/MkImgWithBlurhash.vue
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
* attempt to ignore test
---------
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
I thought that `ti-fw` was mostly useless, but it turns out that:
- it affects the alignment of icons in many places
- it's set separately in some places
(e.g. `packages/frontend/src/ui/_common_/navbar.ts` has `<i
class="ti-fw" :class="[$style.itemIcon,
navbarItemDef[item].icon]"></i>`)
so we have to keep it around.
* feat(backend): Load settings via environment variables
If they're not loaded from the config file.
* chore(docker): Add hints for environment variables
It supports users to know about them.
* docs(changelog): Add the description about this change
Users can notice what's changed by this PR.
* style(backend): Fix code syntax
To pass the linter.
we already unfollow them, and make them unfollow us, so muting them is
a very sensible thing to want
since the mute is handled separately, users can un-mute the people
they block (same as they can re-follow them)
all of these endpoints require the caller to already be logged in, so
it's not really much of a security problem, but it's still safer to
limit any endpoints that can be used to guess the current password
we already tell browsers to cache the preview for 7 days, but each
browser will ask the server, and the server will talk to the network,
hammering the poor site that got mentioned on fedi
let's instead cache the preview on the server!
this makes our templates much more similar to upstream's, making
merges simpler
changing note design is already marked as needing a reload, so having
non-reactive code that selects the note component is not a problem
as the comment says, this is a complicated interaction that must be
fixed upstream (I'm not going to fork aiscript for this!)
but at least this stops errors in plugins from completely breaking
Sharkey's frontend
while fixing #467#468, we changed the rate limit from 300/hour to
5/minute
some people felt it was too low: they often boost notes in quick
succession
so here's a different approach: back to 300/hour, but not more than
1/second; this is the same settings that `notes/delete` has, BTW
As usual, have to write the same thing four times ☹
The parentheses around `q` tell the hotkey/keymap code to ignore
auto-repeat events (which works fine in Chrome but not in Firefox, I
reported the bug https://bugzilla.mozilla.org/show_bug.cgi?id=1900397
)
In addition, I've added a guard variable that is true while calling
the backend to boost/renote, and false otherwise. This way, even in
Firefox we don't spam-boost. Unboosting is still *only with the
mouse*, I have not added that functionality.
We use MfM in all sorts of places, and only some of them are actual
blocks. We can now tell the `Mfm` component to make the top-level
`<bdi>` a block when we need to (mostly note bodies, user
descriptions, announcements) and leave it inline in all other places.
This should still rendener inline rtl content embedded in ltr text in
a sensible way, while providing right-alignment for fully rtl blocks.
* feat(backend): mark an file as sensitive if the file was newly federated as sensitive
* docs(changelog): もともとセンシティブではないと連合されていたファイルがセンシティブとして連合された場合にセンシティブとしてそのファイルを扱うように
* fix: change way to update federated image
* Update packages/backend/src/core/DriveService.ts
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* update isSensitive of existing record object
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* feat(backend): add /healthz endpoint
* feat(backend): also check meilisearch status if available
* style: header
* chore: no-store
* chore: healthcheck.sh
* style: format
* feat(backend): add `channelId` to `MiPoll` as a Denormalized field
* feat(backend): option to exclude polls in channels
* chore: exclude channel notes from featured polls
* docs(changelog): みつけるのアンケート欄にてチャンネルのアンケートが含まれてしまう問題を修正
* fix: missing license header
* fix: /i/notificationsがsinceIdのみのときに正しく動かない問題
Fix#10902 again
* chore: use exclusive range to fetch data
* fix: フィルタによって通知が0件だった場合でもリトライするように
* docs(changelog): `/i/notifications`に includeTypes`か`excludeTypes`を指定しているとき、通知が存在するのに空配列を返すことがある問題を修正
The previous assertion that:
> if it's a complicated thing and the `activity.id` doesn't match, I
> think we're fine rejecting the activity
was wrong: at least peertube sends activities that have `url` as an
array of objects.
Notice that this does *not*, in fact, fix#512: the peertube activity
does not contain its short URL (`https://example.com/w/someid`), so
there's no way to confirm that it is the activity we requested.
a server replied to, renoted or reacted to a note knows about a note,
and as such it should get notified about it being edited.
this matches similar logic in mastodon.
since the backend sorts emojis by name length when a query is present,
the normal pagination with `sinceId` / `untilId` would not work
reliably
`offsetMode` is better in this case, although it will produce
non-stable results if custom emojis that match the query are added or
removed while we paginate
* feat: changing MkA behavior from MkMFM
* chore: open links in abuse comment in new window
* docs(changelog): 通報のコメント内のリンクをクリックした際、ウィンドウで開くように
* chore: use inject instead of prop drilling
* Revert "chore: use inject instead of prop drilling"
This reverts commit b4dd14eacf59c8079676aa6ab019fece67496d79.
Since I can't quite figure out how to prevent `MkPagination` from
truncating the lists too eagerly, I'm going to hide the problem by
making it truncate _less_.
previously, when adding items either at the beginnig (e.g. new notes
coming in while we're not looking at the top of the timeline) or a the
end (e.g. more items arriving from a background fetch) of a paginated
view, the resulting list got truncated to `displayLimit`, potentially
throwing data away and causing a new fetch.
This, coupled with the async nature of scrolling & fetching, could
cause weird results.
Also, `offset` was always incremented by the size of the fetched
results, even if not all of them were displayed, meant that it was
possible for offset-based pagination to drop items.
Finally, the "queue" of new items (usually, new notes) also got
truncated to `displayLimit`, which again could drop items (this effect
was usually masked by the first point: when scrolling to the top of
the timeline, if the queue's length was equal to `displayLimit`, those
notes displaced any existing ones, `unshiftItems` set
`more.value=true`, you got scrolled to the top, and notes were fetched
again, so you lost your position but at least all notes got shown,
eventually)
* return 206 for every ranged response - fixes#494
(cherry picked from commit 92eec2178f)
* detect size of remote files - fixes#494
without this, remote files are assumed to have size 0 (even if we just
downloaded them!) and the range-related code won't run
(cherry picked from commit 960f4fcff7)
---------
Co-authored-by: dakkar <dakkar@thenautilus.net>
* convert Cypress tests to TypeScript
this work was done by @lunaisnotaboy https://github.com/lunaisnotaboy
for their fork https://github.com/cutiekey/cutiekey/pull/7
I just repacked their changes into a minimal set
* fix call to `window` in cypress tests
this error was spotted thanks to the TypeScript compiler:
```
support/commands.ts:33:12 - error TS2559: Type '(win: any) => void'
has no properties in common with type 'Partial<Loggable &
Timeoutable>'.
33 cy.window(win => {
~~~~~~~~
Found 1 error in support/commands.ts:33
```
(again, @lunaisnotaboy did the actual work)
* chore: add workflow which checks if SPDX ID exists
* chore: add missing SPDX ID in some files
* chore: change trigger condition
* chore: trigger on push
* lint
We can't make the cookie `HttpOnly` because we're setting it from
Javascript, but I'm not sure it's worth the trouble to redesign that:
`JSON.parse(localStorage.account).token` gives you the token anyway,
hiding the cookie from JS won't offer much protection.
At least we can mark is `Secure` (meaning, only send it over HTTPS)
and _delete it on logout_ (it wasn't!)
* use the more inclusive regexp for validating emoji names
* always normalize emoji names, aliases, categories
the latter point is necessary to allow matching, for example, `ä`
against `a`+combining diaeresis
this will also need to bump the version of `sfm-js` once we merge
https://activitypub.software/TransFem-org/sfm-js/-/merge_requests/2
some small differences (between Misskey and us) inside the `create`
method made `git` put all the changes inside the `import` method… I
thought I had copied them all, but I had missed one, and it's a pretty
important one: prohibited words were not being checked!
"featured notes" on the welcome page's right-hand column are shown
with the text right-aligned; code should not be affected by that. This
makes sure it isn't
* Never return broken notifications #409
Since notifications are stored in Redis, we can't expect relational
integrity: deleting a user will *not* delete notifications that
mention it.
But if we return notifications with missing bits (a `follow` without a
`user`, for example), the frontend will get very confused and throw an
exception while trying to render them.
This change makes sure we never expose those broken notifications. For
uniformity, I've applied the same logic to notes and roles mentioned
in notifications, even if nobody reported breakage in those cases.
Tested by creating a few types of notifications with a `notifierId`,
then deleting their user.
(cherry picked from commit 421f8d49e5)
* Update Changelog
* Update CHANGELOG.md
* enhance: 通知がミュートを考慮するようにする
* enhance: 通知が凍結も考慮するようにする
* fix: notifierIdがない通知が消えてしまう問題
* Add tests (通知がミュートを考慮しているかどうか)
* fix: notifierIdがない通知が消えてしまう問題 (grouped)
* Remove unused import
* Fix: typo
* Revert "enhance: 通知が凍結も考慮するようにする"
This reverts commit b1e57e571dfd9a7d8b2430294473c2053cc3ea33.
* Revert API handling
* Remove unused imports
* enhance: Check if notifierId is valid in NotificationEntityService
* 通知作成時にpackしてnullになったらあとの処理をやめる
* Remove duplication of valid notifier check
* add filter notification is not null
* Revert "Remove duplication of valid notifier check"
This reverts commit 239a6952f717add53d52c3e701e7362eb1987645.
* Improve performance
* Fix packGrouped
* Refactor: 判定部分を共通化
* Fix condition
* use isNotNull
* Update CHANGELOG.md
* filterの改善
* Refactor: DONT REPEAT YOURSELF
Note: GroupedNotificationはNotificationの拡張なのでその例外だけ書けば基本的に共通の処理になり複雑な個別の処理は増えにくいと思われる
* Add groupedNotificationTypes
* Update misskey-js typedef
* Refactor: less sql calls
* refactor
* clean up
* filter notes to mark as read
* packed noteがmapなのでそちらを使う
* if (notesToRead.size > 0)
* if (notes.length === 0) return;
* fix
* Revert "if (notes.length === 0) return;"
This reverts commit 22e2324f9633bddba50769ef838bc5ddb4564c88.
* 🎨
* console.error
* err
* remove try-catch
* 不要なジェネリクスを除去
* Revert (既読処理をpack内で行うものを元に戻す)
* Clean
* Update packages/backend/src/core/entities/NotificationEntityService.ts
* Update packages/backend/src/core/entities/NotificationEntityService.ts
* Update packages/backend/src/core/entities/NotificationEntityService.ts
* Update packages/backend/src/core/entities/NotificationEntityService.ts
* Update packages/backend/src/core/NotificationService.ts
* Clean
---------
Co-authored-by: dakkar <dakkar@thenautilus.net>
Co-authored-by: kakkokari-gtyih <daisho7308+f@gmail.com>
Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
* refactor: use IdentifiableError instead of NoteCreateService.ContainsProhibitedWordsError
* fix: notes with prohibited words are reprocessed with delay
* docs(changelog): 禁止キーワードを含むノートがDelayed Queueに追加されて再処理される問題
* lint: fix lint errors
* fix: rethrowするべきなのにrethrowし忘れていたのを修正
upstream `1708266695091-repositoryUrl-from-syuilo-to-misskey-dev.js`
changes `repositoryUrl` to one of the values this patch recognise, so
let's do ours after theirs
I don't understand why upstream wouldn't have this same problem ☹
We already have this same conditional in `ApRenderService.renderNote`
and `ApRenderService.renderUpNote`, and Misskey doesn't
* refactor(msjs): avoid any
* run api extractor
---------
Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
Co-authored-by: kakkokari-gtyih <daisho7308+f@gmail.com>
Since notifications are stored in Redis, we can't expect relational
integrity: deleting a user will *not* delete notifications that
mention it.
But if we return notifications with missing bits (a `follow` without a
`user`, for example), the frontend will get very confused and throw an
exception while trying to render them.
This change makes sure we never expose those broken notifications. For
uniformity, I've applied the same logic to notes and roles mentioned
in notifications, even if nobody reported breakage in those cases.
Tested by creating a few types of notifications with a `notifierId`,
then deleting their user.
This is currently the only configurable notification type that can
only be set to "all" or "none", all the others allow filtering by
sender user, so I had to tweak the drop-down
This opens the way to also eaisly make `note`, `roleAssigned` and
`followRequestAccepted` configurable.
Tested using the API console and sending requests to
`i/claim-achievement`. When the setting was "all", the achievement was
notified and it appeared in `/my/achievements`; when the setting was
"none", the achievement only appeared in `/my/achievements` but no
notification was generated.
i'm unsure about the batch of @container blocks at the end of the CSS,
they seem like leftovers from a previous implementation. removing them
didn't seem to change anything but i may be overlooking something.
* keep cached avatar&banner when refresh fails to get new values
when the remote explicitly tells us a user image is gone, we remove
our cached value, but if we fail to get the image, we keep whatever
value we already have
this should minimise the problem of avatars randomly disappearing
* autogen bits
* pnpm run build-misskey-js-with-types
---------
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
* ignore `instance.actor` when checking if there are local users
We've seen this happen a few times:
* there was some AP software at $some_domain
* it gets replaced by Misskey
* before the first user can be created, an AP activity comes in
* Misskey resolves the activity
* to do this, it creates the `instance.actor` to sign its request
* now there *is* a local user, so the `meta` endpoint returns
`requireSetup:false`
* the admin is very confused
This commit factors out the check, and doesn't count the
`instance.actor` as a real user.
* autogen bits
this only works for media from the same origin due to annoying browser
restrictions, but then the same applies to every other download button
in misskey (e.g. the one in drive) and there's basically nothing i can
to do solve it.
we want to notify if neither the thread nor the user are muted;
otherwise, for example, notes in a muted thread from a non-muted user
would get notified
# Linked Data signatures are cryptographic signatures attached to each activity to provide proof of authenticity.
# When using authorized fetch, this is often undesired as any signed activity can be forwarded to a blocked instance by relays and other instances.
# This setting allows admins to disable LD signatures for increased privacy, at the expense of fewer relayed activities and additional inbound fetch (GET) requests.
attachLdSignatureForRelays:true
# check that inbound ActivityPub GET requests are signed ("authorized fetch")
checkActivityPubGetSignature:false
# For security reasons, uploading attachments from the intranet is prohibited,
# but exceptions can be made from the following settings. Default value is "undefined".
# but exceptions can be made from the following settings. Default value is "undefined".
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
# Linked Data signatures are cryptographic signatures attached to each activity to provide proof of authenticity.
# When using authorized fetch, this is often undesired as any signed activity can be forwarded to a blocked instance by relays and other instances.
# This setting allows admins to disable LD signatures for increased privacy, at the expense of fewer relayed activities and additional inbound fetch (GET) requests.
attachLdSignatureForRelays:true
# check that inbound ActivityPub GET requests are signed ("authorized fetch")
checkActivityPubGetSignature:false
# For security reasons, uploading attachments from the intranet is prohibited,
# but exceptions can be made from the following settings. Default value is "undefined".
# but exceptions can be made from the following settings. Default value is "undefined".
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
# Linked Data signatures are cryptographic signatures attached to each activity to provide proof of authenticity.
# When using authorized fetch, this is often undesired as any signed activity can be forwarded to a blocked instance by relays and other instances.
# This setting allows admins to disable LD signatures for increased privacy, at the expense of fewer relayed activities and additional inbound fetch (GET) requests.
attachLdSignatureForRelays:true
# check that inbound ActivityPub GET requests are signed ("authorized fetch")
checkActivityPubGetSignature:false
# For security reasons, uploading attachments from the intranet is prohibited,
# but exceptions can be made from the following settings. Default value is "undefined".
# but exceptions can be made from the following settings. Default value is "undefined".
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
First, in order to avoid duplicate Issues, please search to see if the problem you found has already been reported.
Also, If you are NOT owner/admin of server, PLEASE DONT REPORT SERVER SPECIFIC ISSUES TO HERE! (e.g. feature XXX is not working in misskey.example) Please try with another misskey servers, and if your issue is only reproducible with specific server, contact your server's owner/admin first.
- type:textarea
attributes:
label:💡 Summary
description:Tell us what the bug is
validations:
required:true
- type:textarea
attributes:
label:🥰 Expected Behavior
description:Tell us what should happen
validations:
required:true
- type:textarea
attributes:
label:🤬 Actual Behavior
description:|
Tell us what happens instead of the expected behavior.
Please include errors from the developer console and/or server log files if you have access to them.
validations:
required:true
- type:textarea
attributes:
label:📝 Steps to Reproduce
placeholder:|
1.
2.
3.
validations:
required:false
- type:textarea
attributes:
label:💻 Frontend Environment
description:|
Tell us where on the platform it happens
DO NOT WRITE "latest". Please provide the specific version.
Examples:
* Model and OS of the device(s):MacBook Pro (14inch, 2021), macOS Ventura 13.4
* Browser:Chrome 113.0.5672.126
* Server URL:misskey.io
* Misskey:13.x.x
value:|
*Model and OS of the device(s):
*Browser:
*Server URL:
*Misskey:
render:markdown
validations:
required:false
- type:textarea
attributes:
label:🛰 Backend Environment (for server admin)
description:|
Tell us where on the platform it happens
DO NOT WRITE "latest". Please provide the specific version.
If you are using a managed service, put that after the version.
Examples:
* Installation Method or Hosting Service:docker compose, k8s/docker, systemd, "Misskey install shell script", development environment
* Misskey:13.x.x
* Node:20.x.x
* PostgreSQL:15.x.x
* Redis:7.x.x
* OS and Architecture:Ubuntu 22.04.2 LTS aarch64
value:|
*Installation Method or Hosting Service:
*Misskey:
*Node:
*PostgreSQL:
*Redis:
*OS and Architecture:
render:markdown
validations:
required:false
- type:checkboxes
attributes:
label:Do you want to address this bug yourself?
options:
- label:Yes,I will patch the bug myself and send a pull request
<!-- 💖 Thanks for taking the time to fill out this bug report!
💁 Having trouble with deployment? [Ask the support chat.](https://discord.gg/4qUhaeeHmm)
🔒 Found a security vulnerability? [Please disclose it responsibly.](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/SECURITY.md)
🤝 By submitting this feature request, you agree to follow our [Contribution Guidelines.](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/CONTRIBUTING.md) -->
# **What happened?**
<!-- Please give us a brief description of what happened. -->
# **What did you expect to happen?**
<!-- Please give us a brief description of what you expected to happen. -->
# **Version**
<!-- What version of Sharkey is your instance running? You can find this by clicking your instance's logo at the top left and then clicking instance information. -->
# **Instance**
<!-- What instance of Sharkey are you using? -->
# **What type of issue is this?**
<!-- If this happens on your device and has to do with the user interface, it's client-side. If this happens on either with the API or the backend, or you got a server-side error in the client, it's server-side. -->
# **What browser are you using? (Client-side issues only)**
# **What operating system are you using? (Client-side issues only)**
# **How do you deploy Sharkey on your server? (Server-side issues only)**
# **What operating system are you using? (Server-side issues only)**
# **Relevant log output**
<!-- Please copy and paste any relevant log output. You can find your log by inspecting the page, and going to the "console" tab. This will be automatically formatted into code, so no need for backticks. -->
# **Contribution Guidelines**
By submitting this issue, you agree to follow our [Contribution Guidelines](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/CONTRIBUTING.md)
- [ ] I agree to follow this project's Contribution Guidelines
- [ ] I have searched the issue tracker for similar issues, and this is not a duplicate.
<!-- 💖 Thanks for taking the time to fill out this bug report!
💁 Having trouble with deployment? [Ask the support chat.](https://discord.gg/4qUhaeeHmm)
🔒 Found a security vulnerability? [Please disclose it responsibly.](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/SECURITY.md)
🤝 By submitting this feature request, you agree to follow our [Contribution Guidelines.](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/CONTRIBUTING.md) -->
# **What feature would you like implemented?**
<!-- Please give us a brief description of what you'd like. -->
# **Why should we add this feature?**
<!-- Please give us a brief description of why your feature is important. -->
# **Version**
<!-- What version of Sharkey is your instance running? You can find this by clicking your instance's logo at the top left and then clicking instance information. -->
# **Instance**
<!-- What instance of Sharkey are you using? -->
# **Contribution Guidelines**
By submitting this issue, you agree to follow our [Contribution Guidelines](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/CONTRIBUTING.md)
- [ ] I agree to follow this project's Contribution Guidelines
- [ ] I have searched the issue tracker for similar requests, and this is not a duplicate.
<!-- Thanks for taking the time to make Sharkey better! -->
# **What does this MR do?**
<!-- Please give us a brief description of what this PR does. -->
# **Contribution Guidelines**
By submitting this merge request, you agree to follow our [Contribution Guidelines](https://activitypub.software/TransFem-org/Sharkey/-/blob/develop/CONTRIBUTING.md)
- [ ] I agree to follow this project's Contribution Guidelines
- [ ] I have made sure to test this merge request
<!-- Uncomment if your merge request has multiple authors -->
(Cherry-picked from https://github.com/nafu-at/misskey/commit/b89c2af6945c6a9f9f10e83f54d2bcf0f240b0b4, https://github.com/nafu-at/misskey/commit/8a7d710c6acb83f50c83f050bd1423c764d60a99)
We're glad you're interested in contributing Misskey! In this document you will find the information you need to contribute to the project.
> **Note**
> This project uses Japanese as its major language, **but you do not need to translate and write the Issues/PRs in Japanese.**
> Also, you might receive comments on your Issue/PR in Japanese, but you do not need to reply to them in Japanese as well.\
> The accuracy of machine translation into Japanese is not high, so it will be easier for us to understand if you write it in the original language.
> It will also allow the reader to use the translation tool of their preference if necessary.
We're glad you're interested in contributing to Sharkey! In this document you will find the information you need to contribute to the project.
## Roadmap
See [ROADMAP.md](./ROADMAP.md)
See [ROADMAP.md](./ROADMAP.md) for the upstream Misskey roadmap.
## Issues
Before creating an issue, please check the following:
- To avoid duplication, please search for similar issues before creating a new issue.
- Do not use Issues to ask questions or troubleshooting.
- Issues should only be used to feature requests, suggestions, and bug tracking.
- Please ask questions or troubleshooting in [GitHub Discussions](https://github.com/misskey-dev/misskey/discussions) or [Discord](https://discord.gg/Wp8gVStHW3).
- Please ask questions or troubleshooting in [Discord](https://discord.gg/6VgKmEqHNk).
> **Warning**
> [!WARNING]
> Do not close issues that are about to be resolved. It should remain open until a commit that actually resolves it is merged.
## Before implementation
When you want to add a feature or fix a bug, **first have the design and policy reviewed in an Issue** (if it is not there, please make one). Without this step, there is a high possibility that the PR will not be merged even if it is implemented.
### Recommended discussing before implementation
We welcome your proposal.
At this point, you also need to clarify the goals of the PR you will create, and make sure that the other members of the team are aware of them.
PRs that do not have a clear set of do's and don'ts tend to be bloated and difficult to review.
When you want to add a feature or fix a bug, *please open an issue*,
don't just start writing code. We may suggest different approaches, or
show that the "bug" is actually intended behaviour (and offer
work-arounds), or maybe we won't be able to merge your new feature
because it would make it too hard to incorporate future changes from
Misskey. Each of these examples have actually happened!
Also, when you start implementation, assign yourself to the Issue (if you cannot do it yourself, ask another member to assign you). By expressing your intention to work the Issue, you can prevent conflicts in the work.
On the other hand, it's very likely that we'll tell you "go
ahead!". We try our best to incorporate improvements from our users!
Also, when you start implementation, assign yourself to the Issue (if you cannot do it yourself, ask Committer to assign you).
By expressing your intention to work on the Issue, you can prevent conflicts in the work.
To the Committers: you should not assign someone on it before the Final Decision.
### How issues are triaged
The Committers may:
* close an issue that is not reproducible on latest stable release,
* merge an issue into another issue,
* split an issue into multiple issues,
* or re-open that has been closed for some reason which is not applicable anymore.
@syuilo reserves the Final Decision rights including whether the project will implement feature and how to implement, these rights are not always exercised.
## Well-known branches
- **`master`** branch is tracking the latest release and used for production purposes.
- **`stable`** branch is tracking the latest release and used for production purposes.
- **`develop`** branch is where we work for the next release.
- When you create a PR, basically target it to this branch.
- **`l10n_develop`** branch is reserved for localization management.
## Creating a PR
Thank you for your PR! Before creating a PR, please check the following:
- If possible, prefix the title with a keyword that identifies the type of this PR, as shown below.
- Also, make sure that the granularity of this PR is appropriate. Please do not include more than one type of change or interest in a single PR.
- If there is an Issue which will be resolved by this PR, please include a reference to the Issue in the text.
- Please add the summary of the changes to [`CHANGELOG.md`](/CHANGELOG.md). However, this is not necessary for changes that do not affect the users, such as refactoring.
- Please add the summary of the changes to [`CHANGELOG.md`](CHANGELOG.md). However, this is not necessary for changes that do not affect the users, such as refactoring.
- Check if there are any documents that need to be created or updated due to this change.
- If you have added a feature or fixed a bug, please add a test case if possible.
- Please make sure that tests and Lint are passed in advance.
- You can run it with `pnpm test` and `pnpm lint`. [See more info](#testing)
- You can run it with `pnpm test` and `pnpm lint`. [See more info](#testing)
- If this PR includes UI changes, please attach a screenshot in the text.
Thanks for your cooperation 🤗
@ -54,8 +67,8 @@ Be willing to comment on the good points and not just the things you want fixed
### Review perspective
- Scope
- Are the goals of the PR clear?
- Is the granularity of the PR appropriate?
- Are the goals of the PR clear?
- Is the granularity of the PR appropriate?
- Security
- Does merging this PR create a vulnerability?
- Performance
@ -66,29 +79,22 @@ Be willing to comment on the good points and not just the things you want fixed
- Are there any omissions or gaps?
- Does it check for anomalies?
## Deploy
The `/deploy` command by issue comment can be used to deploy the contents of a PR to the preview environment.
```
/deploy sha=<commithash>
```
An actual domain will be assigned so you can test the federation.
## Merge
## Release
### Release Instructions
1. Commit version changes in the `develop` branch ([package.json](https://github.com/misskey-dev/misskey/blob/develop/package.json))
1. Commit version changes in the `develop` branch ([package.json](package.json))
2. Create a release PR.
- Into `master` from `develop` branch.
- Into `stable` from `develop` branch.
- The title must be in the format `Release: x.y.z`.
- `x.y.z` is the new version you are trying to release.
3. Deploy and perform a simple QA check. Also verify that the tests passed.
4. Merge it. (Do not squash commit)
5. Create a [release of GitHub](https://github.com/misskey-dev/misskey/releases)
- The target branch must be `master`
5. Create a [release](https://activitypub.software/TransFem-org/Sharkey/-/releases)
- The target branch must be `stable`
- The tag name must be the version
> **Note**
> [!NOTE]
> Why this instruction is necessary:
> - To perform final QA checks
> - To distribute responsibility
@ -105,26 +111,34 @@ If your language is not listed in Crowdin, please open an issue.
Sharkey has its own Icon Font called Shark Font which can be found at https://activitypub.software/TransFem-org/shark-font
Build Instructions can all be found over there in the `README`.
If you have an Icon Suggestion or want to add an Icon please open an issue/merge request over at that repo.
When Updating the Font make sure to copy **all generated files** from the `dest` folder into `packages/backend/assets/fonts/sharkey-icons`
For the CSS simply copy the file content and replace the old content in `style.css` and for the WOFF, TTF and SVG simply replace them.
## Development
During development, it is useful to use the
### Setup
Before developing, you have to set up environment. Misskey requires Redis, PostgreSQL, and FFmpeg.
```
pnpm dev
```
You would want to install Meilisearch to experiment related features. Technically, meilisearch is not strict requirement, but some features and tests require it.
command.
There are a few ways to proceed.
- Server-side source files and automatically builds them if they are modified. Automatically start the server process(es).
- Vite HMR (just the `vite` command) is available. The behavior may be different from production.
- Service Worker is watched by esbuild.
- The front end can be viewed by accessing `http://localhost:5173`.
- The backend listens on the port configured with `port` in .config/default.yml.
If you have not changed it from the default, it will be "http://localhost:3000".
If "port" in .config/default.yml is set to something other than 3000, you need to change the proxy settings in packages/frontend/vite.config.local-dev.ts.
#### Use system-wide software
You could install them in system-wide (such as from package manager).
#### Use `docker compose`
You could obtain middleware container by typing `docker compose -f $PROJECT_ROOT/compose.local-db.yml up -d`.
#### Use Devcontainer
Devcontainer also has necessary setting. This method can be done by connecting from VSCode.
### Dev Container
Instead of running `pnpm` locally, you can use Dev Container to set up your development environment.
To use Dev Container, open the project directory on VSCode with Dev Containers installed.
To use Dev Container, open the project directory on VSCode with Dev Containers installed.
**Note:** If you are using Windows, please clone the repository with WSL. Using Git for Windows will result in broken files due to the difference in how newlines are handled.
It will run the following command automatically inside the container.
@ -136,14 +150,38 @@ pnpm build
pnpm migrate
```
After finishing the migration, run the `pnpm dev` command to start the development server.
After finishing the migration, you can proceed.
``` bash
### Start developing
During development, it is useful to use the
```
pnpm dev
```
command.
- Server-side source files and automatically builds them if they are modified. Automatically start the server process(es).
- Vite HMR (just the `vite` command) is available. The behavior may be different from production.
- Service Worker is watched by esbuild.
- The front end can be viewed by accessing `http://localhost:5173`.
- The backend listens on the port configured with `port` in .config/default.yml.
If you have not changed it from the default, it will be "http://localhost:3000".
If "port" in .config/default.yml is set to something other than 3000, you need to change the proxy settings in packages/frontend/vite.config.local-dev.ts.
### `MK_DEV_PREFER=backend pnpm dev`
pnpm dev has another mode with `MK_DEV_PREFER=backend`.
```
MK_DEV_PREFER=backend pnpm dev
```
- This mode is closer to the production environment than the default mode.
- Vite runs behind the backend (the backend will proxy Vite at /vite).
- You can see Misskey by accessing `http://localhost:3000` (Replace `3000` with the port configured with `port` in .config/default.yml).
- To change the port of Vite, specify with `VITE_PORT` environment variable.
- HMR may not work in some environments such as Windows.
## Testing
- Test codes are located in [`/packages/backend/test`](/packages/backend/test).
- Test codes are located in [`/packages/backend/test`](packages/backend/test).
docker compose -f packages/backend/test/docker-compose.yml up
docker compose -f packages/backend/test/compose.yml up
```
Alternatively, prepare an empty (data can be erased) DB and edit `.config/test.yml`.
@ -175,8 +213,8 @@ TODO
- `MISSKEY_WEBFINGER_USE_HTTP`: If it's set true, WebFinger requests will be http instead of https, useful for testing federation between servers in localhost. NEVER USE IN PRODUCTION.
## Continuous integration
Misskey uses GitHub Actions for executing automated tests.
Configuration files are located in [`/.github/workflows`](/.github/workflows).
Sharkey uses GitLab CI for executing automated tests.
Configuration files are located in [`/.gitlab-ci.yml`](.gitlab-ci.yml).
@ -6,8 +6,11 @@ When using a service with Sharkey, there are several important points to keep in
2. Even for posts made in private, there is no guarantee that the recipient's server will treat them as private in the same way. Please exercise caution when posting personal or confidential information. (Again, this applies to the internet in general.)
3. Account deletion can be a resource-intensive process and may take a long time. In cases with a lot of uploaded data, it may even be impossible to delete an account.
3. The "Drive" feature is NOT secure cloud storage. This feature exists for easier managing of your uploaded files.
Any data uploaded, whether shared via post or not, will be publicly accessible. Please use 3rd party cloud storage providers if you need to upload data with sensitive information of any kind.
4. Please disable ad blockers. Some servers may rely on advertising revenue to cover operating costs. Additionally, ad blockers can mistakenly block content and features unrelated to ads, potentially causing issues with the client's functionality and preventing normal use of Sharkey. Therefore, we recommend turning off ad blockers and similar features when using Sharkey.
4. Account deletion can be a resource-intensive process and may take a long time. In cases with a lot of uploaded data, it may even be impossible to delete an account.
Please understand these points and enjoy using the service.
5. Please disable ad blockers. Some servers may rely on advertising revenue to cover operating costs. Additionally, ad blockers can mistakenly block content and features unrelated to ads, potentially causing issues with the client's functionality and preventing normal use of Sharkey. Therefore, we recommend turning off ad blockers and similar features when using Sharkey.
Please understand these points and enjoy using the service.
**🌎 **[Sharkey](https://joinsharkey.org/)** is an open source, decentralized social media platform that's free forever! 🚀**
---
<ahref="https://joinsharkey.org">
<imgsrc="https://custom-icon-badges.herokuapp.com/badge/find_an-instance-acea31?logoColor=acea31&style=for-the-badge&logo=sharkey&labelColor=363B40"alt="find an instance"/></a>
<imgsrc="https://custom-icon-badges.herokuapp.com/badge/create_an-instance-FBD53C?logoColor=FBD53C&style=for-the-badge&logo=server&labelColor=363B40"alt="create an instance"/></a>
@ -19,8 +16,8 @@
<ahref="https://discord.gg/6VgKmEqHNk">
<imgsrc="https://custom-icon-badges.herokuapp.com/badge/join_the-community-5865F2?logoColor=5865F2&style=for-the-badge&logo=discord&labelColor=363B40"alt="join the community"/></a>
Not on Sharkey? No problem! Not only can Sharkey instances talk to each other, but you can make friends with people on other networks like Mastodon and Pixelfed!
- **Federated Backgrounds and Music status**\
You can add a background to your profile as well as a music status via ListenBrainz, show everyone what music you are currently listening too
You can add a background to your profile as well as a music status via ListenBrainz, show everyone what music you are currently listening to
- **Mastodon API**\
Sharkey implements the Mastodon API unlike normal Misskey
- **UI/UX Improvements**\
@ -42,9 +39,9 @@ Sharkey makes some UI/UX improvements to make it easier to navigate
- **Sign-Up Approval**\
With Sharkey, you can enable sign-ups, subject to manual moderator approval and mandatory user-provided reasons for joining.
- **Rich Web UI**\
Sharkey has a rich and easy to use Web UI!
It is highly customizable, from changing the layout and adding widgets to making custom themes.
Furthermore, plugins can be created using AiScript, an original programming language.
Sharkey has a rich and easy to use Web UI!
It is highly customizable, from changing the layout and adding widgets to making custom themes.
Furthermore, plugins can be created using AiScript, an original programming language.
# Linked Data signatures are cryptographic signatures attached to each activity to provide proof of authenticity.
# When using authorized fetch, this is often undesired as any signed activity can be forwarded to a blocked instance by relays and other instances.
# This setting allows admins to disable LD signatures for increased privacy, at the expense of fewer relayed activities and additional inbound fetch (GET) requests.
attachLdSignatureForRelays:true
# check that inbound ActivityPub GET requests are signed ("authorized fetch")
sensitiveWordsDescription:"Viditelnost všech poznámek obsahujících některé z nakonfigurovaných slov bude automaticky nastavena na \"Domů\". Můžete jich uvést více tak, že je oddělíte pomocí řádků."
sensitiveWordsDescription2:"Použití mezer vytvoří výrazy AND a obklopení klíčových slov lomítky je změní na regulární výraz."
prohibitedWordsDescription2:"Použití mezer vytvoří výrazy AND a obklopení klíčových slov lomítky je změní na regulární výraz."
notesSearchNotAvailable:"Vyhledávání poznámek je nedostupné."
license:"Licence"
unfavoriteConfirm:"Opravdu chcete odstranit z oblíbených?"
@ -1092,10 +1089,16 @@ doYouAgree: "Souhlasíte?"
beSureToReadThisAsItIsImportant:"Přečtěte si prosím tyto důležité informace."
iHaveReadXCarefullyAndAgree:"Přečetl jsem si text \"{x}\" a souhlasím s ním."
icon:"Avatar"
replies:"Odpovědi"
replies:"Odpovědět"
renotes:"Přeposlat"
sourceCode:"Zdrojový kód"
flip:"Otočit"
lastNDays:"Posledních {n} dnů"
surrender:"Zrušit"
_delivery:
stop:"Suspendováno"
_type:
none:"Publikuji"
_initialAccountSetting:
accountCreated:"Váš účet byl úspěšně vytvořen!"
letsStartAccountSetup:"Pro začátek si nastavte svůj profil."
@ -1626,7 +1629,6 @@ _theme:
buttonBg:"Pozadí tlačítka"
buttonHoverBg:"Pozadí tlačítka (Hover)"
inputBorder:"Ohraničení vstupního pole"
listItemHoverBg:"Pozadí položky seznamu (Hover)"
driveFolderBg:"Pozadí složky disku"
wallpaperOverlay:"Překrytí tapety"
badge:"Odznak"
@ -1638,8 +1640,6 @@ _sfx:
note:"Poznámky"
noteMy:"Moje poznámka"
notification:"Oznámení"
antenna:"Antény"
channel:"Oznámení kanálu"
_ago:
future:"Budoucí"
justNow:"Teď"
@ -1661,7 +1661,6 @@ _2fa:
registerTOTP:"Registrovat aplikaci autentizátoru"
step1:"Nejprve si do zařízení nainstalujte aplikaci pro ověřování (například {a} nebo {b})."
step2:"Poté naskenujte QR kód zobrazený na této obrazovce."
step2Click:"Kliknutím na tento QR kód můžete zaregistrovat 2FA do bezpečnostního klíče nebo aplikace autentizace telefonu."
step3Title:"Zadejte ověřovací kód"
step3:"Pro dokončení nastavení zadejte token poskytnutý vaší aplikací."
step4:"Od této chvíle budou všechny budoucí pokusy o přihlášení vyžadovat tento přihlašovací token."
@ -1715,7 +1714,7 @@ _auth:
shareAccessTitle:"Udělovat oprávnění k aplikacím"
shareAccess:"Chcete autorizovat \"{name}\" pro přístup k tomuto účtu?"
shareAccessAsk:"Opravdu chcete této aplikaci povolit přístup k vašemu účtu?"
permission:"{jméno} požaduje tato oprávnění"
permission:"{name} požaduje tato oprávnění"
permissionAsk:"Tato aplikace požaduje následující oprávnění"
pleaseGoBack:"Vraťte se prosím zpět do aplikace"
callback:"Návrat k aplikaci"
@ -1939,7 +1938,7 @@ _notification:
youGotMention:"{name} vás zmínil"
youGotReply:"{name} vám odpověděl"
youGotQuote:"{name} vás citoval"
youRenoted:"Poznámka od {jméno}"
youRenoted:"Poznámka od {name}"
youWereFollowed:"Máte nového následovníka"
youReceivedFollowRequest:"Obdrželi jste žádost o sledování"
yourFollowRequestAccepted:"Vaše žádost o sledování byla přijata"
@ -1959,6 +1958,7 @@ _notification:
receiveFollowRequest:"Obdržené žádosti o sledování"
followRequestAccepted:"Přijaté žádosti o sledování"
headlineMisskey:"Ein durch Notizen verbundenes Netzwerk"
introMisskey:"Willkommen! Sharkey ist eine dezentralisierte Open-Source Microblogging-Platform.\nVerfasse „Notizen“ um mitzuteilen, was gerade passiert oder um Ereignisse mit anderen zu teilen. 📡\nMit „Reaktionen“ kannst du außerdem schnell deine Gefühle über Notizen anderer Benutzer zum Ausdruck bringen. 👍\nEine neue Welt wartet auf dich! 🚀"
poweredByMisskeyDescription:"{name} ist einer der durch die Open-Source-Plattform <b>Sharkey</b> betriebenen Dienste die auf Misskey basiert ist (meist als \"Misskey-Instanz\" bezeichnet)."
introMisskey:"Willkommen! Misskey ist eine dezentralisierte Open-Source Microblogging-Platform.\nVerfasse „Notizen“ um mitzuteilen, was gerade passiert oder um Ereignisse mit anderen zu teilen. 📡\nMit „Reaktionen“ kannst du außerdem schnell deine Gefühle über Notizen anderer Benutzer zum Ausdruck bringen. 👍\nEine neue Welt wartet auf dich! 🚀"
poweredByMisskeyDescription:"{name} ist einer der durch die Open-Source-Plattform <b>Misskey</b> betriebenen Dienste."
cantRenote:"Boosten dieses Beitrags nicht möglich."
cantReRenote:"Boosten von einen Boost nicht möglich."
renote:"Renote"
unrenote:"Renote zurücknehmen"
renoted:"Renote getätigt."
cantRenote:"Renote dieses Beitrags nicht möglich."
cantReRenote:"Renote einer Renote nicht möglich."
quote:"Zitieren"
inChannelRenote:"Kanal-interner Boost"
inChannelRenote:"Kanal-interner Renote"
inChannelQuote:"Kanal-internes Zitat"
pinnedNote:"Angeheftete Notiz"
pinned:"Angeheftet"
@ -122,7 +122,10 @@ add: "Hinzufügen"
reaction:"Reaktionen"
reactions:"Reaktionen"
emojiPicker:"Emoji auswählen"
pinnedEmojisForReactionSettingDescription:"Wähle die Emojis aus, um sie an zu pinnen"
pinnedEmojisForReactionSettingDescription:"Lege Emojis fest, die angepinnt werden sollen, um sie beim Reagieren als Erstes anzuzeigen."
pinnedEmojisSettingDescription:"Lege Emojis fest, die angepinnt werden sollen, um sie in der Emoji-Auswahl als Erstes anzuzeigen"
overwriteFromPinnedEmojisForReaction:"Überschreiben mit den Reaktions-Einstellungen"
overwriteFromPinnedEmojis:"Überschreiben mit den allgemeinen Einstellungen"
reactionSettingDescription2:"Ziehe um Anzuordnen, klicke um zu löschen, drücke „+“ um hinzuzufügen"
rememberNoteVisibility:"Notizsichtbarkeit merken"
attachCancel:"Anhang entfernen"
@ -163,7 +166,7 @@ youCanCleanRemoteFilesCache: "Klicke auf den 🗑️-Knopf der Dateiverwaltungsa
cacheRemoteSensitiveFiles:"Sensitive Dateien von fremden Instanzen im Cache speichern"
cacheRemoteSensitiveFilesDescription:"Ist diese Einstellung deaktiviert, so werden sensitive Dateien fremder Instanzen direkt von dort ohne Zwischenspeicherung geladen."
flagAsBot:"Als Bot markieren"
flagAsBotDescription:"Aktiviere diese Option, falls dieses Benutzerkonto durch ein Programm gesteuert wird. Falls aktiviert, agiert es als Flag für andere Entwickler zur Verhinderung von endlosen Kettenreaktionen mit anderen Bots und lässt Sharkeys interne Systeme dieses Benutzerkonto als Bot behandeln."
flagAsBotDescription:"Aktiviere diese Option, falls dieses Benutzerkonto durch ein Programm gesteuert wird. Falls aktiviert, agiert es als Flag für andere Entwickler zur Verhinderung von endlosen Kettenreaktionen mit anderen Bots und lässt Misskeys interne Systeme dieses Benutzerkonto als Bot behandeln."
flagAsCat:"Als Katze markieren"
flagAsCatDescription:"Aktiviere diese Option, um dieses Benutzerkonto als Katze zu markieren."
flagShowTimelineReplies:"Antworten in der Chronik anzeigen"
@ -181,7 +184,7 @@ searchWith: "Suchen: {q}"
youHaveNoLists:"Du hast keine Listen"
followConfirm:"Möchtest du {name} wirklich folgen?"
proxyAccount:"Proxy-Benutzerkonto"
proxyAccountDescription:"Ein Proxy-Benutzerkonto ist ein Benutzerkonto, das sich für Nutzer unter bestimmten Konditionen wie ein Follower aus einer fremden Instanz verhält. Zum Beispiel wird die Aktivität eines Nutzers aus einer fremden Instanz nicht an diese Instanz übermittelt, falls es keinen Benutzer dieser Instanz gibt, der diesem Nutzer aus fremder Instanz folgt. In diesem Fall folgt stattdessen das Proxy-Benutzerkonto."
proxyAccountDescription:"Ein Proxy-Konto ist ein Benutzerkonto, das unter bestimmten Bedingungen als Follower für Benutzer fremder Instanzen fungiert. Wenn zum Beispiel ein Benutzer einen Benutzer einer fremden Instanz zu einer Liste hinzufügt, werden die Aktivitäten des entfernten Benutzers nicht an die Instanz übermittelt, wenn kein lokaler Benutzer diesem Benutzer folgt; stattdessen folgt das Proxy-Konto."
showNoteActionsOnlyHover:"Notizmenü nur bei Mouseover anzeigen"
noHistory:"Kein Verlauf gefunden"
signinHistory:"Anmeldungsverlauf"
@ -565,7 +571,7 @@ sort: "Sortieren"
ascendingOrder:"Aufsteigende Reihenfolge"
descendingOrder:"Absteigende Reihenfolge"
scratchpad:"Testumgebung"
scratchpadDescription:"Die Testumgebung bietet einen Bereich für AiScript-Experimente. Dort kannst du AiScript schreiben, ausführen sowie dessen Auswirkungen auf Sharkey überprüfen."
scratchpadDescription:"Die Testumgebung bietet einen Bereich für AiScript-Experimente. Dort kannst du AiScript schreiben, ausführen sowie dessen Auswirkungen auf Misskey überprüfen."
output:"Ausgabe"
script:"Skript"
disablePagesScript:"AiScript auf Seiten deaktivieren"
@ -647,7 +653,7 @@ smtpSecureInfo: "Schalte dies aus, falls du STARTTLS verwendest."
testEmail:"Emailversand testen"
wordMute:"Wortstummschaltung"
regexpError:"Fehler in einem regulären Ausdruck"
regexpErrorDescription:"Im regulären Ausdruck deiner {tab}en Wortstummschaltungen ist ein Fehler aufgetreten:"
regexpErrorDescription:"Im regulären Ausdruck deiner in Zeile {line} von {tab}en Wortstummschaltungen ist ein Fehler aufgetreten:"
instanceMute:"Instanzstummschaltungen"
userSaysSomething:"{name} hat etwas gesagt"
makeActive:"Aktivieren"
@ -680,10 +686,7 @@ abuseReported: "Deine Meldung wurde versendet. Vielen Dank."
reporter:"Melder"
reporteeOrigin:"Herkunft des Gemeldeten"
reporterOrigin:"Herkunft des Meldenden"
forwardReport:"Meldung an fremde Instanz weiterleiten"
forwardReportIsAnonymous:"Anstatt deines Benutzerkontos wird bei der fremden Instanz ein anonymes Systemkonto als Melder angezeigt."
send:"Senden"
abuseMarkAsResolved:"Meldung als gelöst markieren"
confirmToUnclipAlreadyClippedNote:"Diese Notiz ist bereits im \"{name}\" Clip enthalten. Möchtest du sie aus diesem Clip entfernen?"
public:"Öffentlich"
private:"Privat"
i18nInfo:"Sharkey wird durch freiwillige Helfer in viele verschiedene Sprachen übersetzt. Auf {link} kannst du mithelfen."
i18nInfo:"Misskey wird durch freiwillige Helfer in viele verschiedene Sprachen übersetzt. Auf {link} kannst du mithelfen."
manageAccessTokens:"Zugriffstokens verwalten"
accountInfo:"Benutzerkonto-Informationen"
notesCount:"Anzahl der Notizen"
repliesCount:"Anzahl gesendeter Antworten"
renotesCount:"Anzahl getätigter Renotes"
repliedCount:"Anzahl erhaltener Antworten"
renotedCount:"Anzahl erhaltener Boosts"
renotedCount:"Anzahl erhaltener Renotes"
followingCount:"Anzahl gefolgter Benutzer"
followersCount:"Anzahl an Followern"
sentReactionsCount:"Anzahl gesendeter Reaktionen"
@ -756,7 +759,7 @@ onlineUsersCount: "{n} Benutzer sind online"
nUsers:"{n} Benutzer"
nNotes:"{n} Notizen"
sendErrorReports:"Fehlerberichte senden"
sendErrorReportsDescription:"Ist diese Option aktiviert, so werden beim Auftreten von Fehlern detaillierte Fehlerinformationen an Sharkey weitergegeben, was zur Verbesserung der Qualität von Sharkey beiträgt.\nEnthalten in diesen Informationen sind u.a. die Version deines Betriebssystems, welchen Browser du verwendest und ein Verlauf deiner Aktivitäten innerhalb Sharkey."
sendErrorReportsDescription:"Ist diese Option aktiviert, so werden beim Auftreten von Fehlern detaillierte Fehlerinformationen an Misskey weitergegeben, was zur Verbesserung der Qualität von Misskey beiträgt.\nEnthalten in diesen Informationen sind u.a. die Version deines Betriebssystems, welchen Browser du verwendest und ein Verlauf deiner Aktivitäten innerhalb Misskey."
myTheme:"Mein Farbschema"
backgroundColor:"Hintergrundfarbe"
accentColor:"Akzentfarbe"
@ -850,7 +853,7 @@ hashtags: "Hashtags"
troubleshooting:"Problembehandlung"
useBlurEffect:"Weichzeichnungseffekt in der Benutzeroberfläche verwenden"
pleaseDonate:"Sharkey ist die kostenlose Software, die von {host} verwendet wird. Wir würden uns über Spenden freuen, damit dessen Entwicklung weitergeführt werden kann!"
pleaseDonateInstance:"Du kannst {host} auch direkt unterstützen, indem du an deine Instanz Administration spendest."
didYouLikeMisskey:"Gefällt dir Misskey?"
pleaseDonate:"Misskey ist die kostenlose Software, die von {host} verwendet wird. Wir würden uns über Spenden freuen, damit dessen Entwicklung weitergeführt werden kann!"
permissionDeniedErrorDescription:"Dieses Benutzerkonto besitzt nicht die Berechtigung, um diese Aktion auszuführen."
preset:"Vorlage"
selectFromPresets:"Aus Vorlagen wählen"
achievements:"Erfolge"
achievements:"Errungenschaften"
gotInvalidResponseError:"Ungültige Antwort des Servers"
gotInvalidResponseErrorDescription:"Eventuell ist der Server momentan nicht erreichbar oder untergeht Wartungsarbeiten. Bitte versuche es später noch einmal."
thisPostMayBeAnnoying:"Dieser Beitrag stört eventuell andere Benutzer."
sensitiveWordsDescription:"Die Notizsichtbarkeit aller Notizen, die diese Wörter enthalten, wird automatisch auf \"Startseite\" gesetzt. Durch Zeilenumbrüche können mehrere konfiguriert werden."
sensitiveWordsDescription2:"Durch die Verwendung von Leerzeichen können AND-Verknüpfungen angegeben werden und durch das Umgeben von Schrägstrichen können reguläre Ausdrücke verwendet werden."
prohibitedWordsDescription2:"Durch die Verwendung von Leerzeichen können AND-Verknüpfungen angegeben werden und durch das Umgeben von Schrägstrichen können reguläre Ausdrücke verwendet werden."
hiddenTags:"Ausgeblendete Hashtags"
hiddenTagsDescription:"Die hier eingestellten Tags werden nicht mehr in den Trends angezeigt. Mit der Umschalttaste können mehrere ausgewählt werden."
notesSearchNotAvailable:"Die Notizsuche ist nicht verfügbar."
@ -1151,14 +1154,13 @@ hideRepliesToOthersInTimelineAll: "Antworten von allen momentan gefolgten Benutz
confirmShowRepliesAll:"Dies ist eine unwiderrufliche Aktion. Wirklich Antworten von allen momentan gefolgten Benutzern in der Chronik anzeigen?"
confirmHideRepliesAll:"Dies ist eine unwiderrufliche Aktion. Wirklich Antworten von allen momentan gefolgten Benutzern nicht in der Chronik anzeigen?"
externalServices:"Externe Dienste"
sourceCode:"Quellcode"
impressum:"Impressum"
impressumUrl:"Impressums-URL"
impressumDescription:"In manchen Ländern, wie Deutschland und dessen Umgebung, ist die Angabe von Betreiberinformationen (ein Impressum) bei kommerziellem Betrieb zwingend."
privacyPolicy:"Datenschutzerklärung"
privacyPolicyUrl:"Datenschutzerklärungs-URL"
tosAndPrivacyPolicy:"Nutzungsbedingungen und Datenschutzerklärung"
donation:"Spenden"
donationUrl:"Spenden-URL"
avatarDecorations:"Profilbilddekoration"
attach:"Anbringen"
detach:"Entfernen"
@ -1174,7 +1176,15 @@ signupPendingError: "Beim Überprüfen der Mailadresse ist etwas schiefgelaufen.
cwNotationRequired:"Ist \"Inhaltswarnung verwenden\" aktiviert, muss eine Beschreibung gegeben werden."
doReaction:"Reagieren"
code:"Code"
decorate:"Dekorieren"
addMfmFunction:"MFM hinzufügen"
sfx:"Soundeffekte"
lastNDays:"Letzten {n} Tage"
surrender:"Abbrechen"
_delivery:
stop:"Gesperrt"
_type:
none:"Wird veröffentlicht"
_announcement:
forExistingUsers:"Nur für existierende Nutzer"
forExistingUsersDescription:"Ist diese Option aktiviert, wird diese Ankündigung nur Nutzern angezeigt, die zum Zeitpunkt der Ankündigung bereits registriert sind. Ist sie deaktiviert, wird sie auch Nutzern, die sich nach dessen Veröffentlichung registrieren, angezeigt."
@ -1184,6 +1194,7 @@ _announcement:
tooManyActiveAnnouncementDescription:"Zu viele aktive Ankündigungen können die Benutzerfreundlichkeit verschlechtern. Es wird empfohlen, veraltete Ankündigungen zu archivieren."
readConfirmTitle:"Als gelesen markieren?"
readConfirmText:"Dies markiert den Inhalt von \"{title}\" als gelesen."
shouldNotBeUsedToPresentPermanentInfo:"Es wird empfohlen, Ankündigungen für aktuelle und zeitlich begrenzte Neuigkeiten zu nutzen, statt für Informationen, die langfristig relevant sind."
dialogAnnouncementUxWarn:"Bei der Verwendung von mehr als zwei Meldungen im Dialog-Format wird um Vorsicht geboten, da dies negative Auswirkungen auf die UX haben kann."
silence:"Keine Benachrichtigung"
silenceDescription:"Wenn aktiviert, gibt diese Meldung keine Nachricht aus und muss nicht als \"gelesen\" markiert werden."
@ -1213,6 +1224,24 @@ _initialTutorial:
description:"Hier kannst du sehen, wie Misskey funktioniert"
_note:
title:"Was sind Notizen?"
description:"Beiträge auf Misskey heißen \"Notizen\". Notizen werden chronologisch in der Chronik angeordnet und in Echtzeit aktualisiert."
reply:"Klicke auf diesen Button, um auf eine Nachricht zu antworten. Es ist auch möglich, auf Antworten zu antworten und die Unterhaltung wie einen Thread fortzusetzen."
_reaction:
title:"Was sind Reaktionen?"
reactToContinue:"Füge eine Reaktion hinzu, um fortzufahren."
reactNotification:"Du erhältst Echtzeit-Benachrichtigungen, wenn jemand auf deine Notiz reagiert."
_postNote:
_visibility:
description:"Du kannst einschränken, wer deine Notiz sehen kann."
public:"Deine Notiz wird für alle Nutzer sichtbar sein."
doNotSendConfidencialOnDirect1:"Sei vorsichtig, wenn du sensible Informationen verschickst!"
_cw:
title:"Inhaltswarnung"
_done:
title:"Du hast das Tutorial abgeschlossen! 🎉"
_timelineDescription:
local:"In der lokalen Chronik siehst du Notizen von allen Benutzern auf diesem Server."
global:"In der globalen Chronik siehst du Notizen von allen föderierten Servern."
_serverRules:
description:"Eine Reihe von Regeln, die vor der Registrierung angezeigt werden. Eine Zusammenfassung der Nutzungsbedingungen anzuzeigen ist empfohlen."
_serverSettings:
@ -1225,6 +1254,8 @@ _serverSettings:
shortName:"Abkürzung"
shortNameDescription:"Ein Kürzel für den Namen der Instanz, der angezeigt werden kann, falls der volle Instanzname lang ist."
fanoutTimelineDescription:"Ist diese Option aktiviert, kann eine erhebliche Verbesserung im Abrufen von Chroniken und eine Reduzierung der Datenbankbelastung erzielt werden, im Gegenzug zu einer Steigerung in der Speichernutzung von Redis. Bei geringem Serverspeicher oder Serverinstabilität kann diese Option deaktiviert werden."
fanoutTimelineDbFallback:"Auf die Datenbank zurückfallen"
fanoutTimelineDbFallbackDescription:"Ist diese Option aktiviert, wird die Chronik auf zusätzliche Abfragen in der Datenbank zurückgreifen, wenn sich die Chronik nicht im Cache befindet. Eine Deaktivierung führt zu geringerer Serverlast, aber schränkt den Zeitraum der abrufbaren Chronik ein. "
_accountMigration:
moveFrom:"Von einem anderen Konto zu diesem migrieren"
moveFromSub:"Alias für ein anderes Konto erstellen"
@ -1233,7 +1264,7 @@ _accountMigration:
moveTo:"Dieses Konto zu einem neuen migrieren"
moveToLabel:"Umzugsziel:"
moveCannotBeUndone:"Die Migration eines Benutzerkontos ist unwiderruflich."
moveAccountDescription:"Hierdurch wird dein Konto zu einem anderen migriert.\n・Follower von diesem Konto werden automatisch auf das neue Konto migriert\n・Dieses Konto wird allen Nutzern, denen es derzeit folgt, nicht mehr folgen\n・Mit diesem Konto können keine neuen Notizen usw. erstellt werden\n\nWährend die Migration der Follower automatisch erfolgt, muss die Migration der Konten, denen du folgst, manuell vorbereitet werden. Exportiere hierzu die Liste der gefolgten Nutzer über das Einstellungsmenu, und importiere diese Liste im neuen Konto. Das gleiche Verfahren gilt für erstellte Listen und stummgeschaltete oder blockierte Nutzer.\n\n(Diese Erklärung gilt für Sharkey v13.12.0 oder später. Die Funktionsweise andere ActivityPub-Software, beispielsweise Mastodon, kann hiervon abweichen.)"
moveAccountDescription:"Hierdurch wird dein Konto zu einem anderen migriert.\n・Follower von diesem Konto werden automatisch auf das neue Konto migriert\n・Dieses Konto wird allen Nutzern, denen es derzeit folgt, nicht mehr folgen\n・Mit diesem Konto können keine neuen Notizen usw. erstellt werden\n\nWährend die Migration der Follower automatisch erfolgt, muss die Migration der Konten, denen du folgst, manuell vorbereitet werden. Exportiere hierzu die Liste der gefolgten Nutzer über das Einstellungsmenu, und importiere diese Liste im neuen Konto. Das gleiche Verfahren gilt für erstellte Listen und stummgeschaltete oder blockierte Nutzer.\n\n(Diese Erklärung gilt für Misskey v13.12.0 oder später. Die Funktionsweise andere ActivityPub-Software, beispielsweise Mastodon, kann hiervon abweichen.)"
moveAccountHowTo:"Um ein Konto zu migrieren, erstelle zuerst auf dem Umzugsziel einen Alias für dieses Konto.\nGib dann das Umzugsziel in folgendem Format ein: @username@server.example.com"
startMigration:"Migrieren"
migrationConfirm:"Dieses Konto wirklich zu {account} umziehen? Sobald der Umzug beginnt, kann er nicht rückgängig gemacht werden, und dieses Konto nicht wieder im ursprünglichen Zustand verwendet werden."
@ -1244,26 +1275,26 @@ _achievements:
earnedAt:"Freigeschaltet am"
_types:
_notes1:
title:"Hallo Sharkey!"
title:"Hallo Misskey!"
description:"Sende deine erste Notiz"
flavor:"Hab eine schöne Zeit mit Sharkey!"
flavor:"Hab eine schöne Zeit mit Misskey!"
_notes10:
title:"Notizblog"
title:"Ein paar Notizen"
description:"10 Notizen gesendet"
_notes100:
title:"Schreiberling"
title:"Viele Notizen"
description:"100 Notizen gesendet"
_notes500:
title:"Autor"
title:"Überschüttet mit Notizen"
description:"500 Notizen gesendet"
_notes1000:
title:"Bestseller"
title:"Berg an Notizen"
description:"1.000 Notizen gesendet"
_notes5000:
title:"Dicker Wälzer"
title:"Überquellende Notizen"
description:"5.000 Notizen gesendet"
_notes10000:
title:"Verlagshaus"
title:"Supernotiz"
description:"10.000 Notizen gesendet"
_notes20000:
title:"Brauche... mehr... Notizen..."
@ -1290,28 +1321,28 @@ _achievements:
title:"Notizversum"
description:"90.000 Notizen gesendet"
_notes100000:
title:"ALL YOUR NOTES ARE BELONG TO US"
title:"ALL YOUR NOTE ARE BELONG TO US"
description:"100.000 Notizen gesendet"
flavor:"Du hast wirklich viel zu sagen."
_login3:
title:"NeulingⅠ"
title:"AnfängerⅠ"
description:"An 3 Tagen eingeloggt"
flavor:"Nenn' mich ab heute Misskist"
_login7:
title:"Neuling Ⅱ"
title:"Anfänger Ⅱ"
description:"An 7 Tagen eingeloggt"
flavor:"Na, eingewöht?"
_login15:
title:"Neuling Ⅲ"
title:"Anfänger Ⅲ"
description:"An 15 Tagen eingeloggt"
_login30:
title:"FedizenⅠ"
title:"MisskistⅠ"
description:"An 30 Tagen eingeloggt"
_login60:
title:"Fedizen Ⅱ"
title:"Misskist Ⅱ"
description:"An 60 Tagen eingeloggt"
_login100:
title:"Fedizen Ⅲ"
title:"Misskist Ⅲ"
description:"An 100 Tagen eingeloggt"
flavor:"Violent Misskist"
_login200:
@ -1324,14 +1355,14 @@ _achievements:
title:"Stammbesucher Ⅲ"
description:"An 400 Tagen eingeloggt"
_login500:
title:"Alter HaseⅠ"
title:"VeteranⅠ"
description:"An 500 Tagen eingeloggt"
flavor:"Meine Kameraden, ich liebe sie, die Notizen."
_login600:
title:"Alter Hase Ⅱ"
title:"Veteran Ⅱ"
description:"An 600 Tagen eingeloggt"
_login700:
title:"Alter Hase Ⅲ"
title:"Veteran Ⅲ"
description:"An 700 Tagen eingeloggt"
_login800:
title:"Meister der Notizen Ⅰ"
@ -1340,39 +1371,39 @@ _achievements:
title:"Meister der Notizen Ⅱ"
description:"An 900 Tagen eingeloggt"
_login1000:
title:"Wie die Zeit vergeht"
title:"Meister der Notizen Ⅲ"
description:"An 1000 Tagen eingeloggt"
flavor:"Danke, dass du Sharkey nutzt!"
flavor:"Danke, dass du Misskey nutzt!"
_noteClipped1:
title:"Das merk ich mir"
title:"Muss... clippen..."
description:"Die erste Notiz geclippt"
_noteFavorited1:
title:"Sternengucker"
description:"Eine Notiz als Favorit markiert"
_myNoteFavorited1:
title:"Hilfreich"
title:"Sternensucher"
description:"Ein anderer Benutzer hat eine deiner Notizen als Favoriten markiert"
_profileFilled:
title:"Perfekte Vorbereitung"
description:"Fülle dein Profil aus"
_markedAsCat:
title:"Das Königreich der Katzen"
description:"Markiere dein Profil als Katze"
flavor:"Einen Namen bekommst du später~ "
title:"Ich der Kater"
description:"Markiere dein Konto als Katze"
flavor:"Einen Namen bekommst du später. "
_following1:
title:"Immer auf dem neusten Stand"
title:"Das Folgen beginnt"
description:"Du folgst deiner ersten Person"
_following10:
title:"Folge ihnen... folge ihnen..."
description:"Du folgst über 10 Leuten"
_following50:
title:"Lieblingsposter"
title:"Viele Freunde"
description:"Du folgst über 50 Leuten"
_following100:
title:"Die Top 100"
title:"100 Freunde"
description:"Du folgst über 100 Leuten"
_following300:
title:"Folgen, folgen, folgen!"
title:"Freundeüberschuss"
description:"Du folgst über 300 Leuten"
_followers1:
title:"Der erste Follower"
@ -1387,7 +1418,7 @@ _achievements:
title:"Beliebt"
description:"Die Anzahl deiner Follower hat 100 überschritten"
_followers300:
title:"Teil des Schiffs, Teil der Crew"
title:"Eine geordnete Reihe, bitte!"
description:"Die Anzahl deiner Follower hat 300 überschritten"
_followers500:
title:"Funkmast"
@ -1396,31 +1427,31 @@ _achievements:
title:"Influencer"
description:"Die Anzahl deiner Follower hat 1000 überschritten"
_collectAchievements30:
title:"Sammler der Erfolge"
title:"Sammler der Errungenschaften"
description:"Schalte 30 Errungenschaften frei"
_viewAchievements3min:
title:"Ausstellung"
title:"Fan von Errungenschaften"
description:"Schau dir die Liste deiner Errungenschaften für mindestens 3 Minuten an"
_iLoveMisskey:
title:"I Love Sharkey"
description:"Sende \"I ❤ #Sharkey\""
flavor:"Danke, dass du Sharkey verwendest! - vom Entwicklerteam"
title:"I Love Misskey"
description:"Sende \"I ❤ #Misskey\""
flavor:"Danke, dass du Misskey verwendest! - vom Entwicklerteam"
_foundTreasure:
title:"Schatzsuche"
description:"Du hast einen verborgenen Schatz gefunden"
_client30min:
title:"Kurze Pause"
description:"Habe Sharkey für mindestens 30 Minuten geöffnet"
description:"Habe Misskey für mindestens 30 Minuten geöffnet"
_client60min:
title:"Munter mit Sharkey"
description:"Habe Sharkey für mindestens 60 Minuten geöffnet"
title:"Munter mit Misskey"
description:"Habe Misskey für mindestens 60 Minuten geöffnet"
_noteDeletedWithin1min:
title:"Katze auf der Tastatur"
title:"Ups"
description:"Lösche eine Notiz innerhalb von 1 Minute nachdem sie gesendet wurde"
_postedAtLateNight:
title:"Nachtaktiv"
description:"Sende mitten in der Nacht eine Notiz"
flavor:"Echte Katzen sind nunmal nachtaktiv~"
flavor:"Geh bald schlafen."
_postedAt0min0sec:
title:"Zeitansage"
description:"Sende um 00:00 eine Notiz"
@ -1435,7 +1466,7 @@ _achievements:
title:"Analyst"
description:"Schau dir die Messwerte der Instanz an"
_outputHelloWorldOnScratchpad:
title:"Junghacker"
title:"Hallo Welt!"
description:"Gib \"hello world\" in der Testumgebung aus"
_open3windows:
title:"Splitscreen"
@ -1444,25 +1475,25 @@ _achievements:
title:"Zyklischer Verweis"
description:"Versuche, in Drive einen Zirkelbezug von Ordnern herzustellen"
_reactWithoutRead:
title:"Erst reagieren, dann lesen"
title:"Hast du das wirklich gelesen?"
description:"Reagiere auf eine Notiz mit mindestens 100 Zeichen innerhalb von 3 Sekunden der Erstellung der Notiz"
_clickedClickHere:
title:"Klicke hier"
description:"Du hast hier geklickt"
_justPlainLucky:
title:"Glück 100"
title:"Pures Glück"
description:"Kann alle 10 Sekunden mit einer Warscheinlichkeit von 0.005% erhalten werden"
_setNameToSyuilo:
title:"Gottkomplex"
description:"Setze deinen Namen auf \"syuilo\""
_passedSinceAccountCreated1:
title:"Davon erzähle ich meinen Enkeln"
title:"Einjahresjubiläum"
description:"Seit der Erstellung deines Kontos ist 1 Jahr vergangen"
_passedSinceAccountCreated2:
title:"Diese Software hat mich zur Katze gemacht"
title:"Zweijahresjubiläum"
description:"Seit der Erstellung deines Kontos sind 2 Jahre vergangen"
_passedSinceAccountCreated3:
title:"Goldene Zeit"
title:"Dreijahresjubiläum"
description:"Seit der Erstellung deines Kontos sind 3 Jahre vergangen"
_loggedInOnBirthday:
title:"Alles Gute Zum Geburtstag"
@ -1470,18 +1501,20 @@ _achievements:
_loggedInOnNewYearsDay:
title:"Frohes Neujahr"
description:"Logge dich am Neujahrstag ein"
flavor:"Auf ein weiteres tolles Jahr in diesem Universum!"
flavor:"Auf ein weiteres tolles Jahr in dieser Instanz"
_cookieClicked:
title:"Kreise klicken für Omas"
title:"Ein Spiel, in dem du auf einen Keks klickst"
description:"Den Keks geklickt"
flavor:"Bist du hier richtig?"
_brainDiver:
title:"Brain Diver"
description:"Sende den Link zu Brain Diver"
flavor:"Sharkey-Sharkey La-Tu-Ma"
flavor:"Misskey-Misskey La-Tu-Ma"
_smashTestNotificationButton:
title:"Testüberfluss"
description:"Betätige den Benachrichtigungstest mehrfach innerhalb einer extrem kurzen Zeitspanne"
_tutorialCompleted:
description:"Tutorial abgeschlossen"
_role:
new:"Rolle erstellen"
edit:"Rolle bearbeiten"
@ -1492,7 +1525,9 @@ _role:
assignTarget:"Zuweisungsart"
descriptionOfAssignTarget:"<b>Manuell</b> bedeutet, dass die Liste der Benutzer einer Rolle manuell verwaltet wird.\n<b>Konditional</b> bedeutet, dass die Liste der Benutzer einer Rolle durch eine Bedingung automatisch verwaltet wird."
manual:"Manuell"
manualRoles:"Manuelle Rollen"
conditional:"Konditional"
conditionalRoles:"Bedingte Rolle"
condition:"Bedingung"
isConditionalRole:"Dies ist eine konditionale Rolle."
isPublic:"Öffentliche Rolle"
@ -1534,13 +1569,14 @@ _role:
webhookMax:"Maximale Anzahl an Webhooks"
clipMax:"Maximale Anzahl an Clips"
noteEachClipsMax:"Maximale Anzahl an Notizen innerhalb eines Clips"
userListMax:"Maximale Anzahl an Benutzern in einer Benutzerliste"
userEachUserListsMax:"Maximale Anzahl an Benutzerlisten"
userListMax:"Maximale Anzahl an Benutzerlisten"
userEachUserListsMax:"Maximale Anzahl an Benutzern in einer Benutzerliste"
rateLimitFactor:"Versuchsanzahl"
descriptionOfRateLimitFactor:"Je niedriger desto weniger restriktiv, je höher destro restriktiver."
canHideAds:"Kann Werbung ausblenden"
canSearchNotes:"Nutzung der Notizsuchfunktion"
canUseTranslator:"Verwendung des Übersetzers"
avatarDecorationLimit:"Maximale Anzahl an Profilbilddekorationen, die angebracht werden können"
_condition:
isLocal:"Lokaler Benutzer"
isRemote:"Benutzer fremder Instanz"
@ -1569,6 +1605,7 @@ _emailUnavailable:
disposable:"Wegwerf-Email-Adressen können nicht verwendet werden"
mx:"Dieser Email-Server ist ungültig"
smtp:"Dieser Email-Server antwortet nicht"
banned:"Du kannst dich mit dieser E-Mail-Adresse nicht registrieren"
_ffVisibility:
public:"Öffentlich"
followers:"Nur für Follower sichtbar"
@ -1637,12 +1674,12 @@ _registry:
domain:"Domain"
createKey:"Schlüssel erstellen"
_aboutMisskey:
about:"Sharkey ist Open-Source-Software basiert auf Misskey welche von syuilo seit 2014 entwickelt wird."
about:"Misskey ist Open-Source-Software, welche von syuilo seit 2014 entwickelt wird."
contributors:"Hauptmitwirkende"
allContributors:"Alle Mitwirkenden"
source:"Quellcode"
translation:"Sharkey übersetzen"
donate:"An Sharkey spenden"
translation:"Misskey übersetzen"
donate:"An Misskey spenden"
morePatrons:"Wir schätzen ebenso die Unterstützung vieler anderer hier nicht gelisteter Personen sehr. Danke! 🥰"
patrons:"UnterstützerInnen"
projectMembers:"Projektmitglieder"
@ -1747,7 +1784,6 @@ _theme:
buttonBg:"Hintergrund von Schaltflächen"
buttonHoverBg:"Hintergrund von Schaltflächen (Mouseover)"
inputBorder:"Rahmen von Eingabefeldern"
listItemHoverBg:"Hintergrund von Listeneinträgen (Mouseover)"
title:"Das Farbschema konnte nicht installiert werden"
description:"Während der Installation des Farbschemas ist ein Problem aufgetreten. Bitte versuche es erneut. Detaillierte Fehlerinformationen können über die Javascript-Konsole abgerufen werden."
chooseServerOnMisskeyHub:"Elegir un servidor en Misskey Hub"
specifyServerHost:"Especifica una instancia directamente"
inputHostName:"Introduzca el dominio"
general:"General"
wallpaper:"Fondo de pantalla"
setWallpaper:"Establecer fondo de pantalla"
@ -235,7 +244,7 @@ done: "Terminado"
processing:"Procesando"
preview:"Vista previa"
default:"Predeterminado"
defaultValueIs:"Predeterminado"
defaultValueIs:"Por defecto: {value}"
noCustomEmojis:"No hay emojis personalizados"
noJobs:"No hay trabajos"
federating:"Federando"
@ -302,7 +311,7 @@ location: "Lugar"
theme:"Tema"
themeForLightMode:"Tema para usar en Modo Linterna"
themeForDarkMode:"Tema para usar en Modo Oscuro"
light:"Linterna"
light:"Claro"
dark:"Oscuro"
lightThemes:"Tema claro"
darkThemes:"Tema oscuro"
@ -400,6 +409,7 @@ name: "Nombre"
antennaSource:"Origen de la antena"
antennaKeywords:"Palabras clave para recibir"
antennaExcludeKeywords:"Palabras clave para excluir"
antennaExcludeBots:"Excluir bots"
antennaKeywordsDescription:"Separar con espacios es una declaración AND, separar con una linea nueva es una declaración OR"
notifyAntenna:"Notificar nueva nota"
withFileAntenna:"Sólo notas con archivos adjuntados"
@ -492,8 +502,8 @@ uiLanguage: "Idioma de visualización de la interfaz"
aboutX:"Acerca de {x}"
emojiStyle:"Estilo de emoji"
native:"Nativo"
disableDrawer:"No mostrar los menús en cajones"
showNoteActionsOnlyHover:"Mostrar acciones de la nota sólo al pasar el cursor"
showReactionsCount:"Mostrar el número de reacciones en las notas"
noHistory:"No hay datos en el historial"
signinHistory:"Historial de ingresos"
enableAdvancedMfm:"Habilitar MFM avanzado"
@ -690,10 +700,7 @@ abuseReported: "Se ha enviado el reporte. Muchas gracias."
reporter:"Reportador"
reporteeOrigin:"Reportar a"
reporterOrigin:"Origen del reporte"
forwardReport:"Transferir un informe a una instancia remota"
forwardReportIsAnonymous:"No puede ver su información de la instancia remota y aparecerá como una cuenta anónima del sistema"
send:"Enviar"
abuseMarkAsResolved:"Marcar reporte como resuelto"
openInNewTab:"Abrir en una Nueva Pestaña"
openInSideView:"Abrir en una vista al costado"
defaultNavigationBehaviour:"Navegación por defecto"
@ -991,6 +998,7 @@ neverShow: "No mostrar de nuevo"
remindMeLater:"Recordar después"
didYouLikeMisskey:"¿Te gusta Misskey?"
pleaseDonate:"{host} usa el software gratuito Misskey. Por favor ¡Considera donar al proyecto principal para que podamos continuar!"
correspondingSourceIsAvailable:"El código fuente correspondiente se encuentra disponible en {anchor}"
roles:"Roles"
role:"Rol"
noRole:"Rol no encontrado"
@ -1041,6 +1049,9 @@ resetPasswordConfirm: "¿Realmente quieres cambiar la contraseña?"
sensitiveWords:"Palabras sensibles"
sensitiveWordsDescription:"La visibilidad de todas las notas que contienen cualquiera de las palabras configuradas serán puestas en \"Inicio\" automáticamente. Puedes enumerás varias separándolas con saltos de línea"
sensitiveWordsDescription2:"Si se usan espacios se crearán expresiones AND y las palabras subsecuentes con barras inclinadas se convertirán en expresiones regulares."
prohibitedWords:"Palabras explícitas"
prohibitedWordsDescription:"Activa un error cuando se intenta publicar una nota que contiene una o varias palabras prohibidas. Se pueden establecer varias palabras, una por línea."
prohibitedWordsDescription2:"Si se usan espacios se crearán expresiones AND y las palabras subsecuentes con barras inclinadas se convertirán en expresiones regulares."
hiddenTags:"Hashtags ocultos"
hiddenTagsDescription:"Selecciona las etiquetas que no se mostrarán en tendencias. Una etiqueta por línea."
notesSearchNotAvailable:"No se puede buscar una nota"
@ -1059,6 +1070,8 @@ limitWidthOfReaction: "Limitar ancho de las reacciones"
noteIdOrUrl:"ID o URL de la nota"
video:"Video"
videos:"Video"
audio:"Sonido"
audioFiles:"Sonido"
dataSaver:"Ahorro de datos"
accountMigration:"Migración de cuenta"
accountMoved:"Este usuario se movió a una nueva cuenta:"
@ -1086,6 +1099,8 @@ preservedUsernames: "Nombre de usuario reservado"
preservedUsernamesDescription:"La lista de nombres de usuario para reservar tienen que separarse con saltos de línea.\nEstos estarán indisponibles durante la creación de cuentas, pero pueden ser usados para que los administradores puedan crear esas cuentas manualmente. Las cuentas existentes con esos nombres de usuario no se verán afectadas."
createNoteFromTheFile:"Componer una nota desde éste archivo"
archive:"Archivo"
archived:"Archivado"
unarchive:"Desarchivar"
channelArchiveConfirmTitle:"¿Seguro de archivar {name}?"
channelArchiveConfirmDescription:"Un canal archivado no aparecerá en la lista de canales ni en los resultados. Las nuevas publicaciones tampoco serán añadidas."
notificationRecieveConfig:"Ajustes de Notificaciones"
mutualFollow:"Os seguís mutuamente"
followingOrFollower:"Siguiendo o seguidor"
fileAttachedOnly:"Solo notas con archivos"
showRepliesToOthersInTimeline:"Mostrar respuestas a otros en la línea de tiempo"
hideRepliesToOthersInTimeline:"Ocultar respuestas a otros en la línea de tiempo"
@ -1162,6 +1178,13 @@ hideRepliesToOthersInTimelineAll: "Ocultar tus respuestas a otros usuarios que s
confirmShowRepliesAll:"Esta operación es irreversible. ¿Confirmas que quieres mostrar tus respuestas a otros usuarios que sigues en tu línea de tiempo?"
confirmHideRepliesAll:"Esta operación es irreversible. ¿Confirmas que quieres ocultar tus respuestas a otros usuarios que sigues en tu línea de tiempo?"
externalServices:"Servicios Externos"
sourceCode:"Código fuente"
sourceCodeIsNotYetProvided:"El código fuente aún no está disponible. Contacta con el administrador para solucionarlo."
repositoryUrl:"URL del repositorio"
repositoryUrlDescription:"Si estás usando Misskey tal cual (sin cambios en el código fuente), entra en https://github.com/misskey-dev/misskey"
repositoryUrlOrTarballRequired:"Si no has publicado un repositorio aún, deberás publicar un tarball en su lugar. Mira el archivo .config/example.yml para más información."
feedback:"Comentarios"
feedbackUrl:"URL de comentarios"
impressum:"Impressum"
impressumUrl:"Impressum URL"
impressumDescription:"En algunos países, como Alemania, la inclusión del operador de datos (el Impressum) es requerido legalmente para sitios web comerciales."
withSensitive:"Mostrar notas que contengan material sensible"
userSaysSomethingSensitive:"La publicación de {name} contiene material sensible"
enableHorizontalSwipe:"Deslice para cambiar de pestaña"
loading:"Cargando"
surrender:"detener"
gameRetry:"Reintentar"
notUsePleaseLeaveBlank:"Dejar en blanco si no se usa"
useTotp:"Introduce la contraseña de un solo uso"
useBackupCode:"Usar códigos de respaldo"
launchApp:"Ejecutar la app"
useNativeUIForVideoAudioPlayer:"Usar la interfaz del navegador cuando se reproduce audio y vídeo"
keepOriginalFilename:"Mantener el nombre original del archivo"
noDescription:"No hay descripción"
alwaysConfirmFollow:"Confirmar siempre cuando se sigue a alguien"
_delivery:
stop:"Suspendido"
_type:
none:"Publicando"
_bubbleGame:
howToPlay:"Cómo jugar"
hold:"Mantener"
_score:
score:"Puntos"
scoreYen:"Cantidad de dinero ganada"
highScore:"Puntuación más alta"
maxChain:"Número máximo de cadenas"
yen:"{yen} Yenes"
estimatedQty:"{qty} Piezas"
scoreSweets:"{onigiriQtyWithUnit} Onigiris"
_howToPlay:
section1:"Ajuste la posición y deje caer el objeto en la caja"
section2:"Cuando dos objetos del mismo tipo se tocan, cambian a otro tipo y consigues puntos"
section3:"El juego termina cuando la caja se desborda de objetos. ¡Intenta conseguir una puntuación alta al juntar objetos mientras evitas desbordar la caja!"
_announcement:
forExistingUsers:"Solo para usuarios registrados"
forExistingUsersDescription:"Este anuncio solo se mostrará a aquellos usuarios registrados en el momento de su publicación. Si se deshabilita esta opción, aquellos usuarios que se registren tras su publicación también lo verán."
@ -1314,7 +1372,7 @@ _serverSettings:
_accountMigration:
moveFrom:"Trasladar de otra cuenta a ésta"
moveFromSub:"Crear un alias para otra cuenta."
moveFromLabel:"Cuenta desde la que se realiza el traslado:"
moveFromLabel:"Cuenta desde la que se realiza el traslado #{n}"
moveFromDescription:"Si quieres transferir seguidores de otra cuenta a esta cuenta y trasladarlos, tendrás que crear un alias aquí. Asegúrate de crearlo antes de realizar el traslado. Introduce la cuenta desde la que estás moviendo los seguidores así: @person@instance.com"
moveTo:"Mover esta cuenta a una nueva"
moveToLabel:"Cuenta destino:"
@ -1573,8 +1631,11 @@ _achievements:
description:"Tutorial completado"
_bubbleGameExplodingHead:
title:"🤯"
description:"El objeto más grande en el juego de burbujas"
_bubbleGameDoubleExplodingHead:
title:"Doble 🤯"
description:"Dos de los objetos más grandes en el juego de burbujas al mismo tiempo"
flavor:"Puedes llenar el bento un poco de esta forma 🤯 🤯."
_role:
new:"Crear rol"
edit:"Editar rol"
@ -1615,6 +1676,7 @@ _role:
gtlAvailable:"Explorar la línea de tiempo global"
ltlAvailable:"Explorar la línea de tiempo local"
canPublicNote:"Permitir la publicación"
mentionMax:"Número máximo de menciones en una nota"
canInvite:"Puede crear códigos de invitación"
inviteLimit:"Límite de invitaciones"
inviteLimitCycle:"Enfriamiento del límite de invitaciones"
@ -1638,8 +1700,13 @@ _role:
canUseTranslator:"Uso de traductor"
avatarDecorationLimit:"Número máximo de decoraciones de avatar"
_condition:
roleAssignedTo:"Asignado a roles manuales"
isLocal:"Usuario local"
isRemote:"Usuario remoto"
isCat:"Usuarios Gato"
isBot:"Usuarios Bot"
isSuspended:"Usuario suspendido"
isLocked:"Cuentas privadas"
createdLessThan:"Menos de X han pasado desde la creación de la cuenta"
createdMoreThan:"Más de X han pasado desde la creación de la cuenta"
followersLessThanOrEq:"Tiene X o menos seguidores"
@ -1709,6 +1776,7 @@ _plugin:
installWarn:"Por favor no instale plugins que no son de confianza"
manage:"Gestionar plugins"
viewSource:"Ver la fuente"
viewLog:"Ver log"
_preferencesBackups:
list:"Respaldos creados"
saveNew:"Guardar nuevo respaldo"
@ -1738,6 +1806,8 @@ _aboutMisskey:
contributors:"Principales colaboradores"
allContributors:"Todos los colaboradores"
source:"Código fuente"
original:"Original"
thisIsModifiedVersion:"{name} usa una versión modificada de Misskey."
translation:"Traducir Misskey"
donate:"Donar a Misskey"
morePatrons:"Muchas más personas nos apoyan. Muchas gracias🥰"
@ -1845,7 +1915,6 @@ _theme:
buttonBg:"Fondo de botón"
buttonHoverBg:"Fondo de botón (hover)"
inputBorder:"Borde de los campos de entrada"
listItemHoverBg:"Fondo de elemento de listas (hover)"
driveFolderBg:"Fondo de capeta del drive"
wallpaperOverlay:"Transparencia del fondo de pantalla"
badge:"Medalla"
@ -1857,8 +1926,6 @@ _sfx:
note:"Notas"
noteMy:"Nota (a mí mismo)"
notification:"Notificaciones"
antenna:"Antena receptora"
channel:"Notificaciones del canal"
reaction:"Al seleccionar una reacción"
_soundSettings:
driveFile:"Usar un archivo de audio en Drive"
@ -1896,7 +1963,6 @@ _2fa:
registerTOTP:"Registrar aplicación autenticadora"
step1:"Primero, instale en su dispositivo la aplicación de autenticación {a} o {b} u otra."
step2:"Luego, escanee con la aplicación el código QR mostrado en pantalla."
step2Click:"Clicking on this QR code will allow you to register 2FA to your security key or phone authenticator app.\nTocar este código QR te permitirá registrar la autenticación 2FA a tu llave de seguridad o aplicación autenticadora."
step2Uri:"Si usas una aplicación de escritorio, introduce en ella la siguiente URL."
step3Title:"Ingresa un código de autenticación"
step3:"Para terminar, ingrese el token mostrado en la aplicación."
@ -1920,6 +1986,7 @@ _2fa:
backupCodesDescription:"En caso de que no puedas usar tu aplicación de autenticación, podrás usar los códigos de respaldo que figuran abajo para acceder a tu cuenta. Asegúrate de guardar en lugar seguro los códigos de respaldo. Cada uno de los códigos de respaldo es de un solo uso."
backupCodeUsedWarning:"Has usado todos los códigos de respaldo. Si dejas de tener acceso a tu aplicación de autenticación, no podrás volver a iniciar sesión en tu cuenta. Por favor, reconfigura tu aplicación de autenticación lo antes posible."
backupCodesExhaustedWarning:"Has usado todos los códigos de respaldo. Si dejas de tener acceso a tu aplicación de autenticación, no podrás volver a iniciar sesión en la cuenta que figura arriba. Por favor, reconfigura tu aplicación de autenticación lo antes posible."
moreDetailedGuideHere:"Guía detallada"
_permissions:
"read:account": "Ver información de la cuenta"
"write:account": "Editar información de la cuenta"
@ -1961,6 +2028,7 @@ _permissions:
"write:admin:delete-account": "Eliminar cuentas de usuario"
"write:admin:delete-all-files-of-a-user": "Eliminar todos los archivos de un usuario"
"read:admin:index-stats": "Ver datos indexados"
"read:admin:table-stats": "Ver estadísticas de las tablas de la base de datos"
"read:admin:user-ips": "Ver dirección IP de usuario"
"read:admin:meta": "Ver metadatos de la instancia"
"write:admin:reset-password": "Restablecer contraseñas de usuario"
@ -1969,7 +2037,6 @@ _permissions:
"read:admin:server-info": "Ver información del servidor"
"read:admin:show-moderation-log": "Ver log de moderación"
"read:admin:show-user": "Ver información privada de usuario"
"read:admin:show-users": "Ver información privada de usuario"
"write:admin:suspend-user": "Suspender cuentas de usuario"
"write:admin:unset-user-avatar": "Quitar avatares de usuario"
"write:admin:unset-user-banner": "Quitar banner de usuarios"
@ -2087,7 +2154,6 @@ _poll:
remainingHours:"Quedan {h} horas y {m} minutos para que finalice"
remainingMinutes:"Quedan {m} minutos y {s} segundos para que finalice"
remainingSeconds:"Quedan {s} segundos para que finalice"
multiple:"Opciones múltiples"
_visibility:
public:"Público"
publicDescription:"Visible para todos los usuarios"
@ -2181,6 +2247,7 @@ _play:
title:"Título"
script:"Script"
summary:"Descripción"
visibilityDescription:"Poniéndola como privada significa que no será visible en tu perfil, pero cualquiera que tenga la URL aún podrá acceder a ella."
_pages:
newPage:"Crear página"
editPage:"Editar página"
@ -2225,6 +2292,8 @@ _pages:
section:"Sección"
image:"Imagen"
button:"Botón"
dynamic:"Bloques Dinámicos"
dynamicDescription:"Los bloques dinámicos están obsoletos. A partir de ahora, utiliza {play} por favor."
note:"Nota embebida"
_note:
id:"Id de la nota"
@ -2270,6 +2339,7 @@ _notification:
followRequestAccepted:"El seguimiento fue aceptado"
roleAssigned:"Rol asignado"
achievementEarned:"Logro desbloqueado"
login:"Iniciar sesión"
app:"Notificaciones desde aplicaciones"
_actions:
followBack:"Te sigue de vuelta"
@ -2319,7 +2389,6 @@ _webhookSettings:
createWebhook:"Crear Webhook"
name:"Nombre"
secret:"Secreto"
events:"Eventos de webhook"
active:"Activado"
_events:
follow:"Cuando se sigue a alguien"
@ -2329,6 +2398,12 @@ _webhookSettings:
renote:"Cuando reciba un \"re-note\""
reaction:"Cuando se recibe una reacción"
mention:"Cuando hay una mención"
_abuseReport:
_notificationRecipient:
_recipientType:
mail:"Correo"
webhook:"Webhook"
keywords:"Palabras Clave"
_moderationLogTypes:
createRole:"Rol creado"
deleteRole:"Rol eliminado"
@ -2427,6 +2502,19 @@ _dataSaver:
_code:
title:"Resaltar código"
description:"Si se usa resaltado de código en MFM, etc., no se cargará hasta pulsar en ello. El resaltado de sintaxis requiere la descarga de archivos de definición para cada lenguaje de programación. Debido a esto, al deshabilitar la carga automática de estos archivos reducirás el consumo de datos."
_hemisphere:
N:"Hemisferio norte"
S:"Hemisferio sur"
_reversi:
reversi:"Reversi"
rules:"Reglas"
won:"{name} ha ganado"
total:"Total"
_urlPreviewSetting:
timeout:"Timeout de la carga de vista previa de las URLs (ms)"
introMisskey:"Bienvenue! Misskey est un service de microblogage décentralisé, libre et ouvert.\nÉcrivez des «notes» et partagez ce qui se passe à l’instant présent, autour de vous avec les autres 📡\nLa fonction «réactions», vous permet également d’ajouter une réaction rapide aux notes des autres utilisateur·rice·s 👍\nExplorons un nouveau monde 🚀"
poweredByMisskeyDescription:"{nom} est l'un des services propulsés par la plateforme ouverte <b>Misskey</b> (appelée \"instance Misskey\")."
poweredByMisskeyDescription:"{name} est l'un des services propulsés par la plateforme ouverte <b>Misskey</b> (appelée \"instance Misskey\")."
monthAndDay:"{day}/{month}"
search:"Rechercher"
notifications:"Notifications"
@ -129,7 +129,7 @@ overwriteFromPinnedEmojisForReaction: "Remplacer par les émojis épinglés pour
overwriteFromPinnedEmojis:"Remplacer par les émojis épinglés globalement"
reactionSettingDescription2:"Déplacer pour réorganiser, cliquer pour effacer, utiliser « + » pour ajouter."
rememberNoteVisibility:"Se souvenir de la visibilité des notes"
attachCancel:"Supprimer le fichier attaché"
attachCancel:"Supprimer le fichier joint"
deleteFile:"Fichier supprimé"
markAsSensitive:"Marquer comme sensible"
unmarkAsSensitive:"Supprimer le marquage comme sensible"
@ -380,8 +380,11 @@ hcaptcha: "hCaptcha"
enableHcaptcha:"Activer hCaptcha"
hcaptchaSiteKey:"Clé du site"
hcaptchaSecretKey:"Clé secrète"
mcaptcha:"mCaptcha"
enableMcaptcha:"Activer mCaptcha"
mcaptchaSiteKey:"Clé du site"
mcaptchaSecretKey:"Clé secrète"
mcaptchaInstanceUrl:"URL de l'instance de mCaptcha"
recaptcha:"reCAPTCHA"
enableRecaptcha:"Activer reCAPTCHA"
recaptchaSiteKey:"Clé du site"
@ -397,9 +400,10 @@ name: "Nom"
antennaSource:"Source de l’antenne"
antennaKeywords:"Mots clés à recevoir"
antennaExcludeKeywords:"Mots clés à exclure"
antennaExcludeBots:"Exclure les comptes robot"
antennaKeywordsDescription:"Séparer avec des espaces pour la condition AND. Séparer avec un saut de ligne pour une condition OR."
notifyAntenna:"Me notifier pour les nouvelles notes"
withFileAntenna:"Notes ayant des attachements uniquement"
withFileAntenna:"Notes ayant des fichiers joints uniquement"
enableServiceworker:"Activer ServiceWorker"
antennaUsersDescription:"Saisissez un seul nom d’utilisateur·rice par ligne"
caseSensitive:"Sensible à la casse"
@ -489,8 +493,8 @@ uiLanguage: "Langue d’affichage de l’interface"
aboutX:"À propos de {x}"
emojiStyle:"Style des émojis"
native:"Natif"
disableDrawer:"Les menus ne s'affichent pas dans le tiroir"
showNoteActionsOnlyHover:"Afficher les actions de note uniquement au survol"
showReactionsCount:"Afficher le nombre de réactions des notes"
noHistory:"Pas d'historique"
signinHistory:"Historique de connexion"
enableAdvancedMfm:"Activer la MFM avancée"
@ -523,7 +527,7 @@ hideThisNote: "Masquer cette note"
showFeaturedNotesInTimeline:"Afficher les notes des Tendances dans le fil d'actualité"
objectStorage:"Stockage d'objets"
useObjectStorage:"Utiliser le stockage d'objets"
objectStorageBaseUrl:"Base URL"
objectStorageBaseUrl:"URL de base"
objectStorageBaseUrlDesc:"Préfixe d’URL utilisé pour construire l’URL vers le référencement d’objet (média). Spécifiez son URL si vous utilisez un CDN ou un proxy, sinon spécifiez l’adresse accessible au public selon le guide de service que vous allez utiliser. P.ex. 'https://<bucket>.s3.amazonaws.com' pour AWS S3 et 'https://storage.googleapis.com/<bucket>' pour GCS."
objectStorageBucket:"Bucket"
objectStorageBucketDesc:"Veuillez spécifier le nom du compartiment utilisé sur le service configuré."
@ -538,6 +542,7 @@ objectStorageUseSSLDesc: "Désactivez cette option si vous n'utilisez pas HTTPS
objectStorageUseProxy:"Se connecter via proxy"
objectStorageUseProxyDesc:"Désactivez cette option si vous n'utilisez pas de proxy pour la connexion API"
objectStorageSetPublicRead:"Régler sur « public » lors de l'envoi"
s3ForcePathStyleDesc:"Si s3ForcePathStyle est activé, le nom du compartiment doit être spécifié comme une partie du chemin de l'URL plutôt que le nom d'hôte. Il faudra peut-être l'activer lors de l'utilisation d'une instance de Minio autohébergée, etc."
serverLogs:"Journal du serveur"
deleteAll:"Supprimer tout"
showFixedPostForm:"Afficher le formulaire de publication en haut du fil d'actualité"
@ -628,6 +633,7 @@ medium: "Moyen"
small:"Petit"
generateAccessToken:"Générer un jeton d'accès"
permission:"Autorisations"
adminPermission:"Droits de l'administrateur"
enableAll:"Tout activer"
disableAll:"Tout désactiver"
tokenRequested:"Autoriser l'accès au compte"
@ -651,7 +657,7 @@ testEmail: "Tester la distribution de courriel"
wordMute:"Filtre de mots"
hardWordMute:"Filtre de mots dur"
regexpError:"Erreur d’expression régulière"
regexpErrorDescription:"Une erreur s'est produite dans l'expression régulière sur la ligne {ligne} de votre mot muet {tab} :"
regexpErrorDescription:"Une erreur s'est produite dans l'expression régulière sur la ligne {line} de votre mot muet {tab} :"
instanceMute:"Instance en sourdine"
userSaysSomething:"{name} a dit quelque chose"
makeActive:"Activer"
@ -671,6 +677,7 @@ useGlobalSettingDesc: "S'il est activé, les paramètres de notification de votr
other:"Autre"
regenerateLoginToken:"Régénérer le jeton de connexion"
regenerateLoginTokenDescription:"Générer un nouveau jeton d'authentification. Cette opération ne devrait pas être nécessaire ; lors de la génération d'un nouveau jeton, tous les appareils seront déconnectés. "
theKeywordWhenSearchingForCustomEmoji:"Ce mot-clé est utilisé lors de la recherche des émojis personnalisés."
setMultipleBySeparatingWithSpace:"Vous pouvez en définir plusieurs, en les séparant par des espaces."
fileIdOrUrl:"ID du fichier ou URL"
behavior:"Comportement"
@ -684,10 +691,7 @@ abuseReported: "Le rapport est envoyé. Merci."
reporter:"Signalé par"
reporteeOrigin:"Origine du signalement"
reporterOrigin:"Signalé par"
forwardReport:"Transférer le signalement à l’instance distante"
forwardReportIsAnonymous:"L'instance distante ne sera pas en mesure de voir vos informations et apparaîtra comme un compte anonyme du système."
send:"Envoyer"
abuseMarkAsResolved:"Marquer le signalement comme résolu"
openInNewTab:"Ouvrir dans un nouvel onglet"
openInSideView:"Ouvrir en vue latérale"
defaultNavigationBehaviour:"Navigation par défaut"
@ -985,6 +989,7 @@ neverShow: "Ne plus afficher"
remindMeLater:"Peut-être plus tard"
didYouLikeMisskey:"Avez-vous aimé Misskey ?"
pleaseDonate:"Misskey est le logiciel libre utilisé par {host}. Merci de faire un don pour que nous puissions continuer à le développer !"
correspondingSourceIsAvailable:"Le code source correspondant est disponible à {anchor}"
roles:"Rôles"
role:"Rôles"
noRole:"Aucun rôle"
@ -999,6 +1004,7 @@ youCannotCreateAnymore: "Vous avez atteint la limite de création."
cannotPerformTemporaryDescription:"Temporairement indisponible puisque le nombre d'opérations dépasse la limite. Veuillez patienter un peu, puis réessayer."
invalidParamError:"Paramètres invalides"
invalidParamErrorDescription:"Les paramètres de la requête sont invalides. Il s'agit généralement d'un bogue, mais cela peut aussi être causé par un excès de caractères ou quelque chose de similaire."
permissionDeniedError:"Opération refusée"
permissionDeniedErrorDescription:"Ce compte n'a pas la permission d'effectuer cette opération."
internalServerErrorDescription:"Une erreur inattendue s'est produite sur le serveur."
copyErrorInfo:"Copier les détails de l’erreur"
joinThisServer:"S'inscrire à cette instance"
exploreOtherServers:"Trouver une autre instance"
@ -1031,12 +1038,20 @@ nonSensitiveOnlyForLocalLikeOnlyForRemote: "Non sensibles seulement (mentions j'
rolesAssignedToMe:"Rôles attribués à moi"
resetPasswordConfirm:"Souhaitez-vous réinitialiser votre mot de passe?"
sensitiveWords:"Mots sensibles"
sensitiveWordsDescription:"Définir la visibilité des notes contenant un mot défini ici au fil principal automatiquement. Vous pouvez définir plusieurs valeurs en les séparant par des sauts de ligne."
sensitiveWordsDescription2:"Séparer par une espace pour créer une expression AND ; entourer de barres obliques pour créer une expression régulière."
prohibitedWords:"Mots interdits"
prohibitedWordsDescription:"Publier une note contenant un mot défini ici produira une erreur. Vous pouvez définir plusieurs valeurs en les séparant par des sauts de ligne."
prohibitedWordsDescription2:"Séparer par une espace pour créer une expression AND ; entourer de barres obliques pour créer une expression régulière."
hiddenTags:"Hashtags cachés"
hiddenTagsDescription:"Les hashtags définis ne s'afficheront pas dans les tendances. Vous pouvez définir plusieurs hashtags en faisant un saut de ligne."
notesSearchNotAvailable:"La recherche de notes n'est pas disponible."
license:"Licence"
unfavoriteConfirm:"Vraiment supprimer des favoris ?"
myClips:"Mes clips"
drivecleaner:"Nettoyeur du Disque"
retryAllQueuesNow:"Réessayer tous les fils d'attente immédiatement"
retryAllQueuesConfirmTitle:"Vraiment réessayer ?"
retryAllQueuesConfirmText:"Cela peut augmenter temporairement la charge du serveur."
enableChartsForRemoteUser:"Générer les graphiques pour les utilisateurs distants"
enableChartsForFederatedInstances:"Générer les graphiques pour les instances distantes"
@ -1046,6 +1061,8 @@ limitWidthOfReaction: "Limiter la largeur maximale des réactions et les affiche
noteIdOrUrl:"Identifiant de la note ou URL"
video:"Vidéo"
videos:"Vidéos"
audio:"Audio"
audioFiles:"Fichiers audio"
dataSaver:"Économiseur de données"
accountMigration:"Migration de compte"
accountMoved:"Cet·te utilisateur·rice a migré son compte vers :"
@ -1070,9 +1087,13 @@ pleaseConfirmBelowBeforeSignup: "Pour vous inscrire sur cette instance, vous dev
pleaseAgreeAllToContinue:"Pour continuer, veuillez accepter tous les champs ci-dessus."
preservedUsernamesDescription:"Énumérez les noms d'utilisateur à réserver, séparés par des nouvelles lignes. Les noms d'utilisateur spécifiés ici ne seront plus utilisables lors de la création d'un compte, sauf la création manuelle par un administrateur. De plus, les comptes existants ne seront pas affectés."
createNoteFromTheFile:"Rédiger une note de ce fichier"
channelArchiveConfirmDescription:"Une fois archivé, le canal n'apparaîtra plus dans la liste des canaux ni dans les résultats de recherche, et la publication des nouvelles notes sera impossible."
thisChannelArchived:"Ce canal a été archivé."
displayOfNote:"Affichage de la note"
initialAccountSetting:"Configuration initiale du profil"
inviteLimitExceeded:"Vous avez atteint la limite de codes d'invitation que vous pouvez générer."
createLimitRemaining:"Codes d'invitation pouvant être créés:{limit} restants"
inviteLimitResetCycle:"Vous pouvez créer jusqu'à {limit} codes d'invitation en {time}."
expirationDate:"Date d’expiration"
noExpirationDate:"Ne pas expirer"
inviteCodeUsedAt:"Code d'invitation utilisé à"
@ -1110,16 +1136,21 @@ used: "Utilisé"
expired:"Expiré"
doYouAgree:"Êtes-vous d’accord?"
beSureToReadThisAsItIsImportant:"Assurez-vous de le lire; c'est important."
iHaveReadXCarefullyAndAgree:"J'ai lu le contenu de « {x} » et donne mon accord."
dialog:"Dialogue"
icon:"Avatar"
forYou:"Pour vous"
currentAnnouncements:"Annonces actuelles"
pastAnnouncements:"Annonces passées"
youHaveUnreadAnnouncements:"Il y a des annonces non lues."
useSecurityKey:"Suivez les instructions de votre navigateur ou de votre appareil pour utiliser une clé de sécurité ou une clé d'accès."
replies:"Réponses"
renotes:"Renotes"
loadReplies:"Inclure les réponses"
loadConversation:"Afficher la conversation"
pinnedList:"Liste épinglée"
keepScreenOn:"Garder l'écran toujours allumé"
verifiedLink:"Votre propriété de ce lien a été vérifiée"
notifyNotes:"Notifier à propos des nouvelles notes"
unnotifyNotes:"Ne pas notifier pour la publication des notes"
authentication:"Authentification"
@ -1129,6 +1160,8 @@ showRenotes: "Afficher les renotes"
edited:"Modifié"
notificationRecieveConfig:"Paramètres des notifications"
mutualFollow:"Abonnement mutuel"
followingOrFollower:"Abonnement ou abonné"
fileAttachedOnly:"Avec fichiers joints seulement"
showRepliesToOthersInTimeline:"Afficher les réponses aux autres dans le fil"
hideRepliesToOthersInTimeline:"Masquer les réponses aux autres dans le fil"
showRepliesToOthersInTimelineAll:"Afficher les réponses de toutes les personnes que vous suivez dans le fil"
@ -1136,6 +1169,12 @@ hideRepliesToOthersInTimelineAll: "Masquer les réponses de toutes les personnes
confirmShowRepliesAll:"Cette opération est irréversible. Voulez-vous vraiment afficher les réponses de toutes les personnes que vous suivez dans le fil ?"
confirmHideRepliesAll:"Cette opération est irréversible. Voulez-vous vraiment masquer les réponses de toutes les personnes que vous suivez dans le fil ?"
externalServices:"Services externes"
sourceCode:"Code source"
sourceCodeIsNotYetProvided:"Le code source n'est pas encore disponible. Veuillez signaler ce problème aux administrateurs."
repositoryUrl:"URL du dépôt"
repositoryUrlDescription:"Entrez l'URL du dépôt où se trouve le code source ici. Si vous utilisez Misskey tel quel (sans changer le code source), entrez https://github.com/misskey-dev/misskey"
feedback:"Commentaires"
feedbackUrl:"URL pour les commentaires"
impressum:"Impressum"
impressumUrl:"URL de l'impressum"
impressumDescription:"Dans certains pays comme l'Allemagne, il est obligatoire d'afficher les informations sur l'opérateur d'un site (un impressum)."
overwriteContentConfirm:"Voulez-vous remplacer le contenu actuel ?"
seasonalScreenEffect:"Effet d'écran saisonnier"
decorate:"Décorer"
addMfmFunction:"Insérer MFM"
enableQuickAddMfmFunction:"Afficher le sélecteur de MFM avancé"
bubbleGame:"Jeu de bulles"
sfx:"Effets sonores"
soundWillBePlayed:"Le son sera joué"
showReplay:"Voir le replay"
replay:"Rediffusion"
replaying:"En cours de rediffusion"
endReplay:"Arrêter la rediffusion"
copyReplayData:"Copier les données de la rediffusion"
ranking:"Classement"
lastNDays:"Derniers {n} jours"
backToTitle:"Retourner au titre"
hemisphere:"Votre région"
withSensitive:"Afficher les notes contenant des fichiers joints sensibles"
userSaysSomethingSensitive:"Note de {name} contenant des fichiers joints sensibles"
enableHorizontalSwipe:"Glisser pour changer d'onglet"
loading:"Chargement en cours"
surrender:"Annuler"
gameRetry:"Réessayer"
launchApp:"Lancer l'app"
inquiry:"Contact"
_delivery:
status:"Statut de la diffusion"
stop:"Suspendu·e"
_type:
none:"Publié"
_bubbleGame:
howToPlay:"Comment jouer"
hold:"Réserver"
_score:
score:"Score"
scoreYen:"Montant gagné"
highScore:"Meilleur score"
maxChain:"Nombre maximum de chaînes"
yen:"{yen} yens"
estimatedQty:"{qty} pièces"
_announcement:
forExistingUsers:"Pour les utilisateurs existants seulement"
needConfirmationToRead:"Exiger la confirmation de la lecture"
needConfirmationToReadDescription:"Si activé, afficher un dialogue de confirmation quand l'annonce est marquée comme lue. Aussi, elle sera exclue de « marquer tout comme lu » ."
end:"Archiver l'annonce"
tooManyActiveAnnouncementDescription:"Un grand nombre d'annonces actives peut baisser l'expérience utilisateur. Considérez d'archiver les annonces obsolètes."
readConfirmTitle:"Marquer comme lu ?"
readConfirmText:"Cela marquera le contenu de « {title} » comme lu."
shouldNotBeUsedToPresentPermanentInfo:"Puisque cela pourrait nuire considérablement à l'expérience utilisateur pour les nouveaux utilisateurs, il est recommandé d'utiliser les annonces pour afficher des informations temporaires plutôt que des informations persistantes."
dialogAnnouncementUxWarn:"Avoir deux ou plus annonces de style dialogue en même temps pourrait nuire considérablement à l'expérience utilisateur. Veuillez les utiliser avec caution."
silence:"Ne pas me notifier"
silenceDescription:"Si activée, vous ne recevrez pas de notifications sur les annonces et n'aurez pas besoin de les marquer comme lues."
_initialAccountSetting:
accountCreated:"Votre compte a été créé avec succès !"
letsStartAccountSetup:"Procédons au réglage initial du compte."
letsFillYourProfile:"Commençons par configurer votre profil !"
profileSetting:"Paramètres du profil"
privacySetting:"Paramètres de confidentialité"
initialAccountSettingCompleted:"Configuration du profil terminée avec succès !"
youCanContinueTutorial:"Vous pouvez procéder au tutoriel sur l'utilisation de {nom}(Misskey) ou vous arrêter ici et commencer à l'utiliser immédiatement."
youCanContinueTutorial:"Vous pouvez procéder au tutoriel sur l'utilisation de {name}(Misskey) ou vous arrêter ici et commencer à l'utiliser immédiatement."
startTutorial:"Démarrer le tutoriel"
skipAreYouSure:"Désirez-vous ignorer la configuration du profil ?"
_initialTutorial:
@ -1239,7 +1322,7 @@ _initialTutorial:
doItToContinue:"Marquez le fichier joint comme sensible pour procéder."
_done:
title:"Le tutoriel est terminé ! 🎉"
description:"Les fonctionnalités introduites ici ne sont que quelques-unes. Pour savoir plus sur l'utilisation de Misskey, veuillez consulter {lien}."
description:"Les fonctionnalités introduites ici ne sont que quelques-unes. Pour savoir plus sur l'utilisation de Misskey, veuillez consulter {link}."
_timelineDescription:
home:"Sur le fil principal, vous pouvez voir les notes des utilisateurs auxquels vous êtes abonné·e."
local:"Sur le fil local, vous pouvez voir les notes de tous les utilisateurs sur cette instance."
@ -1263,7 +1346,7 @@ _achievements:
earnedAt:"Date d'obtention"
_types:
_notes1:
title:"Je viens tout juste de configurer mon shonk"
title:"Je viens tout juste de configurer mon msky"
description:"Publiez votre première note"
flavor:"Passez un bon moment avec Misskey !"
_notes10:
@ -1301,10 +1384,13 @@ _achievements:
title:"Régulier III"
description:"Se connecter pour un total de 400 jours"
_login500:
title:"Expert I"
description:"Se connecter pour un total de 500 jours"
_login600:
title:"Expert II"
description:"Se connecter pour un total de 600 jours"
_login700:
title:"Expert III"
description:"Se connecter pour un total de 700 jours"
_login800:
description:"Se connecter pour un total de 800 jours"
@ -1397,11 +1483,14 @@ _role:
edit:"Modifier le rôle"
name:"Nom du rôle"
description:"Description du rôle"
permission:"Rôle et autorisations"
permission:"Autorisations du rôle"
assignTarget:"Attribuer"
manual:"Manuel"
manualRoles:"Rôles manuels"
conditional:"Conditionnel"
conditionalRoles:"Rôles conditionnels"
condition:"Condition"
isConditionalRole:"Ceci est un rôle conditionnel."
isPublic:"Rôle public"
options:"Options"
policies:"Stratégies"
@ -1612,7 +1701,6 @@ _theme:
buttonBg:"Arrière-plan du bouton"
buttonHoverBg:"Arrière-plan du bouton (survolé)"
inputBorder:"Cadre de la zone de texte"
listItemHoverBg:"Arrière-plan d'item de liste (survolé)"
driveFolderBg:"Arrière-plan du dossier de disque"
wallpaperOverlay:"Superposition de fond d'écran"
badge:"Badge"
@ -1624,8 +1712,6 @@ _sfx:
note:"Nouvelle note"
noteMy:"Ma note"
notification:"Notifications"
antenna:"Réception de l’antenne"
channel:"Notifications de canal"
reaction:"Lors de la sélection de la réaction"
_soundSettings:
driveFile:"Utiliser un effet sonore sur le Disque"
@ -1929,7 +2015,7 @@ _notification:
unreadAntennaNote:"Antenne {name}"
roleAssigned:"Rôle attribué"
emptyPushNotificationMessage:"Les notifications push ont été mises à jour"
achievementEarned:"Accomplissement"
achievementEarned:"Accomplissement déverrouillé"
testNotification:"Tester la notification"
reactedBySomeUsers:"{n} utilisateur·rice·s ont réagi"
renotedBySomeUsers:"{n} utilisateur·rice·s ont renoté"
description:"Si la notation de mise en évidence du code est utilisée, par exemple dans la MFM, elle ne sera pas chargée tant qu'elle n'aura pas été tapée. La mise en évidence du code nécessite le chargement du fichier de définition de chaque langue à mettre en évidence, mais comme ces fichiers ne sont plus chargés automatiquement, on peut s'attendre à une réduction du trafic de données."
didYouLikeMisskey:"Apakah kamu mulai menyukai Misskey?"
pleaseDonate:"{host} menggunakan perangkat lunak bebas yaitu Misskey. Kami sangat mengapresiasi sekali donasi dari kamu agar pengembangan Misskey tetap dapat berlanjut!"
correspondingSourceIsAvailable:"Sumber kode terkait tersedia di {anchor}"
roles:"Peran"
role:"Peran"
noRole:"Peran tidak temukan"
@ -1038,6 +1051,9 @@ resetPasswordConfirm: "Yakin untuk mereset kata sandimu?"
sensitiveWords:"Kata sensitif"
sensitiveWordsDescription:"Visibilitas dari semua catatan mengandung kata yang telah diatur akan dijadikan \"Beranda\" secara otomatis. Kamu dapat mendaftarkan kata tersebut lebih dari satu dengan menuliskannya di baris baru."
sensitiveWordsDescription2:"Menggunakan spasi akan membuat ekspresi AND dan kata kunci disekitarnya dengan garis miring akan mengubahnya menjadi ekspresi reguler."
prohibitedWords:"Kata yang dilarang"
prohibitedWordsDescription:"Menyalakan kesalahan ketika mencoba untuk memposting catatan dengan set kata-kata yang termasuk. Beberapa kata dapat diatur dan dipisahkan dengan baris baru."
prohibitedWordsDescription2:"Menggunakan spasi akan membuat ekspresi AND dan kata kunci disekitarnya dengan garis miring akan mengubahnya menjadi ekspresi reguler."
hiddenTags:"Tagar tersembunyi"
hiddenTagsDescription:"Pilih tanda yang mana akan tidak diperlihatkan dalam daftar tren.\nTanda lebih dari satu dapat didaftarkan dengan tiap baris."
notesSearchNotAvailable:"Pencarian catatan tidak tersedia."
@ -1056,6 +1072,8 @@ limitWidthOfReaction: "Batasi lebar maksimum reaksi dan tampilkan dalam ukuran t
noteIdOrUrl:"ID catatan atau URL"
video:"Video"
videos:"Video"
audio:"Suara"
audioFiles:"Berkas Suara"
dataSaver:"Penghemat data"
accountMigration:"Pemindahan akun"
accountMoved:"Pengguna ini telah berpindah ke akun baru:"
@ -1135,7 +1153,7 @@ currentAnnouncements: "Pengumuman Saat Ini"
pastAnnouncements:"Pengumuman Terdahulu"
youHaveUnreadAnnouncements:"Terdapat pengumuman yang belum dibaca"
useSecurityKey:"Mohon ikuti instruksi peramban atau perangkat kamu untuk menggunakan kunci pengaman atau passkey."
showRepliesToOthersInTimeline:"Tampilkan balasan ke pengguna lain dalam lini masa"
hideRepliesToOthersInTimeline:"Sembunyikan balasan ke orang lain dari lini masa"
@ -1159,6 +1178,13 @@ hideRepliesToOthersInTimelineAll: "Sembuyikan balasan ke lainnya dari semua oran
confirmShowRepliesAll:"Operasi ini tidak dapat diubah. Apakah kamu yakin untuk menampilkan balasan ke lainnya dari semua orang yang kamu ikuti di lini masa?"
confirmHideRepliesAll:"Operasi ini tidak dapat diubah. Apakah kamu yakin untuk menyembunyikan balasan ke lainnya dari semua orang yang kamu ikuti di lini masa?"
externalServices:"Layanan eksternal"
sourceCode:"Sumber kode"
sourceCodeIsNotYetProvided:"Sumber kode belum tersedia. Hubungi admin untuk memperbaiki masalah ini."
repositoryUrl:"URL Repositori"
repositoryUrlDescription:"Jika kamu menggunakan Misskey begitu saja (tanpa ada perubahan dalam kode sumber), masukkan https://github.com/misskey-dev/misskey"
repositoryUrlOrTarballRequired:"Apabila kamu masih mempublikasikan repositori, kamu setidaknya harus menyediakan berkas tarball. Lihat .config/example.yml untuk informasi lebih lanjut."
feedback:"Umpan balik"
feedbackUrl:"URL Umpan balik"
impressum:"Impressum"
impressumUrl:"Tautan Impressum"
impressumDescription:"Pada beberapa negara seperti Jerman, inklusi dari informasi kontak operator (sebuah Impressum) diperlukan secara legal untuk situs web komersil."
enableQuickAddMfmFunction:"Tampilkan pemilih MFM tingkat lanjut"
bubbleGame:"Bubble Game"
sfx:"Efek Suara"
soundWillBePlayed:"Suara yang akan dimainkan"
showReplay:"Lihat tayangan ulang"
replay:"Tayangan ulang"
replaying:"Menayangkan Ulang"
endReplay:"Keluat dari tayangan ulang"
copyReplayData:"Salin data tayangan ulang"
ranking:"Peringkat"
lastNDays:"{n} hari terakhir"
backToTitle:"Ke Judul"
hemisphere:"Letak kamu tinggal"
withSensitive:"Lampirkan catatan dengan berkas sensitif"
userSaysSomethingSensitive:"Postingan oleh {name} mengandung konten sensitif"
enableHorizontalSwipe:"Geser untuk mengganti tab"
loading:"Memuat..."
surrender:"Batalkan"
gameRetry:"Coba lagi"
notUsePleaseLeaveBlank:"Kosongi bila tidak digunakan"
useTotp:"Gunakan TOTP"
useBackupCode:"Gunakan kode cadangan"
launchApp:"Luncurkan Aplikasi"
useNativeUIForVideoAudioPlayer:"Gunakan antarmuka peramban ketika memainkan video dan audio"
keepOriginalFilename:"Simpan nama berkas asli"
keepOriginalFilenameDescription:"Apabila pengaturan ini dimatikan, nama berkas akan diganti dengan string acak secara otomatis ketika kamu mengunggah berkas."
noDescription:"Tidak ada deskripsi"
alwaysConfirmFollow:"Selalu konfirmasi ketika mengikuti"
inquiry:"Hubungi kami"
tryAgain:"Silahkan coba lagi."
_delivery:
status:"Status pengiriman"
stop:"Ditangguhkan"
resume:"Lanjutkan pengiriman"
_type:
none:"Sedang menyiarkan langsung"
manuallySuspended:"Ditangguhkan manual"
goneSuspended:"Sedang ditangguhkan untuk penghapusan peladen"
autoSuspendedForNotResponding:"Sedang ditangguhkan karena peladen tidak menjawab"
_bubbleGame:
howToPlay:"Cara bermain"
hold:"Tahan"
_score:
score:"Skor"
scoreYen:"Jumlah uang didapat"
highScore:"Skor tertinggi"
maxChain:"Jumlah skor berantai"
yen:"{yen} Yen"
estimatedQty:"{qty} buah"
scoreSweets:"{onigiriQtyWithUnit} onigiri"
_howToPlay:
section1:"Atur posisi dan jatuhkan obyek ke dalam kotak."
section2:"Ketika dua obyek menyentuh tipe yang sama satu sama lain, obyek tersebut akan berganti dan kamu mendapatkan poin skor."
section3:"Permainan berakhir jika obyek memenuhi kotak. Capai skor tertinggi dengan menggabungkan obyek bersama sambil menghindari obyek tersebut memenuhi kotak permainan!"
_announcement:
forExistingUsers:"Hanya pengguna yang telah ada"
forExistingUsersDescription:"Pengumuman ini akan dimunculkan ke pengguna yang sudah ada dari titik waktu publikasi jika dinyalakan. Apabila dimatikan, mereka yang baru mendaftar setelah publikasi ini akan juga melihatnya."
@ -1237,24 +1310,59 @@ _initialTutorial:
reply:"Klik pada tombol ini untuk membalas ke sebuah pesan. Bisa juga untuk membalas ke sebuah balasan dan melanjutkannya seperti percakapan selayaknya utas."
renote:"Kamu dapat membagikan catatan ke lini masa milikmu. Kamu juga dapat mengutipnya dengan komentarmu."
reaction:"Kamu dapat menambahkan reaksi ke Catatan. Detil lebih lanjut akan dijelaskan di halaman berikutnya."
menu:"Kamu dapat melihat detil catatan, menyalin tautan, dan melakukan aksi lainnya."
_reaction:
title:"Apa itu Reaksi?"
description:"Catatan dapat direaksi dengan berbagai emoji. Reaksi memperbolehkan kamu untuk mengekspresikan nuansa yang tidak dapat disampaikan hanya dengan sebuah \"suka\"."
letsTryReacting:"Reaksi dapat ditambahkan dengan mengklik tombol '+' pada catatan. Coba lakukan mereaksi contoh catatan ini!"
reactToContinue:"Tambahkan reaksi untuk melanjutkan."
reactNotification:"Kamu akan menerima notifikasi real0time ketika seseorang mereaksi catatan kamu."
reactDone:"Kamu dapat mengurungkan reaksi dengan menekan tombol '-'."
_timeline:
title:"Konsep Lini Masa"
description1:"Misskey menyediakan berbagai lini masa sesuai dengan penggunaan (beberapa mungkin tidak tersedia karena bergantung dengan kebijakan peladen)."
home:"Kamu dapat melihat catatan dari akun yang kamu ikuti."
local:"Kamu dapat melihat catatan dari semua pengguna yang ada pada peladen ini."
social:"Catatan dari linimasa Beranda dan Lokal akan ditampilkan."
global:"Kamu dapat melihat catatan dari semua peladen yang terhubung."
description2:"Kamu dapat mengganti linimasa di bagian atas layar kamu kapan saja."
description3:"Sebagai tambahan, terdapat juga linimasa daftar dan linimasa kanal. Untuk detil lebih lanjut, silahkan melihat ke tautan berikut: {link}."
_postNote:
title:"Pengaturan posting Catatan"
description1:"Ketika memposting catatan ke Misskey, terdapat beberapa opsi yang tersedia. Form posting terlihat seperti ini."
_visibility:
description:"Kamu dapat membatasi siapa yang dapat melihat catatan kamu."
public:"Perlihatkan catatan ke semua pengguna."
home:"Hanya publik ke lini masa Beranda. Pengguna yang mengunjungi profilmu melalui pengikut dan renote dapat melihatnya."
followers:"Perlihatkan ke pengikut saja. Hanya pengikut yang dapat melihat postinganmu dan tidak dapat direnote oleh siapapun."
direct:"Hanya perlihatkan ke pengguna spesifik dan penerima akan diberi tahu. Dapat juga digunakan sebagai alternatif dari pesan langsung."
doNotSendConfidencialOnDirect1:"Hati-hati ketika mengirim informasi yang sensitif!"
doNotSendConfidencialOnDirect2:"Admin dari peladen dapat melihat apa yang kamu tulis. Hati-hati dengan informasi sensitif ketika mengirimkan catatan langsung kepada pengguna pada peladen yang tidak dipercaya."
localOnly:"Memposting dengan opsi ini tidak akan memfederasi catatan ke peladen lain. Pengguna pada peladen lain tidak akan dapat melihat catatan ini secara langsung, meskipun dengan pengaturan visibilitas yang sudah diatur di atas."
_cw:
title:"Peringatan Konten (CW)"
description:"Alih-alih isinya, konten yang ditulis dalam kolom 'komentar' akan ditampilkan. Menekan 'Selebihnya' akan menampilkan isi konten."
_exampleNote:
cw:"Peringatan: Bikin Lapar!"
note:"Baru aja makan donat berlapis coklat 🍩😋"
useCases:"Fungsi ini digunakan ketika mengikutik panduan peladen untuk catatan yang dibutuhkan atau untuk membatasi diri dari teks sensitif atau spoiler."
_howToMakeAttachmentsSensitive:
title:"Bagaimana menandai lampiran sebagai sensitif?"
description:"Fungsi ini digunakan untuk lampiran yang dibutuhkan oleh panduan peladen atau sesuatu yang seharusnya tidak boleh dibiarkan begitu saja dengan cara menambahkan penanda \"sensitif\"."
tryThisFile:"Coba tandai gambar yang dilampirkan pada form ini sebagai sensitif!"
_exampleNote:
note:"Ups, kesalahan banget buka penutup wadah natto..."
method:"Untuk menandai lampiran sebagai sensitif, klik gambar pada berkas, buka menu, lalu klik \"Tandai sebagai sensitif\"."
sensitiveSucceeded:"Ketika melampirkan berkas, mohon atur sensitifitas sesuai dengan panduan peladen."
doItToContinue:"Tandai berkas terlampir sebagai sensitif untuk melanjutkan."
_done:
title:"Kamu telah menyelesaikan tutorial! 🎉"
description:"Fungsi yang diperkenalkan di sini merupakan sebagian kecil dari fitur yang ada. Untuk pemahaman lebih detil dalam menggunakan Misskey, kamu dapat merujuk ke {link}."
_timelineDescription:
home:"Pada linimasa Beranda, kamu dapat melihat catatan dari akun yang kamu ikuti."
local:"Pada linimasa Lokal, kamu dapat melihat catatan dari semua pengguna yang ada pada peladen ini."
social:"Linimasa sosial menampilkan catatan dari kedua linimasa Beranda dan Lokal."
global:"Pada linimasa Global, kamu dapat melihat catatan dari semua peladen yang terhubung."
_serverRules:
description:"Daftar peraturan akan ditampilkan sebelum pendaftaran. Mengatur ringkasan dari Syarat dan Ketentuan sangat direkomendasikan."
_serverSettings:
@ -1266,6 +1374,9 @@ _serverSettings:
manifestJsonOverride:"Ambil alih manifest.json"
shortName:"Nama pendek"
shortNameDescription:"Inisial untuk nama instansi yang dapat ditampilkan apabila nama lengkap resmi terlalu panjang."
fanoutTimelineDescription:"Dapat meningkatkan performa dalam pengambilan data linimasa dan mengurangi beban pada database ketika dinyalakan. Sebagai gantinya, penggunaan memory pada Redis akan meningkan. Pertimbangkan untuk menonaktifkan fitur ini jika mengalami kekurangan memori pada server atau menyebabkan server tidak stabil."
fanoutTimelineDbFallback:"Fallback ke database"
fanoutTimelineDbFallbackDescription:"Ketika diaktifkan, lini masa akan fallback ke database untuk melakukan kueri tambahan apabila linimasa tidak disimpan dalam cache. Menonaktifkan ini dapat mengurangi beban server dengan mengeliminasi proses fallback, namun dapat berakibat membatasi jarak data dari lini masa yang dapat diambil."
_accountMigration:
moveFrom:"Pindahkan akun lain ke akun ini"
moveFromSub:"Buat alias ke akun lain"
@ -1523,6 +1634,16 @@ _achievements:
_smashTestNotificationButton:
title:"Tes overflow"
description:"Picu tes notifikasi secara berulang dalam waktu yang sangat pendek"
_tutorialCompleted:
title:"Ijazah Sekolah Dasar Misskey"
description:"Tutorial selesai"
_bubbleGameExplodingHead:
title:"🤯"
description:"Obyek paling terbesar di permainan gelembung"
_bubbleGameDoubleExplodingHead:
title:"Ganda 🤯"
description:"Dua dari obyek paling terbesar pada permainan gelembung di waktu yang sama"
flavor:"Kamu dapat mengisi kotak makan siang seperti ini 🤯 🤯."
_role:
new:"Buat peran"
edit:"Sunting peran"
@ -1533,7 +1654,9 @@ _role:
assignTarget:"Tipe tugas"
descriptionOfAssignTarget:"<b>Manual</b> untuk mengganti secara manual siapa yang mendapatkan peran ini dan siapa yang tidak.\n<b>Kondisional</b> untuk pengguna secara otomatis dimasukkan atau dihapus dari peran berdasarkan kondisi yang ditentukan."
manual:"Manual"
manualRoles:"Peran manual"
conditional:"Kondisional"
conditionalRoles:"Peran kondisional"
condition:"Kondisi"
isConditionalRole:"Ini adalah peran kondisional"
isPublic:"Publikkan Peran"
@ -1561,6 +1684,7 @@ _role:
gtlAvailable:"Dapat melihat lini masa global"
ltlAvailable:"Dapat melihat lini masa lokal"
canPublicNote:"Dapat mengirim catatan publik"
mentionMax:"Jumlah maksimum sebutan dalam sebuah catatan"
canInvite:"Dapat membuat kode undangan instansi"
inviteLimit:"Batas jumlah undangan"
inviteLimitCycle:"Interval Penerbitan Kode Undangan"
@ -1582,9 +1706,16 @@ _role:
canHideAds:"Dapat menyembunyikan iklan"
canSearchNotes:"Penggunaan pencarian catatan"
canUseTranslator:"Penggunaan penerjemah"
avatarDecorationLimit:"Jumlah maksimum dekorasi avatar yang dapat diterapkan"
_condition:
roleAssignedTo:"Ditugaskan ke peran manual"
isLocal:"Pengguna lokal"
isRemote:"Pengguna remote"
isCat:"Pengguna Kucing"
isBot:"Pengguna Bot"
isSuspended:"Pengguna yang ditangguhkan"
isLocked:"Akun privat"
isExplorable:"Pengguna efektif yang akunnya dapat dicari"
createdLessThan:"Telah berlalu kurang dari X sejak pembuatan akun"
createdMoreThan:"Telah berlalu lebih dari X sejak pembuatan akun"
followersLessThanOrEq:"Memiliki pengikut X atau kurang dari tersebut"
@ -1610,8 +1741,9 @@ _emailUnavailable:
disposable:"Alamat surel temporer tidak dapat digunakan"
mx:"Peladen alamat surel ini tidak valid"
smtp:"Peladen alamat surel ini tidak merespon"
banned:"Kamu tidak dapat mendaftar dengan alamat surel ini"
_ffVisibility:
public:"Terbitkan"
public:"Publik"
followers:"Tampil untuk pengikut saja"
private:"Tersembunyi"
_signup:
@ -1653,6 +1785,7 @@ _plugin:
installWarn:"Mohon jangan memasang plugin yang tidak dapat dipercayai."
manage:"Manajemen plugin"
viewSource:"Lihat sumber"
viewLog:"Tampilkan log"
_preferencesBackups:
list:"Cadangan yang dibuat"
saveNew:"Simpan cadangan baru"
@ -1682,10 +1815,13 @@ _aboutMisskey:
contributors:"Kontributor utama"
allContributors:"Seluruh kontributor"
source:"Sumber kode"
original:"Asli"
thisIsModifiedVersion:"{name} menggunakan versi modifikasi dari Misskey yang asli."
translation:"Terjemahkan Misskey"
donate:"Donasi ke Misskey"
morePatrons:"Kami sangat mengapresiasi dukungan dari banyak penolong lain yang tidak tercantum disini. Terima kasih! 🥰"
patrons:"Pendukung"
projectMembers:"Anggota proyek"
_displayOfSensitiveMedia:
respect:"Sembunyikan media yang ditandai sensitif"
ignore:"Tampilkan media yang ditandai sensitif"
@ -1710,6 +1846,7 @@ _channel:
notesCount:"terdapat {n} catatan"
nameAndDescription:"Nama dan deskripsi"
nameOnly:"Hanya nama"
allowRenoteToExternal:"Perbolehkan catat ulang dan kutipan di luar dari kanal"
_menuDisplay:
sideFull:"Horisontal"
sideIcon:"Horisontal (Ikon)"
@ -1787,7 +1924,6 @@ _theme:
buttonBg:"Latar belakang tombol"
buttonHoverBg:"Latar belakang tombol (Mengambang)"
inputBorder:"Batas bidang masukan"
listItemHoverBg:"Latar belakang daftar item (Mengambang)"
driveFolderBg:"Latar belakang folder drive"
wallpaperOverlay:"Lapisan wallpaper"
badge:"Lencana"
@ -1799,8 +1935,6 @@ _sfx:
note:"Catatan"
noteMy:"Catatan (Saya)"
notification:"Notifikasi"
antenna:"Penerimaan Antenna"
channel:"Notifikasi Kanal"
reaction:"Ketika memilih reaksi"
_soundSettings:
driveFile:"Menggunakan berkas audio dalam Drive"
@ -1838,7 +1972,6 @@ _2fa:
registerTOTP:"Daftarkan aplikasi autentikator"
step1:"Pertama, pasang aplikasi autentikasi (seperti {a} atau {b}) di perangkat kamu."
step2:"Lalu, pindai kode QR yang ada di layar."
step2Click:"Mengeklik kode QR ini akan membolehkanmu untuk mendaftarkan 2FA ke security-key atau aplikasi autentikator ponsel."
step2Uri:"Masukkan URI berikut jika kamu menggunakan program desktop"
step3Title:"Masukkan kode autentikasi"
step3:"Masukkan token yang telah disediakan oleh aplikasimu untuk menyelesaikan pemasangan."
@ -1862,6 +1995,7 @@ _2fa:
backupCodesDescription:"Kamu dapat menggunakan kode ini untuk mendapatkan akses ke akun kamu apabila berada dalam situasi tidak dapat menggunakan aplikasi autentikasi 2-faktor yang kamu miliki. Setiap kode hanya dapat digunakan satu kali. Mohon simpan kode ini di tempat yang aman."
backupCodeUsedWarning:"Kode cadangan telah digunakan. Mohon mengatur ulang autentikasi 2-faktor secepatnya apabila kamu sudah tidak dapat menggunakannya lagi."
backupCodesExhaustedWarning:"Semua kode cadangan telah digunakan. Apabila kamu kehilangan akses pada aplikasi autentikasi 2-faktor milikmu, kamu tidak dapat mengakses akun ini lagi. Mohon atur ulang autentikasi 2-faktor kamu."
moreDetailedGuideHere:"Berikut panduan detilnya"
_permissions:
"read:account": "Lihat informasi akun"
"write:account": "Sunting informasi akun"
@ -1899,6 +2033,54 @@ _permissions:
"write:flash": "Sunting Play"
"read:flash-likes": "Lihat daftar Play yang disukai"
"write:flash-likes": "Sunting daftar Play yang disukai"
shareAccess:"Apakah kamu ingin mengijinkan \"{name}\" untuk mengakses akun ini?"
@ -1953,6 +2135,7 @@ _widgets:
_userList:
chooseList:"Pilih daftar"
clicker:"Pengeklik"
birthdayFollowings:"Pengguna yang merayakan hari ulang tahunnya hari ini"
_cw:
hide:"Sembunyikan"
show:"Lihat konten"
@ -2073,6 +2256,7 @@ _play:
title:"Judul"
script:"Script"
summary:"Deskripsi"
visibilityDescription:"Membuat catatan ini privat berarti tidak akan terlihat pada profil kamu, namun siapapun yang memiliki URL dari catatan ini akan dapat mengaksesnya."
_pages:
newPage:"Buat halaman baru"
editPage:"Sunting halaman"
@ -2117,6 +2301,8 @@ _pages:
section:"Bagian"
image:"Gambar"
button:"Tombol"
dynamic:"Blok Dinamis"
dynamicDescription:"Blok ini telah dihapus. Mohon gunakan {play} dari sekarang."
note:"Catatan yang ditanam"
_note:
id:"ID Catatan"
@ -2146,8 +2332,10 @@ _notification:
sendTestNotification:"Kirim tes notifikasi"
notificationWillBeDisplayedLikeThis:"Notifikasi akan terlihat seperti ini"
reactedBySomeUsers:"{n} orang memberikan reaksi"
likedBySomeUsers:"{n} pengguna menyukai catatan kamu"
renotedBySomeUsers:"{n} orang telah merenote"
followedBySomeUsers:"{n} orang telah mengikuti"
flushNotification:"Bersihkan notifikasi"
_types:
all:"Semua"
note:"Catatan baru"
@ -2162,6 +2350,7 @@ _notification:
followRequestAccepted:"Permintaan mengikuti disetujui"
roleAssigned:"Peran Diberikan"
achievementEarned:"Pencapaian didapatkan"
login:"Masuk"
app:"Notifikasi dari aplikasi tertaut"
_actions:
followBack:"Ikuti Kembali"
@ -2209,9 +2398,9 @@ _drivecleaner:
orderByCreatedAtAsc:"Tanggal (Naik)"
_webhookSettings:
createWebhook:"Buat Webhook"
modifyWebhook:"Sunting Webhook"
name:"Nama"
secret:"Secret"
events:"Webhook Events"
active:"Aktif"
_events:
follow:"Ketika mengikuti pengguna"
@ -2221,6 +2410,11 @@ _webhookSettings:
renote:"Ketika direnote"
reaction:"Ketika menerima reaksi"
mention:"Ketika sedang disebut"
deleteConfirm:"Apakah kamu yakin ingin menghapus Webhook?"
_abuseReport:
_notificationRecipient:
_recipientType:
mail:"Surel"
_moderationLogTypes:
createRole:"Peran telah dibuat"
deleteRole:"Peran telah dihapus"
@ -2245,6 +2439,7 @@ _moderationLogTypes:
resetPassword:"Atur ulang kata sandi"
suspendRemoteInstance:"Instansi luar telah ditangguhkan"
unsuspendRemoteInstance:"Instansi luar batal ditangguhkan"
updateRemoteInstanceNote:"Catatan moderasi telah diperbaharui untuk peladen luar."
description:"Jika notasi penyorotan kode digunakan di MFM, dll. Fungsi tersebut tidak akan dimuat apabila tidak diketuk. Penyorotan sintaks membutuhkan pengunduhan berkas definisi penyorotan untuk setiap bahasa pemrograman. Oleh sebab itu, menonaktifkan pemuatan otomatis dari berkas ini dilakukan untuk mengurangi jumlah komunikasi data."
_hemisphere:
N:"Bumi belahan utara"
S:"Bumi belahan selatan"
caption:"Digunakan dalam beberapa pengaturan klien untuk menentukan musim."
_reversi:
reversi:"Reversi"
gameSettings:"Pengaturan permainan"
chooseBoard:"Pilih papan"
blackOrWhite:"Hitam/Putih"
blackIs:"{name} bermain sebagai Hitam"
rules:"Aturan"
thisGameIsStartedSoon:"Permainan akan segera dimulai"
waitingForOther:"Menunggu langkah giliran dari lawan"
waitingForMe:"Menungguh langkah giliran dari kamu"
waitingBoth:"Bersiap"
ready:"Siap"
cancelReady:"Belum siap"
opponentTurn:"Giliran lawan"
myTurn:"Giliran kamu"
turnOf:"Giliran {name}"
pastTurnOf:"Giliran {name}"
surrender:"Menyerah"
surrendered:"Telah menyerah"
timeout:"Waktu habis"
drawn:"Seri"
won:"{name} menang"
black:"Hitam"
white:"Putih"
total:"Jumlah"
turnCount:"Langkah ke {count}"
myGames:"Rondeku"
allGames:"Semua ronde"
ended:"Selesai"
playing:"Sedang bermain"
isLlotheo:"Pemain dengan batu yang sedikit menang (Llotheo)"
loopedMap:"Peta melingkar"
canPutEverywhere:"Keping dapat ditaruh dimana saja"
timeLimitForEachTurn:"Batas waktu untuk gantian"
freeMatch:"Pertandingan bebas"
lookingForPlayer:"Mencari lawan..."
gameCanceled:"Permainan ini telah dibatalkan."
shareToTlTheGameWhenStart:"Bagikan permainan ke lini masa ketika dimulai"
iStartedAGame:"Permainan telah dimulai! #MisskeyReversi"
opponentHasSettingsChanged:"Lawan telah mengganti pengaturan mereka."
maximumContentLengthDescription:"Apabila Content-Length lebih besar dari nilai ini, pratinjau tidak akan dibuat."
requireContentLength:"Buat pratinjau hanya ketika Content-Length dapat didapatkan"
requireContentLengthDescription:"Apabila peladen lain tidak memberika Content-Length, pratinjau tidak akan dibuat."
userAgent:"User-Agent"
userAgentDescription:"Atur User-Agent yang digunakan untuk mengambil pratinjau. Apabila dibiarkan kosong, User-Agent bawaan akan digunakan."
summaryProxy:"Titik akhir proksi yang membuat pratinjau"
summaryProxyDescription:"Bukan untuk Misskey, namun untuk menghasilkan pratinjau menggunakan Summaly Proxy."
summaryProxyDescription2:"Parameter berikut tertautkan dengan proksi sebagai string kueri. Apabila proksi tidak mendukung tersebut, nilai di dalamnya diabaikan."
objectStorageBaseUrlDesc:"오브젝트 (미디어) 참조 링크 만들 때 쓰는 URL임다. CDN 내지 프락시를 쓴다 카멘은 그 URL을 갖다 늫고, 아이면 써먹을 서비스네 가이드를 봐봐가 공개적으로 접근할 수 있는 주소를 여 넣어 주이소. 그니께, 내가 AWS S3을 쓴다 카면은 'https://<bucket>.s3.amazonaws.com', GCS를 쓴다 카면 'https://storage.googleapis.com/<bucket>' 처럼 쓰믄 되입니더."
objectStorageBucket:"Bucket"
objectStorageBucketDesc:"써먹을 서비스의 바께쓰 이름을 여 써 주이소."
objectStorageEndpointDesc:"AWS S3을 쓸라멘 요는 비워두고, 아이멘은 그 서비스 가이드에 맞게 endpoint를 넣어 주이소. '<host>' 내지 '<host>:<port>'처럼 넣십니다."
objectStorageEndpointDesc:"AWS S3넌 비아 두고 다런 것언 거 서비스으 엔드포인트럴 서 주이소. ‘<host>’나 ‘<host>:<port>’맨치로 섭니다."
objectStorageRegion:"Region"
objectStorageRegionDesc:"'xx-east-1' 같은 region 이름을 옇어 주이소. 써먹을 서비스에 region 개념 같은 게 읎다! 카면은 대신에 'us-east-1'을 옇어 놓으이소. AWS 설정 파일이나 환경 변수를 갖다 끌어다 쓸 거면은 요는 비워 두이소."
objectStorageRegionDesc:"‘xx-east-1’맨치로 리전 이럼얼 서 주이소. 설 서비스에 리전 개넴이 어ᇝ어먼 ‘us-east-1’라고 해 두이소. 에이더블유에스 설정 파일이나 환겡 벤수가 이ᇇ어면 비아 두이소."
objectStorageUseSSL:"SSL 쓰기"
objectStorageUseSSLDesc:"API 호출할 때 HTTPS 안 쓸거면은 꺼 두이소"
objectStorageUseProxy:"연결에 프락시 사용"
@ -531,21 +534,21 @@ newNoteRecived: "새 노트 있어예"
sounds:"소리"
sound:"소리"
listen:"듣기"
none:"없음"
none:"어ᇝ엄"
showInPage:"바닥서 보기"
popout:"새 창 열기"
volume:"음량"
masterVolume:"대빵 음량"
notUseSound:"음소거하기"
useSoundOnlyWhenActive:"Misskey가 활성화되어 있을 때만 소리 내기"
@ -128,8 +147,10 @@ unblockConfirm: "Czy na pewno chcesz odblokować to konto?"
suspendConfirm:"Czy na pewno chcesz zawiesić to konto?"
unsuspendConfirm:"Czy na pewno chcesz cofnąć zawieszenie tego konta?"
selectList:"Wybierz listę"
editList:"Edytuj listę"
selectChannel:"Wybierz kanał"
selectAntenna:"Wybierz Antennę"
editAntenna:"Edytuj antenę"
selectWidget:"Wybierz widżet"
editWidgets:"Edytuj widżety"
editWidgetsExit:"Gotowe"
@ -142,11 +163,15 @@ addEmoji: "Dodaj emoji"
settingGuide:"Proponowana konfiguracja"
cacheRemoteFiles:"Przechowuj zdalne pliki w pamięci podręcznej"
cacheRemoteFilesDescription:"Gdy ta opcja jest wyłączona, zdalne pliki są ładowane bezpośrednio ze zdalnych instancji. Wyłączenie the opcji zmniejszy użycie powierzchni dyskowej, ale zwiększy transfer, ponieważ miniaturki nie będą generowane."
youCanCleanRemoteFilesCache:"Możesz wyczyścić cache poprzez kliknięcie przycisku 🗑️ w widoku menedżera plików."
cacheRemoteSensitiveFiles:"Przechowuj wrażliwe zdalne pliki w pamięci podręcznej"
cacheRemoteSensitiveFilesDescription:"Gdy ta opcja jest wyłączona, wrażliwe pliki zdalne są wczytywane bezpośrednio ze zdalnej instancji bez cacheowania."
flagAsBot:"To konto jest botem"
flagAsBotDescription:"Jeżeli ten kanał jest kontrolowany przez jakiś program, ustaw tę opcję. Jeżeli włączona, będzie działać jako flaga informująca innych programistów, aby zapobiegać nieskończonej interakcji z różnymi botami i dostosowywać wewnętrzne systemy Misskey, traktując konto jako bota."
flagAsCat:"To konto jest kotem"
flagAsCatDescription:"Przełącz tę opcję, aby konto było oznaczone jako kot."
flagShowTimelineReplies:"Pokazuj odpowiedzi na osi czasu"
flagShowTimelineRepliesDescription:"Gdy włączone, pokazuje odpowiedzi użytkowników na notatki innych użytkowników w osi czasu."
autoAcceptFollowed:"Automatycznie przyjmuj prośby o możliwość obserwacji od użytkowników, których obserwujesz"
clearCachedFilesConfirm:"Czy na pewno chcesz usunąć wszystkie zdalne pliki z pamięci podręcznej?"
blockedInstances:"Zablokowane instancje"
blockedInstancesDescription:"Wypisz nazwy hostów instancji, które powinny zostać zablokowane. Wypisane instancje nie będą mogły dłużej komunikować się z tą instancją."
silencedInstances:"Wyciszone instancje"
silencedInstancesDescription:"Wypisz nazwy hostów instancji, które chcesz wyciszyć. Wszystkie konta wymienionych instancji będą traktowane jako wyciszone, będą mogły jedynie wysyłać prośby o obserwację i nie będą mogły wspominać kont lokalnych, jeśli nie będą obserwowane. Nie będzie to miało wpływu na zablokowane instancje."
removeAreYouSure:"Czy na pewno chcesz usunąć „{x}”?"
deleteAreYouSure:"Czy na pewno chcesz usunąć „{x}”?"
resetAreYouSure:"Czy na pewno chcesz zresetować?"
areYouSure:"Na pewno?"
saved:"Zapisano"
messaging:"Wiadomości"
upload:"Wyślij"
keepOriginalUploading:"Zachowaj oryginalny obraz"
keepOriginalUploadingDescription:"Zapisuje oryginalnie przesłany obraz w niezmienionej postaci. Jeśli ta opcja jest wyłączona, po przesłaniu zostanie wygenerowana wersja do wyświetlenia w Internecie."
fromDrive:"Z dysku"
fromUrl:"Z adresu URL"
uploadFromUrl:"Wyślij z adresu URL"
@ -255,7 +285,10 @@ noMoreHistory: "Nie ma dalszej historii"
startMessaging:"Rozpocznij czat"
nUsersRead:"przeczytano przez {n}"
agreeTo:"Wyrażam zgodę na {0}"
agree:"Zatwierdź"
agreeBelow:"Zaakceptuj poniżej"
basicNotesBeforeCreateAccount:"Ważne notatki"
termsOfService:"Warunki usługi"
start:"Rozpocznij"
home:"Strona główna"
remoteUserCaution:"Te informacje mogą nie być aktualne, ponieważ użytkownik pochodzi ze zdalnej instancji."
showNoteActionsOnlyHover:"Pokazuj akcje notatek tylko po najechaniu myszką"
showReactionsCount:"Wyświetl liczbę reakcji na notatkę"
noHistory:"Brak historii"
signinHistory:"Historia logowania"
enableAdvancedMfm:"Włącz zaawansowane MFM"
enableAnimatedMfm:"Włącz animowane MFM"
doing:"Przetwarzanie..."
category:"Kategoria"
tags:"Tagi"
@ -461,6 +506,8 @@ createAccount: "Utwórz konto"
existingAccount:"Istniejące konto"
regenerate:"Wygeneruj ponownie"
fontSize:"Rozmiar czcionki"
mediaListWithOneImageAppearance:"Wysokość list multimediów z tylko jednym obrazem"
limitTo:"Limituj do {x}"
noFollowRequests:"Nie masz żadnych oczekujących próśb o możliwość obserwacji"
openImageInNewTab:"Otwórz obraz w nowej karcie"
dashboard:"Kokpit"
@ -480,6 +527,7 @@ showFeaturedNotesInTimeline: "Pokazuj wyróżnione wpisy w osi czasu"
objectStorage:"Pamięć obiektowa"
useObjectStorage:"Używaj pamięci obiektowej"
objectStorageBaseUrl:"Podstawowy URL"
objectStorageBaseUrlDesc:"Adres URL używany jako odniesienie. Podaj adres URL swojego CDN lub Proxy, gdy używasz któregokolwiek z nich.\nDla S3 użyj 'https://<bucket>.s3.amazonaws.com' a dla GCS lub równej usługi użyj 'https://storage.googleapis.com/<bucket>', itd."
objectStorageBucket:"Bucket"
objectStorageBucketDesc:"Podaj nazwę „wiadra” używaną przez konfigurowaną usługę."
objectStorageUseSSLDesc:"Wyłącz, jeżeli nie zamierzasz używać HTTPS dla połączenia z API"
objectStorageUseProxy:"Połącz przez proxy"
objectStorageUseProxyDesc:"Wyłącz, jeżeli nie zamierzasz używać proxy dla połączenia z pamięcią blokową"
objectStorageSetPublicRead:"Ustaw opcję \"public-read\" przy przesyłaniu"
s3ForcePathStyleDesc:"Jeśli opcja s3ForcePathStyle jest włączona, nazwa Bucket'u musi być zawarta w ścieżce adresu URL, a nie w nazwie hosta adresu URL. Włączenie tego ustawienia może być konieczne w przypadku użycia usług takich jak self-hosted instancja Minio."
serverLogs:"Dziennik zdarzeń"
deleteAll:"Usuń wszystkie"
showFixedPostForm:"Wyświetlaj formularz tworzenia wpisu w górnej części osi czasu"
showFixedPostFormInChannel:"Wyświetl formularz postowania w górnej części osi czasu (Kanały)"
withRepliesByDefaultForNewlyFollowed:"Domyślnie uwzględnij odpowiedzi nowo obserwowanych użytkowników w osi czasu"
newNoteRecived:"Masz nowy wpis"
sounds:"Dźwięk"
sound:"Dźwięki"
@ -504,6 +556,8 @@ showInPage: "Pokaż na stronie"
popout:"Popout"
volume:"Głośność"
masterVolume:"Głośność główna"
notUseSound:"Wyłącz dźwięk"
useSoundOnlyWhenActive:"Puszczaj dźwięki tylko, gdy Misskey jest aktywne."
details:"Szczegóły"
chooseEmoji:"Wybierz emoji"
unableToProcess:"Nie udało się dokończyć działania."
@ -524,6 +578,10 @@ output: "Wyjście"
script:"Skrypt"
disablePagesScript:"Wyłącz AiScript na Stronach"
updateRemoteUser:"Aktualizuj zdalne dane o użytkowniku"
unsetUserAvatar:"Usuń awatar"
unsetUserAvatarConfirm:"Czy na pewno chcesz usunąć awatar tego użytkownika?"
unsetUserBanner:"Usuń baner"
unsetUserBannerConfirm:"Czy na pewno chcesz usunąć baner?"
deleteAllFiles:"Usuń wszystkie pliki"
deleteAllFilesConfirm:"Czy na pewno chcesz usunąć wszystkie pliki?"
regenerateLoginTokenDescription:"Regeneruje token używany wewnętrznie podczas logowania. Zazwyczaj nie jest to konieczne. Po regeneracji wszystkie urządzenia zostaną wylogowane."
theKeywordWhenSearchingForCustomEmoji:"To jest słowo kluczowe używane podczas wyszukiwania customowych Emoji."
setMultipleBySeparatingWithSpace:"Możesz ustawić wiele, oddzielając je spacjami."
fileIdOrUrl:"ID pliku albo URL"
behavior:"Zachowanie"
sample:"Przykład"
abuseReports:"Zgłoszenia"
reportAbuse:"Zgłoś"
reportAbuseRenote:"Zgłoś renote"
reportAbuseOf:"Zgłoś {name}"
fillAbuseReportDescription:"Wypełnij szczegóły zgłoszenia. Jeżeli dotyczy ono określonego wpisu, uwzględnij jego adres URL."
abuseReported:"Twoje zgłoszenie zostało wysłane. Dziękujemy."
reporter:"Zgłaszający"
reporteeOrigin:"Pochodzenie zgłoszonego"
reporterOrigin:"Pochodzenie zgłaszającego"
forwardReport:"Przekaż zgłoszenie do innej instancji"
send:"Wyślij"
abuseMarkAsResolved:"Oznacz zgłoszenie jako rozwiązane"
openInNewTab:"Otwórz w nowej karcie"
openInSideView:"Otwórz w bocznym widoku"
defaultNavigationBehaviour:"Domyślne zachowanie nawigacji"
@ -668,6 +732,7 @@ lockedAccountInfo: "Dopóki nie ustawisz widoczności wpisu na \"Obserwujący\",
alwaysMarkSensitive:"Oznacz domyślnie jako NSFW"
loadRawImages:"Wyświetlaj zdjęcia w załącznikach w całości zamiast miniatur"
verificationEmailSent:"Wiadomość weryfikacyjna została wysłana. Odwiedź uwzględniony odnośnik, aby ukończyć weryfikację."
notSet:"Nie ustawiono"
emailVerified:"Adres e-mail został potwierdzony"
@ -678,6 +743,8 @@ contact: "Kontakt"
useSystemFont:"Używaj domyślnej czcionki systemu"
clips:"Klipy"
experimentalFeatures:"Eksperymentalne funkcje"
experimental:"Eksperymentalne"
thisIsExperimentalFeature:"Ta funkcja jest eksperymentalna. Jej funkcjonalność może ulec zmianie, i może ona nie funkcjonować tak, jak zamierzono."
developer:"Programista"
makeExplorable:"Pokazuj konto na stronie „Eksploruj”"
makeExplorableDescription:"Jeżeli wyłączysz tę opcję, Twoje konto nie będzie wyświetlać się w sekcji „Eksploruj”."
@ -695,12 +762,14 @@ onlineUsersCount: "{n} osób jest online"
nUsers:"{n} użytkowników"
nNotes:"{n} wpisów"
sendErrorReports:"Wyślij raporty o błędach"
sendErrorReportsDescription:"Gdy włączone, jeśli wystąpi problem, szczegółowe informacje o błędach będą udostępniane Misskey, pomagając ulepszyć jakość Misskey.\nBędzie to zawierało informacje takie jak wersja twojego systemu operacyjnego, jakiej przeglądarki używasz, twoja aktywność w Misskey, itd."
myTheme:"Mój motyw"
backgroundColor:"Tło"
accentColor:"Akcent"
textColor:"Tekst"
saveAs:"Zapisz jako…"
advanced:"Zaawansowane"
advancedSettings:"Zaawansowane ustawienia"
value:"Wartość"
createdAt:"Utworzono"
updatedAt:"Zaktualizowano"
@ -760,12 +829,14 @@ noMaintainerInformationWarning: "Informacje o administratorze nie są skonfiguro
noBotProtectionWarning:"Zabezpieczenie przed botami nie jest skonfigurowane."
configure:"Skonfiguruj"
postToGallery:"Opublikuj w galerii"
postToHashtag:"Postuj do tego hashtagu"
gallery:"Galeria"
recentPosts:"Ostatnie wpisy"
popularPosts:"Popularne wpisy"
shareWithNote:"Udostępnij z wpisem"
ads:"Reklamy"
expiration:"Ankieta kończy się"
startingperiod:"Początek"
memo:"Notatki"
priority:"Priorytet"
high:"Wysoki"
@ -792,13 +863,19 @@ translatedFrom: "Przetłumaczone z {x}"
accountDeletionInProgress:"Trwa usuwanie konta"
usernameInfo:"Nazwa, która identyfikuje Twoje konto spośród innych na tym serwerze. Możesz użyć alfabetu (a~z, A~Z), cyfr (0~9) lub podkreślników (_). Nazwy użytkownika nie mogą być później zmieniane."
aiChanMode:"Tryb Ai"
devMode:"Tryb programisty"
keepCw:"Zostaw ostrzeżenia o zawartości"
pubSub:"Konta Pub/Sub"
lastCommunication:"Ostatnia komunikacja"
resolved:"Rozwiązane"
unresolved:"Nierozwiązane"
breakFollow:"Usuń obserwującego"
breakFollowConfirm:"Czy na pewno usunąć tego obserwującego?"
itsOn:"Włączone"
itsOff:"Wyłączone"
on:"Włączone"
off:"Wyłączone"
emailRequiredForSignup:"Wymagaj adresu e-mail do rejestracji"
unread:"Nieodczytane"
filter:"Filtr"
controlPanel:"Panel sterowania"
@ -808,6 +885,8 @@ makeReactionsPublicDescription: "To spowoduje, że lista wszystkich Twoich dotyc
classic:"Klasyczny"
muteThread:"Wycisz wątek"
unmuteThread:"Wyłącz wyciszenie wątku"
followingVisibility:"Widoczność obserwacji"
followersVisibility:"Widoczność obserwujących"
continueThread:"Pokaż kontynuację wątku"
deleteAccountConfirm:"Spowoduje to nieodwracalne usunięcie Twojego konta. Kontynuować?"
enableAutoSensitiveDescription:"Umożliwia automatyczne wykrywanie i oznaczanie zawartości NSFW za pomocą uczenia maszynowego. Nawet jeśli ta opcja jest wyłączona, może być włączona w całej instancji."
activeEmailValidationDescription:"Włącza bardziej restrykcyjną walidację adresów e-mail, co obejmuje sprawdzanie adresów jednorazowych i czy komunikacja z tym adresem jest możliwa. Gdy wyłączone, tylko format adresu e-mail jest sprawdzany."
navbar:"Pasek nawigacyjny"
shuffle:"Mieszaj"
account:"Konta"
move:"Przenieś"
pushNotification:"Powiadomienia"
@ -863,21 +968,74 @@ pushNotificationAlreadySubscribed: "Powiadomienia push są włączone"
pushNotificationNotSupported:"Przeglądarka lub instancja nie obsługuje powiadomień push"
sendPushNotificationReadMessage:"Usuń powiadomienia push po przeczytaniu powiadomień i wiadomości."
sendPushNotificationReadMessageCaption:"Chwilowo pojawi się powiadomienie \"{emptyPushNotificationMessage}\". Może wzrosnąć zużycie baterii urządzenia."
windowMaximize:"Maksymalizuj"
windowMinimize:"Minimalizuj"
windowRestore:"Przywróć"
caption:"Legenda"
loggedInAsBot:"Jesteś obecnie zalogowany/a jako bot"
tools:"Narzędzia"
cannotLoad:"Nie można wczytać"
numberOfProfileView:"Wyświetlenia profilu"
like:"Polub"
unlike:"Usuń polubienie"
numberOfLikes:"Liczba polubień"
show:"Wyświetlanie"
neverShow:"Nie pokazuj ponownie"
remindMeLater:"Przypomnij później"
didYouLikeMisskey:"Czy Misskey się tobie spodobało?"
pleaseDonate:"{host} używa darmowego oprogramowania — Misskey. Bylibyśmy bardzo wdzięczni za datki, które pozwolą na kontynuację rozwoju Misskey!"
correspondingSourceIsAvailable:"Odpowiedni kod źródłowy jest dostępny pod {anchor}."
description:"Zmniejsza wysiłek związany z moderacją serwera dzięki automatycznemu rozpoznawaniu zawartości NSFW za pomocą uczenia maszynowego. To nieznacznie zwiększy obciążenie serwera."
setSensitiveFlagAutomatically:"Oznacz jako NSFW"
@ -1047,7 +1205,6 @@ _theme:
buttonBg:"Tło przycisku"
buttonHoverBg:"Tło przycisku (po najechaniu)"
inputBorder:"Obramowanie pola wejścia"
listItemHoverBg:"Tło elementu listy (po najechaniu)"
driveFolderBg:"Tło folderu na dysku"
wallpaperOverlay:"Nakładka tapety"
badge:"Odznaka"
@ -1059,8 +1216,6 @@ _sfx:
note:"Wpisy"
noteMy:"Mój wpis"
notification:"Powiadomienia"
antenna:"Anteny"
channel:"Powiadomienia kanału"
_ago:
future:"W przyszłości"
justNow:"Przed chwilą"
@ -1350,6 +1505,7 @@ _notification:
reaction:"Reakcja"
receiveFollowRequest:"Otrzymano prośbę o możliwość obserwacji"
followRequestAccepted:"Przyjęto prośbę o możliwość obserwacji"
introMisskey:"Добро пожаловать! Misskey — это децентрализованный сервис микроблогов с открытым исходным кодом.\nПишите «заметки» — делитесь со всеми происходящим вокруг или рассказывайте осебе 📡\nСтавьте «реакции» — выражайте свои чувства и эмоции от заметок других 👍\nОткройте для себя новый мир 🚀"
poweredByMisskeyDescription:"{name} – сервис на платформе с открытым исходным кодом <b>Misskey</b>, называемый инстансом Misskey."
poweredByMisskeyDescription:"{name} – сервис на платформе с открытым исходным кодом <b>Misskey</b>, называемый экземпляром Misskey."
monthAndDay:"{day}.{month}"
search:"Поиск"
notifications:"Уведомления"
@ -10,15 +10,15 @@ username: "Имя пользователя"
password:"Пароль"
forgotPassword:"Забыли пароль?"
fetchingAsApObject:"Приём с других сайтов"
ok:"Окей"
ok:"Подтвердить"
gotIt:"Ясно!"
cancel:"Отмена"
noThankYou:"Нет, спасибо"
enterUsername:"Введите имя пользователя"
renotedBy:"{user} делится"
renotedBy:"{user} репостнул(а)"
noNotes:"Нет ни одной заметки"
noNotifications:"Нет ни одного уведомления"
instance:"Инстанс"
noNotifications:"Нет уведомлений"
instance:"Экземпляр"
settings:"Настройки"
notificationSettings:"Настройки уведомлений"
basicSettings:"Основные настройки"
@ -45,22 +45,24 @@ pin: "Закрепить в профиле"
unpin:"Открепить от профиля"
copyContent:"Скопировать содержимое"
copyLink:"Скопировать ссылку"
copyLinkRenote:"Скопировать ссылку на репост"
delete:"Удалить"
deleteAndEdit:"Удалить и отредактировать"
deleteAndEditConfirm:"Удалить эту заметку и создать отредактированную? Все реакции, ссылки и ответы на существующую будут будут потеряны."
deleteAndEditConfirm:"Удалить этот пост и отредактировать заново? Все реакции, репосты и ответы на него также будут удалены."
cacheRemoteFilesDescription:"Когда эта настройка отключена, файлы с других сайтов будут загружаться прямо оттуда. Это сэкономит место на сервере, но увеличит трафик, так как не будут создаваться эскизы."
youCanCleanRemoteFilesCache:"Вы можете очистить кэш, нажав на кнопку 🗑️ в меню управления файлами."
cacheRemoteSensitiveFiles:"Кэшировать внешние файлы «не для всех»"
cacheRemoteSensitiveFilesDescription:"Если отключено, файлы «не для всех» загружаются непосредственно с удалённых серверов, не кэшируясь."
reloadAccountsList:"Обновить список учётных записей"
loginFailed:"Неудачная попытка входа"
showOnRemote:"Перейти к оригиналу на сайт"
continueOnRemote:"Продолжить на удалённом сервере"
chooseServerOnMisskeyHub:"Выбрать сервер с Misskey Hub"
specifyServerHost:"Укажите сервер напрямую"
inputHostName:"Введите домен"
general:"Общее"
wallpaper:"Обои"
setWallpaper:"Установить обои"
@ -184,6 +196,7 @@ followConfirm: "Подписаться на {name}?"
proxyAccount:"Учётная запись прокси"
proxyAccountDescription:"Учетная запись прокси предназначена служить подписчиком на пользователей с других сайтов. Например, если пользователь добавит кого-то с другого сайта а список, деятельность того не отобразится, пока никто с этого же сайта не подписан на него. Чтобы это стало возможным, на него подписывается прокси."
keepOriginalUploadingDescription:"Сохраняет исходную версию при загрузке изображений. Если выключить, то при загрузке браузер генерирует изображение для публикации."
fromDrive:"С«диска»"
fromDrive:"СДиска"
fromUrl:"По ссылке"
uploadFromUrl:"Загрузить по ссылке"
uploadFromUrlDescription:"Ссылка на файл, который хотите загрузить"
@ -307,11 +322,13 @@ selectFile: "Выберите файл"
selectFiles:"Выберите файлы"
selectFolder:"Выберите папку"
selectFolders:"Выберите папки"
fileNotSelected:"Файл не выбран"
renameFile:"Переименовать файл"
folderName:"Имя папки"
createFolder:"Создать папку"
renameFolder:"Переименовать папку"
deleteFolder:"Удалить папку"
folder:"Папка"
addFile:"Добавить файл"
emptyDrive:"Диск пуст"
emptyFolder:"Папка пуста"
@ -357,8 +374,8 @@ disablingTimelinesInfo: "У администраторов и модератор
registration:"Регистрация"
enableRegistration:"Разрешить регистрацию"
invite:"Пригласить"
driveCapacityPerLocalAccount:"Объём диска на одного локального пользователя"
driveCapacityPerRemoteAccount:"Объём диска на одного пользователя с другого сайта"
driveCapacityPerLocalAccount:"Объём Диска на одного локального пользователя"
driveCapacityPerRemoteAccount:"Объём Диска на одного пользователя с другого экземпляра"
inMb:"В мегабайтах"
bannerUrl:"Ссылка на изображение в шапке"
backgroundImageUrl:"Ссылка на фоновое изображение"
antennaKeywordsDescription:"Пишите слова через пробел в одной строке, чтобы ловить их появление вместе; на отдельных строках располагайте слова, или группы слов, чтобы ловить любые из них."
useSoundOnlyWhenActive:"Воспроизводить звук только когда Misskey активен."
details:"Подробнее"
chooseEmoji:"Выберите эмодзи"
unableToProcess:"Не удаётся завершить операцию"
@ -562,6 +588,10 @@ output: "Выходы"
script:"Скрипт"
disablePagesScript:"Отключить скрипты на «Страницах»"
updateRemoteUser:"Обновить данные пользователя сего сервера"
unsetUserAvatar:"Убрать аватар"
unsetUserAvatarConfirm:"Вы точно хотите убрать аватар?"
unsetUserBanner:"Убрать баннер"
unsetUserBannerConfirm:"Вы точно хотите убрать баннер?"
deleteAllFiles:"Удалить все файлы"
deleteAllFilesConfirm:"Вы хотите удалить все файлы?"
removeAllFollowing:"Удалить всех подписчиков"
@ -591,7 +621,7 @@ poll: "Опрос"
useCw:"Скрывать содержимое под предупреждением"
enablePlayer:"Включить проигрыватель"
disablePlayer:"Выключить проигрыватель"
expandTweet:"Развернуть твит"
expandTweet:"Развернуть заметку"
themeEditor:"Редактор темы оформления"
description:"Описание"
describeFile:"Добавить подпись"
@ -603,7 +633,7 @@ plugins: "Расширения"
preferencesBackups:"Резервная копия"
deck:"Пульт"
undeck:"Покинуть пульт"
useBlurEffectForModal:"Размывка под формой поверх всего"
useBlurEffectForModal:"Размытие за формой ввода заметки"
useFullReactionPicker:"Полнофункциональный выбор реакций"
width:"Ширина"
height:"Высота"
@ -612,6 +642,7 @@ medium: "Средне"
small:"Мелко"
generateAccessToken:"Создать токен доступа"
permission:"Разрешения"
adminPermission:"Доступ администратора"
enableAll:"Включить все"
disableAll:"Выключить всё"
tokenRequested:"Открыть доступ к учётной записи"
@ -633,6 +664,7 @@ smtpSecure: "Использовать SSL/TLS для SMTP-соединений"
smtpSecureInfo:"Выключите при использовании STARTTLS."
testEmail:"Проверка доставки электронной почты"
wordMute:"Скрытие слов"
hardWordMute:"Строгое скрытие слов"
regexpError:"Ошибка в регулярном выражении"
regexpErrorDescription:"В списке {tab} скрытых слов, в строке {line} обнаружена синтаксическая ошибка:"
instanceMute:"Глушение инстансов"
@ -668,10 +700,7 @@ abuseReported: "Жалоба отправлена. Большое спасибо
reporter:"Сообщивший"
reporteeOrigin:"О ком сообщено"
reporterOrigin:"Кто сообщил"
forwardReport:"Отправить жалобу на инстанс автора."
forwardReportIsAnonymous:"Жалоба на удалённый инстанс будет отправлена анонимно. Вместо ваших данных у получателя будет отображена системная учётная запись."
send:"Отправить"
abuseMarkAsResolved:"Отметить жалобу как решённую"
openInNewTab:"Открыть в новой вкладке"
openInSideView:"Открывать в боковой колонке"
defaultNavigationBehaviour:"Поведение навигации по умолчанию"
@ -714,6 +743,7 @@ lockedAccountInfo: "Даже если вы вручную подтверждае
alwaysMarkSensitive:"Отмечать файлы как «содержимое не для всех» по умолчанию"
loadRawImages:"Сразу показывать изображения в полном размере"
highlightSensitiveMedia:"Выделять содержимое не для всех"
verificationEmailSent:"Вам отправлено письмо для подтверждения. Пройдите, пожалуйста, по ссылке из письма, чтобы завершить проверку."
notSet:"Не настроено"
emailVerified:"Адрес электронной почты подтверждён."
@ -731,7 +761,7 @@ makeExplorable: "Опубликовать профиль в «Обзоре»."
makeExplorableDescription:"Если выключить, ваш профиль не будет показан в разделе «Обзор»."
showGapBetweenNotesInTimeline:"Показывать разделитель между заметками в ленте"
duplicate:"Дубликат"
left:"Влево"
left:"Слева"
center:"По центру"
wide:"Толстый"
narrow:"Тонкий"
@ -810,7 +840,7 @@ noMaintainerInformationWarning: "Не заполнены сведения об
noBotProtectionWarning:"Ботозащита не настроена"
configure:"Настроить"
postToGallery:"Опубликовать в галерею"
postToHashtag:"Написать заметку с этим хэштегом"
postToHashtag:"Написать заметку с этим хештегом"
gallery:"Галерея"
recentPosts:"Недавние публикации"
popularPosts:"Популярные публикации"
@ -827,13 +857,13 @@ emailNotConfiguredWarning: "Не указан адрес электронной
ratio:"Соотношение"
previewNoteText:"Предварительный просмотр"
customCss:"Индивидуальный CSS"
customCssWarn:"Используйте эту настройку только если знаете, что делаете. Ошибки здесь чреваты тем, что сайт перестанет нормально работать у вас."
customCssWarn:"Используйте эту настройку только если знаете, что делаете. Ошибки здесь чреваты тем, что у вас перестанет нормально работать сайт."
global:"Всеобщая"
squareAvatars:"Квадратные аватарки"
sent:"Отправить"
received:"Получено"
searchResult:"Результаты поиска"
hashtags:"Хэштег"
hashtags:"Хештеги"
troubleshooting:"Разрешение проблем"
useBlurEffect:"Размытие в интерфейсе"
learnMore:"Подробнее"
@ -845,7 +875,7 @@ accountDeletionInProgress: "В настоящее время выполняет
usernameInfo:"Имя, которое отличает вашу учетную запись от других на этом сервере. Вы можете использовать алфавит (a~z, A~Z), цифры (0~9) или символы подчеркивания (_). Имена пользователей не могут быть изменены позже."
sensitiveWordsDescription:"Установите общедоступный диапазон заметки, содержащей заданное слово, на домашний. Можно сделать несколько настроек, разделив их переносами строк."
sensitiveWordsDescription2:"Разделение пробелом создаёт спецификацию AND, а разделение косой чертой создаёт регулярное выражение."
prohibitedWords:"Запрещённые слова"
prohibitedWordsDescription:"Включает вывод ошибки при попытке опубликовать пост, содержащий указанное слово/набор слов.\nМножество слов может быть указано, разделяемые новой строкой."
prohibitedWordsDescription2:"Разделение пробелом создаёт спецификацию AND, а разделение косой чертой создаёт регулярное выражение."
pleaseConfirmBelowBeforeSignup:"Для регистрации на данном сервере, необходимо согласится с нижеследующими положениями."
@ -1056,50 +1100,114 @@ createNoteFromTheFile: "Создать заметку из этого файла
archive:"Архив"
channelArchiveConfirmTitle:"Переместить {name} в архив?"
channelArchiveConfirmDescription:"Архивированные каналы перестанут отображаться в списке каналов или результатах поиска. В них также нельзя будет добавлять новые записи."
thisChannelArchived:"Этот канал находится в архиве."
displayOfNote:"Отображение заметок"
initialAccountSetting:"Настройка профиля"
youFollowing:"Подписки"
preventAiLearning:"Отказаться от использования в машинном обучении (Генеративный ИИ)"
preventAiLearningDescription:"Запросить краулеров не использовать опубликованный текст или изображения и т.д. для машинного обучения (Прогнозирующий / Генеративный ИИ) датасетов. Это достигается путём добавления \"noai\" HTTP-заголовка в ответ на соответствующий контент. Полного предотвращения через этот заголовок не избежать, так как он может быть просто проигнорирован."
options:"Настройки ролей"
specifyUser:"Указанный пользователь"
openTagPageConfirm:"Открыть страницу этого хештега?"
specifyHost:"Указать сайт"
failedToPreviewUrl:"Предварительный просмотр недоступен"
update:"Обновить"
rolesThatCanBeUsedThisEmojiAsReaction:"Роли тех, кому можно использовать эти эмодзи как реакцию"
rolesThatCanBeUsedThisEmojiAsReactionEmptyDescription:"Если здесь ничего не указать, в качестве реакции эту эмодзи сможет использовать каждый."
rolesThatCanBeUsedThisEmojiAsReactionPublicRoleWarn:"Эти роли должны быть общедоступными."
cancelReactionConfirm:"Вы действительно хотите удалить свою реакцию?"
initialAccountSettingCompleted:"Первоначальная настройка успешно завершена!"
startTutorial:"Пройти Обучение"
skipAreYouSure:"Пропустить настройку?"
_initialTutorial:
launchTutorial:"Пройти обучение"
_note:
description:"Посты в Misskey называются 'Заметками.' Заметки отсортированы в хронологическом порядке в ленте и обновляются в режиме реального времени."
_reaction:
reactToContinue:"Добавьте реакцию, чтобы продолжить."
_postNote:
_visibility:
public:"Твоя заметка будет видна всем."
doNotSendConfidencialOnDirect2:"Администратор целевого сервера может видеть что вы отправляете. Будьте осторожны с конфиденциальной информацией, когда отправляете личные заметки пользователям с ненадёжных серверов."
_timelineDescription:
home:"В персональной ленте располагаются заметки тех, на которых вы подписаны."
local:"Местная лента показывает заметки всех пользователей этого сайта."
local:"Местная лента показывает заметки всех пользователей этого экземпляра."
social:"В социальной ленте собирается всё, что есть в персональной и местной лентах."
global:"В глобальную ленту попадает вообще всё со связанных инстансов."
global:"В глобальную ленту попадает вообще всё со связанных экземпляров."
_serverSettings:
iconUrl:"Адрес на иконку роли"
_accountMigration:
moveFrom:"Перенести другую учётную запись сюда"
moveTo:"Перенести учётную запись на другой сервер"
moveAccountDescription:"Это действие перенесёт ваш аккаунт на другой сервер.\n・Подписчики с этого аккаунта автоматически подпишутся на новый\n・Этот аккаунт отпишется от всех пользователей, на которых подписан сейчас\n・Вы не сможете создавать новые заметки и т.д. на этом аккаунте\n\nТогда как перенос подписчиков происходит автоматически, вы должны будете подготовиться, сделав некоторые шаги, чтобы перенести список пользователей, на которых вы подписаны. Чтобы сделать это, экспортируйте список подписчиков в файл, который затем импортируете на новом аккаунте в меню настроек. То же самое необходимо будет сделать со списками, также как и со скрытыми и заблокированными пользователями.\n\n(Это объяснение применяется к Misskey v13.12.0 и выше. Другое ActivityPub программное обеспечение, такое, как Mastodon, может работать по-другому."
startMigration:"Перенести"
movedAndCannotBeUndone:"Аккаунт был перемещён. Это действие необратимо."
alwaysMarkNsfw:"Всегда отмечать файлы как «не для всех»"
pinMax:"Доступное количество закреплённых заметок"
@ -1485,6 +1594,11 @@ _aboutMisskey:
donate:"Пожертвование на Misskey"
morePatrons:"Большое спасибо и многим другим, кто принял участие в этом проекте! 🥰"
patrons:"Материальная поддержка"
projectMembers:"Участники проекта"
_displayOfSensitiveMedia:
respect:"Скрывать содержимое не для всех"
ignore:"Показывать содержимое не для всех"
force:"Скрывать всё содержимое"
_instanceTicker:
none:"Не показывать"
remote:"Только для других сайтов"
@ -1513,7 +1627,7 @@ _wordMute:
muteWordsDescription:"Пишите слова через пробел в одной строке, чтобы фильтровать их появление вместе; а если хотите фильтровать любое из них, пишите в отдельных строках."
muteWordsDescription2:"Здесь можно использовать регулярные выражения — просто заключите их между двумя дробными чертами (/)."
_instanceMute:
instanceMuteDescription:"Заметки и репосты с указанных здесь инстансов, а также ответы пользователям оттуда же не будут отображаться."
instanceMuteDescription:"Любые активности, затрагивающие инстансы из данного списка, будут скрыты."
instanceMuteDescription2:"Пишите каждый инстанс на отдельной строке"
title:"Скрывает заметки с заданных инстансов."
heading:"Список скрытых инстансов"
@ -1562,7 +1676,7 @@ _theme:
navActive:"Текст на боковой панели (активирован)"
navIndicator:"Индикатор на боковой панели"
link:"Ссылка"
hashtag:"Хэштег"
hashtag:"Хештег"
mention:"Упоминание"
mentionMe:"Упоминания вас"
renote:"Репост"
@ -1580,7 +1694,6 @@ _theme:
buttonBg:"Фон кнопки"
buttonHoverBg:"Текст кнопки"
inputBorder:"Рамка поля ввода"
listItemHoverBg:"Фон пункта списка (под указателем)"
step1:"Прежде всего, установите на устройство приложение для аутентификации, например, {a} или {b}."
step2:"Далее отсканируйте отображаемый QR-код при помощи приложения."
step2Click:"Нажав на QR-код, вы можете зарегистрироваться с помощью приложения для аутентификации или брелка для ключей, установленного на вашем устройстве."
step3Title:"Введите проверочный код"
step3:"И наконец, введите код, который покажет приложение."
step4:"Теперь при каждом входе на сайт вам нужно будет вводить код из приложения аналогичным образом."
@ -1673,6 +1787,7 @@ _permissions:
"write:gallery": "Редактирование галереи"
"read:gallery-likes": "Просмотр списка понравившегося в галерее"
"write:gallery-likes": "Изменение списка понравившегося в галерее"
@ -631,10 +630,7 @@ abuseReported: "Дякуємо, вашу скаргу було відправл
reporter:"Репортер"
reporteeOrigin:"Про кого повідомлено"
reporterOrigin:"Хто повідомив"
forwardReport:"Переслати звіт на віддалений інстанс"
forwardReportIsAnonymous:"Замість вашого облікового запису анонімний системний обліковий запис буде відображатися як доповідач на віддаленому інстансі"
send:"Відправити"
abuseMarkAsResolved:"Позначити скаргу як вирішену"
openInNewTab:"Відкрити в новій вкладці"
openInSideView:"Відкрити збоку"
defaultNavigationBehaviour:"Поведінка навігації за замовчуванням"
@ -911,8 +907,13 @@ youFollowing: "Підписки"
icon:"Аватар"
replies:"Відповісти"
renotes:"Поширити"
sourceCode:"Вихідний код"
flip:"Перевернути"
lastNDays:"Останні {n} днів"
_delivery:
stop:"Призупинено"
_type:
none:"Публікація"
_achievements:
earnedAt:"Відкрито"
_types:
@ -1301,7 +1302,6 @@ _theme:
buttonBg:"Фон кнопки"
buttonHoverBg:"Фон кнопки (при наведенні)"
inputBorder:"Край поля вводу"
listItemHoverBg:"Фон елементу в списку (при наведенні)"
showNoteActionsOnlyHover:"Chỉ hiển thị các hành động ghi chú khi di chuột"
noHistory:"Không có dữ liệu"
signinHistory:"Lịch sử đăng nhập"
@ -537,6 +546,7 @@ showInPage: "Hiện trong trang"
popout:"Pop-out"
volume:"Âm lượng"
masterVolume:"Âm thanh chung"
notUseSound:"Tắt tiếng"
details:"Chi tiết"
chooseEmoji:"Chọn emoji"
unableToProcess:"Không thể hoàn tất hành động"
@ -557,6 +567,10 @@ output: "Nguồn ra"
script:"Kịch bản"
disablePagesScript:"Tắt AiScript trên Trang"
updateRemoteUser:"Cập nhật thông tin người dùng ở máy chủ khác"
unsetUserAvatar:"Gỡ ảnh đại diện"
unsetUserAvatarConfirm:"Bạn có chắc muốn gỡ ảnh đại diện?"
unsetUserBanner:"Gỡ ảnh bìa"
unsetUserBannerConfirm:"Bạn có chắc muốn gỡ ảnh bìa?"
deleteAllFiles:"Xóa toàn bộ tập tin"
deleteAllFilesConfirm:"Bạn có chắc xóa toàn bộ tập tin?"
removeAllFollowing:"Ngưng theo dõi tất cả mọi người"
@ -661,10 +675,7 @@ abuseReported: "Báo cáo đã được gửi. Cảm ơn bạn nhiều."
reporter:"Người báo cáo"
reporteeOrigin:"Bị báo cáo"
reporterOrigin:"Máy chủ người báo cáo"
forwardReport:"Chuyển tiếp báo cáo cho máy chủ từ xa"
forwardReportIsAnonymous:"Thay vì tài khoản của bạn, một tài khoản hệ thống ẩn danh sẽ được hiển thị dưới dạng người báo cáo ở máy chủ từ xa."
send:"Gửi"
abuseMarkAsResolved:"Đánh dấu đã xử lý"
openInNewTab:"Mở trong tab mới"
openInSideView:"Mở trong thanh bên"
defaultNavigationBehaviour:"Thao tác điều hướng mặc định"
@ -859,6 +870,8 @@ makeReactionsPublicDescription: "Điều này sẽ hiển thị công khai danh
classic:"Cổ điển"
muteThread:"Không quan tâm nữa"
unmuteThread:"Quan tâm tút này"
followingVisibility:"Hiển thị lượt theo dõi"
followersVisibility:"Hiển thị người theo dõi"
continueThread:"Tiếp tục xem chuỗi tút"
deleteAccountConfirm:"Điều này sẽ khiến tài khoản bị xóa vĩnh viễn. Vẫn tiếp tục?"
incorrectPassword:"Sai mật khẩu."
@ -968,6 +981,7 @@ assign: "Phân công"
unassign:"Hủy phân công"
color:"Màu sắc"
manageCustomEmojis:"Quản lý CustomEmoji"
manageAvatarDecorations:"Quản lý trang trí ảnh đại diện"
youCannotCreateAnymore:"Bạn đã tới giới hạn tạo."
cannotPerformTemporary:"Tạm thời không sử dụng được"
cannotPerformTemporaryDescription:"Tạm thời không sử dụng được vì lần số điều kiện quá giới hạn. Thử lại sau mọt lát nữa."
@ -991,18 +1005,24 @@ copyErrorInfo: "Sao chép thông tin lỗi"
joinThisServer:"Đăng ký trên chủ máy này"
exploreOtherServers:"Tìm chủ máy khác"
letsLookAtTimeline:"Thử xem Timeline"
disableFederationOk:"Vô hiệu hoá"
emailNotSupported:"Máy chủ này không hỗ trợ gửi email"
postToTheChannel:"Đăng lên kênh"
cannotBeChangedLater:"Không thể thay đổi sau này."
likeOnly:"Chỉ lượt thích"
rolesAssignedToMe:"Vai trò được giao cho tôi"
resetPasswordConfirm:"Bạn thực sự muốn đặt lại mật khẩu?"
sensitiveWords:"Các từ nhạy cảm"
prohibitedWords:"Các từ bị cấm"
license:"Giấy phép"
unfavoriteConfirm:"Bạn thực sự muốn xoá khỏi mục yêu thích?"
retryAllQueuesConfirmTitle:"Bạn có muốn thử lại?"
retryAllQueuesConfirmText:"Điều này sẽ tạm thời làm tăng mức độ tải của máy chủ."
enableChartsForRemoteUser:"Tạo biểu đồ người dùng từ xa"
video:"Video"
videos:"Các video"
audio:"Âm thanh"
audioFiles:"Âm thanh"
dataSaver:"Tiết kiệm dung lượng"
accountMigration:"Chuyển tài khoản"
accountMoved:"Người dùng này đã chuyển sang một tài khoản mới:"
@ -1019,34 +1039,88 @@ vertical: "Dọc"
horizontal:"Thanh bên"
position:"Vị trí"
serverRules:"Luật của máy chủ"
pleaseConfirmBelowBeforeSignup:"Để đăng ký trên máy chủ này, bạn phải xem xét và đồng ý với những điều sau."
pleaseAgreeAllToContinue:"Bạn phải đồng ý tất cả điều trên để tiếp tục."
continue:"Tiếp tục"
archive:"Lưu trữ"
thisChannelArchived:"Kênh này đã được lưu trữ."
initialAccountSetting:"Thiết lập hồ sơ"
youFollowing:"Đang theo dõi"
preventAiLearning:"Từ chối sử dụng công nghệ Máy Học (AI Sáng Tạo)"
options:"Tùy chọn"
specifyUser:"Người dùng chỉ định"
failedToPreviewUrl:"Không thể xem trước"
update:"Cập nhật"
later:"Để sau"
goToMisskey:"Tới Misskey"
installed:"Đã tải xuống"
branding:"Thương hiệu"
turnOffToImprovePerformance:"Tắt mục này có thể cải thiện hiệu năng."
createInviteCode:"Tạo lời mời"
createWithOptions:"Tạo cùng tùy chọn"
createCount:"Số lượng mời"
inviteCodeCreated:"Lời mời đã được tạo"
inviteLimitExceeded:"Bạn đã vượt quá số lượng mời mà bạn có thể tạo."
createLimitRemaining:"Giới hạn lượt mời: Còn lại {limit}"
inviteLimitResetCycle:"Giới hạn này sẽ được đặt lại về {limit} lúc {time}."
expirationDate:"Ngày hết hạn"
noExpirationDate:"Vô thời hạn"
inviteCodeUsedAt:"Mã mời đã được sử dụng lúc"
registeredUserUsingInviteCode:"Lời mời đã được sử dụng bởi"
waitingForMailAuth:"Đang chờ xác nhận email"
inviteCodeCreator:"Lời mời đã được tạo bởi"
usedAt:"Sử dụng vào lúc"
unused:"Chưa được sử dụng"
used:"Đã được sử dụng"
expired:"Đã hết hạn"
doYouAgree:"Đồng ý?"
iHaveReadXCarefullyAndAgree:"Tôi đã đọc và đồng ý với \"x\"."
beSureToReadThisAsItIsImportant:"Hãy đọc kỹ vì nó rất quan trọng."
iHaveReadXCarefullyAndAgree:"Tôi đã đọc và đồng ý với \"{x}\"."
dialog:"Hộp thoại"
icon:"Ảnh đại diện"
forYou:"Dành cho bạn"
currentAnnouncements:"Thông báo hiện tại"
pastAnnouncements:"Thông báo trước đó"
youHaveUnreadAnnouncements:"Có thông báo chưa đọc."
useSecurityKey:"Làm theo hướng dẫn trên trình duyệt hoặc thiết bị của bạn để sử dụng khóa bảo mật hoặc mật mã."
replies:"Trả lời"
renotes:"Đăng lại"
loadReplies:"Hiển thị các trả lời"
loadConversation:"Xem cuộc trò chuyện"
pinnedList:"Các mục đã được ghim"
keepScreenOn:"Giữ màn hình luôn bật"
verifiedLink:"Chúng tôi đã xác nhận bạn là chủ sở hữu của đường dẫn này"
authentication:"Xác thực"
authenticationRequiredToContinue:"Vui lòng xác thực để tiếp tục"
dateAndTime:"Ngày và giờ"
edited:"Đã chỉnh sửa"
notificationRecieveConfig:"Cài đặt thông báo"
mutualFollow:"Theo dõi lẫn nhau"
followingOrFollower:"Đang theo dõi hoặc người theo dõi"
externalServices:"Các dịch vụ bên ngoài"
sourceCode:"Mã nguồn"
feedback:"Phản hồi"
feedbackUrl:"URL phản hồi"
privacyPolicy:"Chính sách bảo mật"
privacyPolicyUrl:"URL Chính sách bảo mật"
tosAndPrivacyPolicy:"Điều khoản sử dụng và Chính sách bảo mật"
avatarDecorations:"Trang trí ảnh đại diện"
attach:"Mặc"
detach:"Bỏ"
detachAll:"Bỏ tất cả"
angle:"Góc"
flip:"Lật"
showAvatarDecorations:"Hiển thị trang trí ảnh đại diện"
releaseToRefresh:"Thả để làm mới"
refreshing:"Đang làm mới"
pullDownToRefresh:"Kéo xuống để làm mới"
cwNotationRequired:"Nếu \"Ẩn nội dung\" được bật thì cần phải có chú thích."
lastNDays:"{n} ngày trước"
surrender:"Từ chối"
_delivery:
stop:"Đã vô hiệu hóa"
_type:
none:"Đang đăng"
_announcement:
forExistingUsers:"Chỉ những người dùng đã tồn tại"
forExistingUsersDescription:"Nếu được bật, thông báo này sẽ chỉ hiển thị với những người dùng đã tồn tại vào lúc thông báo được tạo. Nếu tắt đi, những tài khoản mới đăng ký sau khi thông báo được đăng lên cũng sẽ thấy nó."
@ -1085,7 +1159,7 @@ _achievements:
earnedAt:"Ngày thu nhận"
_types:
_notes1:
title:"just setting up my shonk"
title:"just setting up my msky"
description:"Lần đầu tiên đăng bài"
flavor:"Chúc bạn trên Miskey vui vẻ nha!!"
_notes10:
@ -1278,6 +1352,7 @@ _role:
ltlAvailable:"Xem Timeline trong máy chủ này"
canPublicNote:"Cho phép đăng bài công khai"
canManageCustomEmojis:"Quản lý CustomEmoji"
canManageAvatarDecorations:"Quản lý trang trí ảnh đại diện"
driveCapacity:"Dữ liệu Drive"
pinMax:"Giới hạn ghim bài viết"
antennaMax:"Giới hạn tạo ăng ten"
@ -1471,7 +1546,6 @@ _theme:
buttonBg:"Nền nút"
buttonHoverBg:"Nền nút (Chạm)"
inputBorder:"Đường viền khung soạn thảo"
listItemHoverBg:"Nền mục liệt kê (Chạm)"
driveFolderBg:"Nền thư mục Ổ đĩa"
wallpaperOverlay:"Lớp phủ hình nền"
badge:"Huy hiệu"
@ -1483,8 +1557,6 @@ _sfx:
note:"Tút"
noteMy:"Tút của tôi"
notification:"Thông báo"
antenna:"Trạm phát sóng"
channel:"Kênh"
_ago:
future:"Tương lai"
justNow:"Vừa xong"
@ -1506,7 +1578,6 @@ _2fa:
registerTOTP:"Đăng ký ứng dụng xác thực"
step1:"Trước tiên, hãy cài đặt một ứng dụng xác minh (chẳng hạn như {a} hoặc {b}) trên thiết bị của bạn."
step2:"Sau đó, quét mã QR hiển thị trên màn hình này."
step2Click:"Quét mã QR trên ứng dụng xác thực (Authy, Google authenticator, v.v.)"
step3Title:"Nhập mã xác thực"
step3:"Nhập mã token do ứng dụng của bạn cung cấp để hoàn tất thiết lập."
step4:"Kể từ bây giờ, những lần đăng nhập trong tương lai sẽ yêu cầu mã token đăng nhập đó."
@ -1788,7 +1859,7 @@ _notification:
youReceivedFollowRequest:"Bạn vừa có một yêu cầu theo dõi"
yourFollowRequestAccepted:"Yêu cầu theo dõi của bạn đã được chấp nhận"
pollEnded:"Cuộc bình chọn đã kết thúc"
unreadAntennaNote:"Ăng ten"
unreadAntennaNote:"Ăng ten {name}"
emptyPushNotificationMessage:"Đã cập nhật thông báo đẩy"
achievementEarned:"Hoàn thành Achievement"
_types:
@ -1803,6 +1874,7 @@ _notification:
receiveFollowRequest:"Yêu cầu theo dõi"
followRequestAccepted:"Yêu cầu theo dõi được chấp nhận"