Compare commits

..

23 Commits

Author SHA1 Message Date
tamaina
a7ec9241ab stackいじらない 2024-03-05 18:37:19 +00:00
tamaina
a84cbeb155 remove pino 2024-03-05 18:26:45 +00:00
tamaina
285c8ab334 logger.tsを戻す 2024-03-05 18:24:46 +00:00
tamaina
40781f56e7 fix? 2024-03-04 14:17:40 +00:00
tamaina
973d18a552 !envOption.logJson 2024-03-04 14:16:14 +00:00
tamaina
78238d427a stringify inbox data 2024-03-04 14:04:10 +00:00
tamaina
1433a7aecf err, data 2024-03-04 13:49:30 +00:00
tamaina
b42577e3ad trimはやめる 2024-03-04 13:46:51 +00:00
tamaina
493829b3ee truncate stack 2024-03-04 13:44:21 +00:00
tamaina
7ce4a26970 force show stack 2024-03-04 13:43:51 +00:00
tamaina
1f79cd1760 🎨 2024-03-04 13:03:41 +00:00
まっちゃとーにゅ
8e55285e48 chore(logging): severityフィールドがログに出てくる問題を修正 (MisskeyIO#431) 2024-03-04 12:41:17 +00:00
まっちゃとーにゅ
198d38431a spec(backend): severityのラベルをJSON形式のログに追加 (MisskeyIO#425) 2024-03-04 12:40:55 +00:00
tamaina
c8fe7b337e add pino pinp-pretty 2024-03-04 12:40:32 +00:00
まっちゃとーにゅ
a7e3f6c1a9 enhance(logging): ログの処理をpinoに置き換える (MisskeyIO#364) 2024-03-04 12:39:49 +00:00
まっちゃとーにゅ
670d509696 fix: MK_LOG_JSONのcontextの値が正常に表示されない問題を修正 (MisskeyIO#347)
fix bug from MisskeyIO#346
2024-03-04 12:31:29 +00:00
まっちゃとーにゅ
ec914d9f0c feat(logging): JSON形式の構造化ログでログを出力できるように (MisskeyIO#346) 2024-03-04 12:31:11 +00:00
tamaina
18f13cea98 エラーを先に表示する 2024-03-04 12:18:16 +00:00
tamaina
d803ec3e3e compact: false 2024-03-04 12:16:44 +00:00
tamaina
d84a5767bf force one-line log (queue processor) 2024-03-04 12:07:03 +00:00
tamaina
84a6877f57 failed((${err.message})) 2024-03-04 11:44:03 +00:00
tamaina
c9ff8d0624 🎨 2024-03-04 11:35:46 +00:00
tamaina
f7e8862d28 enhance(backend): loggerでデータの表示にutil.inspectを使用する 2024-03-04 11:32:08 +00:00
1197 changed files with 26774 additions and 68978 deletions

View File

@@ -1,224 +0,0 @@
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# Misskey configuration
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# ┌────────────────────────┐
#───┘ Initial Setup Password └─────────────────────────────────────────────────────
# Password to initiate setting up admin account.
# It will not be used after the initial setup is complete.
#
# Be sure to change this when you set up Misskey via the Internet.
#
# The provider of the service who sets up Misskey on behalf of the customer should
# set this value to something unique when generating the Misskey config file,
# and provide it to the customer.
setupPassword: example_password_please_change_this_or_you_will_get_hacked
# ┌─────┐
#───┘ URL └─────────────────────────────────────────────────────
# Final accessible URL seen by a user.
url: 'http://misskey.local'
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# URL SETTINGS AFTER THAT!
# ┌───────────────────────┐
#───┘ Port and TLS settings └───────────────────────────────────
#
# Misskey requires a reverse proxy to support HTTPS connections.
#
# +----- https://example.tld/ ------------+
# +------+ |+-------------+ +----------------+|
# | User | ---> || Proxy (443) | ---> | Misskey (3000) ||
# +------+ |+-------------+ +----------------+|
# +---------------------------------------+
#
# You need to set up a reverse proxy. (e.g. nginx)
# An encrypted connection with HTTPS is highly recommended
# because tokens may be transferred in GET requests.
# The port that your Misskey server should listen on.
port: 61812
# ┌──────────────────────────┐
#───┘ PostgreSQL configuration └────────────────────────────────
db:
host: db
port: 5432
# Database name
db: misskey
# Auth
user: postgres
pass: postgres
# Whether disable Caching queries
#disableCache: true
# Extra Connection options
#extra:
# ssl: true
dbReplications: false
# You can configure any number of replicas here
#dbSlaves:
# -
# host:
# port:
# db:
# user:
# pass:
# -
# host:
# port:
# db:
# user:
# pass:
# ┌─────────────────────┐
#───┘ Redis configuration └─────────────────────────────────────
redis:
host: redis
port: 6379
#family: 0 # 0=Both, 4=IPv4, 6=IPv6
#pass: example-pass
#prefix: example-prefix
#db: 1
#redisForPubsub:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
#redisForJobQueue:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
#redisForTimelines:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
#redisForReactions:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
# ┌───────────────────────────┐
#───┘ MeiliSearch configuration └─────────────────────────────
#meilisearch:
# host: meilisearch
# port: 7700
# apiKey: ''
# ssl: true
# index: ''
# ┌───────────────┐
#───┘ ID generation └───────────────────────────────────────────
# You can select the ID generation method.
# You don't usually need to change this setting, but you can
# change it according to your preferences.
# Available methods:
# aid ... Short, Millisecond accuracy
# aidx ... Millisecond accuracy
# meid ... Similar to ObjectID, Millisecond accuracy
# ulid ... Millisecond accuracy
# objectid ... This is left for backward compatibility
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# ID SETTINGS AFTER THAT!
id: 'aidx'
# ┌────────────────┐
#───┘ Error tracking └──────────────────────────────────────────
# Sentry is available for error tracking.
# See the Sentry documentation for more details on options.
#sentryForBackend:
# enableNodeProfiling: true
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
#sentryForFrontend:
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────
# Whether disable HSTS
#disableHsts: true
# Number of worker processes
#clusterLimit: 1
# Job concurrency per worker
# deliverJobConcurrency: 128
# inboxJobConcurrency: 16
# Job rate limiter
# deliverJobPerSec: 128
# inboxJobPerSec: 32
# Job attempts
# deliverJobMaxAttempts: 12
# inboxJobMaxAttempts: 8
# IP address family used for outgoing request (ipv4, ipv6 or dual)
#outgoingAddressFamily: ipv4
# Proxy for HTTP/HTTPS
#proxy: http://127.0.0.1:3128
proxyBypassHosts:
- api.deepl.com
- api-free.deepl.com
- www.recaptcha.net
- hcaptcha.com
- challenges.cloudflare.com
# Proxy for SMTP/SMTPS
#proxySmtp: http://127.0.0.1:3128 # use HTTP/1.1 CONNECT
#proxySmtp: socks4://127.0.0.1:1080 # use SOCKS4
#proxySmtp: socks5://127.0.0.1:1080 # use SOCKS5
# Media Proxy
#mediaProxy: https://example.com/proxy
# Proxy remote files (default: true)
proxyRemoteFiles: true
# Sign to ActivityPub GET request (default: true)
signToActivityPubGet: true
allowedPrivateNetworks: [
'127.0.0.1/32'
]
# Upload or download file size limits (bytes)
#maxFileSize: 262144000

View File

@@ -1,11 +1,5 @@
# misskey settings
# MISSKEY_URL=https://example.tld/
# db settings
POSTGRES_PASSWORD=example-misskey-pass
# DATABASE_PASSWORD=${POSTGRES_PASSWORD}
POSTGRES_USER=example-misskey-user
# DATABASE_USER=${POSTGRES_USER}
POSTGRES_DB=misskey
# DATABASE_DB=${POSTGRES_DB}
DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}"

View File

@@ -6,7 +6,6 @@
#───┘ URL └─────────────────────────────────────────────────────
# Final accessible URL seen by a user.
# You can set url from an environment variable instead.
url: https://example.tld/
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
@@ -39,11 +38,9 @@ db:
port: 5432
# Database name
# You can set db from an environment variable instead.
db: misskey
# Auth
# You can set user and pass from environment variables instead.
user: example-misskey-user
pass: example-misskey-pass
@@ -106,18 +103,10 @@ redis:
# #prefix: example-prefix
# #db: 1
#redisForReactions:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
# ┌───────────────────────────┐
#───┘ MeiliSearch configuration └─────────────────────────────
# You can set scope to local (default value) or global
# You can set scope to local (default value) or global
# (include notes from remote).
#meilisearch:
@@ -147,21 +136,6 @@ redis:
id: 'aidx'
# ┌────────────────┐
#───┘ Error tracking └──────────────────────────────────────────
# Sentry is available for error tracking.
# See the Sentry documentation for more details on options.
#sentryForBackend:
# enableNodeProfiling: true
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
#sentryForFrontend:
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────
@@ -211,7 +185,7 @@ proxyRemoteFiles: true
signToActivityPubGet: true
# 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)).
#allowedPrivateNetworks: [
# '127.0.0.1/32'

View File

@@ -38,7 +38,7 @@
# Option 3: If neither of the above applies to you.
# (In this case, the source code should be published
# on the Misskey interface. IT IS NOT ENOUGH TO
# DISCLOSE THE SOURCE CODE WHEN A USER REQUESTS IT BY
# DISCLOSE THE SOURCE CODE WEHN A USER REQUESTS IT BY
# E-MAIL OR OTHER MEANS. If you are not satisfied
# with this, it is recommended that you read the
# license again carefully. Anyway, enabling this
@@ -59,20 +59,6 @@
#
# publishTarballInsteadOfProvideRepositoryUrl: true
# ┌────────────────────────┐
#───┘ Initial Setup Password └─────────────────────────────────────────────────────
# Password to initiate setting up admin account.
# It will not be used after the initial setup is complete.
#
# Be sure to change this when you set up Misskey via the Internet.
#
# The provider of the service who sets up Misskey on behalf of the customer should
# set this value to something unique when generating the Misskey config file,
# and provide it to the customer.
#
# setupPassword: example_password_please_change_this_or_you_will_get_hacked
# ┌─────┐
#───┘ URL └─────────────────────────────────────────────────────
@@ -186,16 +172,6 @@ redis:
# # You can specify more ioredis options...
# #username: example-username
#redisForReactions:
# host: localhost
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
# # You can specify more ioredis options...
# #username: example-username
# ┌───────────────────────────┐
#───┘ MeiliSearch configuration └─────────────────────────────
@@ -229,21 +205,6 @@ redis:
id: 'aidx'
# ┌────────────────┐
#───┘ Error tracking └──────────────────────────────────────────
# Sentry is available for error tracking.
# See the Sentry documentation for more details on options.
#sentryForBackend:
# enableNodeProfiling: true
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
#sentryForFrontend:
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────

View File

@@ -1,22 +1,25 @@
{
"name": "Misskey",
"dockerComposeFile": "compose.yml",
"dockerComposeFile": "docker-compose.yml",
"service": "app",
"workspaceFolder": "/workspace",
"features": {
"ghcr.io/devcontainers/features/node:1": {
"version": "20.16.0"
"ghcr.io/devcontainers-contrib/features/pnpm:2": {
"version": "8.9.2"
},
"ghcr.io/devcontainers-contrib/features/corepack:1": {}
"ghcr.io/devcontainers/features/node:1": {
"version": "20.10.0"
}
},
"forwardPorts": [3000],
"postCreateCommand": "/bin/bash .devcontainer/init.sh",
"postCreateCommand": "sudo chmod 755 .devcontainer/init.sh && .devcontainer/init.sh",
"customizations": {
"vscode": {
"extensions": [
"editorconfig.editorconfig",
"dbaeumer.vscode-eslint",
"Vue.volar",
"Vue.vscode-typescript-vue-plugin",
"Orta.vscode-jest",
"dbaeumer.vscode-eslint",
"mrmlnc.vscode-json5"

View File

@@ -103,14 +103,6 @@ redis:
# #prefix: example-prefix
# #db: 1
#redisForReactions:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
# ┌───────────────────────────┐
#───┘ MeiliSearch configuration └─────────────────────────────
@@ -140,21 +132,6 @@ redis:
id: 'aidx'
# ┌────────────────┐
#───┘ Error tracking └──────────────────────────────────────────
# Sentry is available for error tracking.
# See the Sentry documentation for more details on options.
#sentryForBackend:
# enableNodeProfiling: true
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
#sentryForFrontend:
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────

View File

@@ -1,3 +1,5 @@
version: '3.8'
services:
app:
build:
@@ -6,7 +8,6 @@ services:
volumes:
- ../:/workspace:cached
- node_modules:/workspace/node_modules
command: sleep infinity
@@ -45,7 +46,6 @@ services:
volumes:
postgres-data:
redis-data:
node_modules:
networks:
internal_network:

View File

@@ -2,16 +2,10 @@
set -xe
sudo chown node node_modules
sudo apt-get update
sudo apt-get -y install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libnss3 libxss1 libasound2 libxtst6 xauth xvfb
git config --global --add safe.directory /workspace
sudo chown -R node /workspace
git submodule update --init
corepack install
corepack enable
pnpm config set store-dir /home/node/.local/share/pnpm/store
pnpm install --frozen-lockfile
cp .devcontainer/devcontainer.yml .config/default.yml
pnpm build
pnpm migrate
pnpm exec cypress install

View File

@@ -7,11 +7,12 @@ Dockerfile
build/
built/
db/
.devcontainer/compose.yml
docker-compose.yml
node_modules/
packages/*/node_modules
redis/
files/
misskey-assets/
fluent-emojis/
.pnp.*
@@ -27,4 +28,4 @@ fluent-emojis/
.idea/
packages/*/.vscode/
packages/backend/test/compose.yml
packages/backend/test/docker-compose.yml

3
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,3 @@
# These are supported funding model platforms
patreon: syuilo

View File

@@ -53,8 +53,8 @@ body:
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.example.com
* Misskey: 2024.x.x
* Server URL: misskey.io
* Misskey: 13.x.x
value: |
* Model and OS of the device(s):
* Browser:
@@ -74,11 +74,11 @@ body:
Examples:
* Installation Method or Hosting Service: docker compose, k8s/docker, systemd, "Misskey install shell script", development environment
* Misskey: 2024.x.x
* Misskey: 13.x.x
* Node: 20.x.x
* PostgreSQL: 15.x.x
* Redis: 7.x.x
* OS and Architecture: Ubuntu 24.04.2 LTS aarch64
* OS and Architecture: Ubuntu 22.04.2 LTS aarch64
value: |
* Installation Method or Hosting Service:
* Misskey:

View File

@@ -2,7 +2,3 @@ contact_links:
- name: 💬 Misskey official Discord
url: https://discord.gg/Wp8gVStHW3
about: Chat freely about Misskey
# 仮
- name: 💬 Start discussion
url: https://github.com/misskey-dev/misskey/discussions
about: The official forum to join conversation and ask question

View File

@@ -1,7 +1,5 @@
url: 'http://misskey.local'
setupPassword: example_password_please_change_this_or_you_will_get_hacked
# ローカルでテストするときにポートを被らないようにするためデフォルトのものとは変える(以下同じ)
port: 61812

View File

@@ -4,11 +4,10 @@ on:
push:
paths:
- packages/misskey-js/**
- .github/workflows/api-misskey-js.yml
pull_request:
paths:
- packages/misskey-js/**
- .github/workflows/api-misskey-js.yml
jobs:
report:
@@ -21,7 +20,7 @@ jobs:
- run: corepack enable
- name: Setup Node.js
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'
cache: 'pnpm'

View File

@@ -14,7 +14,7 @@ jobs:
- name: Checkout head
uses: actions/checkout@v4.1.1
- name: Setup Node.js
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'

View File

@@ -5,31 +5,33 @@ on:
branches:
- master
- develop
- improve-misskey-js-autogen-check
paths:
- packages/backend/**
jobs:
# pull_request_target safety: permissions: read-all, and there are no secrets used in this job
generate-misskey-js:
check-misskey-js-autogen:
runs-on: ubuntu-latest
permissions:
contents: read
if: ${{ github.event.pull_request.mergeable == null || github.event.pull_request.mergeable == true }}
pull-requests: write
env:
api_json_name: "api-head.json"
steps:
- name: checkout
uses: actions/checkout@v4.1.1
with:
submodules: true
persist-credentials: false
ref: refs/pull/${{ github.event.pull_request.number }}/merge
ref: ${{ github.event.pull_request.head.sha }}
- name: setup pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
- name: setup node
id: setup-node
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'
cache: pnpm
@@ -37,82 +39,79 @@ jobs:
- name: install dependencies
run: pnpm i --frozen-lockfile
# generate api.json
- name: Copy Config
run: cp .config/example.yml .config/default.yml
- name: Build
run: pnpm build
- name: Generate API JSON
run: pnpm --filter backend generate-api-json
- name: wait get-api-diff
uses: lewagon/wait-on-check-action@v1.3.3
with:
ref: ${{ github.event.pull_request.head.sha }}
check-regexp: get-from-misskey .+
repo-token: ${{ secrets.GITHUB_TOKEN }}
wait-interval: 30
# build misskey js
- name: Build misskey-js
- name: Download artifact
uses: actions/github-script@v7.0.1
with:
script: |
const fs = require('fs');
const workflows = await github.rest.actions.listWorkflowRunsForRepo({
owner: context.repo.owner,
repo: context.repo.repo,
head_sha: `${{ github.event.pull_request.head.sha }}`
}).then(x => x.data.workflow_runs);
console.log(workflows.map(x => ({name: x.name, title: x.display_title})));
const run_id = workflows.find(x => x.name.includes("Get api.json from Misskey")).id;
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: run_id,
});
let matchArtifacts = allArtifacts.data.artifacts.filter((artifact) => {
return artifact.name.startsWith("api-artifact-") || artifact.name == "api-artifact"
});
await Promise.all(matchArtifacts.map(async (artifact) => {
let download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: artifact.id,
archive_format: 'zip',
});
await fs.promises.writeFile(`${process.env.GITHUB_WORKSPACE}/${artifact.name}.zip`, Buffer.from(download.data));
}));
- name: unzip artifacts
run: |-
cp packages/backend/built/api.json packages/misskey-js/generator/api.json
pnpm run --filter misskey-js-type-generator generate
find . -mindepth 1 -maxdepth 1 -type f -name '*.zip' -exec unzip {} -d . ';'
ls -la
# packages/misskey-js/generator/built/autogen
- name: Upload Generated
uses: actions/upload-artifact@v4
with:
name: generated-misskey-js
path: packages/misskey-js/generator/built/autogen
- name: get head checksum
run: |-
checksum=$(realpath head_checksum)
# pull_request_target safety: permissions: read-all, and no user codes are executed
get-actual-misskey-js:
runs-on: ubuntu-latest
permissions:
contents: read
if: ${{ github.event.pull_request.mergeable == null || github.event.pull_request.mergeable == true }}
steps:
- name: checkout
uses: actions/checkout@v4.1.1
with:
submodules: true
persist-credentials: false
ref: refs/pull/${{ github.event.pull_request.number }}/merge
cd packages/misskey-js/src
find autogen -type f -exec sh -c 'echo $(sed -E "s/^\s+\*\s+generatedAt:.+$//" {} | sha256sum | cut -d" " -f 1) {}' \; > $checksum
cd ../../..
- name: Upload From Merged
uses: actions/upload-artifact@v4
with:
name: actual-misskey-js
path: packages/misskey-js/src/autogen
- name: build autogen
run: |-
checksum=$(realpath ${api_json_name}_checksum)
mv $api_json_name packages/misskey-js/generator/api.json
# pull_request_target safety: nothing is cloned from repository
comment-misskey-js-autogen:
runs-on: ubuntu-latest
needs: [generate-misskey-js, get-actual-misskey-js]
permissions:
pull-requests: write
steps:
- name: download generated-misskey-js
uses: actions/download-artifact@v4
with:
name: generated-misskey-js
path: misskey-js-generated
cd packages/misskey-js/generator
pnpm run generate
cd built
find autogen -type f -exec sh -c 'echo $(sed -E "s/^\s+\*\s+generatedAt:.+$//" {} | sha256sum | cut -d" " -f 1) {}' \; > $checksum
cd ../../../..
- name: download actual-misskey-js
uses: actions/download-artifact@v4
with:
name: actual-misskey-js
path: misskey-js-actual
- name: check misskey-js changes
id: check-changes
run: |
diff -r -u --label=generated --label=on-tree ./misskey-js-generated ./misskey-js-actual > misskey-js.diff || true
if [ -s misskey-js.diff ]; then
echo "changes=true" >> $GITHUB_OUTPUT
else
echo "changes=false" >> $GITHUB_OUTPUT
fi
- name: Print full diff
run: cat ./misskey-js.diff
- name: check update for type definitions
run: diff head_checksum ${api_json_name}_checksum
- name: send message
if: steps.check-changes.outputs.changes == 'true'
if: failure()
uses: thollander/actions-comment-pull-request@v2
with:
comment_tag: check-misskey-js-autogen
@@ -126,14 +125,10 @@ jobs:
```
- name: send message
if: steps.check-changes.outputs.changes == 'false'
if: success()
uses: thollander/actions-comment-pull-request@v2
with:
comment_tag: check-misskey-js-autogen
mode: delete
message: "Thank you!"
create_if_not_exists: false
- name: Make failure if changes are detected
if: steps.check-changes.outputs.changes == 'true'
run: exit 1

View File

@@ -6,13 +6,12 @@ on:
paths:
- packages/misskey-js/package.json
- package.json
- .github/workflows/check-misskey-js-version.yml
pull_request:
branches: [ develop ]
paths:
- packages/misskey-js/package.json
- package.json
- .github/workflows/check-misskey-js-version.yml
jobs:
check-version:
# ルートの package.json と packages/misskey-js/package.json のバージョンが一致しているかを確認する

View File

@@ -1,79 +0,0 @@
name: Check SPDX-License-Identifier
on:
push:
branches:
- master
- develop
pull_request:
jobs:
check-spdx-license-id:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
- name: Check
run: |
counter=0
search() {
local directory="$1"
find "$directory" -type f \
'(' \
-name "*.cjs" -and -not -name '*.config.cjs' -o \
-name "*.html" -o \
-name "*.js" -and -not -name '*.config.js' -o \
-name "*.mjs" -and -not -name '*.config.mjs' -o \
-name "*.scss" -o \
-name "*.ts" -and -not -name '*.config.ts' -o \
-name "*.vue" \
')' -and \
-not -name '*eslint*'
}
check() {
local file="$1"
if ! (
grep -q "SPDX-FileCopyrightText: syuilo and misskey-project" "$file" ||
grep -q "SPDX-License-Identifier: AGPL-3.0-only" "$file"
); then
echo "Missing: $file"
((counter++))
fi
}
directories=(
"cypress/e2e"
"packages/backend/migration"
"packages/backend/src"
"packages/backend/test"
"packages/frontend-shared/@types"
"packages/frontend-shared/js"
"packages/frontend/.storybook"
"packages/frontend/@types"
"packages/frontend/lib"
"packages/frontend/public"
"packages/frontend/src"
"packages/frontend/test"
"packages/frontend-embed/@types"
"packages/frontend-embed/src"
"packages/misskey-bubble-game/src"
"packages/misskey-reversi/src"
"packages/sw/src"
"scripts"
)
for directory in "${directories[@]}"; do
for file in $(search $directory); do
check "$file"
done
done
if [ $counter -gt 0 ]; then
echo "SPDX-License-Identifier is missing in $counter files."
exit 1
else
echo "SPDX-License-Identifier is certainly described in all target files!"
exit 0
fi

View File

@@ -50,9 +50,12 @@ jobs:
- name: Get PR ref
id: get-ref
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
PR_REF="refs/pull/${{ github.event.issue.number }}/head"
echo "pr-ref=$PR_REF" >> $GITHUB_OUTPUT
PR_NUMBER=$(jq --raw-output .issue.number $GITHUB_EVENT_PATH)
PR_REF=$(gh pr view $PR_NUMBER --json headRefName -q '.headRefName')
echo "pr-ref=$PR_REF" > $GITHUB_OUTPUT
- name: Extract wait time
id: get-wait-time

View File

@@ -37,7 +37,7 @@ jobs:
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push by digest
id: build
uses: docker/build-push-action@v6
uses: docker/build-push-action@v5
with:
context: .
push: true

View File

@@ -48,7 +48,7 @@ jobs:
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and Push to Docker Hub
id: build
uses: docker/build-push-action@v6
uses: docker/build-push-action@v5
with:
context: .
push: true

View File

@@ -13,16 +13,14 @@ jobs:
runs-on: ubuntu-latest
env:
DOCKER_CONTENT_TRUST: 1
DOCKLE_VERSION: 0.4.14
steps:
- uses: actions/checkout@v4.1.1
- name: Download and install dockle v${{ env.DOCKLE_VERSION }}
run: |
curl -L -o dockle.deb "https://github.com/goodwithtech/dockle/releases/download/v${DOCKLE_VERSION}/dockle_${DOCKLE_VERSION}_Linux-64bit.deb"
- run: |
curl -L -o dockle.deb "https://github.com/goodwithtech/dockle/releases/download/v0.4.10/dockle_0.4.10_Linux-64bit.deb"
sudo dpkg -i dockle.deb
- run: |
cp .config/docker_example.env .config/docker.env
cp ./compose_example.yml ./compose.yml
cp ./docker-compose_example.yml ./docker-compose.yml
- run: |
docker compose up -d web
docker tag "$(docker compose images web | awk 'OFS=":" {print $4}' | tail -n +2)" misskey-web:latest

View File

@@ -9,6 +9,7 @@ on:
paths:
- packages/backend/**
- .github/workflows/get-api-diff.yml
jobs:
get-from-misskey:
runs-on: ubuntu-latest
@@ -17,7 +18,7 @@ jobs:
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
api-json-name: [api-base.json, api-head.json]
include:
- api-json-name: api-base.json
@@ -31,9 +32,12 @@ jobs:
ref: ${{ matrix.ref }}
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

View File

@@ -8,26 +8,17 @@ on:
paths:
- packages/backend/**
- packages/frontend/**
- packages/frontend-shared/**
- packages/frontend-embed/**
- packages/sw/**
- packages/misskey-js/**
- packages/misskey-bubble-game/**
- packages/misskey-reversi/**
- packages/shared/eslint.config.js
- .github/workflows/lint.yml
- packages/shared/.eslintrc.js
pull_request:
paths:
- packages/backend/**
- packages/frontend/**
- packages/frontend-shared/**
- packages/frontend-embed/**
- packages/sw/**
- packages/misskey-js/**
- packages/misskey-bubble-game/**
- packages/misskey-reversi/**
- packages/shared/eslint.config.js
- .github/workflows/lint.yml
- packages/shared/.eslintrc.js
jobs:
pnpm_install:
runs-on: ubuntu-latest
@@ -36,8 +27,11 @@ jobs:
with:
fetch-depth: 0
submodules: true
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4.0.4
- uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'
cache: 'pnpm'
@@ -53,34 +47,24 @@ jobs:
workspace:
- backend
- frontend
- frontend-shared
- frontend-embed
- sw
- misskey-js
- misskey-bubble-game
- misskey-reversi
env:
eslint-cache-version: v1
eslint-cache-path: ${{ github.workspace }}/node_modules/.cache/eslint-${{ matrix.workspace }}
steps:
- uses: actions/checkout@v4.1.1
with:
fetch-depth: 0
submodules: true
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4.0.4
- uses: pnpm/action-setup@v3
with:
version: 7
run_install: false
- uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'
cache: 'pnpm'
- run: corepack enable
- run: pnpm i --frozen-lockfile
- name: Restore eslint cache
uses: actions/cache@v4.0.2
with:
path: ${{ env.eslint-cache-path }}
key: eslint-${{ env.eslint-cache-version }}-${{ matrix.workspace }}-${{ hashFiles('**/pnpm-lock.yaml') }}-${{ github.ref_name }}-${{ github.sha }}
restore-keys: eslint-${{ env.eslint-cache-version }}-${{ matrix.workspace }}-${{ hashFiles('**/pnpm-lock.yaml') }}-
- run: pnpm --filter ${{ matrix.workspace }} run eslint --cache --cache-location ${{ env.eslint-cache-path }} --cache-strategy content
- run: pnpm --filter ${{ matrix.workspace }} run eslint
typecheck:
needs: [pnpm_install]
@@ -90,22 +74,24 @@ jobs:
matrix:
workspace:
- backend
- sw
- misskey-js
steps:
- uses: actions/checkout@v4.1.1
with:
fetch-depth: 0
submodules: true
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4.0.4
- uses: pnpm/action-setup@v3
with:
version: 7
run_install: false
- uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'
cache: 'pnpm'
- run: corepack enable
- run: pnpm i --frozen-lockfile
- run: pnpm --filter misskey-js run build
if: ${{ matrix.workspace == 'backend' || matrix.workspace == 'sw' }}
- run: pnpm --filter misskey-reversi run build
if: ${{ matrix.workspace == 'backend' }}
- run: pnpm --filter misskey-reversi run build:tsc
if: ${{ matrix.workspace == 'backend' }}
- run: pnpm --filter ${{ matrix.workspace }} run typecheck

View File

@@ -1,28 +0,0 @@
name: Lint
on:
push:
paths:
- locales/**
- .github/workflows/locale.yml
pull_request:
paths:
- locales/**
- .github/workflows/locale.yml
jobs:
locale_verify:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4.1.1
with:
fetch-depth: 0
submodules: true
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4.0.4
with:
node-version-file: '.node-version'
cache: 'pnpm'
- run: corepack enable
- run: pnpm i --frozen-lockfile
- run: cd locales && node verify.js

View File

@@ -17,16 +17,19 @@ jobs:
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
steps:
- uses: actions/checkout@v4.1.1
with:
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

View File

@@ -3,7 +3,7 @@ name: "Release Manager: sync changelog with PR"
on:
push:
branches:
- develop
- release/**
paths:
- 'CHANGELOG.md'
@@ -20,29 +20,21 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# headが$GITHUB_REF_NAME, baseが$STABLE_BRANCHかつopenのPRを1つ取得
# headがrelease/かつopenのPRを1つ取得
- name: Get PR
run: |
echo "pr_number=$(gh pr list --limit 1 --search "head:$GITHUB_REF_NAME base:$STABLE_BRANCH is:open" --json number --jq '.[] | .number')" >> $GITHUB_OUTPUT
echo "pr_number=$(gh pr list --limit 1 --head "${{ github.ref_name }}" --json number --jq '.[] | .number')" >> $GITHUB_OUTPUT
id: get_pr
env:
STABLE_BRANCH: ${{ vars.STABLE_BRANCH }}
- name: Get target version
if: steps.get_pr.outputs.pr_number != ''
uses: misskey-dev/release-manager-actions/.github/actions/get-target-version@v2
uses: misskey-dev/release-manager-actions/.github/actions/get-target-version@v1
id: v
# CHANGELOG.mdの内容を取得
- name: Get changelog
if: steps.get_pr.outputs.pr_number != ''
uses: misskey-dev/release-manager-actions/.github/actions/get-changelog@v2
uses: misskey-dev/release-manager-actions/.github/actions/get-changelog@v1
with:
version: ${{ steps.v.outputs.target_version }}
id: changelog
# PRのnotesを更新
- name: Update PR
if: steps.get_pr.outputs.pr_number != ''
run: |
gh pr edit "$PR_NUMBER" --body "$CHANGELOG"
env:
PR_NUMBER: ${{ steps.get_pr.outputs.pr_number }}
CHANGELOG: ${{ steps.changelog.outputs.changelog }}
gh pr edit ${{ steps.get_pr.outputs.pr_number }} --body "${{ steps.changelog.outputs.changelog }}"

View File

@@ -17,10 +17,6 @@ on:
type: boolean
description: 'MERGE RELEASE BRANCH TO MAIN'
default: false
start-rc:
type: boolean
description: 'Start Release Candidate'
default: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -37,21 +33,18 @@ jobs:
pr_number: ${{ steps.get_pr.outputs.pr_number }}
steps:
- uses: actions/checkout@v4
# headが$GITHUB_REF_NAME, baseが$STABLE_BRANCHかつopenのPRを1つ取得
# headがrelease/かつopenのPRを1つ取得
- name: Get PRs
run: |
echo "pr_number=$(gh pr list --limit 1 --search "head:$GITHUB_REF_NAME base:$STABLE_BRANCH is:open" --json number --jq '.[] | .number')" >> $GITHUB_OUTPUT
echo "pr_number=$(gh pr list --limit 1 --search "head:release/ is:open" --json number --jq '.[] | .number')" >> $GITHUB_OUTPUT
id: get_pr
env:
STABLE_BRANCH: ${{ vars.STABLE_BRANCH }}
merge:
uses: misskey-dev/release-manager-actions/.github/workflows/merge.yml@v2
uses: misskey-dev/release-manager-actions/.github/workflows/merge.yml@v1
needs: get-pr
if: ${{ needs.get-pr.outputs.pr_number != '' && inputs.merge == true }}
with:
pr_number: ${{ needs.get-pr.outputs.pr_number }}
user: 'github-actions[bot]'
package_jsons_to_rewrite: ${{ vars.PACKAGE_JSONS_TO_REWRITE }}
# Text to prepend to the changelog
# The first line must be `## Unreleased`
@@ -60,42 +53,37 @@ jobs:
### General
-
### Client
-
### Server
-
use_external_app_to_release: ${{ vars.USE_RELEASE_APP == 'true' }}
indent: ${{ vars.INDENT }}
secrets:
RELEASE_APP_ID: ${{ secrets.RELEASE_APP_ID }}
RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}
RULESET_EDIT_APP_ID: ${{ secrets.RULESET_EDIT_APP_ID }}
RULESET_EDIT_APP_PRIVATE_KEY: ${{ secrets.RULESET_EDIT_APP_PRIVATE_KEY }}
create-prerelease:
uses: misskey-dev/release-manager-actions/.github/workflows/create-prerelease.yml@v2
uses: misskey-dev/release-manager-actions/.github/workflows/create-prerelease.yml@v1
needs: get-pr
if: ${{ needs.get-pr.outputs.pr_number != '' && inputs.merge != true }}
with:
pr_number: ${{ needs.get-pr.outputs.pr_number }}
user: 'github-actions[bot]'
package_jsons_to_rewrite: ${{ vars.PACKAGE_JSONS_TO_REWRITE }}
use_external_app_to_release: ${{ vars.USE_RELEASE_APP == 'true' }}
indent: ${{ vars.INDENT }}
draft_prerelease_channel: alpha
ready_start_prerelease_channel: beta
prerelease_channel: ${{ inputs.start-rc && 'rc' || '' }}
secrets:
RELEASE_APP_ID: ${{ secrets.RELEASE_APP_ID }}
RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}
create-target:
uses: misskey-dev/release-manager-actions/.github/workflows/create-target.yml@v2
uses: misskey-dev/release-manager-actions/.github/workflows/create-target.yml@v1
needs: get-pr
if: ${{ needs.get-pr.outputs.pr_number == '' }}
with:
user: 'github-actions[bot]'
# The script for version increment.
# process.env.CURRENT_VERSION: The current version.
#
@@ -127,9 +115,8 @@ jobs:
# }
package_jsons_to_rewrite: ${{ vars.PACKAGE_JSONS_TO_REWRITE }}
use_external_app_to_release: ${{ vars.USE_RELEASE_APP == 'true' }}
indent: ${{ vars.INDENT }}
stable_branch: ${{ vars.STABLE_BRANCH }}
draft_prerelease_channel: alpha
secrets:
RELEASE_APP_ID: ${{ secrets.RELEASE_APP_ID }}
RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}
RULESET_EDIT_APP_ID: ${{ secrets.RULESET_EDIT_APP_ID }}
RULESET_EDIT_APP_PRIVATE_KEY: ${{ secrets.RULESET_EDIT_APP_PRIVATE_KEY }}

View File

@@ -16,31 +16,23 @@ jobs:
check:
runs-on: ubuntu-latest
outputs:
head: ${{ steps.get_pr.outputs.head }}
base: ${{ steps.get_pr.outputs.base }}
ref: ${{ steps.get_pr.outputs.ref }}
steps:
- uses: actions/checkout@v4
# PR情報を取得
- name: Get PR
run: |
pr_json=$(gh pr view "$PR_NUMBER" --json isDraft,headRefName,baseRefName)
echo "head=$(echo $pr_json | jq -r '.headRefName')" >> $GITHUB_OUTPUT
echo "base=$(echo $pr_json | jq -r '.baseRefName')" >> $GITHUB_OUTPUT
pr_json=$(gh pr view ${{ github.event.pull_request.number }} --json isDraft,headRefName)
echo "ref=$(echo $pr_json | jq -r '.headRefName')" >> $GITHUB_OUTPUT
id: get_pr
env:
PR_NUMBER: ${{ github.event.pull_request.number }}
release:
uses: misskey-dev/release-manager-actions/.github/workflows/create-prerelease.yml@v2
uses: misskey-dev/release-manager-actions/.github/workflows/create-prerelease.yml@v1
needs: check
if: needs.check.outputs.head == github.event.repository.default_branch && needs.check.outputs.base == vars.STABLE_BRANCH
if: startsWith(needs.check.outputs.ref, 'release/')
with:
pr_number: ${{ github.event.pull_request.number }}
user: 'github-actions[bot]'
package_jsons_to_rewrite: ${{ vars.PACKAGE_JSONS_TO_REWRITE }}
use_external_app_to_release: ${{ vars.USE_RELEASE_APP == 'true' }}
indent: ${{ vars.INDENT }}
draft_prerelease_channel: alpha
ready_start_prerelease_channel: beta
secrets:
RELEASE_APP_ID: ${{ secrets.RELEASE_APP_ID }}
RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}

View File

@@ -70,25 +70,18 @@ jobs:
- id: out-diff
name: Build diff Comment
run: |
HEADER="このPRによるapi.jsonの差分"
FOOTER="[Get diff files from Workflow Page](https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID})"
DIFF_BYTES="$(stat ./api.json.diff -c '%s' | tr -d '\n')"
echo "$HEADER" > ./output.md
if (( "$DIFF_BYTES" <= 1 )); then
echo '差分はありません。' >> ./output.md
else
echo '<details>' >> ./output.md
echo '<summary>差分はこちら</summary>' >> ./output.md
echo >> ./output.md
echo '```diff' >> ./output.md
cat ./api.json.diff >> ./output.md
echo '```' >> ./output.md
echo '</details>' >> .output.md
fi
echo "$FOOTER" >> ./output.md
cat <<- EOF > ./output.md
このPRによるapi.jsonの差分
<details>
<summary>差分はこちら</summary>
\`\`\`diff
$(cat ./api.json.diff)
\`\`\`
</details>
[Get diff files from Workflow Page](https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID})
EOF
- uses: thollander/actions-comment-pull-request@v2
with:
pr_number: ${{ steps.load-pr-num.outputs.pr-number }}

View File

@@ -7,11 +7,6 @@ on:
- develop
- dev/storybook8 # for testing
pull_request_target:
branches-ignore:
# Since pull requests targets master mostly is the "develop" branch.
# Storybook CI is checked on the "push" event of "develop" branch so it would cause a duplicate build.
# This is a waste of chromatic build quota, so we don't run storybook CI on pull requests targets master.
- master
jobs:
build:
@@ -39,9 +34,12 @@ jobs:
echo "base=$(git rev-list --parents -n1 HEAD | cut -d" " -f2)" >> $GITHUB_OUTPUT
git checkout $(git rev-list --parents -n1 HEAD | cut -d" " -f3)
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js 20.x
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version-file: '.node-version'
cache: 'pnpm'
@@ -89,13 +87,12 @@ jobs:
if [ "$CHROMATIC_PARAMETER" = " --skip" ]; then
echo "skip=true" >> $GITHUB_OUTPUT
fi
BRANCH="${{ github.event.pull_request.head.user.login }}:$HEAD_REF"
if [ "$BRANCH" = "misskey-dev:$HEAD_REF" ]; then
BRANCH="$HEAD_REF"
BRANCH="${{ github.event.pull_request.head.user.login }}:${{ github.event.pull_request.head.ref }}"
if [ "$BRANCH" = "misskey-dev:${{ github.event.pull_request.head.ref }}" ]; then
BRANCH="${{ github.event.pull_request.head.ref }}"
fi
pnpm --filter frontend chromatic --exit-once-uploaded -d storybook-static --branch-name "$BRANCH" $(echo "$CHROMATIC_PARAMETER")
pnpm --filter frontend chromatic --exit-once-uploaded -d storybook-static --branch-name $BRANCH $(echo "$CHROMATIC_PARAMETER")
env:
HEAD_REF: ${{ github.event.pull_request.head.ref }}
CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
- name: Notify that Chromatic detects changes
uses: actions/github-script@v7.0.1

View File

@@ -9,20 +9,19 @@ on:
- packages/backend/**
# for permissions
- packages/misskey-js/**
- .github/workflows/test-backend.yml
pull_request:
paths:
- packages/backend/**
# for permissions
- packages/misskey-js/**
- .github/workflows/test-backend.yml
jobs:
unit:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
services:
postgres:
@@ -42,11 +41,12 @@ jobs:
with:
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
- name: Install FFmpeg
uses: FedericoCarboni/setup-ffmpeg@v3
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
@@ -71,7 +71,7 @@ jobs:
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
services:
postgres:
@@ -91,9 +91,12 @@ jobs:
with:
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

View File

@@ -11,7 +11,7 @@ on:
- packages/misskey-js/**
# for e2e
- packages/backend/**
- .github/workflows/test-frontend.yml
pull_request:
paths:
- packages/frontend/**
@@ -19,23 +19,26 @@ on:
- packages/misskey-js/**
# for e2e
- packages/backend/**
- .github/workflows/test-frontend.yml
jobs:
vitest:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
steps:
- uses: actions/checkout@v4.1.1
with:
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
@@ -61,7 +64,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
browser: [chrome]
services:
@@ -88,9 +91,12 @@ jobs:
#- uses: browser-actions/setup-firefox@latest
# if: ${{ matrix.browser == 'firefox' }}
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 7
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

View File

@@ -8,12 +8,11 @@ on:
branches: [ develop ]
paths:
- packages/misskey-js/**
- .github/workflows/test-misskey-js.yml
pull_request:
branches: [ develop ]
paths:
- packages/misskey-js/**
- .github/workflows/test-misskey-js.yml
jobs:
test:
@@ -21,7 +20,7 @@ jobs:
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
steps:
@@ -31,7 +30,7 @@ jobs:
- run: corepack enable
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

View File

@@ -16,16 +16,19 @@ jobs:
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
steps:
- uses: actions/checkout@v4.1.1
with:
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

View File

@@ -7,27 +7,29 @@ on:
- develop
paths:
- packages/backend/**
- .github/workflows/validate-api-json.yml
pull_request:
paths:
- packages/backend/**
- .github/workflows/validate-api-json.yml
jobs:
validate-api-json:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.16.0]
node-version: [20.10.0]
steps:
- uses: actions/checkout@v4.1.1
with:
submodules: true
- name: Install pnpm
uses: pnpm/action-setup@v4
uses: pnpm/action-setup@v3
with:
version: 8
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.4
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'

11
.gitignore vendored
View File

@@ -35,17 +35,13 @@ coverage
!/.config/example.yml
!/.config/docker_example.yml
!/.config/docker_example.env
!/.config/cypress-devcontainer.yml
docker-compose.yml
compose.yml
.devcontainer/compose.yml
!/.devcontainer/compose.yml
!/.devcontainer/docker-compose.yml
# misskey
/build
built
built-test
js-built
/data
/.cache-loader
/db
@@ -63,11 +59,6 @@ ormconfig.json
temp
/packages/frontend/src/**/*.stories.ts
tsdoc-metadata.json
misskey-assets
# Vite temporary files
vite.config.js.timestamp-*
vite.config.ts.timestamp-*
# blender backups
*.blend1

3
.gitmodules vendored
View File

@@ -1,3 +1,6 @@
[submodule "misskey-assets"]
path = misskey-assets
url = https://github.com/misskey-dev/assets.git
[submodule "fluent-emojis"]
path = fluent-emojis
url = https://github.com/misskey-dev/emojis.git

View File

@@ -1 +1 @@
20.16.0
20.10.0

View File

@@ -3,7 +3,9 @@
"editorconfig.editorconfig",
"dbaeumer.vscode-eslint",
"Vue.volar",
"Vue.vscode-typescript-vue-plugin",
"Orta.vscode-jest",
"dbaeumer.vscode-eslint",
"mrmlnc.vscode-json5"
]
}

View File

@@ -7,7 +7,7 @@
"*.test.ts": "typescript"
},
"jest.jestCommandLine": "pnpm run jest",
"jest.runMode": "on-demand",
"jest.autoRun": "off",
"editor.codeActionsOnSave": {
"source.fixAll": "explicit"
},

View File

@@ -1,355 +1,13 @@
## 2024.10.0
### Note
- サーバー初期設定時に使用する初期パスワードを設定できるようになりました。今後Misskeyサーバーを新たに設置する際には、初回の起動前にコンフィグファイルの`setupPassword`をコメントアウトし、初期パスワードを設定することをおすすめします。(すでに初期設定を完了しているサーバーについては、この変更に伴い対応する必要はありません)
- ホスティングサービスを運営している場合は、コンフィグファイルを構築する際に`setupPassword`をランダムな値に設定し、ユーザーに通知するようにシステムを更新することをおすすめします。
- なお、初期パスワードが設定されていない場合でも初期設定を行うことが可能ですUI上で初期パスワードの入力欄を空欄にすると続行できます
- ユーザーデータを読み込む際の型が一部変更されました。
- `twoFactorEnabled`, `usePasswordLessLogin`, `securityKeys`: 自分とモデレーター以外のユーザーからは取得できなくなりました
## Unreleased
### General
- Feat: サーバー初期設定時に初期パスワードを設定できるように
- Feat: 通報にモデレーションノートを残せるように
- Feat: 通報の解決種別を設定できるように
- Enhance: 通報の解決と転送を個別に行えるように
- Enhance: セキュリティ向上のため、サインイン時もCAPTCHAを求めるようになりました
- Enhance: 依存関係の更新
- Enhance: l10nの更新
- Enhance: Playの「人気」タブで10件以上表示可能に #14399
- Fix: 連合のホワイトリストが正常に登録されない問題を修正
-
### Client
- Enhance: デザインの調整
- Enhance: ログイン画面の認証フローを改善
- Fix: クライアント上での時間ベースの実績獲得動作が実績獲得後も発動していた問題を修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/657)
-
### Server
- Enhance: セキュリティ向上のため、ログイン時にメール通知を行うように
- Enhance: 自分とモデレーター以外のユーザーから二要素認証関連のデータが取得できないように
- Enhance: 通報および通報解決時に送出されるSystemWebhookにユーザ情報を含めるように ( #14697 )
- Fix: `admin/abuse-user-reports`エンドポイントのスキーマが間違っていた問題を修正
## 2024.9.0
### General
- Feat: ノート単体・ユーザーのノート・クリップのノートの埋め込み機能
- 埋め込みコードやウェブサイトへの実装方法の詳細は https://misskey-hub.net/docs/for-users/features/embed/ をご覧ください
- Feat: パスキーでログインボタンを実装 (#14574)
- Feat: フォローされた際のメッセージを設定できるように
- Feat: 連合をホワイトリスト制にできるように
- Feat: UserWebhookとSystemWebhookのテスト送信機能を追加 (#14445)
- Feat: モデレーターはユーザーにかかわらずファイルが添付されているノートを検索できるように
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/680)
- Feat: データエクスポートが完了した際に通知を発行するように
- Enhance: ユーザーによるコンテンツインポートの可否をロールポリシーで制御できるように
- Enhance: 依存関係の更新
- Enhance: l10nの更新
### Client
- Enhance: サイズ制限を超過するファイルをアップロードしようとした際にエラーを出すように
- Enhance: アイコンデコレーション管理画面にプレビューを追加
- Enhance: コントロールパネル内のファイル一覧でセンシティブなファイルを区別しやすく
- Enhance: ScratchpadにUIインスペクターを追加
- Enhance: Play編集画面の項目の並びを少しリデザイン
- Enhance: 各種メニューをドロワー表示するかどうか設定可能に
- Enhance: AiScriptのMk:C:containerのオプションに`borderStyle``borderRadius`を追加
- Enhance: CWでも絵文字をクリックしてメニューを表示できるように
- Fix: サーバーメトリクスが2つ以上あるとリロード直後の表示がおかしくなる問題を修正
- Fix: コントロールパネル内のAp requests内のチャートの表示がおかしかった問題を修正
- Fix: 月の違う同じ日はセパレータが表示されないのを修正
- Fix: タッチ画面でレンジスライダーを操作するとツールチップが複数表示される問題を修正
(Cherry-picked from https://github.com/taiyme/misskey/pull/265)
- Fix: 縦横比が極端なカスタム絵文字を表示する際にレイアウトが崩れる箇所があるのを修正
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/725)
- Fix: 設定変更時のリロード確認ダイアログが複数個表示されることがある問題を修正
- Fix: ファイルの詳細ページのファイルの説明で改行が正しく表示されない問題を修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/commit/bde6bb0bd2e8b0d027e724d2acdb8ae0585a8110)
- Fix: 一部画面のページネーションが動作しにくくなっていたのを修正 ( #12766 , #11449 )
### Server
- Feat: Misskey® Reactions Boost Technology™ (RBT)により、リアクションの作成負荷を低減することが可能に
- Fix: アンテナの書き込み時にキーワードが与えられなかった場合のエラーをApiErrorとして投げるように
- この変更により、公式フロントエンドでは入力の不備が内部エラーとして報告される代わりに一般的なエラーダイアログで報告されます
- Fix: ファイルがサイズの制限を超えてアップロードされた際にエラーを返さなかった問題を修正
- Fix: 外部ページを解析する際に、ページに紐づけられた関連リソースも読み込まれてしまう問題を修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/commit/26e0412fbb91447c37e8fb06ffb0487346063bb8)
- Fix: Continue importing from file if single emoji import fails
- Fix: `Retry-After`ヘッダーが送信されなかった問題を修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/commit/8a982c61c01909e7540ff1be9f019df07c3f0624)
- Fix: サーバーサイドのDOM解析完了時にリソースを開放するように
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/634)
- Fix: `<link rel="alternate">`を追って照会するのはOKレスポンスが返却された場合のみに
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/633)
- Fix: メールにスタイルが適用されていなかった問題を修正
## 2024.8.0
### General
- Enhance: モデレーターはすべてのユーザーのフォロー・フォロワーの一覧を見られるように
- Enhance: アカウントの削除のモデレーションログを残すように
- Enhance: 不適切なページ、ギャラリー、Playを管理者権限で削除できるように
- Fix: リモートユーザのフォロー・フォロワーの一覧が非公開設定の場合も表示できてしまう問題を修正
### Client
- Enhance: 「自分のPlay」ページにおいてPlayが非公開かどうかが一目でわかるように
- Enhance: 不適切なページ、ギャラリー、Playを通報できるように
- Fix: Play編集時に公開範囲が「パブリック」にリセットされる問題を修正
- Fix: ページ遷移に失敗することがある問題を修正
- Fix: iOSでユーザー名などがリンクとして誤検知される現象を抑制
- Fix: mCaptchaを使用していてもbotプロテクションに関する警告が消えないのを修正
- Fix: ユーザーのモデレーションページにおいてユーザー名にドットが入っているとシステムアカウントとして表示されてしまう問題を修正
- Fix: 特定の条件下でノートの削除ボタンが出ないのを修正
### Server
- Enhance: 照会時にURLがhtmlかつheadタグ内に`rel="alternate"`, `type="application/activity+json"``link`タグがある場合に追ってリンク先を照会できるように
- Enhance: 凍結されたアカウントのフォローリクエストを表示しないように
- Fix: WSの`readAllNotifications` メッセージが `body` を持たない場合に動作しない問題 #14374
- 通知ページや通知カラム(デッキ)を開いている状態において、新たに発生した通知が既読されない問題が修正されます。
- これにより、プッシュ通知が有効な同条件下の環境において、プッシュ通知が常に発生してしまう問題も修正されます。
- Fix: Play各種エンドポイントの返り値に`visibility`が含まれていない問題を修正
- Fix: サーバー情報取得の際にモデレーター限定の情報が取得できないことがあるのを修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/582)
- Fix: 公開範囲がダイレクトのノートをユーザーアクティビティのチャート生成に使用しないように
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/679)
- Fix: ActivityPubのエンティティタイプ判定で不明なタイプを受け取った場合でも処理を継続するように
- キュー処理のつまりが改善される可能性があります
- Fix: リバーシの対局設定の変更が反映されないのを修正
- Fix: 無制限にストリーミングのチャンネルに接続できる問題を修正
- Fix: ベースロールのポリシーを変更した際にモデログに記録されないのを修正
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/700)
- Fix: Prevent memory leak from memory caches (#14310)
- Fix: More reliable memory cache eviction (#14311)
## 2024.7.0
### Note
- デッキUIの新着ートをサウンドで通知する機能の追加v2024.5.0)に伴い、以前から動作しなくなっていたクライアント設定内の「アンテナ受信」「チャンネル通知」サウンドを削除しました。
- Streaming APIにて入力が不正な場合にはそのメッセージを無視するようになりました。 #14251
### General
- Feat: 通報を受けた際、または解決した際に、予め登録した宛先に通知を飛ばせるように(mail or webhook) #13705
- Feat: ユーザーのアイコン/バナーの変更可否をロールで設定可能に
- 変更不可となっていても、設定済みのものを解除してデフォルト画像に戻すことは出来ます
- Feat: ユーザ作成時にSystemWebhookを送信可能に #14281
- Feat: メディアサイレンスを実装 #13842
- メディアサイレンスされたサーバーに所属するアカウントによるファイルはすべてセンシティブとして扱われ、カスタム絵文字が使用できないようになります。
- Enhance: 管理画面でアーカイブにしたお知らせを表示・編集できるように
- Fix: 配信停止したインスタンス一覧が見れなくなる問題を修正
- Fix: Dockerコンテナの立ち上げ時に`pnpm`のインストールで固まることがある問題
- Fix: デフォルトテーマに無効なテーマコードを入力するとUIが使用できなくなる問題を修正
- 翻訳の更新
- 依存関係の更新
### Client
- Feat: ユーザーページから「このユーザーのノートを検索」できるように (#14128)
- Feat: 検索ページはクエリを受け付けるようになりました (#14128)
- Enhance: 検索ページのUI改善 (#14128)
- Enhance: 内蔵APIドキュメントのデザイン・パフォーマンスを改善
- Enhance: 非ログイン時に他サーバーに遷移するアクションを追加
- Enhance: 非ログイン時のハイライトTLのデザインを改善
- Enhance: フロントエンドのアクセシビリティ改善
(Based on https://github.com/taiyme/misskey/pull/226)
- Enhance: サーバー情報ページ・お問い合わせページを改善
(Cherry-picked from https://github.com/taiyme/misskey/pull/238)
- Enhance: AiScriptを0.19.0にアップデート
- Enhance: Allow negative delay for MFM animation elements (`tada`, `jelly`, `twitch`, `shake`, `spin`, `jump`, `bounce`, `rainbow`)
- Enhance: センシティブなメディアを開く際に確認ダイアログを出せるように
- Enhance: 検索(ノート/ユーザー)で `#` から始まる文字列を入力すると、そのハッシュタグのノート/ユーザー一覧ページが表示できるように
- Enhance: 検索(ノート/ユーザー)において、入力に空白が含まれている場合は照会を行わないように
- Enhance: 検索(ノート/ユーザー)において、照会を行うかどうか、ハッシュタグのノート/ユーザー一覧ページを表示するかどうかの確認ダイアログを出すように
- Enhance: 検索(ノート/ユーザー)で `@` から始まる文字列(`@user@host`など)を入力すると、そのユーザーを照会できるように
- Enhance: ドライブのファイル・フォルダをドラッグしなくても移動できるように
(Cherry-picked from https://github.com/nafu-at/misskey/commit/b89c2af6945c6a9f9f10e83f54d2bcf0f240b0b4, https://github.com/nafu-at/misskey/commit/8a7d710c6acb83f50c83f050bd1423c764d60a99)
- Enhance: デッキのアンテナ・リスト選択画面からそれぞれを新規作成できるように
- Enhance: ブラウザのコンテキストメニューを使用できるように
- Enhance: 連合の「連合中」,「購読中」,「配信中」に対してブロックしているサーバー、配信停止しているサーバーを含めないように
- Fix: `/about#federation` ページなどで各インスタンスのチャートが表示されなくなっていた問題を修正
- Fix: ユーザーページの追加情報のラベルを投稿者のサーバーの絵文字で表示する (#13968)
- Fix: リバーシの対局を正しく共有できないことがある問題を修正
- Fix: コントロールパネルでベースロールのポリシーを編集してもUI上では変更が反映されない問題を修正
- Fix: アンテナの編集画面のボタンに隙間を追加
- Fix: テーマプレビューが見れない問題を修正
- Fix: ショートカットキーが連打できる問題を修正
(Cherry-picked from https://github.com/taiyme/misskey/pull/234)
- Fix: MkSignin.vueのcredentialRequestからReactivityを削除ProxyがPasskey認証処理に渡ることを避けるため
- Fix: 「アニメーション画像を再生しない」がオンのときでもサーバーのバナー画像・背景画像がアニメーションしてしまう問題を修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/574)
- Fix: Twitchの埋め込みが開けない問題を修正
- Fix: 子メニューの高さがウィンドウからはみ出ることがある問題を修正
- Fix: 個人宛てのダイアログ形式のお知らせが即時表示されない問題を修正
- Fix: 一部の画像がセンシティブ指定されているときに画面に何も表示されないことがあるのを修正
- Fix: リアクションしたユーザー一覧のユーザー名がはみ出る問題を修正
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/672)
- Fix: `/share`ページにおいて絵文字ピッカーを開くことができない問題を修正
- Fix: deck uiの通知音が重なる問題 (#14029)
- Fix: ダイレクト投稿の"削除して編集"において、宛先が保持されていなかった問題を修正
- Fix: 投稿フォームへのURL貼り付けによる引用が下書きに保存されていなかった問題を修正
- Fix: "削除して編集"や下書きにおいて、リアクションの受け入れ設定が保持/保存されていなかった問題を修正
- Fix: 照会に `#` から始まる文字列を入力してそのハッシュタグのページを表示する際、入力が `#` のみの場合に「指定されたURLに該当するページはありませんでした。」が表示されてしまう問題を修正
- Fix: 照会に `@` から始まる文字列を入力してユーザーを照会する際、入力が `@` のみの場合に「問題が発生しました」が表示されてしまう問題を修正
- Fix: 投稿フォームにートのURLを貼り付けて"引用として添付"した場合、投稿文を空にすることによるRenote化が出来なかった問題を修正
- Fix: フォロー中のユーザーに関する"TLに他の人への返信を含める"の設定が分かりづらい問題を修正
- Fix: タイムラインページを開いた時、`TLに他の人への返信を含める`がオフのときに`ファイル付きのみ`をオンにできない問題を修正
- Fix: deck uiでタイムラインを切り替えた際にTLの設定項目が更新されず、`TLに他の人への返信を含める`のトグルが表示されない問題を修正
- Fix: ウィジェットのタイムライン選択欄に無効化されたタイムラインが表示される問題を修正
- Fix: サウンドにドライブの音声を使用している際にドライブの音声が再生できなくなると設定が変更できなくなる問題を修正
### Server
- Feat: レートリミット制限に引っかかったときに`Retry-After`ヘッダーを返すように (#13949)
- Enhance: エンドポイント`clips/update`の必須項目を`clipId`のみに
- Enhance: エンドポイント`admin/roles/update`の必須項目を`roleId`のみに
- Enhance: エンドポイント`pages/update`の必須項目を`pageId`のみに
- Enhance: エンドポイント`gallery/posts/update`の必須項目を`postId`のみに
- Enhance: エンドポイント`i/webhook/update`の必須項目を`webhookId`のみに
- Enhance: エンドポイント`admin/ad/update`の必須項目を`id`のみに
- Enhance: `default.yml`内の`url`, `db.db`, `db.user`, `db.pass`を環境変数から読み込めるように
- Enhance: エンドポイント`api/meta`にプロパティ`noteSearchableScope`が増え、`string``local`または`global`を返却します
- Fix: チャート生成時にinstance.suspensionStateに置き換えられたinstance.isSuspendedが参照されてしまう問題を修正
- Fix: ユーザーのフィードページのMFMをHTMLに展開するように (#14006)
- Fix: アンテナ・クリップ・リスト・ウェブフックがロールポリシーの上限より一つ多く作れてしまうのを修正 (#14036)
- Fix: notRespondingSinceが実装される前に不通になったインスタンスが自動的に配信停止にならない (#14059)
- Fix: FTT有効時、タイムライン用エンドポイントで`sinceId`にキャッシュ内最古のものより古いものを指定した場合に正しく結果が返ってこない問題を修正
- Fix: 自分以外のクリップ内のノート個数が見えることがあるのを修正
- Fix: 空文字列のリアクションはフォールバックされるように
- Fix: リノートにリアクションできないように
- Fix: ユーザー名の前後に空白文字列がある場合は省略するように
- Fix: プロフィール編集時に名前を空白文字列のみにできる問題を修正
- Fix: ユーザ名のサジェスト時に表示される内容と順番を調整(以下の順番になります) #14149
1. フォロー中かつアクティブなユーザ
2. フォロー中かつ非アクティブなユーザ
3. フォローしていないアクティブなユーザ
4. フォローしていない非アクティブなユーザ
また、自分自身のアカウントもサジェストされるようになりました。
- Fix: 一般ユーザーから見たユーザーのバッジの一覧に公開されていないものが含まれることがある問題を修正
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/652)
- Fix: ユーザーのリアクション一覧でミュート/ブロックが機能していなかった問題を修正
- Fix: FTT有効時にリモートユーザーのートがHTLにキャッシュされる問題を修正
- Fix: 一部の通知がローカル上のリモートユーザーに対して行われていた問題を修正
- Fix: エラーメッセージの誤字を修正 (#14213)
- Fix: ソーシャルタイムラインにローカルタイムラインに表示される自分へのリプライが表示されない問題を修正
- Fix: リノートのミュートが適用されるまでに時間がかかることがある問題を修正
(Cherry-picked from https://github.com/Type4ny-Project/Type4ny/commit/e9601029b52e0ad43d9131b555b614e56c84ebc1)
- Fix: Steaming APIが不正なデータを受けた場合の動作が不安定である問題 #14251
- Fix: `users/search`において `@` から始まる文字列が与えられた際の処理が正しくなかった問題を修正
- 名前や自己紹介に `@` から始まる文言が含まれるユーザーも検索できるようになります
- Fix: 一部のMisskey以外のソフトウェアからファイルを受け取れない問題
(Cherry-picked from https://github.com/Secineralyr/misskey.dream/pull/73/commits/652eaff1e8aa00b890d71d2e1e52c263c1e67c76)
- NOTE: `drive_file``url`, `uri`, `src`の上限が512から1024に変更されます
Migrationではカラム定義の変更のみが行われます。
サーバー管理者は各サーバーの必要に応じ`drive_file` `("uri")`に対するインデックスを張りなおすことでより安定しDBの探索が行われる可能性があります。詳細 は [GitHub](https://github.com/misskey-dev/misskey/pull/14323#issuecomment-2257562228)で確認可能です
- Fix: 自分のフォロワー限定投稿に対するリプライがホームタイムラインで見えないことが有る問題を修正
- Fix: フォローしていないユーザによるフォロワー限定投稿に対するリプライがソーシャルタイムラインで表示されることがある問題を修正
### Misskey.js
- Feat: `/drive/files/create` のリクエストに対応(`multipart/form-data`に対応)
- Feat: `/admin/role/create` のロールポリシーの型を修正
## 2024.5.0
### Note
- コントロールパネル内にあるサマリープロキシの設定個所がセキュリティから全般へ変更となります。
- 悪意のある第三者がリモートユーザーになりすましたアクティビティを受け取れてしまう問題を修正しました。詳しくは[GitHub security advisory](https://github.com/misskey-dev/misskey/security/advisories/GHSA-2vxv-pv3m-3wvj)をご覧ください。
- 管理者向け権限 `read:admin:show-users``read:admin:show-user` に統合されました。必要に応じてAPIトークンを再発行してください。
### General
- Feat: エラートラッキングにSentryを使用できるようになりました
- Enhance: URLプレビューの有効化・無効化を設定できるように #13569
- Enhance: アンテナでBotによるートを除外できるように
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/545)
- Enhance: クリップのノート数を表示するように
- Enhance: コンディショナルロールの条件として以下を新たに追加 (#13667)
- 猫ユーザーか
- botユーザーか
- サスペンド済みユーザーか
- 鍵アカウントユーザーか
- 「アカウントを見つけやすくする」が有効なユーザーか
- Enhance: Goneを出さずに終了したサーバーへの配信停止を自動的に行うように
- もしそのようなサーバーからから配信が届いた場合には自動的に配信を再開します
- Enhance: 配信停止の理由を表示するように
- Enhance: サーバーのお問い合わせ先URLを設定できるようになりました
- Fix: Play作成時に設定した公開範囲が機能していない問題を修正
- Fix: 正規化されていない状態のhashtagが連合されてきたhtmlに含まれているとhashtagが正しくhashtagに復元されない問題を修正
- Fix: みつけるのアンケート欄にてチャンネルのアンケートが含まれてしまう問題を修正
### Client
- Feat: アップロードするファイルの名前をランダム文字列にできるように
- Feat: 個別のお知らせにリンクで飛べるように
(Based on https://github.com/MisskeyIO/misskey/pull/639)
- Enhance: 自分のノートの添付ファイルから直接ファイルの詳細ページに飛べるように
- Enhance: 広告がMisskeyと同一ドメインの場合はRouterで遷移するように
- Enhance: リアクション・いいねの総数を表示するように
- Enhance: リアクション受け入れが「いいねのみ」の場合はリアクション絵文字一覧を表示しないように
- Enhance: 設定>プラグインのページからプラグインの簡易的なログやエラーを見られるように
- 実装の都合により、プラグインは1つエラーを起こした時に即時停止するようになりました
- Enhance: ページのデザインを変更
- Enhance: 2要素認証ワンタイムパスワードの入力欄を改善
- Enhance: 「今日誕生日のフォロー中ユーザー」ウィジェットを手動でリロードできるように
- Enhance: 映像・音声の再生にブラウザのネイティブプレイヤーを使用できるように
- Enhance: 映像・音声の再生メニューに「再生速度」「ループ再生」「ピクチャインピクチャ」を追加
- Enhance: 映像・音声の再生にキーボードショートカットが使えるように
- Enhance: ノートについているリアクションの「もっと!」から、リアクションの一覧を表示できるように
- Enhance: リプライにて引用がある場合テキストが空でもノートできるように
- 引用したいートのURLをコピーしリプライ投稿画面にペーストして添付することで達成できます
- Enhance: フォローするかどうかの確認ダイアログを出せるように
- Enhance: Playを手動でリロードできるように
- Enhance: 通報のコメント内のリンクをクリックした際、ウィンドウで開くように
- Enhance: `Ui:C:postForm` および `Ui:C:postFormButton``localOnly``visibility` を設定できるように
- Enhance: AiScriptを0.18.0にバージョンアップ
- Enhance: 通常のノートでも、お気に入りに登録したチャンネルにリノートできるように
- Enhance: 長いテキストをペーストした際にテキストファイルとして添付するかどうかを選択できるように
- Enhance: 新着ートをサウンドで通知する機能をdeck UIに追加しました
- Enhance: コントロールパネルのクイックアクションからファイルを照会できるように
- Enhance: コントロールパネルのクイックアクションから通常の照会を行えるように
- Fix: 一部のページ内リンクが正しく動作しない問題を修正
- Fix: 周年の実績が閏年を考慮しない問題を修正
- Fix: ローカルURLのプレビューポップアップが左上に表示される
- Fix: WebGL2をサポートしないブラウザで「季節に応じた画面の演出」が有効になっているとき、Misskeyが起動できなくなる問題を修正
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/459)
- Fix: ページタイトルでローカルユーザーとリモートユーザーの区別がつかない問題を修正
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/528)
- Fix: コードブロックのシンタックスハイライトで使用される定義ファイルをCDNから取得するように #13177
- CDNから取得せずMisskey本体にバンドルする場合は`pacakges/frontend/vite.config.ts`を修正してください。
- Fix: タイムゾーンによっては、「今日誕生日のフォロー中ユーザー」ウィジェットが正しく動作しない問題を修正
- Fix: CWのみの引用リートが詳細ページで純粋なリートとして誤って扱われてしまう問題を修正
- Fix: ート詳細ページにおいてCW付き引用リートのCWボタンのラベルに「引用」が含まれていない問題を修正
- Fix: ダイアログの入力で字数制限に違反していてもEnterキーが押せてしまう問題を修正
- Fix: ダイレクト投稿の宛先が保存されない問題を修正
- Fix: Playのページを離れたときに、Playが正常に初期化されない問題を修正
- Fix: ページのOGP URLが間違っているのを修正
- Fix: リバーシの対局を正しく共有できないことがある問題を修正
- Fix: 通知をグループ化している際に、人数が正常に表示されないことがある問題を修正
- Fix: 連合なしの状態の読み書きができない問題を修正
- Fix: `/share` で日本語等を含むurlがurlエンコードされない問題を修正
- Fix: ファイルを5つ以上添付してもテキストがないとートが折りたたまれない問題を修正
### Server
- Enhance: エンドポイント`antennas/update`の必須項目を`antennaId`のみに
- Enhance: misskey-dev/summaly@5.1.0の取り込み(プレビュー生成処理の効率化)
- Enhance: ドライブのファイルがNSFWかどうか個別に連合されるように (#13756)
- 可能な場合、ノートの添付ファイルのセンシティブ判定がファイル単位になります
- Fix: リモートから配送されたアクティビティにJSON-LD compactionをかける
- Fix: フォローリクエストを作成する際に既存のものは削除するように
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/440)
- Fix: エンドポイント`notes/translate`のエラーを改善
- Fix: CleanRemoteFilesProcessorService report progress from 100% (#13632)
- Fix: 一部の音声ファイルが映像ファイルとして扱われる問題を修正
- Fix: リプライのみの引用リートと、CWのみの引用リートが純粋なリートとして誤って扱われてしまう問題を修正
- Fix: 登録にメール認証が必須になっている場合、登録されているメールアドレスを削除できないように
(Cherry-picked from https://github.com/MisskeyIO/misskey/pull/606)
- Fix: Add Cache-Control to Bull Board
- Fix: nginx経由で/files/にRangeリクエストされた場合に正しく応答できないのを修正
- Fix: 一部のタイムラインのストリーミングでインスタンスミュートが効かない問題を修正
- Fix: グローバルタイムラインで返信が表示されないことがある問題を修正
- Fix: リノートをミュートしたユーザの投稿のリノートがミュートされる問題を修正
- Fix: AP Link等は添付ファイル扱いしないようになど (#13754)
- Fix: FTTが有効かつsinceIdのみを指定した場合に帰って来るレスポンスが逆順である問題を修正
- Fix: `/i/notifications``includeTypes``excludeTypes`を指定しているとき、通知が存在するのに空配列を返すことがある問題を修正
- Fix: 複数idを指定する`users/show`が関係ないユーザを返すことがある問題を修正
- Fix: `/tags``/user-tags` が検索エンジンにインデックスされないように
- Fix: もともとセンシティブではないと連合されていたファイルがセンシティブとして連合された場合にセンシティブとしてそのファイルを扱うように
- センシティブとして連合したファイルは非センシティブとして連合されてもセンシティブとして扱われます
-
## 2024.3.1

View File

@@ -1,7 +1,7 @@
# Contribution guide
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]
> **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.
@@ -17,31 +17,16 @@ Before creating an issue, please check the following:
- 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).
> [!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.
### Recommended discussing before implementation
We welcome your proposal.
## 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.
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.
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.
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.
## Well-known branches
- **`master`** branch is tracking the latest release and used for production purposes.
@@ -52,14 +37,14 @@ The Committers may:
## 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.
- `fix` / `refactor` / `feat` / `enhance` / `perf` / `chore` etc
- 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.
- `fix` / `refactor` / `feat` / `enhance` / `perf` / `chore` etc
- 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.
- 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 🤗
@@ -69,8 +54,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
@@ -92,7 +77,7 @@ An actual domain will be assigned so you can test the federation.
## Release
### Release Instructions
1. Commit version changes in the `develop` branch ([package.json](package.json))
1. Commit version changes in the `develop` branch ([package.json](https://github.com/misskey-dev/misskey/blob/develop/package.json))
2. Create a release PR.
- Into `master` from `develop` branch.
- The title must be in the format `Release: x.y.z`.
@@ -103,7 +88,7 @@ An actual domain will be assigned so you can test the federation.
- The target branch must be `master`
- The tag name must be the version
> [!NOTE]
> **Note**
> Why this instruction is necessary:
> - To perform final QA checks
> - To distribute responsibility
@@ -121,42 +106,12 @@ If your language is not listed in Crowdin, please open an issue.
![Crowdin](https://d322cqt584bo4o.cloudfront.net/misskey/localized.svg)
## Development
### Setup
Before developing, you have to set up environment. Misskey requires Redis, PostgreSQL, and FFmpeg.
You would want to install Meilisearch to experiment related features. Technically, meilisearch is not strict requirement, but some features and tests require it.
There are a few ways to proceed.
#### 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.
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.
**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.
``` bash
git submodule update --init
pnpm install --frozen-lockfile
cp .devcontainer/devcontainer.yml .config/default.yml
pnpm build
pnpm migrate
```
After finishing the migration, you can proceed.
### 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).
@@ -180,6 +135,26 @@ MK_DEV_PREFER=backend pnpm dev
- To change the port of Vite, specify with `VITE_PORT` environment variable.
- HMR may not work in some environments such as Windows.
### 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.
**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.
``` bash
git submodule update --init
pnpm install --frozen-lockfile
cp .devcontainer/devcontainer.yml .config/default.yml
pnpm build
pnpm migrate
```
After finishing the migration, run the `pnpm dev` command to start the development server.
``` bash
pnpm dev
```
## Testing
- Test codes are located in [`/packages/backend/test`](/packages/backend/test).
@@ -190,7 +165,7 @@ cp .github/misskey/test.yml .config/
```
Prepare DB/Redis for testing.
```
docker compose -f packages/backend/test/compose.yml up
docker compose -f packages/backend/test/docker-compose.yml up
```
Alternatively, prepare an empty (data can be erased) DB and edit `.config/test.yml`.
@@ -229,7 +204,7 @@ niraxは、Misskeyで使用しているオリジナルのフロントエンド
### ルート定義
ルート定義は、以下の形式のオブジェクトの配列です。
```ts
``` ts
{
name?: string;
path: string;
@@ -242,7 +217,7 @@ niraxは、Misskeyで使用しているオリジナルのフロントエンド
}
```
> [!WARNING]
> **Warning**
> 現状、ルートは定義された順に評価されます。
> たとえば、`/foo/:id`ルート定義の次に`/foo/bar`ルート定義がされていた場合、後者がマッチすることはありません。
@@ -304,7 +279,7 @@ export const Default = {
parameters: {
layout: 'centered',
},
} satisfies StoryObj<typeof MyComponent>;
} satisfies StoryObj<typeof MkAvatar>;
```
If you want to opt-out from the automatic generation, create a `MyComponent.stories.impl.ts` file and add the following line to the file.
@@ -341,98 +316,6 @@ export const handlers = [
Don't forget to re-run the `.storybook/generate.js` script after adding, editing, or removing the above files.
## Nest
### Nest Service Circular dependency / Nestでサービスの循環参照でエラーが起きた場合
#### forwardRef
まずは簡単に`forwardRef`を試してみる
```typescript
export class FooService {
constructor(
@Inject(forwardRef(() => BarService))
private barService: BarService
) {
}
}
```
#### OnModuleInit
できなければ`OnModuleInit`を使う
```typescript
import { Injectable, OnModuleInit } from '@nestjs/common';
import { ModuleRef } from '@nestjs/core';
import { BarService } from '@/core/BarService';
@Injectable()
export class FooService implements OnModuleInit {
private barService: BarService // constructorから移動してくる
constructor(
private moduleRef: ModuleRef,
) {
}
async onModuleInit() {
this.barService = this.moduleRef.get(BarService.name);
}
public async niceMethod() {
return await this.barService.incredibleMethod({ hoge: 'fuga' });
}
}
```
##### Service Unit Test
テストで`onModuleInit`を呼び出す必要がある
```typescript
// import ...
describe('test', () => {
let app: TestingModule;
let fooService: FooService; // for test case
let barService: BarService; // for test case
beforeEach(async () => {
app = await Test.createTestingModule({
imports: ...,
providers: [
FooService,
{ // mockする (mockは必須ではないかもしれない)
provide: BarService,
useFactory: () => ({
incredibleMethod: jest.fn(),
}),
},
{ // Provideにする
provide: BarService.name,
useExisting: BarService,
},
],
})
.useMocker(...
.compile();
fooService = app.get<FooService>(FooService);
barService = app.get<BarService>(BarService) as jest.Mocked<BarService>;
// onModuleInitを実行する
await fooService.onModuleInit();
});
test('nice', () => {
await fooService.niceMethod();
expect(barService.incredibleMethod).toHaveBeenCalled();
expect(barService.incredibleMethod.mock.lastCall![0])
.toEqual({ hoge: 'fuga' });
});
})
```
## Notes
### Misskeyのドメイン固有の概念は`Mi`をprefixする
@@ -536,13 +419,13 @@ pnpm dlx typeorm migration:generate -d ormconfig.js -o <migration name>
- 作成されたスクリプトは不必要な変更を含むため除去してください
### JSON SchemaのobjectでanyOfを使うとき
JSON Schemaで、objectに対してanyOfを使う場合、anyOfの中でpropertiesを定義しないこと。
バリデーションが効かないため。SchemaTypeもそのように作られており、objectのanyOf内のpropertiesは捨てられます
JSON Schemaで、objectに対してanyOfを使う場合、anyOfの中でpropertiesを定義しないこと。
バリデーションが効かないため。SchemaTypeもそのように作られており、objectのanyOf内のpropertiesは捨てられます
https://github.com/misskey-dev/misskey/pull/10082
テキストhogeおよびfugaについて、片方を必須としつつ両方の指定もありうる場合:
```ts
```
export const paramDef = {
type: 'object',
properties: {
@@ -572,24 +455,3 @@ marginはそのコンポーネントを使う側が設定する
### indexというファイル名を使うな
ESMではディレクトリインポートは廃止されているのと、ディレクトリインポートせずともファイル名が index だと何故か一部のライブラリ?でディレクトリインポートだと見做されてエラーになる
## CSS Recipe
### Lighten CSS vars
``` css
color: hsl(from var(--accent) h s calc(l + 10));
```
### Darken CSS vars
``` css
color: hsl(from var(--accent) h s calc(l - 10));
```
### Add alpha to CSS vars
``` css
color: color(from var(--accent) srgb r g b / 0.5);
```

View File

@@ -1,6 +1,6 @@
# syntax = docker/dockerfile:1.4
ARG NODE_VERSION=20.16.0-bullseye
ARG NODE_VERSION=20.10.0-bullseye
# build assets & compile TypeScript
@@ -21,9 +21,7 @@ WORKDIR /misskey
COPY --link ["pnpm-lock.yaml", "pnpm-workspace.yaml", "package.json", "./"]
COPY --link ["scripts", "./scripts"]
COPY --link ["packages/backend/package.json", "./packages/backend/"]
COPY --link ["packages/frontend-shared/package.json", "./packages/frontend-shared/"]
COPY --link ["packages/frontend/package.json", "./packages/frontend/"]
COPY --link ["packages/frontend-embed/package.json", "./packages/frontend-embed/"]
COPY --link ["packages/sw/package.json", "./packages/sw/"]
COPY --link ["packages/misskey-js/package.json", "./packages/misskey-js/"]
COPY --link ["packages/misskey-reversi/package.json", "./packages/misskey-reversi/"]
@@ -84,10 +82,6 @@ RUN apt-get update \
USER misskey
WORKDIR /misskey
# add package.json to add pnpm
COPY --chown=misskey:misskey ./package.json ./package.json
RUN corepack install
COPY --chown=misskey:misskey --from=target-builder /misskey/node_modules ./node_modules
COPY --chown=misskey:misskey --from=target-builder /misskey/packages/backend/node_modules ./packages/backend/node_modules
COPY --chown=misskey:misskey --from=target-builder /misskey/packages/misskey-js/node_modules ./packages/misskey-js/node_modules

View File

@@ -28,10 +28,6 @@
## Thanks
<a href="https://sentry.io/"><img src="https://github.com/misskey-dev/misskey/assets/4439005/98576556-222f-467a-94be-e98dbda1d852" height="30" alt="Sentry" /></a>
Thanks to [Sentry](https://sentry.io/) for providing the error tracking platform that helps us catch unexpected errors.
<a href="https://www.chromatic.com/"><img src="https://user-images.githubusercontent.com/321738/84662277-e3db4f80-af1b-11ea-88f5-91d67a5e59f6.png" height="30" alt="Chromatic" /></a>
Thanks to [Chromatic](https://www.chromatic.com/) for providing the visual testing platform that helps us review UI changes and catch visual regressions.

View File

@@ -124,14 +124,6 @@ redis:
# #prefix: example-prefix
# #db: 1
#redisForReactions:
# host: redis
# port: 6379
# #family: 0 # 0=Both, 4=IPv4, 6=IPv6
# #pass: example-pass
# #prefix: example-prefix
# #db: 1
# ┌───────────────────────────┐
#───┘ MeiliSearch configuration └─────────────────────────────
@@ -160,22 +152,6 @@ redis:
# ID SETTINGS AFTER THAT!
id: "aidx"
# ┌────────────────┐
#───┘ Error tracking └──────────────────────────────────────────
# Sentry is available for error tracking.
# See the Sentry documentation for more details on options.
#sentryForBackend:
# enableNodeProfiling: true
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
#sentryForFrontend:
# options:
# dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
describe('Before setup instance', () => {
beforeEach(() => {
cy.resetState();
@@ -23,7 +18,6 @@ describe('Before setup instance', () => {
cy.intercept('POST', '/api/admin/accounts/create').as('signup');
cy.get('[data-cy-admin-initial-password] input').type('example_password_please_change_this_or_you_will_get_hacked');
cy.get('[data-cy-admin-username] input').type('admin');
cy.get('[data-cy-admin-password] input').type('admin1234');
cy.get('[data-cy-admin-ok]').click();
@@ -120,16 +114,11 @@ describe('After user signup', () => {
it('signin', () => {
cy.visitHome();
cy.intercept('POST', '/api/signin-flow').as('signin');
cy.intercept('POST', '/api/signin').as('signin');
cy.get('[data-cy-signin]').click();
cy.get('[data-cy-signin-page-input]').should('be.visible', { timeout: 1000 });
// Enterキーで続行できるかの確認も兼ねる
cy.get('[data-cy-signin-username] input').type('alice{enter}');
cy.get('[data-cy-signin-page-password]').should('be.visible', { timeout: 10000 });
// Enterキーで続行できるかの確認も兼ねる
cy.get('[data-cy-signin-username] input').type('alice');
// Enterキーでサインインできるかの確認も兼ねる
cy.get('[data-cy-signin-password] input').type('alice1234{enter}');
cy.wait('@signin');
@@ -144,9 +133,8 @@ describe('After user signup', () => {
cy.visitHome();
cy.get('[data-cy-signin]').click();
cy.get('[data-cy-signin-page-input]').should('be.visible', { timeout: 1000 });
cy.get('[data-cy-signin-username] input').type('alice{enter}');
cy.get('[data-cy-signin-username] input').type('alice');
cy.get('[data-cy-signin-password] input').type('alice1234{enter}');
// TODO: cypressにブラウザの言語指定できる機能が実装され次第英語のみテストするようにする
cy.contains(/アカウントが凍結されています|This account has been suspended due to/gi);

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
describe('Router transition', () => {
describe('Redirect', () => {
// サーバの初期化。ルートのテストに関しては各describeごとに1度だけ実行で十分だと思う使いまわした方が早い

View File

@@ -1,8 +1,3 @@
/*
* SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
/* flaky
describe('After user signed in', () => {
beforeEach(() => {

View File

@@ -30,13 +30,9 @@ Cypress.Commands.add('visitHome', () => {
})
Cypress.Commands.add('resetState', () => {
// iframe.contentWindow.indexedDB.deleteDatabase() がchromeのバグで使用できないため、indexedDBを無効化している。
// see https://github.com/misskey-dev/misskey/issues/13605#issuecomment-2053652123
/*
cy.window().then(win => {
cy.window(win => {
win.indexedDB.deleteDatabase('keyval-store');
});
*/
cy.request('POST', '/api/reset-db', {}).as('reset');
cy.get('@reset').its('status').should('equal', 204);
cy.reload(true);
@@ -48,19 +44,16 @@ Cypress.Commands.add('registerUser', (username, password, isAdmin = false) => {
cy.request('POST', route, {
username: username,
password: password,
...(isAdmin ? { setupPassword: 'example_password_please_change_this_or_you_will_get_hacked' } : {}),
}).its('body').as(username);
});
Cypress.Commands.add('login', (username, password) => {
cy.visitHome();
cy.intercept('POST', '/api/signin-flow').as('signin');
cy.intercept('POST', '/api/signin').as('signin');
cy.get('[data-cy-signin]').click();
cy.get('[data-cy-signin-page-input]').should('be.visible', { timeout: 1000 });
cy.get('[data-cy-signin-username] input').type(`${username}{enter}`);
cy.get('[data-cy-signin-page-password]').should('be.visible', { timeout: 10000 });
cy.get('[data-cy-signin-username] input').type(username);
cy.get('[data-cy-signin-password] input').type(`${password}{enter}`);
cy.wait('@signin').as('signedIn');

View File

@@ -1,19 +0,0 @@
declare global {
namespace Cypress {
interface Chainable {
login(username: string, password: string): Chainable<void>;
registerUser(
username: string,
password: string,
isAdmin?: boolean
): Chainable<void>;
resetState(): Chainable<void>;
visitHome(): Chainable<void>;
}
}
}
export {}

View File

@@ -1,8 +0,0 @@
{
"compilerOptions": {
"lib": ["dom", "es5"],
"target": "es5",
"types": ["cypress", "node"]
},
"include": ["./**/*.ts"]
}

View File

@@ -1,3 +1,5 @@
version: "3"
# このconfigは、 dockerでMisskey本体を起動せず、 redisとpostgresql などだけを起動します
services:

View File

@@ -1,3 +1,5 @@
version: "3"
services:
web:
build: .
@@ -17,8 +19,6 @@ services:
networks:
- internal_network
- external_network
# env_file:
# - .config/docker.env
volumes:
- ./files:/misskey/files
- ./.config:/misskey/.config:ro

View File

@@ -4,4 +4,4 @@
# SPDX-License-Identifier: AGPL-3.0-only
PORT=$(grep '^port:' /misskey/.config/default.yml | awk 'NR==1{print $2; exit}')
curl -Sfso/dev/null "http://localhost:${PORT}/healthz"
curl -s -S -o /dev/null "http://localhost:${PORT}"

View File

@@ -1,41 +0,0 @@
<!--
SPDX-FileCopyrightText: syuilo and misskey-project
SPDX-License-Identifier: AGPL-3.0-only
-->
<template>
<div :class="[$style.root]">
<div :inert="disabled" :class="[{ [$style.disabled]: disabled }]">
<slot></slot>
</div>
<div v-if="disabled" :class="[$style.cover]"></div>
</div>
</template>
<script lang="ts" setup>
defineProps<{
disabled?: boolean;
}>();
</script>
<style lang="scss" module>
.root {
position: relative;
}
.disabled {
opacity: 0.7;
}
.cover {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
cursor: not-allowed;
--color: color(from var(--error) srgb r g b / 0.25);
background-size: auto auto;
background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, var(--color) 4px, var(--color) 14px);
}
</style>

View File

@@ -1 +0,0 @@
使われなくなったけど消すのは勿体ない(将来使えるかもしれない)コードを入れておくとこ

View File

@@ -123,7 +123,6 @@ reactions: "التفاعلات"
reactionSettingDescription2: "اسحب لترتيب ، انقر للحذف ، استخدم \"+\" للإضافة."
rememberNoteVisibility: "تذكر إعدادت مدى رؤية الملاحظات"
attachCancel: "أزل المرفق"
deleteFile: "حُذف الملف"
markAsSensitive: "علّمه كمحتوى حساس"
unmarkAsSensitive: "ألغ تعيينه كمحتوى حساس"
enterFileName: "ادخل اسم الملف"
@@ -626,7 +625,10 @@ abuseReported: "أُرسل البلاغ، شكرًا لك"
reporter: "المُبلّغ"
reporteeOrigin: "أصل البلاغ"
reporterOrigin: "أصل المُبلّغ"
forwardReport: "وجّه البلاغ إلى المثيل البعيد"
forwardReportIsAnonymous: "في المثيل البعيد سيظهر المبلّغ كحساب مجهول."
send: "أرسل"
abuseMarkAsResolved: "علّم البلاغ كمحلول"
openInNewTab: "افتح في لسان جديد"
defaultNavigationBehaviour: "سلوك الملاحة الافتراضي"
editTheseSettingsMayBreakAccount: "تعديل هذه الإعدادات قد يسبب عطبًا لحسابك"
@@ -1013,8 +1015,6 @@ sourceCode: "الشفرة المصدرية"
flip: "اقلب"
lastNDays: "آخر {n} أيام"
surrender: "ألغِ"
_delivery:
stop: "مُعلّق"
_initialAccountSetting:
accountCreated: "نجح إنشاء حسابك!"
letsStartAccountSetup: "إذا كنت جديدًا لنعدّ حسابك الشخصي."
@@ -1259,6 +1259,8 @@ _sfx:
note: "الملاحظات"
noteMy: "ملاحظتي"
notification: "الإشعارات"
antenna: "الهوائيات"
channel: "إشعارات القنات"
_ago:
future: "المستقبَل"
justNow: "اللحظة"
@@ -1530,7 +1532,6 @@ _notification:
reaction: "التفاعل"
receiveFollowRequest: "طلبات المتابعة"
followRequestAccepted: "طلبات المتابعة المقبولة"
login: "لِج"
app: "إشعارات التطبيقات المرتبطة"
_actions:
followBack: "تابعك بالمثل"
@@ -1562,27 +1563,10 @@ _webhookSettings:
active: "مُفعّل"
_events:
reaction: "عند التفاعل"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "البريد الإلكتروني "
_moderationLogTypes:
suspend: "علِق"
deleteDriveFile: "حُذف الملف"
deleteNote: "حُذفت الملاحظة"
createGlobalAnnouncement: "أُنشئ إعلان عام"
createUserAnnouncement: "أُنشئ إعلان مستخدم"
updateGlobalAnnouncement: "حُدث إعلان عام"
updateUserAnnouncement: "حُدث إعلان مستخدم"
resetPassword: "أعد تعيين كلمتك السرية"
createInvitation: "ولِّد دعوة"
_reversi:
total: "المجموع"
lookingForPlayer: "يبحث عن خصم..."
gameCanceled: "أُلغيت اللعبة."
opponentHasSettingsChanged: "غيَر الخصم إعدادته."
showBoardLabels: "اعرض ترقيم الصفوف والأعمدة على اللوح"
useAvatarAsStone: "حوَل الحجارة إلى صور مستخدمين"
_offlineScreen:
title: "غير متصل - يتعذر الاتصال بالخادم"
header: "يتعذر الاتصال بالخادم"

View File

@@ -451,6 +451,7 @@ or: "অথবা"
language: "ভাষা"
uiLanguage: "UI এর ভাষা"
aboutX: "{x} সম্পর্কে"
disableDrawer: "ড্রয়ার মেনু প্রদর্শন করবেন না"
noHistory: "কোনো ইতিহাস নেই"
signinHistory: "প্রবেশ করার ইতিহাস"
doing: "প্রক্রিয়া করছে..."
@@ -624,7 +625,10 @@ abuseReported: "আপনার অভিযোগটি দাখিল কর
reporter: "অভিযোগকারী"
reporteeOrigin: "অভিযোগটির উৎস"
reporterOrigin: "অভিযোগকারীর উৎস"
forwardReport: "রিমোট ইন্সত্যান্সে অভিযোগটি পাঠান"
forwardReportIsAnonymous: "আপনার তথ্য রিমোট ইন্সত্যান্সে পাঠানো হবে না এবং একটি বেনামী সিস্টেম অ্যাকাউন্ট হিসাবে প্রদর্শিত হবে।"
send: "পাঠান"
abuseMarkAsResolved: "অভিযোগটিকে সমাধাকৃত হিসাবে চিহ্নিত করুন"
openInNewTab: "নতুন ট্যাবে খুলুন"
openInSideView: "সাইড ভিউতে খুলুন"
defaultNavigationBehaviour: "ডিফল্ট নেভিগেশন"
@@ -853,10 +857,6 @@ replies: "জবাব"
renotes: "রিনোট"
sourceCode: "সোর্স কোড"
flip: "উল্টান"
_delivery:
stop: "স্থগিত করা হয়েছে"
_type:
none: "প্রকাশ করা হচ্ছে"
_role:
priority: "অগ্রাধিকার"
_priority:
@@ -1029,6 +1029,8 @@ _sfx:
note: "নোটগুলি"
noteMy: "নোট (আপনার)"
notification: "বিজ্ঞপ্তি"
antenna: "অ্যান্টেনাগুলি"
channel: "চ্যানেলের বিজ্ঞপ্তি"
_ago:
future: "ভবিষ্যৎ"
justNow: "এইমাত্র"
@@ -1310,7 +1312,6 @@ _notification:
pollEnded: "পোল শেষ"
receiveFollowRequest: "প্রাপ্ত অনুসরণের অনুরোধসমূহ"
followRequestAccepted: "গৃহীত অনুসরণের অনুরোধসমূহ"
login: "প্রবেশ করুন"
app: "লিঙ্ক করা অ্যাপ থেকে বিজ্ঞপ্তি"
_actions:
followBack: "ফলো ব্যাক করেছে"
@@ -1341,12 +1342,9 @@ _deck:
_webhookSettings:
name: "নাম"
active: "চালু"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "ইমেইল"
_moderationLogTypes:
suspend: "স্থগিত করা"
resetPassword: "পাসওয়ার্ড রিসেট করুন"
_reversi:
total: "মোট"

View File

@@ -8,8 +8,6 @@ search: "Cercar"
notifications: "Notificacions"
username: "Nom d'usuari"
password: "Contrasenya"
initialPasswordForSetup: "Contrasenya inicial per la configuració inicial"
initialPasswordIsIncorrect: "La contrasenya no és correcta."
forgotPassword: "Contrasenya oblidada"
fetchingAsApObject: "Cercant en el Fediverse..."
ok: "OK"
@@ -62,7 +60,6 @@ copyFileId: "Copiar ID d'arxiu"
copyFolderId: "Copiar ID de carpeta"
copyProfileUrl: "Copiar URL del perfil"
searchUser: "Cercar un usuari"
searchThisUsersNotes: "Cerca les publicacions de l'usuari"
reply: "Respondre"
loadMore: "Carregar més"
showMore: "Veure més"
@@ -111,14 +108,11 @@ enterEmoji: "Introduir un emoji"
renote: "Impulsa"
unrenote: "Anul·la l'impuls"
renoted: "S'ha impulsat"
renotedToX: "Impulsat per {name}."
cantRenote: "No es pot impulsar aquesta publicació"
cantReRenote: "No es pot impulsar l'impuls."
quote: "Cita"
inChannelRenote: "Renotar només al Canal"
inChannelQuote: "Citar només al Canal"
renoteToChannel: "Impulsa a un canal"
renoteToOtherChannel: "Impulsa a un altre canal"
pinnedNote: "Nota fixada"
pinned: "Fixar al perfil"
you: "Tu"
@@ -157,7 +151,6 @@ editList: "Editar llista"
selectChannel: "Selecciona un canal"
selectAntenna: "Tria una antena"
editAntenna: "Modificar antena"
createAntenna: "Crea una antena"
selectWidget: "Triar un giny"
editWidgets: "Editar ginys"
editWidgetsExit: "Fet"
@@ -184,10 +177,6 @@ addAccount: "Afegeix un compte"
reloadAccountsList: "Recarregar la llista de contactes"
loginFailed: "S'ha produït un error al accedir."
showOnRemote: "Navega més en el perfil original"
continueOnRemote: "Veure perfil original"
chooseServerOnMisskeyHub: "Escull un servidor des del Hub de Misskey"
specifyServerHost: "Especifica un servidor directament"
inputHostName: "Introdueix el domini"
general: "General"
wallpaper: "Fons de Pantalla"
setWallpaper: "Defineix el fons de pantalla"
@@ -198,7 +187,6 @@ followConfirm: "Estàs segur que vols deixar de seguir {name}?"
proxyAccount: "Compte de proxy"
proxyAccountDescription: "Un compte proxy és un compte que actua com a seguidor remot per als usuaris en determinades condicions. Per exemple, quan un usuari afegeix un usuari remot a la llista, l'activitat de l'usuari remot no es lliurarà al servidor si cap usuari local segueix aquest usuari, de manera que el compte proxy el seguirà."
host: "Amfitrió"
selectSelf: "Escollir manualment"
selectUser: "Selecciona usuari/a"
recipient: "Destinatari"
annotation: "Comentaris"
@@ -214,7 +202,6 @@ perDay: "Per dia"
stopActivityDelivery: "Deixa d'enviar activitats"
blockThisInstance: "Deixa d'enviar activitats"
silenceThisInstance: "Silencia aquesta instància "
mediaSilenceThisInstance: "Silenciar els arxius d'aquesta instància "
operations: "Accions"
software: "Programari"
version: "Versió"
@@ -236,10 +223,6 @@ blockedInstances: "Instàncies bloquejades"
blockedInstancesDescription: "Llista els enllaços d'amfitrió de les instàncies que vols bloquejar separades per un salt de pàgina. Les instàncies llistades no podran comunicar-se amb aquesta instància."
silencedInstances: "Instàncies silenciades"
silencedInstancesDescription: "Llista els enllaços d'amfitrió de les instàncies que vols silenciar. Tots els comptes de les instàncies llistades s'establiran com silenciades i només podran fer sol·licitacions de seguiment, i no podran mencionar als comptes locals si no els segueixen. Això no afectarà les instàncies bloquejades."
mediaSilencedInstances: "Instàncies amb els arxius silenciats"
mediaSilencedInstancesDescription: "Llista els noms dels servidors que vulguis silenciar els arxius, un servidor per línia. Tots els comptes que pertanyin als servidors llistats seran tractats com sensibles i no podran fer servir emojis personalitzats. Això no tindrà efecte sobre els servidors blocats."
federationAllowedHosts: "Llista de servidors federats"
federationAllowedHostsDescription: "Llista dels servidors amb els quals es federa."
muteAndBlock: "Silencia i bloca"
mutedUsers: "Usuaris silenciats"
blockedUsers: "Usuaris bloquejats"
@@ -330,7 +313,6 @@ selectFile: "Selecciona fitxers"
selectFiles: "Selecciona fitxers"
selectFolder: "Selecció de carpeta"
selectFolders: "Selecció de carpeta"
fileNotSelected: "Cap fitxer seleccionat"
renameFile: "Canvia el nom del fitxer"
folderName: "Nom de la carpeta"
createFolder: "Crea una carpeta"
@@ -338,7 +320,6 @@ renameFolder: "Canvia el nom de la carpeta"
deleteFolder: "Elimina la carpeta"
folder: "Carpeta "
addFile: "Afegeix un fitxer"
showFile: "Mostrar fitxer"
emptyDrive: "La teva unitat és buida"
emptyFolder: "La carpeta està buida"
unableToDelete: "No es pot eliminar"
@@ -419,7 +400,6 @@ name: "Nom"
antennaSource: "Font de l'antena"
antennaKeywords: "Paraules clau a seguir"
antennaExcludeKeywords: "Paraules clau a excloure"
antennaExcludeBots: "Exclou els bots"
antennaKeywordsDescription: "Separar amb espais per la condició AND o amb salts de línia per la condició OR."
notifyAntenna: "Notifica'm les publicacions noves"
withFileAntenna: "Només les publicacions amb fitxers"
@@ -487,12 +467,10 @@ retype: "Torneu a introduir-la"
noteOf: "Publicació de: {user}"
quoteAttached: "Frase adjunta"
quoteQuestion: "Vols annexar-la com a cita?"
attachAsFileQuestion: "El text copiat és massa llarg. Vols adjuntar-lo com un fitxer de text?"
noMessagesYet: "Encara no hi ha missatges"
newMessageExists: "Has rebut un nou missatge"
onlyOneFileCanBeAttached: "Només pots adjuntar un fitxer a un missatge"
signinRequired: "Si us plau, Registra't o inicia la sessió abans de continuar"
signinOrContinueOnRemote: "Per continuar necessites moure el teu servidor o registrar-te / iniciar sessió en aquest servidor."
invitations: "Convida"
invitationCode: "Codi d'invitació"
checking: "Comprovació en curs..."
@@ -514,12 +492,8 @@ uiLanguage: "Idioma de l'interfície"
aboutX: "Respecte a {x}"
emojiStyle: "Estil d'emoji"
native: "Nadiu"
menuStyle: "Estil de menú"
style: "Estil"
drawer: "Calaix"
popup: "Emergent"
disableDrawer: "No mostrar els menús en calaixos"
showNoteActionsOnlyHover: "Només mostra accions de la nota en passar amb el cursor"
showReactionsCount: "Mostra el nombre de reaccions a les publicacions"
noHistory: "No hi ha un registre previ"
signinHistory: "Historial d'autenticacions"
enableAdvancedMfm: "Habilitar l'MFM avançat"
@@ -567,9 +541,9 @@ objectStorageUseSSLDesc: "Desactiva'l si no tens pensat fer servir HTTPS per les
objectStorageUseProxy: "Connectar-se mitjançant un Proxy"
objectStorageUseProxyDesc: "Desactiva'l si no faràs servir un Proxy per les connexions de l'API"
objectStorageSetPublicRead: "Configurar les pujades com públiques "
s3ForcePathStyleDesc: "Si s3ForcePathStyle es troba activat el nom del cubell s'haurà d'especificar com a part de l'adreça URL en comptes del nom del servidor. Podria ser que necessitis activar aquesta opció quan facis servir serveis com ara l'allotjament a un servidor propi."
s3ForcePathStyleDesc: "Si s3ForcePathStyle es troba activat el nom del dipòsit s'ha d'incloure a l'adreça URL en comtes del nom del host. Potser que necessitis activar-ho quan facis servir, per exemple, Minio a un servidor propi."
serverLogs: "Registres del servidor"
deleteAll: "Elimina-ho tot"
deleteAll: "Esborrar tot"
showFixedPostForm: "Mostrar el formulari per escriure a l'inici de la línia de temps"
showFixedPostFormInChannel: "Mostrar el formulari d'escriptura al principi de la línia de temps (Canals)"
withRepliesByDefaultForNewlyFollowed: "Inclou les respostes d'usuaris nous seguits a la línia de temps per defecte."
@@ -600,8 +574,6 @@ ascendingOrder: "Ascendent"
descendingOrder: "Descendent"
scratchpad: "Bloc de proves"
scratchpadDescription: "El bloc de proves proporciona un entorn experimental per AiScript. Pot escriure i verificar els resultats que interactuen amb Misskey."
uiInspector: "Inspector de la interfície"
uiInspectorDescription: "Podeu visualitzar una llista d'elements UI presents en la memòria. Els components de la interfície d'usuari són generats per les funcions Ui:C:."
output: "Sortida"
script: "Script"
disablePagesScript: "Desactivar AiScript a les pàgines "
@@ -718,7 +690,10 @@ abuseReported: "La teva denúncia s'ha enviat. Moltes gràcies."
reporter: "Denunciant "
reporteeOrigin: "Origen de la denúncia "
reporterOrigin: "Origen del denunciant"
send: "Envia"
forwardReport: "Transferir la denúncia a una instància remota"
forwardReportIsAnonymous: "En comptes del teu compte, es farà servir un compte anònim com a denunciat a la instància remota."
send: "Enviar"
abuseMarkAsResolved: "Marcar la denúncia com a resolta"
openInNewTab: "Obre a una pestanya nova"
openInSideView: "Obre a una vista lateral"
defaultNavigationBehaviour: "Navegació per defecte"
@@ -855,7 +830,6 @@ administration: "Administració"
accounts: "Comptes"
switch: "Canvia"
noMaintainerInformationWarning: "La informació de l'administrador no s'ha configurat"
noInquiryUrlWarning: "No s'ha desat l'URL de consulta."
noBotProtectionWarning: "La protecció contra bots no s'ha configurat."
configure: "Configurar"
postToGallery: "Crear una nova publicació a la galeria"
@@ -879,7 +853,7 @@ customCss: "CSS personalitzat"
customCssWarn: "Aquesta configuració només hauries de configurar-la si saps que fas. Si poses valors inadequats pots fer que el client deixi de funcionar correctament."
global: "Global"
squareAvatars: "Mostrar avatars quadrats"
sent: "Envia"
sent: "Enviar"
received: "Rebut"
searchResult: "Resultats de la cerca"
hashtags: "Etiquetes"
@@ -920,7 +894,6 @@ followersVisibility: "Visibilitat dels seguidors"
continueThread: "Veure la continuació del fil"
deleteAccountConfirm: "Això eliminarà el teu compte irreversiblement. Procedir?"
incorrectPassword: "Contrasenya incorrecta."
incorrectTotp: "La contrasenya no és correcta, o ha caducat."
voteConfirm: "Confirma el teu vot \"{choice}\""
hide: "Amagar"
useDrawerReactionPickerForMobile: "Mostrar el selector de reaccions com un calaix al mòbil "
@@ -1018,7 +991,6 @@ neverShow: "No mostrar més "
remindMeLater: "Recorda-m'ho més tard"
didYouLikeMisskey: "T'està agradant Misskey?"
pleaseDonate: "A {host} fem servir el software lliure Misskey. Considera fer un donatiu a Misskey perquè pugui continuar el seu desenvolupament!"
correspondingSourceIsAvailable: "El codi font corresponent està disponible a {anchor}."
roles: "Rols"
role: "Rols"
noRole: "No s'han trobat rols"
@@ -1046,7 +1018,6 @@ thisPostMayBeAnnoyingHome: "Publicar a la línia de temps d'Inici"
thisPostMayBeAnnoyingCancel: "Cancel·lar "
thisPostMayBeAnnoyingIgnore: "Publicar de totes maneres"
collapseRenotes: "Col·lapsar les renotes que ja has vist"
collapseRenotesDescription: "Col·lapse les notes a les quals ja has reaccionat o que ja has renotat"
internalServerError: "Error intern del servidor"
internalServerErrorDescription: "El servidor ha fallat de manera inexplicable."
copyErrorInfo: "Copiar la informació de l'error "
@@ -1120,8 +1091,6 @@ preservedUsernames: "Noms d'usuaris reservats"
preservedUsernamesDescription: "Llistat de noms d'usuaris que no es poden fer servir separats per salts de linia. Aquests noms d'usuaris no estaran disponibles quan es creï un compte d'usuari normal, però els administradors els poden fer servir per crear comptes manualment. Per altre banda els comptes ja creats amb aquests noms d'usuari no es veure'n afectats."
createNoteFromTheFile: "Compon una nota des d'aquest fitxer"
archive: "Arxiu"
archived: "Arxivat"
unarchive: "Desarxivar"
channelArchiveConfirmTitle: "Vols arxivar {name}?"
channelArchiveConfirmDescription: "Un Canal arxivat no apareixerà a la llista de canals o als resultats de cerca. Tampoc es poden afegir noves entrades."
thisChannelArchived: "Aquest Canal ha sigut arxivat."
@@ -1132,9 +1101,6 @@ preventAiLearning: "Descartar l'ús d'aprenentatge automàtic (IA Generativa)"
preventAiLearningDescription: "Demanar els indexadors no fer servir els texts, imatges, etc. en cap conjunt de dades per alimentar l'aprenentatge automàtic (IA Predictiva/ Generativa). Això s'aconsegueix afegint la etiqueta \"noai\" com a resposta HTML al contingut corresponent. Prevenir aquest ús totalment pot ser que no sigui aconseguit, ja que molts indexadors poden obviar aquesta etiqueta."
options: "Opcions"
specifyUser: "Especificar usuari"
lookupConfirm: "Vols fer una cerca?"
openTagPageConfirm: "Vols obrir una pàgina d'etiquetes?"
specifyHost: "Especifica un servidor"
failedToPreviewUrl: "Vista prèvia no disponible"
update: "Actualitzar"
rolesThatCanBeUsedThisEmojiAsReaction: "Rols que poden fer servir aquest emoji com a reacció "
@@ -1193,7 +1159,6 @@ showRenotes: "Mostrar impulsos"
edited: "Editat"
notificationRecieveConfig: "Paràmetres de notificacions"
mutualFollow: "Seguidor mutu"
followingOrFollower: "Seguit o seguidor"
fileAttachedOnly: "Només notes amb adjunts"
showRepliesToOthersInTimeline: "Mostrar les respostes a altres a la línia de temps"
hideRepliesToOthersInTimeline: "Amagar les respostes a altres a la línia de temps"
@@ -1203,12 +1168,6 @@ confirmShowRepliesAll: "Aquesta opció no té marxa enrere. Vols mostrar les tev
confirmHideRepliesAll: "Aquesta opció no té marxa enrere. Vols ocultar les teves respostes a tots els usuaris que segueixes a la línia de temps?"
externalServices: "Serveis externs"
sourceCode: "Codi font"
sourceCodeIsNotYetProvided: "El codi font encara no es troba disponible. Contacta amb l'administrador per solucionar aquest problema."
repositoryUrl: "URL del repositori"
repositoryUrlDescription: "Si estàs fent servir Misskey tal com és (sense cap canvi al codi font), introdueix https://github.com/misskey-dev/misskey"
repositoryUrlOrTarballRequired: "Si no ofereixes cap repositori, publica un fitxer tarball. Dona una ullada a .config/example.yml per a més informació."
feedback: "Opinió"
feedbackUrl: "URL per a opinar"
impressum: "Impressum"
impressumUrl: "Adreça URL impressum"
impressumDescription: "A països, com Alemanya, la inclusió de la informació de contacte de l'operador (un Impressum) és requereix de manera legal per llocs comercials."
@@ -1244,8 +1203,6 @@ soundWillBePlayed: "Es reproduiran efectes de so"
showReplay: "Veure reproducció"
replay: "Reproduir"
replaying: "Reproduint"
endReplay: "Tanca la redifusió"
copyReplayData: "Copia les dades de la resposta"
ranking: "Classificació"
lastNDays: "Últims {n} dies"
backToTitle: "Torna al títol"
@@ -1253,57 +1210,9 @@ hemisphere: "Geolocalització"
withSensitive: "Incloure notes amb fitxers sensibles"
userSaysSomethingSensitive: "La publicació de {name} conte material sensible"
enableHorizontalSwipe: "Lliscar per canviar de pestanya"
loading: "Sestà carregant"
surrender: "Cancel·lar "
gameRetry: "Torna a provar"
notUsePleaseLeaveBlank: "Si no voleu usar-ho, deixeu-ho en blanc"
useTotp: "Usa una contrasenya d'un sol ús"
useBackupCode: "Usa un codi de recuperació"
launchApp: "Inicia l'aplicació "
useNativeUIForVideoAudioPlayer: "Fes servir la UI del navegador quan reprodueixis vídeo i àudio "
keepOriginalFilename: "Desa el nom del fitxer original"
keepOriginalFilenameDescription: "Si desactives aquesta opció els noms dels fitxers se substituiran per una cadena aleatòria quan carreguis nous fitxers de forma automàtica."
noDescription: "No hi ha una descripció "
alwaysConfirmFollow: "Confirma sempre els seguiments"
inquiry: "Contacte"
tryAgain: "Intenta-ho més tard."
confirmWhenRevealingSensitiveMedia: "Confirmació quan revelis contingut sensible "
sensitiveMediaRevealConfirm: "Aquest contingut potser sensible. Segur que ho vols revelar?"
createdLists: "Llistes creades "
createdAntennas: "Antenes creades"
fromX: "De {x}"
genEmbedCode: "Obtenir el codi per incrustar"
noteOfThisUser: "Notes d'aquest usuari"
clipNoteLimitExceeded: "No es poden afegir més notes a aquest clip."
performance: "Rendiment"
modified: "Modificat"
discard: "Descarta"
thereAreNChanges: "Hi ha(n) {n} canvi(s)"
signinWithPasskey: "Inicia sessió amb Passkey"
unknownWebAuthnKey: "Passkey desconeguda"
passkeyVerificationFailed: "La verificació a fallat"
passkeyVerificationSucceededButPasswordlessLoginDisabled: "La verificació de la passkey a estat correcta, però s'ha deshabilitat l'inici de sessió sense contrasenya."
messageToFollower: "Missatge als meus seguidors"
_delivery:
status: "Estat d'entrega "
stop: "Suspés"
resume: "Torna a enviar"
_type:
none: "S'està publicant"
manuallySuspended: "Suspendre manualment"
goneSuspended: "Servidor suspès perquè el servidor s'ha esborrat"
autoSuspendedForNotResponding: "Servidor suspès perquè el servidor no respon"
_bubbleGame:
howToPlay: "Com es juga"
hold: "Mantenir"
_score:
score: "Puntuació "
scoreYen: "Diners guanyats"
highScore: "Millor puntuació "
maxChain: "Nombre màxim de combos"
yen: "{yen}Ien"
estimatedQty: "{qty}peces"
scoreSweets: "{onigiriQtyWithUnit}ongiris"
_howToPlay:
section1: "Ajusta la posició i deixa caure l'objecte dintre la caixa."
section2: "Quan dos objectes del mateix tipus es toquen, canviaran en un objecte diferent i guanyares punts."
@@ -1418,9 +1327,6 @@ _serverSettings:
fanoutTimelineDescription: "Quan es troba activat millora bastant el rendiment quan es recuperen les línies de temps i redueix la carrega de la base de dades. Com a contrapunt, l'ús de memòria de Redis es veurà incrementada. Considera d'estabilitat aquesta opció en cas de tenir un servidor amb poca memòria o si tens problemes de inestabilitat."
fanoutTimelineDbFallback: "Carregar de la base de dades"
fanoutTimelineDbFallbackDescription: "Quan s'activa, la línia de temps fa servir la base de dades per consultes adicionals si la línia de temps no es troba a la memòria cau. Si és desactiva la càrrega del servidor és veure reduïda, però també és reduirà el nombre de línies de temps que és poden obtenir."
reactionsBufferingDescription: "Quan s'activa aquesta opció millora bastant el rendiment en recuperar les línies de temps reduint la càrrega de la base. Com a contrapunt, augmentarà l'ús de memòria de Redís. Desactiva aquesta opció en cas de tenir un servidor amb poca memòria o si tens problemes d'inestabilitat."
inquiryUrl: "URL de consulta "
inquiryUrlDescription: "Escriu adreça URL per al formulari de consulta per al mantenidor del servidor o una pàgina web amb el contacte d'informació."
_accountMigration:
moveFrom: "Migrar un altre compte a aquest"
moveFromSub: "Crear un àlies per un altre compte"
@@ -1728,7 +1634,6 @@ _role:
gtlAvailable: "Pot veure la línia de temps global"
ltlAvailable: "Pot veure la línia de temps local"
canPublicNote: "Pot enviar notes públiques"
mentionMax: "Nombre màxim de mencions a una nota"
canInvite: "Pot crear invitacions a la instància "
inviteLimit: "Límit d'invitacions "
inviteLimitCycle: "Temps de refresc de les invitacions"
@@ -1737,7 +1642,6 @@ _role:
canManageAvatarDecorations: "Gestiona les decoracions dels avatars "
driveCapacity: "Capacitat del disc"
alwaysMarkNsfw: "Marca sempre els fitxers com a sensibles"
canUpdateBioMedia: "Permet l'edició d'una icona o un bàner"
pinMax: "Nombre màxim de notes fixades"
antennaMax: "Nombre màxim d'antenes"
wordMuteMax: "Nombre màxim de caràcters permesos a les paraules silenciades"
@@ -1752,20 +1656,9 @@ _role:
canSearchNotes: "Pot cercar notes"
canUseTranslator: "Pot fer servir el traductor"
avatarDecorationLimit: "Nombre màxim de decoracions que es poden aplicar els avatars"
canImportAntennas: "Autoritza la importació d'antenes "
canImportBlocking: "Autoritza la importació de bloquejats"
canImportFollowing: "Autoritza la importació de seguidors"
canImportMuting: "Autoritza la importació de silenciats"
canImportUserLists: "Autoritza la importació de llistes d'usuaris "
_condition:
roleAssignedTo: "Assignat a rols manuals"
isLocal: "Usuari local"
isRemote: "Usuari remot"
isCat: "Usuaris gats"
isBot: "Usuaris bots"
isSuspended: "Usuari suspès"
isLocked: "Comptes privats"
isExplorable: "Fes que el compte aparegui a les cerques"
createdLessThan: "Han passat menys de X a passat des de la creació del compte"
createdMoreThan: "Han passat més de X des de la creació del compte"
followersLessThanOrEq: "Té menys de X seguidors"
@@ -1835,7 +1728,6 @@ _plugin:
installWarn: "Si us plau, no instal·lis afegits que no siguin de confiança."
manage: "Gestionar els afegits"
viewSource: "Veure l'origen "
viewLog: "Mostra el registre"
_preferencesBackups:
list: "Llista de còpies de seguretat"
saveNew: "Fer una còpia de seguretat nova"
@@ -1865,8 +1757,6 @@ _aboutMisskey:
contributors: "Col·laboradors principals"
allContributors: "Tots els col·laboradors "
source: "Codi font"
original: "Original"
thisIsModifiedVersion: "En {name} fa servir una versió modificada de Misskey."
translation: "Tradueix Misskey"
donate: "Fes un donatiu a Misskey"
morePatrons: "També agraïm el suport d'altres col·laboradors que no surten en aquesta llista. Gràcies! 🥰"
@@ -1986,6 +1876,8 @@ _sfx:
note: "Notes"
noteMy: "Nota (per mi)"
notification: "Notificacions"
antenna: "Antenes"
channel: "Notificacions dels canals"
reaction: "Quan se selecciona una reacció "
_soundSettings:
driveFile: "Fer servir un fitxer d'àudio del disc"
@@ -1994,7 +1886,6 @@ _soundSettings:
driveFileTypeWarnDescription: "Seleccionar un fitxer d'àudio "
driveFileDurationWarn: "L'àudio és massa llarg"
driveFileDurationWarnDescription: "Els àudios molt llargs pot interrompre l'ús de Misskey. Vols continuar?"
driveFileError: "El so no es pot carregar. Canvia la configuració"
_ago:
future: "Futur "
justNow: "Ara mateix"
@@ -2024,6 +1915,7 @@ _2fa:
registerTOTP: "Registrar una aplicació autenticadora"
step1: "Primer instal·la una aplicació autenticadora (com {a} o {b}) al teu dispositiu."
step2: "Després escaneja el codi QR que es mostra en aquesta pantalla."
step2Click: "Fent clic en aquest codi QR et permetrà registrar l'autenticació de doble factor a la teva clau de seguretat o en l'aplicació d'autenticació del teu dispositiu."
step2Uri: "Escriu la següent URI si estàs fent servir una aplicació d'escriptori "
step3Title: "Escriu un codi d'autenticació"
step3: "Escriu el codi d'autenticació (token) que es mostra a la teva aplicació per finalitzar la configuració."
@@ -2047,7 +1939,6 @@ _2fa:
backupCodesDescription: "Si l'aplicació d'autenticació no es pot utilitzar, es pot accedir al compte utilitzant els següents codis de còpia de seguretat. Assegura't de mantenir aquests codis en un lloc segur. Cada codi es pot utilitzar només una vegada."
backupCodeUsedWarning: "Es va utilitzar un codi de còpia de seguretat. Si l'aplicació de certificació està disponible, reconfigura l'aplicació d'autenticació tan aviat com sigui possible."
backupCodesExhaustedWarning: "Es van utilitzar tots els codis de còpia de seguretat. Si no es pot utilitzar l'aplicació d'autenticació, ja no es pot accedir al compte. Torna a registrar l'aplicació d'autenticació."
moreDetailedGuideHere: "Aquí tens una guia al detall"
_permissions:
"read:account": "Veure la informació del compte."
"write:account": "Editar la informació del compte."
@@ -2098,6 +1989,7 @@ _permissions:
"read:admin:server-info": "Veure informació del servidor"
"read:admin:show-moderation-log": "Veure registre de moderació "
"read:admin:show-user": "Veure informació privada de l'usuari "
"read:admin:show-users": "Veure informació privada de l'usuari "
"write:admin:suspend-user": "Suspendre usuari"
"write:admin:unset-user-avatar": "Esborrar avatar d'usuari "
"write:admin:unset-user-banner": "Esborrar bàner de l'usuari "
@@ -2121,73 +2013,22 @@ _permissions:
"read:admin:emoji": "Veure emojis"
"write:admin:queue": "Gestionar la cua de feines"
"read:admin:queue": "Veure la cua de feines"
"write:admin:promo": "Gestiona les notes promocionals"
"write:admin:drive": "Gestiona el disc de l'usuari"
"read:admin:drive": "Veure la informació del disc de l'usuari"
"read:admin:stream": "Fes servir l'API sobre Websocket per l'administració"
"write:admin:ad": "Gestiona la publicitat"
"read:admin:ad": "Veure anuncis"
"write:invite-codes": "Crear codis d'invitació"
"read:invite-codes": "Obtenir codis d'invitació"
"write:clip-favorite": "Gestionar els clips favorits"
"read:clip-favorite": "Veure clips favorits"
"read:federation": "Veure dades de federació"
"write:report-abuse": "Informar d'un abús"
_auth:
shareAccessTitle: "Concedeix permisos a l'aplicació"
shareAccess: "Vols que {name} pugui accedir al vostre compte?"
shareAccessAsk: "Segur que vols que aquesta aplicació pugui accedir al vostre compte?"
permission: "{name} demana els següents permisos"
permissionAsk: "Aquesta aplicació demana els següents permisos"
pleaseGoBack: "Si us plau, torna a l'aplicació"
callback: "Tornant a l'aplicació"
denied: "Accés denegat"
pleaseLogin: "Si us plau, identificat per autoritzar l'aplicació."
_antennaSources:
all: "Totes les publicacions"
homeTimeline: "Publicacions dels usuaris seguits"
users: "Publicacions d'usuaris específics"
userList: "Publicacions d'una llista d'usuaris"
userBlacklist: "Totes les notes excepte les d'un o alguns usuaris especificats"
_weekday:
sunday: "Diumenge"
monday: "Dilluns"
tuesday: "Dimarts"
wednesday: "Dimecres"
thursday: "Dijous"
friday: "Divendres"
saturday: "Dissabte"
_widgets:
profile: "Perfil"
instanceInfo: "Informació del fitxer d'instal·lació"
memo: "Notes adhesives"
notifications: "Notificacions"
timeline: "Línia de temps"
calendar: "Calendari"
trends: "Tendència"
clock: "Rellotge"
rss: "Lector RSS"
rssTicker: "RSS ticker"
activity: "Activitat"
photos: "Fotografies"
digitalClock: "Rellotge digital"
unixClock: "Rellotge UNIX"
federation: "Federació"
instanceCloud: "Núvol d'instàncies"
postForm: "Formulari de publicació"
slideshow: "Presentació"
button: "Botó "
onlineUsers: "Usuaris actius"
jobQueue: "Cua de tasques"
serverMetric: "Mètriques del servidor"
aiscript: "Consola AiScript"
aiscriptApp: "Aplicació AiScript"
aichan: "Ai"
userList: "Llistat d'usuaris"
_userList:
chooseList: "Tria una llista"
clicker: "Clicker"
birthdayFollowings: "Usuaris que fan l'aniversari avui"
_cw:
hide: "Amagar"
show: "Carregar més"
@@ -2251,79 +2092,27 @@ _profile:
changeBanner: "Canviar el bàner "
verifiedLinkDescription: "Escrivint una adreça URL que enllaci a aquest perfil, una icona de propietat verificada es mostrarà al costat del camp."
avatarDecorationMax: "Pot afegir un màxim de {max} decoracions."
followedMessage: "Missatge als nous seguidors"
followedMessageDescription: "Es pot configurar un missatge curt que es mostra a l'altra persona quan comença a seguir-te."
followedMessageDescriptionForLockedAccount: "Si comencen a seguir-te es mostra un missatge de quan es permet aquesta sol·licitud. "
_exportOrImport:
allNotes: "Totes les publicacions"
favoritedNotes: "Notes preferides"
clips: "Retalls"
followingList: "Seguint"
muteList: "Silencia"
blockingList: "Bloqueja"
userLists: "Llistes"
excludeMutingUsers: "Exclou usuaris silenciats"
excludeInactiveUsers: "Exclou usuaris inactius"
withReplies: "Inclou a la línia de temps les respostes d'usuaris importats"
_charts:
federation: "Federació"
apRequest: "Peticions"
usersIncDec: "Diferència entre el nombre d'usuaris"
usersTotal: "Nombre total d'usuaris"
activeUsers: "Usuaris actius"
notesIncDec: "Diferència entre el nombre de notes"
localNotesIncDec: "Diferencia en el nombre de notes locals"
remoteNotesIncDec: "Diferencia en el nombre de notes remotes"
notesTotal: "Nombre total de notes"
filesIncDec: "Diferencia en el nombre de fitxers"
filesTotal: "Nombre total de fitxers"
storageUsageIncDec: "Diferencia en l'emmagatzematge usat"
storageUsageTotal: "Emmagatzematge usat"
_instanceCharts:
requests: "Peticions"
users: "Diferència entre el nombre d'usuaris"
usersTotal: "Usuaris totals acumulats"
notes: "Diferència entre el nombre de notes"
notesTotal: "Notes totals acumulades"
ff: "Diferència en nombre d'usuaris seguits / seguidors"
ffTotal: "Nombre total acumulat d'usuaris seguits / seguidors"
cacheSize: "Diferència a la mida de la memòria cau"
cacheSizeTotal: "Total acumulat de la mida de la memòria cau"
files: "Diferència al nombre d'arxius"
filesTotal: "Nombre acumulatiu de fitxers"
_timelines:
home: "Inici"
local: "Local"
social: "Social"
global: "Global"
_play:
new: "Crear un guió"
edit: "Editar guió"
created: "Guió creat"
updated: "Guió editat"
deleted: "Guió esborrat"
pageSetting: "Configuració del guió"
editThisPage: "Edita aquest guió"
viewSource: "Veure l'origen "
my: "Els meus guions"
liked: "Guions que m'han agradat"
featured: "Popular"
title: "Títol "
script: "Script"
summary: "Descripció"
visibilityDescription: ""
_pages:
newPage: "pa"
editPage: "Editar la pàgina"
readPage: "Veure el codi font d'aquesta pàgina"
created: "La pàgina ha sigut creada correctament"
updated: "La pàgina s'ha editat correctament"
deleted: "La pàgina s'ha esborrat sense problemes"
pageSetting: "Configuració de la pàgina"
nameAlreadyExists: "L'adreça URL de la pàgina ja existeix"
invalidNameTitle: "L'adreça URL de la pàgina no és vàlida"
invalidNameText: "Assegurat que el títol de la pàgina no és buit"
editThisPage: "Editar la pàgina"
viewSource: "Veure l'origen "
viewPage: "Veure les teves pàgines "
like: "M'agrada "
@@ -2346,7 +2135,6 @@ _pages:
eyeCatchingImageSet: "Escull una miniatura"
eyeCatchingImageRemove: "Esborrar la miniatura"
chooseBlock: "Afegeix un bloc"
enterSectionTitle: "Escriu el títol de la secció"
selectType: "Seleccionar tipus"
contentBlocks: "Contingut"
inputBlocks: "Entrada "
@@ -2357,8 +2145,6 @@ _pages:
section: "Secció "
image: "Imatges"
button: "Botó "
dynamic: "Blocs dinàmics"
dynamicDescription: "Aquest bloc és antic. Ara en endavant fes servir {play}"
note: "Incorporar una Nota"
_note:
id: "ID de la publicació"
@@ -2388,54 +2174,29 @@ _notification:
sendTestNotification: "Enviar notificació de prova"
notificationWillBeDisplayedLikeThis: "Les notificacions és veure'n així "
reactedBySomeUsers: "Han reaccionat {n} usuaris"
likedBySomeUsers: "A {n} usuaris els hi agrada la teva nota"
renotedBySomeUsers: "L'han impulsat {n} usuaris"
followedBySomeUsers: "Et segueixen {n} usuaris"
flushNotification: "Netejar notificacions"
exportOfXCompleted: "Completada l'exportació de {n}"
_types:
all: "Tots"
note: "Notes noves"
follow: "Seguint"
mention: "Menció"
reply: "Respostes"
renote: "Renotar"
quote: "Citar"
reaction: "Reaccions"
pollEnded: "Enquesta terminada"
receiveFollowRequest: "Rebuda una petició de seguiment"
followRequestAccepted: "Petició de seguiment acceptada"
roleAssigned: "Rol donat"
achievementEarned: "Assoliment desbloquejat"
exportCompleted: "Exportació completada"
login: "Iniciar sessió"
test: "Prova la notificació"
app: "Notificacions d'aplicacions"
_actions:
followBack: "t'ha seguit també"
reply: "Respondre"
renote: "Renotar"
_deck:
alwaysShowMainColumn: "Mostrar sempre la columna principal"
columnAlign: "Alinea les columnes"
addColumn: "Afig una columna"
newNoteNotificationSettings: "Configuració de notificacions per a notes noves"
configureColumn: "Configuració de columnes"
swapLeft: "Mou a lesquerra"
swapRight: "Mou a la dreta"
swapUp: "Mou cap amunt"
swapDown: "Mou cap avall"
stackLeft: "Pila a la columna esquerra"
popRight: "Col·loca a la dreta"
profile: "Perfil"
newProfile: "Perfil nou"
deleteProfile: "Elimina el perfil"
introduction: "Crea la interfície perfecta posant les columnes allà on vulguis!"
introduction2: "Fes clic al botó + de la dreta per afegir noves columnes sempre que vulguis."
widgetsIntroduction: "Selecciona \"Editar ginys\" a la columna del menú i afegeix un."
useSimpleUiForNonRootPages: "Usa una interfície senzilla per a les pàgines navegades"
usedAsMinWidthWhenFlexible: "L'amplada mínima es farà servir quan \"Ajust automàtic de l'amplada\" estigui activat"
flexible: "Ajust automàtic de l'amplada"
_columns:
main: "Principal"
widgets: "Ginys"
@@ -2446,77 +2207,14 @@ _deck:
channel: "Canals"
mentions: "Mencions"
direct: "Publicacions directes"
roleTimeline: "Línia de temps dels rols"
_dialog:
charactersExceeded: "Has arribat al màxim de caràcters! Actualment és {current} de {max}"
charactersBelow: "Ets per sota del mínim de caràcters! Actualment és {current} de {min}"
_disabledTimeline:
title: "Línia de tems desactivada"
description: "No pots fer servir aquesta línia de temps amb els teus rols actuals."
_drivecleaner:
orderBySizeDesc: "Mida del fitxer descendent"
orderByCreatedAtAsc: "Data ascendent"
_webhookSettings:
createWebhook: "Crear un Webhook"
modifyWebhook: "Modificar un Webhook"
name: "Nom"
secret: "Secret"
trigger: "Activador"
active: "Activat"
_events:
follow: "Quan se segueix a un usuari"
followed: "Quan et segueixen"
note: "Quan es publica una nota"
reply: "Quan es rep una resposta"
renote: "Quan es renoti"
reaction: "Quan es rep una reacció "
mention: "Quan et mencionen"
_systemEvents:
abuseReport: "Quan reps un nou informe de moderació "
abuseReportResolved: "Quan resols un informe de moderació "
userCreated: "Quan es crea un usuari"
deleteConfirm: "Segur que vols esborrar el webhook?"
testRemarks: "Si feu clic al botó a la dreta de l'interruptor, podeu enviar un webhook de prova amb dades dummy."
_abuseReport:
_notificationRecipient:
createRecipient: "Afegeix un destinatari a l'informe de moderació "
modifyRecipient: "Editar un destinatari en l'informe de moderació "
recipientType: "Tipus de notificació "
_recipientType:
mail: "Correu electrònic"
webhook: "Webhook"
_captions:
mail: "Enviar un correu electrònic a tots els moderadors quan es rep un informe de moderació "
webhook: "Enviar una notificació al SystemWebhook quan es rebi o es resolgui un informe de moderació "
keywords: "Paraules clau"
notifiedUser: "Usuaris que s'han de notificar "
notifiedWebhook: "Webhook que s'ha de fer servir"
deleteConfirm: "Segur que vols esborrar el destinatari de l'informe de moderació?"
_moderationLogTypes:
createRole: "Rol creat"
deleteRole: "Rol esborrat"
updateRole: "Rol actualitzat"
assignRole: "Assignat al rol"
unassignRole: "Esborrat del rol"
suspend: "Suspèn"
unsuspend: "Suspensió treta"
addCustomEmoji: "Afegit emoji personalitzat"
updateCustomEmoji: "Actualitzat emoji personalitzat"
deleteCustomEmoji: "Esborrat emoji personalitzat"
updateServerSettings: "Configuració del servidor actualitzada"
updateUserNote: "Nota de moderació actualitzada"
deleteDriveFile: "Fitxer esborrat"
deleteNote: "Nota esborrada"
createGlobalAnnouncement: "Anunci global creat"
createUserAnnouncement: "Anunci individual creat"
updateGlobalAnnouncement: "Anunci global actualitzat"
updateUserAnnouncement: "Anunci individual actualitzat "
deleteGlobalAnnouncement: "Anunci global esborrat"
deleteUserAnnouncement: "Anunci individual esborrat "
resetPassword: "Restableix la contrasenya"
suspendRemoteInstance: "Servidor remot suspès "
unsuspendRemoteInstance: "S'ha tret la suspensió del servidor remot"
updateRemoteInstanceNote: "Nota de moderació de la instància remota actualitzada"
markSensitiveDriveFile: "Fitxer marcat com a sensible"
unmarkSensitiveDriveFile: "S'ha tret la marca de sensible del fitxer"
resolveAbuseReport: "Informe resolt"
@@ -2529,16 +2227,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "S'ha esborrat la decoració de l'avatar "
unsetUserAvatar: "Esborrar l'avatar d'aquest usuari"
unsetUserBanner: "Esborrar el bàner d'aquest usuari"
createSystemWebhook: "Crear un SystemWebhook"
updateSystemWebhook: "Actualitzar SystemWebhook"
deleteSystemWebhook: "Esborrar SystemWebhook"
createAbuseReportNotificationRecipient: "Crear un destinatari per l'informe de moderació "
updateAbuseReportNotificationRecipient: "Actualitzar destinatari per l'informe de moderació "
deleteAbuseReportNotificationRecipient: "Esborrar destinatari de l'informe de moderació "
deleteAccount: "Esborrar el compte "
deletePage: "Esborrar la pàgina"
deleteFlash: "Esborrar el guió"
deleteGalleryPost: "Esborrar la publicació de la galeria"
_fileViewer:
title: "Detall del fitxer"
type: "Tipus de fitxer"
@@ -2565,54 +2253,6 @@ _externalResourceInstaller:
_errors:
_invalidParams:
title: "Paràmetres no vàlids "
description: "No hi ha suficient informació per carregar les dades del lloc extern. Confirma l'URL que hi ha escrita."
_resourceTypeNotSupported:
title: "El recurs extern no està suportat."
description: "Aquesta mena de recurs no està suportat. Contacta amb l'administrador."
_failedToFetch:
title: "Ha fallat l'obtenció de dades"
fetchErrorDescription: "Ha aparegut un error comunicant-se amb el lloc extern. Si després d'intentar-ho un altre cop no es resol, contacta amb l'administrador."
parseErrorDescription: "Ha aparegut un error processant les dades carregades del lloc extern. Contacta amb l'administrador."
_hashUnmatched:
title: "Ha fallat la verificació de les dades"
description: "Ha aparegut un error verificant les dades obtingudes. Com a mesura de seguretat la instal·lació no pot continuar. Contacta amb l'administrador."
_pluginParseFailed:
title: "Error d'AiScript"
description: "Les dades sol·licitades s'han obtingut correctament, però hem trobat un error durant el processament d'AiScript. Contacta amb l'autor de l'afegit. Detalls de l'error es pot veure a la consola JavaScript."
_pluginInstallFailed:
title: "La instal·lació de l'afegit a fallat"
description: "Ha aparegut un error durant la instal·lació de l'afegit. Intenta-ho una altra vegada. El detall de l'error es pot veure a la consola JavaScript."
_themeParseFailed:
title: "Ha fallat el processament del tema"
description: "Les dades sol·licitades s'han obtingut correctament, però hem trobat un error durant el processament del tema. Contacta amb l'autor de l'afegit. Detalls de l'error es pot veure a la consola JavaScript."
_themeInstallFailed:
title: "La instal·lació del tema a fallat"
description: "Ha aparegut un error durant la instal·lació del tema. Intenta-ho una altra vegada. El detall de l'error es pot veure a la consola JavaScript."
_dataSaver:
_media:
title: "Carregant multimèdia "
description: "Desactiva la càrrega automàtica d'imatges i vídeos. Les imatges i els vídeos amagats es carregaran quan es faci clic a sobre."
_avatar:
title: "Avatars animats"
description: "Detenir l'animació dels avatars animats. Les imatges animades solen tenir un pes més gran que les imatges normals, reduint el tràfic disponible."
_urlPreview:
title: "Miniatures vista prèvia de l'URL"
description: "Les imatges en miniatura que serveixen com a vista prèvia de les URLs no es tornaran a carregar."
_code:
title: "Ressaltat del codi "
_reversi:
total: "Total"
_embedCodeGen:
title: "Personalitza el codi per incrustar"
header: "Mostrar la capçalera"
autoload: "Carregar automàticament (no recomanat)"
maxHeight: "Alçada màxima"
maxHeightDescription: "0 anul·la la configuració màxima. Per evitar que continuï creixent verticalment, especifiqui qualsevol valor."
maxHeightWarn: "El límit màxim d'alçada és nul (0). Si això no és un canvi previst, estableix el màxim d'alçada a un cert valor."
previewIsNotActual: "La visualització és diferent de la que es mostra quan s'implanta."
rounded: "Angle recte"
border: "Afegeix un marc al contenidor"
applyToPreview: "Aplica a la vista prèvia"
generateCode: "Crea el codi per incrustar"
codeGenerated: "Codi generat"
codeGeneratedDescription: "Si us plau, enganxeu el codi generat al lloc web."

View File

@@ -471,6 +471,7 @@ uiLanguage: "Jazyk uživatelského rozhraní"
aboutX: "O {x}"
emojiStyle: "Styl emoji"
native: "Výchozí"
disableDrawer: "Nepoužívat šuplíkové menu"
showNoteActionsOnlyHover: "Zobrazit akce poznámky jenom při naběhnutí myši"
noHistory: "Žádná historie"
signinHistory: "Historie přihlášení"
@@ -657,7 +658,10 @@ abuseReported: "Nahlášení bylo odesláno. Děkujeme převelice."
reporter: "Nahlásil"
reporteeOrigin: "Původ nahlášení"
reporterOrigin: "Původ nahlasovače"
forwardReport: "Přeposlat nahlášení do vzdálené instance"
forwardReportIsAnonymous: "Místo vašeho účtu se ve vzdálené instanci zobrazí anonymní systémový účet jako nahlašovač."
send: "Odeslat"
abuseMarkAsResolved: "Označit nahlášení jako vyřešené"
openInNewTab: "Otevřít v nové kartě"
openInSideView: "Otevřít v bočním panelu"
defaultNavigationBehaviour: "Výchozí chování navigace"
@@ -1095,10 +1099,6 @@ 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."
@@ -1641,6 +1641,8 @@ _sfx:
note: "Poznámky"
noteMy: "Moje poznámka"
notification: "Oznámení"
antenna: "Antény"
channel: "Oznámení kanálu"
_ago:
future: "Budoucí"
justNow: "Teď"
@@ -1662,6 +1664,7 @@ _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 +1718,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: "{name} požaduje tato oprávnění"
permission: "{jméno} 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 +1942,7 @@ _notification:
youGotMention: "{name} vás zmínil"
youGotReply: "{name} vám odpověděl"
youGotQuote: "{name} vás citoval"
youRenoted: "Poznámka od {name}"
youRenoted: "Poznámka od {jméno}"
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,7 +1962,6 @@ _notification:
receiveFollowRequest: "Obdržené žádosti o sledování"
followRequestAccepted: "Přijaté žádosti o sledování"
achievementEarned: "Úspěch odemčen"
login: "Přihlásit se"
app: "Oznámení z propojených aplikací"
_actions:
followBack: "vás začal sledovat zpět"
@@ -2007,6 +2009,7 @@ _webhookSettings:
createWebhook: "Vytvořit Webhook"
name: "Jméno"
secret: "Tajné"
events: "Události Webhook"
active: "Zapnuto"
_events:
follow: "Při sledování uživatele"
@@ -2016,13 +2019,10 @@ _webhookSettings:
renote: "Při renotaci poznámky"
reaction: "Při obdržení reakce"
mention: "Při zmínce"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Email"
_moderationLogTypes:
suspend: "Zmrazit"
resetPassword: "Resetovat heslo"
createInvitation: "Vygenerovat pozvánku"
_reversi:
total: "Celkem"

View File

@@ -1,4 +1,3 @@
---
_lang_: "Dansk"
headlineMisskey: ""
introMisskey: "ようこそMisskeyは、オープンソースの分散型マイクロブログサービスです。\n「ート」を作成して、いま起こっていることを共有したり、あなたについて皆に発信しよう📡\n「リアクション」機能で、皆のートに素早く反応を追加することもできます👍\n新しい世界を探検しよう🚀"

View File

@@ -491,6 +491,7 @@ uiLanguage: "Sprache der Benutzeroberfläche"
aboutX: "Über {x}"
emojiStyle: "Emoji-Stil"
native: "Nativ"
disableDrawer: "Keine ausfahrbaren Menüs verwenden"
showNoteActionsOnlyHover: "Notizmenü nur bei Mouseover anzeigen"
noHistory: "Kein Verlauf gefunden"
signinHistory: "Anmeldungsverlauf"
@@ -653,7 +654,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 in Zeile {line} von {tab}en Wortstummschaltungen ist ein Fehler aufgetreten:"
regexpErrorDescription: "Im regulären Ausdruck deiner {tab}en Wortstummschaltungen ist ein Fehler aufgetreten:"
instanceMute: "Instanzstummschaltungen"
userSaysSomething: "{name} hat etwas gesagt"
makeActive: "Aktivieren"
@@ -686,7 +687,10 @@ 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"
openInNewTab: "In neuem Tab öffnen"
openInSideView: "In Seitenansicht öffnen"
defaultNavigationBehaviour: "Standardnavigationsverhalten"
@@ -1181,10 +1185,6 @@ 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."
@@ -1796,6 +1796,8 @@ _sfx:
note: "Notizen"
noteMy: "Meine Notizen"
notification: "Benachrichtigungen"
antenna: "Antennen"
channel: "Kanalbenachrichtigung"
_ago:
future: "Zukunft"
justNow: "Gerade eben"
@@ -1817,6 +1819,7 @@ _2fa:
registerTOTP: "Authentifizierungs-App registrieren"
step1: "Installiere zuerst eine Authentifizierungsapp (z.B. {a} oder {b}) auf deinem Gerät."
step2: "Dann, scanne den angezeigten QR-Code mit deinem Gerät."
step2Click: "Durch Klicken dieses QR-Codes kannst du Verifikation mit deinem Security-Token oder einer App registrieren."
step2Uri: "Nutzt du ein Desktopprogramm, gib folgende URI eingeben"
step3Title: "Authentifizierungsscode eingeben"
step3: "Gib zum Abschluss den Code (Token) ein, der von deiner App angezeigt wird."
@@ -2138,7 +2141,6 @@ _notification:
receiveFollowRequest: "Erhaltene Follow-Anfragen"
followRequestAccepted: "Akzeptierte Follow-Anfragen"
achievementEarned: "Errungenschaft freigeschaltet"
login: "Anmelden"
app: "Benachrichtigungen von Apps"
_actions:
followBack: "folgt dir nun auch"
@@ -2188,6 +2190,7 @@ _webhookSettings:
createWebhook: "Webhook erstellen"
name: "Name"
secret: "Secret"
events: "Webhook-Ereignisse"
active: "Aktiviert"
_events:
follow: "Wenn du jemandem folgst"
@@ -2197,10 +2200,6 @@ _webhookSettings:
renote: "Wenn du ein Renote erhältst"
reaction: "Wenn du eine Reaktion erhältst"
mention: "Wenn du erwähnt wirst"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Email"
_moderationLogTypes:
createRole: "Rolle erstellt"
deleteRole: "Rolle gelöscht"
@@ -2290,3 +2289,4 @@ _reversi:
black: "Schwarz"
white: "Weiß"
total: "Gesamt"

View File

@@ -301,6 +301,8 @@ _theme:
_sfx:
note: "Σημειώματα"
notification: "Ειδοποιήσεις"
antenna: "Αντένες"
channel: "Ειδοποιήσεις καναλιών"
_ago:
future: "Μελλοντικό"
justNow: "Μόλις τώρα"
@@ -378,7 +380,6 @@ _notification:
renote: "Κοινοποίηση σημειώματος"
quote: "Παράθεση"
reaction: "Αντιδράσεις"
login: "Σύνδεση"
_actions:
reply: "Απάντηση"
renote: "Κοινοποίηση σημειώματος"
@@ -397,3 +398,4 @@ _moderationLogTypes:
suspend: "Αποβολή"
_reversi:
total: "Σύνολο"

View File

@@ -8,9 +8,6 @@ search: "Search"
notifications: "Notifications"
username: "Username"
password: "Password"
initialPasswordForSetup: "Initial password for setup"
initialPasswordIsIncorrect: "Initial password for setup is incorrect"
initialPasswordForSetupDescription: "Use the password you entered in the configuration file if you installed Misskey yourself.\n If you are using a Misskey hosting service, use the password provided.\n If you have not set a password, leave it blank to continue."
forgotPassword: "Forgot password"
fetchingAsApObject: "Fetching from the Fediverse..."
ok: "OK"
@@ -63,7 +60,6 @@ copyFileId: "Copy file ID"
copyFolderId: "Copy folder ID"
copyProfileUrl: "Copy profile URL"
searchUser: "Search for a user"
searchThisUsersNotes: "Search this users notes"
reply: "Reply"
loadMore: "Load more"
showMore: "Show more"
@@ -112,14 +108,11 @@ enterEmoji: "Enter an emoji"
renote: "Renote"
unrenote: "Remove renote"
renoted: "Renoted."
renotedToX: "Renote to {name}."
cantRenote: "This post can't be renoted."
cantReRenote: "A renote can't be renoted."
quote: "Quote"
inChannelRenote: "Channel-only Renote"
inChannelQuote: "Channel-only Quote"
renoteToChannel: "Renote to channel"
renoteToOtherChannel: "Renote to other channel"
pinnedNote: "Pinned note"
pinned: "Pin to profile"
you: "You"
@@ -129,15 +122,15 @@ add: "Add"
reaction: "Reactions"
reactions: "Reactions"
emojiPicker: "Emoji picker"
pinnedEmojisForReactionSettingDescription: "Set the emojis to be pinned and displayed when reacting."
pinnedEmojisSettingDescription: "Set the emojis to be pinned and displayed when viewing emoji picker."
pinnedEmojisForReactionSettingDescription: "Set the emojis which should be pinned and displayed immediately when reacting."
pinnedEmojisSettingDescription: "Set the emojis to be pinned and displayed when viewing emoji picker"
emojiPickerDisplay: "Emoji picker display"
overwriteFromPinnedEmojisForReaction: "Override from reaction settings"
overwriteFromPinnedEmojis: "Override from general settings"
reactionSettingDescription2: "Drag to reorder, click to delete, press \"+\" to add."
rememberNoteVisibility: "Remember note visibility settings"
attachCancel: "Remove attachment"
deleteFile: "Delete file"
deleteFile: "File deleted"
markAsSensitive: "Mark as sensitive"
unmarkAsSensitive: "Unmark as sensitive"
enterFileName: "Enter filename"
@@ -158,7 +151,6 @@ editList: "Edit list"
selectChannel: "Select a channel"
selectAntenna: "Select an antenna"
editAntenna: "Edit antenna"
createAntenna: "Create an antenna"
selectWidget: "Select a widget"
editWidgets: "Edit widgets"
editWidgetsExit: "Done"
@@ -170,7 +162,7 @@ emojiUrl: "Emoji URL"
addEmoji: "Add an emoji"
settingGuide: "Recommended settings"
cacheRemoteFiles: "Cache remote files"
cacheRemoteFilesDescription: "When this setting is disabled, remote files are loaded directly from the remote servers. Disabling this will decrease storage usage, but increase traffic, as thumbnails will not be generated."
cacheRemoteFilesDescription: "When this setting is disabled, remote files are loaded directly from the remote instance. Disabling this will decrease storage usage, but increase traffic, as thumbnails will not be generated."
youCanCleanRemoteFilesCache: "You can clear the cache by clicking the 🗑️ button in the file management view."
cacheRemoteSensitiveFiles: "Cache sensitive remote files"
cacheRemoteSensitiveFilesDescription: "When this setting is disabled, sensitive remote files are loaded directly from the remote instance without caching."
@@ -185,10 +177,6 @@ addAccount: "Add account"
reloadAccountsList: "Reload account list"
loginFailed: "Failed to sign in"
showOnRemote: "View on remote instance"
continueOnRemote: "Continue on a remote server"
chooseServerOnMisskeyHub: "Choose a server from the Misskey Hub"
specifyServerHost: "Specify a server host directly"
inputHostName: "Enter the domain"
general: "General"
wallpaper: "Wallpaper"
setWallpaper: "Set wallpaper"
@@ -199,7 +187,6 @@ followConfirm: "Are you sure that you want to follow {name}?"
proxyAccount: "Proxy account"
proxyAccountDescription: "A proxy account is an account that acts as a remote follower for users under certain conditions. For example, when a user adds a remote user to the list, the remote user's activity will not be delivered to the instance if no local user is following that user, so the proxy account will follow instead."
host: "Host"
selectSelf: "Select myself"
selectUser: "Select a user"
recipient: "Recipient"
annotation: "Comments"
@@ -215,7 +202,6 @@ perDay: "Per Day"
stopActivityDelivery: "Stop sending activities"
blockThisInstance: "Block this instance"
silenceThisInstance: "Silence this instance"
mediaSilenceThisInstance: "Media-silence this server"
operations: "Operations"
software: "Software"
version: "Version"
@@ -236,11 +222,7 @@ clearCachedFilesConfirm: "Are you sure that you want to delete all cached remote
blockedInstances: "Blocked Instances"
blockedInstancesDescription: "List the hostnames of the instances you want to block separated by linebreaks. Listed instances will no longer be able to communicate with this instance."
silencedInstances: "Silenced instances"
silencedInstancesDescription: "List the host names of the servers that you want to silence, separated by a new line. All accounts belonging to the listed servers will be treated as silenced, and can only make follow requests, and cannot mention local accounts if not followed. This will not affect the blocked servers."
mediaSilencedInstances: "Media-silenced servers"
mediaSilencedInstancesDescription: "List the host names of the servers that you want to media-silence, separated by a new line. All accounts belonging to the listed servers will be treated as sensitive, and can't use custom emojis. This will not affect the blocked servers."
federationAllowedHosts: "Federation allowed servers"
federationAllowedHostsDescription: "Specify the hostnames of the servers you want to allow federation separated by line breaks."
silencedInstancesDescription: "List the hostnames of the instances that you want to silence. All accounts of the listed instances will be treated as silenced, can only make follow requests, and cannot mention local accounts if not followed. This will not affect blocked instances."
muteAndBlock: "Mutes and Blocks"
mutedUsers: "Muted users"
blockedUsers: "Blocked users"
@@ -331,7 +313,6 @@ selectFile: "Select a file"
selectFiles: "Select files"
selectFolder: "Select a folder"
selectFolders: "Select folders"
fileNotSelected: ""
renameFile: "Rename file"
folderName: "Folder name"
createFolder: "Create a folder"
@@ -339,7 +320,6 @@ renameFolder: "Rename this folder"
deleteFolder: "Delete this folder"
folder: "Folder"
addFile: "Add a file"
showFile: "Show files"
emptyDrive: "Your Drive is empty"
emptyFolder: "This folder is empty"
unableToDelete: "Unable to delete"
@@ -404,7 +384,7 @@ mcaptcha: "mCaptcha"
enableMcaptcha: "Enable mCaptcha"
mcaptchaSiteKey: "Site key"
mcaptchaSecretKey: "Secret key"
mcaptchaInstanceUrl: "mCaptcha server URL"
mcaptchaInstanceUrl: "mCaptcha instance URL"
recaptcha: "reCAPTCHA"
enableRecaptcha: "Enable reCAPTCHA"
recaptchaSiteKey: "Site key"
@@ -420,7 +400,6 @@ name: "Name"
antennaSource: "Antenna source"
antennaKeywords: "Keywords to listen to"
antennaExcludeKeywords: "Keywords to exclude"
antennaExcludeBots: "Exclude bot accounts"
antennaKeywordsDescription: "Separate with spaces for an AND condition or with line breaks for an OR condition."
notifyAntenna: "Notify about new notes"
withFileAntenna: "Only notes with files"
@@ -488,12 +467,10 @@ retype: "Enter again"
noteOf: "Note by {user}"
quoteAttached: "Quote"
quoteQuestion: "Append as quote?"
attachAsFileQuestion: "The text in clipboard is long. Would you want to attach it as text file?"
noMessagesYet: "No messages yet"
newMessageExists: "There are new messages"
onlyOneFileCanBeAttached: "You can only attach one file to a message"
signinRequired: "Please register or sign in before continuing"
signinOrContinueOnRemote: "To continue, you need to move your server or sign up / log in to this server."
invitations: "Invites"
invitationCode: "Invitation code"
checking: "Checking..."
@@ -515,12 +492,8 @@ uiLanguage: "User interface language"
aboutX: "About {x}"
emojiStyle: "Emoji style"
native: "Native"
menuStyle: "Menu style"
style: "Style"
drawer: "Drawer"
popup: "Pop up"
disableDrawer: "Don't use drawer-style menus"
showNoteActionsOnlyHover: "Only show note actions on hover"
showReactionsCount: "See the number of reactions in notes"
noHistory: "No history available"
signinHistory: "Login history"
enableAdvancedMfm: "Enable advanced MFM"
@@ -601,8 +574,6 @@ ascendingOrder: "Ascending"
descendingOrder: "Descending"
scratchpad: "Scratchpad"
scratchpadDescription: "The Scratchpad provides an environment for AiScript experiments. You can write, execute, and check the results of it interacting with Misskey in it."
uiInspector: "UI inspector"
uiInspectorDescription: "You can see the UI component server list on memory. UI component will be generated by Ui:C: function."
output: "Output"
script: "Script"
disablePagesScript: "Disable AiScript on Pages"
@@ -719,7 +690,10 @@ abuseReported: "Your report has been sent. Thank you very much."
reporter: "Reporter"
reporteeOrigin: "Reportee Origin"
reporterOrigin: "Reporter Origin"
forwardReport: "Forward report to remote instance"
forwardReportIsAnonymous: "Instead of your account, an anonymous system account will be displayed as reporter at the remote instance."
send: "Send"
abuseMarkAsResolved: "Mark report as resolved"
openInNewTab: "Open in new tab"
openInSideView: "Open in side view"
defaultNavigationBehaviour: "Default navigation behavior"
@@ -856,7 +830,6 @@ administration: "Management"
accounts: "Accounts"
switch: "Switch"
noMaintainerInformationWarning: "Maintainer information is not configured."
noInquiryUrlWarning: "Inquiry URL isnt set"
noBotProtectionWarning: "Bot protection is not configured."
configure: "Configure"
postToGallery: "Create new gallery post"
@@ -1046,7 +1019,6 @@ thisPostMayBeAnnoyingHome: "Post to home timeline"
thisPostMayBeAnnoyingCancel: "Cancel"
thisPostMayBeAnnoyingIgnore: "Post anyway"
collapseRenotes: "Collapse renotes you've already seen"
collapseRenotesDescription: "Collapse notes that you've reacted to or renoted before."
internalServerError: "Internal Server Error"
internalServerErrorDescription: "The server has run into an unexpected error."
copyErrorInfo: "Copy error details"
@@ -1087,7 +1059,7 @@ enableChartsForRemoteUser: "Generate remote user data charts"
enableChartsForFederatedInstances: "Generate remote instance data charts"
showClipButtonInNoteFooter: "Add \"Clip\" to note action menu"
reactionsDisplaySize: "Reaction display size"
limitWidthOfReaction: "Limit the maximum width of reactions and display them in reduced size."
limitWidthOfReaction: "Limits the maximum width of reactions and display them in reduced size."
noteIdOrUrl: "Note ID or URL"
video: "Video"
videos: "Videos"
@@ -1120,8 +1092,6 @@ preservedUsernames: "Reserved usernames"
preservedUsernamesDescription: "List usernames to reserve separated by linebreaks. These will become unable during normal account creation, but can be used by administrators to manually create accounts. Already existing accounts using these usernames will not be affected."
createNoteFromTheFile: "Compose note from this file"
archive: "Archive"
archived: "Archived"
unarchive: "Unarchive"
channelArchiveConfirmTitle: "Really archive {name}?"
channelArchiveConfirmDescription: "An archived channel won't appear in the channel list or search results anymore. New posts can also not be added to it anymore."
thisChannelArchived: "This channel has been archived."
@@ -1132,9 +1102,6 @@ preventAiLearning: "Reject usage in Machine Learning (Generative AI)"
preventAiLearningDescription: "Requests crawlers to not use posted text or image material etc. in machine learning (Predictive / Generative AI) data sets. This is achieved by adding a \"noai\" HTML-Response flag to the respective content. A complete prevention can however not be achieved through this flag, as it may simply be ignored."
options: "Options"
specifyUser: "Specific user"
lookupConfirm: "Do you want to look up?"
openTagPageConfirm: "Do you want to open a hashtag page?"
specifyHost: "Specific host"
failedToPreviewUrl: "Could not preview"
update: "Update"
rolesThatCanBeUsedThisEmojiAsReaction: "Roles that can use this emoji as reaction"
@@ -1256,43 +1223,6 @@ enableHorizontalSwipe: "Swipe to switch tabs"
loading: "Loading"
surrender: "Cancel"
gameRetry: "Retry"
notUsePleaseLeaveBlank: "Leave blank if not used"
useTotp: "Enter the One-Time Password"
useBackupCode: "Use the backup codes"
launchApp: "Launch the app"
useNativeUIForVideoAudioPlayer: "Use UI of browser when play video and audio"
keepOriginalFilename: "Keep original file name"
keepOriginalFilenameDescription: "If you turn off this setting, files names will be replaced with random string automatically when you upload files."
noDescription: "There is no explanation"
alwaysConfirmFollow: "Always confirm when following"
inquiry: "Contact"
tryAgain: "Please try again later"
confirmWhenRevealingSensitiveMedia: "Confirm when revealing sensitive media"
sensitiveMediaRevealConfirm: "This might be a sensitive media. Are you sure to reveal?"
createdLists: "Created lists"
createdAntennas: "Created antennas"
fromX: "From {x}"
genEmbedCode: "Generate embed code"
noteOfThisUser: "Notes by this user"
clipNoteLimitExceeded: "No more notes can be added to this clip."
performance: "Performance"
modified: "Modified"
discard: "Discard"
thereAreNChanges: "There are {n} change(s)"
signinWithPasskey: "Sign in with Passkey"
unknownWebAuthnKey: "Unknown Passkey"
passkeyVerificationFailed: "Passkey verification has failed."
passkeyVerificationSucceededButPasswordlessLoginDisabled: "Passkey verification has succeeded but password-less login is disabled."
messageToFollower: "Message to followers"
_delivery:
status: "Delivery status"
stop: "Suspended"
resume: "Delivery resume"
_type:
none: "Publishing"
manuallySuspended: "Manually suspended"
goneSuspended: "Server is suspended due to server deletion"
autoSuspendedForNotResponding: "Server is suspended due to no responding"
_bubbleGame:
howToPlay: "How to play"
hold: "Hold"
@@ -1386,7 +1316,7 @@ _initialTutorial:
_exampleNote:
cw: "This will surely make you hungry!"
note: "Just had a chocolate-glazed donut 🍩😋"
useCases: "This is used when following the server guidelines, for necessary notes, or for self-restriction of spoiler or sensitive text."
useCases: "This is used when following the server guidelines for necessary notes or for self-restriction of spoiler or sensitive text."
_howToMakeAttachmentsSensitive:
title: "How to Mark Attachments as Sensitive?"
description: "For attachments that are required by server guidelines or that should not be left intact, add a \"sensitive\" flag."
@@ -1418,9 +1348,6 @@ _serverSettings:
fanoutTimelineDescription: "Greatly increases performance of timeline retrieval and reduces load on the database when enabled. In exchange, memory usage of Redis will increase. Consider disabling this in case of low server memory or server instability."
fanoutTimelineDbFallback: "Fallback to database"
fanoutTimelineDbFallbackDescription: "When enabled, the timeline will fall back to the database for additional queries if the timeline is not cached. Disabling it further reduces the server load by eliminating the fallback process, but limits the range of timelines that can be retrieved."
reactionsBufferingDescription: "When enabled, performance during reaction creation will be greatly improved, reducing the load on the database. However, Redis memory usage will increase."
inquiryUrl: "Inquiry URL"
inquiryUrlDescription: "Specify a URL for the inquiry form to the server maintainer or a web page for the contact information."
_accountMigration:
moveFrom: "Migrate another account to this one"
moveFromSub: "Create alias to another account"
@@ -1737,7 +1664,6 @@ _role:
canManageAvatarDecorations: "Manage avatar decorations"
driveCapacity: "Drive capacity"
alwaysMarkNsfw: "Always mark files as NSFW"
canUpdateBioMedia: "Allow to edit an icon or a banner image"
pinMax: "Maximum number of pinned notes"
antennaMax: "Maximum number of antennas"
wordMuteMax: "Maximum number of characters allowed in word mutes"
@@ -1752,20 +1678,10 @@ _role:
canSearchNotes: "Usage of note search"
canUseTranslator: "Translator usage"
avatarDecorationLimit: "Maximum number of avatar decorations that can be applied"
canImportAntennas: "Allow importing antennas"
canImportBlocking: "Allow importing blocking"
canImportFollowing: "Allow importing following"
canImportMuting: "Allow importing muting"
canImportUserLists: "Allow importing lists"
_condition:
roleAssignedTo: "Assigned to manual roles"
isLocal: "Local user"
isRemote: "Remote user"
isCat: "Cat Users"
isBot: "Bot Users"
isSuspended: "Suspended user"
isLocked: "Private accounts"
isExplorable: "Effective user of \"make an account discoverable\""
createdLessThan: "Less than X has passed since account creation"
createdMoreThan: "More than X has passed since account creation"
followersLessThanOrEq: "Has X or fewer followers"
@@ -1835,7 +1751,6 @@ _plugin:
installWarn: "Please do not install untrustworthy plugins."
manage: "Manage plugins"
viewSource: "View source"
viewLog: "Show log"
_preferencesBackups:
list: "Created backups"
saveNew: "Save new backup"
@@ -1986,6 +1901,8 @@ _sfx:
note: "New note"
noteMy: "Own note"
notification: "Notifications"
antenna: "Antennas"
channel: "Channel notifications"
reaction: "On choosing a reaction"
_soundSettings:
driveFile: "Use an audio file in Drive."
@@ -1994,7 +1911,6 @@ _soundSettings:
driveFileTypeWarnDescription: "Select an audio file"
driveFileDurationWarn: "The audio is too long."
driveFileDurationWarnDescription: "Long audio may disrupt using Misskey. Still continue?"
driveFileError: "It couldn't load the sound. Please change the setting."
_ago:
future: "Future"
justNow: "Just now"
@@ -2024,6 +1940,7 @@ _2fa:
registerTOTP: "Register authenticator app"
step1: "First, install an authentication app (such as {a} or {b}) on your device."
step2: "Then, scan the QR code displayed on this screen."
step2Click: "Clicking on this QR code will allow you to register 2FA to your security key or phone authenticator app."
step2Uri: "Enter the following URI if you are using a desktop program"
step3Title: "Enter an authentication code"
step3: "Enter the authentication code (token) provided by your app to finish setup."
@@ -2047,7 +1964,6 @@ _2fa:
backupCodesDescription: "You can use these codes to gain access to your account in case of becoming unable to use your two-factor authentificator app. Each can only be used once. Please keep them in a safe place."
backupCodeUsedWarning: "A backup code has been used. Please reconfigure two-factor authentification as soon as possible if you are no longer able to use it."
backupCodesExhaustedWarning: "All backup codes have been used. Should you lose access to your two-factor authentification app, you will be unable to access this account. Please reconfigure two-factor authentification."
moreDetailedGuideHere: "Here is detailed guide"
_permissions:
"read:account": "View your account information"
"write:account": "Edit your account information"
@@ -2098,6 +2014,7 @@ _permissions:
"read:admin:server-info": "View server info"
"read:admin:show-moderation-log": "View moderation log"
"read:admin:show-user": "View private user info"
"read:admin:show-users": "View private user info"
"write:admin:suspend-user": "Suspend user"
"write:admin:unset-user-avatar": "Remove user avatar"
"write:admin:unset-user-banner": "Remove user banner"
@@ -2112,7 +2029,7 @@ _permissions:
"read:admin:invite-codes": "View invite codes"
"write:admin:announcements": "Manage announcements"
"read:admin:announcements": "View announcements"
"write:admin:avatar-decorations": "Can manage avatar decorations"
"write:admin:avatar-decorations": "Manage avatar decorations"
"read:admin:avatar-decorations": "View avatar decorations"
"write:admin:federation": "Manage federation data"
"write:admin:account": "Manage user account"
@@ -2251,9 +2168,6 @@ _profile:
changeBanner: "Change banner"
verifiedLinkDescription: "By entering an URL that contains a link to your profile here, an ownership verification icon can be displayed next to the field."
avatarDecorationMax: "You can add up to {max} decorations."
followedMessage: "Message when you are followed"
followedMessageDescription: "You can set a short message to be displayed to the recipient when they follow you."
followedMessageDescriptionForLockedAccount: "If you have set up that follow requests require approval, this will be displayed when you grant a follow request."
_exportOrImport:
allNotes: "All notes"
favoritedNotes: "Favorite notes"
@@ -2311,7 +2225,6 @@ _play:
title: "Title"
script: "Script"
summary: "Description"
visibilityDescription: "Putting it private means it won't be visible on your profile, but anyone that has the URL can still access it."
_pages:
newPage: "Create a new Page"
editPage: "Edit this Page"
@@ -2346,7 +2259,6 @@ _pages:
eyeCatchingImageSet: "Set thumbnail"
eyeCatchingImageRemove: "Delete thumbnail"
chooseBlock: "Add a block"
enterSectionTitle: "Enter a section title"
selectType: "Select a type"
contentBlocks: "Content"
inputBlocks: "Input"
@@ -2357,8 +2269,6 @@ _pages:
section: "Section"
image: "Images"
button: "Button"
dynamic: "Dynamic Blocks"
dynamicDescription: "This block has been abolished. Please use {play} from now on."
note: "Embedded note"
_note:
id: "Note ID"
@@ -2388,12 +2298,9 @@ _notification:
sendTestNotification: "Send test notification"
notificationWillBeDisplayedLikeThis: "Notifications look like this"
reactedBySomeUsers: "{n} users reacted"
likedBySomeUsers: "{n} users liked your note"
renotedBySomeUsers: "Renote from {n} users"
followedBySomeUsers: "Followed by {n} users"
flushNotification: "Clear notifications"
exportOfXCompleted: "Export of {x} has been completed"
login: "Someone logged in"
_types:
all: "All"
note: "New notes"
@@ -2408,9 +2315,6 @@ _notification:
followRequestAccepted: "Accepted follow requests"
roleAssigned: "Role given"
achievementEarned: "Achievement unlocked"
exportCompleted: "The export has been completed"
login: "Sign In"
test: "Notification test"
app: "Notifications from linked apps"
_actions:
followBack: "followed you back"
@@ -2420,7 +2324,6 @@ _deck:
alwaysShowMainColumn: "Always show main column"
columnAlign: "Align columns"
addColumn: "Add column"
newNoteNotificationSettings: "Notification setting for new notes"
configureColumn: "Column settings"
swapLeft: "Swap with the left column"
swapRight: "Swap with the right column"
@@ -2459,10 +2362,9 @@ _drivecleaner:
orderByCreatedAtAsc: "Ascending Dates"
_webhookSettings:
createWebhook: "Create Webhook"
modifyWebhook: "Modify Webhook"
name: "Name"
secret: "Secret"
trigger: "Trigger"
events: "Webhook Events"
active: "Enabled"
_events:
follow: "When following a user"
@@ -2472,27 +2374,6 @@ _webhookSettings:
renote: "When renoted"
reaction: "When receiving a reaction"
mention: "When being mentioned"
_systemEvents:
abuseReport: "When received a new abuse report"
abuseReportResolved: "When resolved abuse report"
userCreated: "When user is created"
deleteConfirm: "Are you sure you want to delete the Webhook?"
testRemarks: "Click the button to the right of the switch to send a test Webhook with dummy data."
_abuseReport:
_notificationRecipient:
createRecipient: "Add a recipient for abuse reports"
modifyRecipient: "Edit a recipient for abuse reports"
recipientType: "Notification type"
_recipientType:
mail: "Email"
webhook: "Webhook"
_captions:
mail: "Send the email to moderators' email addresses when you receive abuse."
webhook: "Send a notification to SystemWebhook when you receive or resolve abuse."
keywords: "Keywords"
notifiedUser: "Users to notify"
notifiedWebhook: "Webhook to use"
deleteConfirm: "Are you sure that you want to delete the notification recipient?"
_moderationLogTypes:
createRole: "Role created"
deleteRole: "Role deleted"
@@ -2530,16 +2411,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "Avatar decoration deleted"
unsetUserAvatar: "Unset this user's avatar"
unsetUserBanner: "Unset this user's banner"
createSystemWebhook: "Create SystemWebhook"
updateSystemWebhook: "Update SystemWebhook"
deleteSystemWebhook: "Delete SystemWebhook"
createAbuseReportNotificationRecipient: "Create a recipient for abuse reports"
updateAbuseReportNotificationRecipient: "Update recipients for abuse reports"
deleteAbuseReportNotificationRecipient: "Delete a recipient for abuse reports"
deleteAccount: "Delete the account"
deletePage: "Delete the page"
deleteFlash: "Delete Play"
deleteGalleryPost: "Delete the gallery post"
_fileViewer:
title: "File details"
type: "File type"
@@ -2653,40 +2524,4 @@ _reversi:
_offlineScreen:
title: "Offline - cannot connect to the server"
header: "Unable to connect to the server"
_urlPreviewSetting:
title: "URL preview settings"
enable: "Enable URL preview"
timeout: "Time out when getting preview (ms)"
timeoutDescription: "If it takes longer than this value to get the preview, the preview wont be generated."
maximumContentLength: "Maximum Content-Length (bytes)"
maximumContentLengthDescription: "If Content-Length is higher than this value, the preview won't be generated."
requireContentLength: "Generate the preview only if you could get Content-Length"
requireContentLengthDescription: "If other server doesn't return Content-Length, the preview won't be generated."
userAgent: "User-Agent"
userAgentDescription: "Sets the User-Agent to be used when retrieving previews. If left blank, the default User-Agent will be used."
summaryProxy: "Proxy endpoints that generate previews"
summaryProxyDescription: "Not Misskey itself, but generate previews using Summaly Proxy."
summaryProxyDescription2: "The following parameters are linked to the proxy as a query string. If the proxy does not support them, the values are ignored."
_mediaControls:
pip: "Picture in Picture"
playbackRate: "Playback Speed"
loop: "Loop playback"
_contextMenu:
title: "Context menu"
app: "Application"
appWithShift: "Application with shift key"
native: "Native"
_embedCodeGen:
title: "Customize embed code"
header: "Show header"
autoload: "Automatically load more (deprecated)"
maxHeight: "Max height"
maxHeightDescription: "Setting it to 0 disables the max height setting. Specify some value to prevent the widget from continuing to expand vertically."
maxHeightWarn: "The max height limit is disabled (0). If this was not intended, set the max height to some value."
previewIsNotActual: "The display differs from the actual embedding because it exceeds the range displayed on the preview screen."
rounded: "Make it rounded"
border: "Add a border to the outer frame"
applyToPreview: "Apply to the preview"
generateCode: "Generate embed code"
codeGenerated: "The code has been generated"
codeGeneratedDescription: "Paste the generated code into your website to embed the content."

View File

@@ -60,7 +60,6 @@ copyFileId: "Copiar ID del archivo"
copyFolderId: "Copiar ID de carpeta"
copyProfileUrl: "Copiar la URL del perfil"
searchUser: "Buscar un usuario"
searchThisUsersNotes: ""
reply: "Responder"
loadMore: "Ver más"
showMore: "Ver más"
@@ -109,14 +108,11 @@ enterEmoji: "Ingresar emojis"
renote: "Renotar"
unrenote: "Quitar renota"
renoted: "Renotado"
renotedToX: "{name} usuarios han renotado。"
cantRenote: "No se puede renotar este post"
cantReRenote: "No se puede renotar una renota"
quote: "Citar"
inChannelRenote: "Renota sólo del canal"
inChannelQuote: "Cita sólo del canal"
renoteToChannel: "Renotar a otro canal"
renoteToOtherChannel: "Renotar a otro canal"
pinnedNote: "Nota fijada"
pinned: "Fijar al perfil"
you: "Tú"
@@ -155,7 +151,6 @@ editList: "Editar lista"
selectChannel: "Seleccionar canal"
selectAntenna: "Seleccionar antena"
editAntenna: "Editar antena"
createAntenna: "Crear una antena"
selectWidget: "Seleccionar widget"
editWidgets: "Editar widgets"
editWidgetsExit: "Terminar edición"
@@ -182,10 +177,6 @@ addAccount: "Agregar Cuenta"
reloadAccountsList: "Recargar lista de cuentas"
loginFailed: "Error al iniciar sesión."
showOnRemote: "Ver en una instancia remota"
continueOnRemote: "Ver en una instancia remota"
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"
@@ -244,7 +235,7 @@ done: "Terminado"
processing: "Procesando"
preview: "Vista previa"
default: "Predeterminado"
defaultValueIs: "Por defecto: {value}"
defaultValueIs: "Predeterminado"
noCustomEmojis: "No hay emojis personalizados"
noJobs: "No hay trabajos"
federating: "Federando"
@@ -311,7 +302,7 @@ location: "Lugar"
theme: "Tema"
themeForLightMode: "Tema para usar en Modo Linterna"
themeForDarkMode: "Tema para usar en Modo Oscuro"
light: "Claro"
light: "Linterna"
dark: "Oscuro"
lightThemes: "Tema claro"
darkThemes: "Tema oscuro"
@@ -409,7 +400,6 @@ 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"
@@ -502,8 +492,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"
@@ -700,7 +690,10 @@ 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"
@@ -998,7 +991,6 @@ 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"
@@ -1050,7 +1042,6 @@ 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."
@@ -1099,8 +1090,6 @@ 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."
thisChannelArchived: "El canal ha sido archivado."
@@ -1169,7 +1158,6 @@ showRenotes: "Mostrar renotas"
edited: "Editado"
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"
@@ -1179,12 +1167,6 @@ confirmShowRepliesAll: "Esta operación es irreversible. ¿Confirmas que quieres
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."
@@ -1220,8 +1202,6 @@ soundWillBePlayed: "Se reproducirán efectos sonoros"
showReplay: "Ver reproducción"
replay: "Reproducir"
replaying: "Reproduciendo"
endReplay: "Terminar reproducción"
copyReplayData: "Copiar datos de reproducción"
ranking: "Clasificación"
lastNDays: "Últimos {n} días"
backToTitle: "Regresar al inicio"
@@ -1229,32 +1209,9 @@ hemisphere: "Región"
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"
@@ -1372,7 +1329,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 #{n}"
moveFromLabel: "Cuenta desde la que se realiza el traslado:"
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:"
@@ -1631,11 +1588,8 @@ _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"
@@ -1676,7 +1630,6 @@ _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"
@@ -1700,13 +1653,8 @@ _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"
@@ -1776,7 +1724,6 @@ _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"
@@ -1806,8 +1753,6 @@ _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🥰"
@@ -1927,6 +1872,8 @@ _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"
@@ -1964,6 +1911,7 @@ _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."
@@ -1987,7 +1935,6 @@ _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"
@@ -2029,7 +1976,6 @@ _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"
@@ -2038,6 +1984,7 @@ _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"
@@ -2248,7 +2195,6 @@ _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"
@@ -2293,8 +2239,6 @@ _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"
@@ -2340,7 +2284,6 @@ _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"
@@ -2390,6 +2333,7 @@ _webhookSettings:
createWebhook: "Crear Webhook"
name: "Nombre"
secret: "Secreto"
events: "Eventos de webhook"
active: "Activado"
_events:
follow: "Cuando se sigue a alguien"
@@ -2399,12 +2343,6 @@ _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"
@@ -2508,14 +2446,6 @@ _hemisphere:
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)"
maximumContentLength: "Content-Length Máximo (bytes)"
userAgent: "User-Agent"
_mediaControls:
pip: "Picture in Picture"
playbackRate: "Velocidad de reproducción"
loop: "Reproducción en bucle"

View File

@@ -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 joint"
attachCancel: "Supprimer le fichier attaché"
deleteFile: "Fichier supprimé"
markAsSensitive: "Marquer comme sensible"
unmarkAsSensitive: "Supprimer le marquage comme sensible"
@@ -400,7 +400,6 @@ name: "Nom"
antennaSource: "Source de lantenne"
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 fichiers joints uniquement"
@@ -493,8 +492,8 @@ uiLanguage: "Langue daffichage de linterface"
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"
@@ -542,7 +541,6 @@ 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é"
@@ -657,7 +655,7 @@ testEmail: "Tester la distribution de courriel"
wordMute: "Filtre de mots"
hardWordMute: "Filtre de mots dur"
regexpError: "Erreur dexpression régulière"
regexpErrorDescription: "Une erreur s'est produite dans l'expression régulière sur la ligne {line} de votre mot muet {tab} :"
regexpErrorDescription: "Une erreur s'est produite dans l'expression régulière sur la ligne {ligne} de votre mot muet {tab} :"
instanceMute: "Instance en sourdine"
userSaysSomething: "{name} a dit quelque chose"
makeActive: "Activer"
@@ -677,7 +675,6 @@ 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"
@@ -691,7 +688,10 @@ abuseReported: "Le rapport est envoyé. Merci."
reporter: "Signalé par"
reporteeOrigin: "Origine du signalement"
reporterOrigin: "Signalé par"
forwardReport: "Transférer le signalement à linstance 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"
@@ -989,7 +989,6 @@ 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"
@@ -1004,7 +1003,6 @@ youCannotCreateAnymore: "Vous avez atteint la limite de création."
cannotPerformTemporary: "Temporairement indisponible"
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."
preset: "Préréglage"
@@ -1018,7 +1016,6 @@ thisPostMayBeAnnoyingCancel: "Annuler"
thisPostMayBeAnnoyingIgnore: "Publier quand-même"
collapseRenotes: "Réduire les renotes déjà vues"
internalServerError: "Erreur interne du serveur"
internalServerErrorDescription: "Une erreur inattendue s'est produite sur le serveur."
copyErrorInfo: "Copier les détails de lerreur"
joinThisServer: "S'inscrire à cette instance"
exploreOtherServers: "Trouver une autre instance"
@@ -1038,10 +1035,8 @@ 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."
@@ -1087,13 +1082,9 @@ pleaseConfirmBelowBeforeSignup: "Pour vous inscrire sur cette instance, vous dev
pleaseAgreeAllToContinue: "Pour continuer, veuillez accepter tous les champs ci-dessus."
continue: "Continuer"
preservedUsernames: "Noms d'utilisateur·rice réservés"
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"
archive: "Archive"
archived: "Archivé"
unarchive: "Annuler l'archivage"
channelArchiveConfirmTitle: "Voulez-vous vraiment archiver {name} ?"
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"
@@ -1122,8 +1113,6 @@ createWithOptions: "Options"
createCount: "Quantité à créer"
inviteCodeCreated: "Code d'invitation créé"
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 dexpiration"
noExpirationDate: "Ne pas expirer"
inviteCodeUsedAt: "Code d'invitation utilisé à"
@@ -1143,14 +1132,11 @@ 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"
@@ -1160,7 +1146,6 @@ 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"
@@ -1216,19 +1201,10 @@ 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"
@@ -1236,25 +1212,15 @@ _bubbleGame:
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 !"
@@ -1322,7 +1288,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 {link}."
description: "Les fonctionnalités introduites ici ne sont que quelques-unes. Pour savoir plus sur l'utilisation de Misskey, veuillez consulter {lien}."
_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."
@@ -1483,7 +1449,7 @@ _role:
edit: "Modifier le rôle"
name: "Nom du rôle"
description: "Description du rôle"
permission: "Autorisations du rôle"
permission: "Rôle et autorisations"
assignTarget: "Attribuer"
manual: "Manuel"
manualRoles: "Rôles manuels"
@@ -1713,6 +1679,8 @@ _sfx:
note: "Nouvelle note"
noteMy: "Ma note"
notification: "Notifications"
antenna: "Réception de lantenne"
channel: "Notifications de canal"
reaction: "Lors de la sélection de la réaction"
_soundSettings:
driveFile: "Utiliser un effet sonore sur le Disque"
@@ -2016,7 +1984,7 @@ _notification:
unreadAntennaNote: "Antenne {name}"
roleAssigned: "Rôle attribué"
emptyPushNotificationMessage: "Les notifications push ont été mises à jour"
achievementEarned: "Accomplissement déverrouillé"
achievementEarned: "Accomplissement"
testNotification: "Tester la notification"
reactedBySomeUsers: "{n} utilisateur·rice·s ont réagi"
renotedBySomeUsers: "{n} utilisateur·rice·s ont renoté"
@@ -2033,8 +2001,7 @@ _notification:
receiveFollowRequest: "Demande d'abonnement reçue"
followRequestAccepted: "Demande d'abonnement acceptée"
roleAssigned: "Rôle reçu"
achievementEarned: "Déverrouillage d'accomplissement"
login: "Se connecter"
achievementEarned: "Accomplissement"
app: "Notifications provenant des apps"
_actions:
followBack: "Suivre"
@@ -2073,10 +2040,6 @@ _drivecleaner:
_webhookSettings:
name: "Nom"
active: "Activé"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "E-mail "
_moderationLogTypes:
createRole: "Rôle créé"
deleteRole: "Rôle supprimé"
@@ -2176,5 +2139,5 @@ _dataSaver:
title: "Mise en évidence du code"
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."
_reversi:
waitingBoth: "Préparez-vous"
total: "Total"

View File

@@ -3,3 +3,4 @@ _lang_: "japanski"
ok: "OK"
gotIt: "Razumijem"
cancel: "otkazati"

View File

@@ -16,3 +16,4 @@ _2fa:
renewTOTPCancel: "Sispann"
_widgets:
profile: "pwofil"

View File

@@ -96,10 +96,10 @@ _notification:
renote: "Renote"
quote: "Idézet"
reaction: "Reakciók"
login: "Bejelentkezés"
_actions:
renote: "Renote"
_deck:
_columns:
notifications: "Értesítések"
tl: "Idővonal"

View File

@@ -60,7 +60,6 @@ copyFileId: "Salin Berkas"
copyFolderId: "Salin Folder"
copyProfileUrl: "Salin Alamat Web Profil"
searchUser: "Cari pengguna"
searchThisUsersNotes: "Mencari catatan pengguna"
reply: "Balas"
loadMore: "Selebihnya"
showMore: "Selebihnya"
@@ -109,14 +108,11 @@ enterEmoji: "Masukkan emoji"
renote: "Renote"
unrenote: "Hapus renote"
renoted: "Telah direnote"
renotedToX: "{name} telah merenote"
cantRenote: "Postingan ini tidak dapat direnote"
cantReRenote: "Renote tidak dapat direnote"
quote: "Kutip"
inChannelRenote: "Hanya renote dalam kanal"
inChannelQuote: "Hanya kutip dalam kanal"
renoteToChannel: "Renote ke kanal"
renoteToOtherChannel: "Renote ke kanal lainnya"
pinnedNote: "Catatan yang disematkan"
pinned: "Sematkan ke profil"
you: "Kamu"
@@ -155,7 +151,6 @@ editList: "Sunting daftar"
selectChannel: "Pilih kanal"
selectAntenna: "Pilih Antena"
editAntenna: "Sunting antena"
createAntenna: "Membuat antena."
selectWidget: "Pilih gawit"
editWidgets: "Sunting gawit"
editWidgetsExit: "Selesai"
@@ -182,10 +177,6 @@ addAccount: "Tambahkan akun"
reloadAccountsList: "Muat ulang daftar akun"
loginFailed: "Gagal untuk masuk"
showOnRemote: "Lihat profil asli"
continueOnRemote: "Lihat di peladen asal"
chooseServerOnMisskeyHub: "Pilih peladen dari Misskey Hub"
specifyServerHost: "Tentukan domain peladen"
inputHostName: "Masukkan nama domain"
general: "Umum"
wallpaper: "Wallpaper"
setWallpaper: "Atur wallpaper"
@@ -322,7 +313,6 @@ selectFile: "Pilih berkas"
selectFiles: "Pilih berkas"
selectFolder: "Pilih folder"
selectFolders: "Pilih folder"
fileNotSelected: "Tidak ada file yang dipilih"
renameFile: "Ubah nama berkas"
folderName: "Nama folder"
createFolder: "Buat folder"
@@ -410,7 +400,6 @@ name: "Nama"
antennaSource: "Sumber Antenna"
antennaKeywords: "Kata kunci yang diterima"
antennaExcludeKeywords: "Kata kunci yang dikecualikan"
antennaExcludeBots: "Kecualikan akun bot"
antennaKeywordsDescription: "Pisahkan dengan spasi untuk kondisi AND. Pisahkan dengan baris baru untuk kondisi OR."
notifyAntenna: "Beritahu untuk catatan baru"
withFileAntenna: "Hanya tampilkan catatan dengan berkas yang dilampirkan"
@@ -478,7 +467,6 @@ retype: "Masukkan ulang"
noteOf: "Catatan milik {user}"
quoteAttached: "Dikutip"
quoteQuestion: "Apakah kamu ingin menambahkan kutipan?"
attachAsFileQuestion: "Teks dalam papan klip terlalu panjang. Apakah kamu ingin melampirkannya sebagai berkas teks?"
noMessagesYet: "Tidak ada pesan"
newMessageExists: "Kamu mendapatkan pesan baru"
onlyOneFileCanBeAttached: "Kamu hanya dapat melampirkan satu berkas ke dalam pesan"
@@ -504,8 +492,8 @@ uiLanguage: "Bahasa antarmuka pengguna"
aboutX: "Tentang {x}"
emojiStyle: "Gaya emoji"
native: "Native"
disableDrawer: "Jangan gunakan menu bergaya laci"
showNoteActionsOnlyHover: "Hanya tampilkan aksi catatan saat ditunjuk"
showReactionsCount: "Lihat jumlah reaksi dalam catatan"
noHistory: "Tidak ada riwayat"
signinHistory: "Riwayat masuk"
enableAdvancedMfm: "Nyalakan MFM tingkat lanjut"
@@ -702,7 +690,10 @@ abuseReported: "Laporan kamu telah dikirimkan. Terima kasih."
reporter: "Pelapor"
reporteeOrigin: "Yang dilaporkan"
reporterOrigin: "Pelapor"
forwardReport: "Teruskan laporan ke instansi luar"
forwardReportIsAnonymous: "Untuk melindungi privasi akun kamu, akun anonim dari sistem akan digunakan sebagai pelapor pada instansi luar."
send: "Kirim"
abuseMarkAsResolved: "Tandai laporan sebagai selesai"
openInNewTab: "Buka di tab baru"
openInSideView: "Buka di tampilan samping"
defaultNavigationBehaviour: "Navigasi bawaan"
@@ -1000,7 +991,6 @@ neverShow: "Jangan tampilkan lagi"
remindMeLater: "Mungkin nanti"
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"
@@ -1052,7 +1042,6 @@ 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."
@@ -1169,7 +1158,6 @@ showRenotes: "Tampilkan renote"
edited: "Telah disunting"
notificationRecieveConfig: "Pengaturan notifikasi"
mutualFollow: "Saling mengikuti"
followingOrFollower: "Mengikuti atau pengikut"
fileAttachedOnly: "Hanya catatan dengan berkas"
showRepliesToOthersInTimeline: "Tampilkan balasan ke pengguna lain dalam lini masa"
hideRepliesToOthersInTimeline: "Sembunyikan balasan ke orang lain dari lini masa"
@@ -1179,12 +1167,6 @@ confirmShowRepliesAll: "Operasi ini tidak dapat diubah. Apakah kamu yakin untuk
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."
@@ -1220,8 +1202,6 @@ 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"
@@ -1229,44 +1209,11 @@ 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."
@@ -1310,59 +1257,26 @@ _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:
@@ -1374,9 +1288,6 @@ _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"
@@ -1634,16 +1545,6 @@ _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"
@@ -1654,9 +1555,7 @@ _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"
@@ -1684,7 +1583,6 @@ _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"
@@ -1706,16 +1604,9 @@ _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"
@@ -1741,9 +1632,8 @@ _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: "Publik"
public: "Terbitkan"
followers: "Tampil untuk pengikut saja"
private: "Tersembunyi"
_signup:
@@ -1785,7 +1675,6 @@ _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"
@@ -1815,13 +1704,10 @@ _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"
@@ -1846,7 +1732,6 @@ _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)"
@@ -1936,6 +1821,8 @@ _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"
@@ -1973,6 +1860,7 @@ _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."
@@ -1996,7 +1884,6 @@ _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"
@@ -2047,6 +1934,7 @@ _permissions:
"read:admin:server-info": "Lihat informasi peladen"
"read:admin:show-moderation-log": "Lihat log moderasi"
"read:admin:show-user": "Lihat informasi pengguna privat"
"read:admin:show-users": "Lihat informasi pengguna privat"
"write:admin:suspend-user": "Tangguhkan pengguna"
"write:admin:unset-user-avatar": "Hapus avatar pengguna"
"write:admin:unset-user-banner": "Hapus banner pengguna"
@@ -2257,7 +2145,6 @@ _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"
@@ -2302,8 +2189,6 @@ _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"
@@ -2333,10 +2218,8 @@ _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"
@@ -2351,7 +2234,6 @@ _notification:
followRequestAccepted: "Permintaan mengikuti disetujui"
roleAssigned: "Peran Diberikan"
achievementEarned: "Pencapaian didapatkan"
login: "Masuk"
app: "Notifikasi dari aplikasi tertaut"
_actions:
followBack: "Ikuti Kembali"
@@ -2399,9 +2281,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"
@@ -2411,11 +2293,6 @@ _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"
@@ -2440,7 +2317,6 @@ _moderationLogTypes:
resetPassword: "Atur ulang kata sandi"
suspendRemoteInstance: "Instansi luar telah ditangguhkan"
unsuspendRemoteInstance: "Instansi luar batal ditangguhkan"
updateRemoteInstanceNote: "Catatan moderasi telah diperbaharui untuk peladen luar."
markSensitiveDriveFile: "Berkas ditandai sensitif"
unmarkSensitiveDriveFile: "Berkas batal ditandai sensitif"
resolveAbuseReport: "Laporan terselesaikan"
@@ -2552,35 +2428,4 @@ _reversi:
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."
allowIrregularRules: "Aturan non-reguler (bebas sepenuhnya)"
disallowIrregularRules: "Tanpa aturan non-reguler"
showBoardLabels: "Tampilkan penomoran baris dan kolom pada papan"
useAvatarAsStone: "Ubah batu menjadi avatar pengguna"
_offlineScreen:
title: "Luring - tidak dapat terhubung ke peladen"
header: "Tidak dapat tersambung ke server"
_urlPreviewSetting:
title: "Pengaturan pratinjau URL"
enable: "Aktifkan pratinjau URL"
timeout: "Waktu timeout pratinjau URL (ms)"
timeoutDescription: "Apabila ini memakan waktu lama dari nilai yang ditentukan untuk mendapatkan pratinjau, pratinjau tidak akan dibuat."
maximumContentLength: "Content-Length Maksimum (bytes)"
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."
_mediaControls:
pip: "Gambar dalam Gambar"
playbackRate: "Kecepatan Pemutaran"
loop: "Ulangi Pemutaran"

775
locales/index.d.ts vendored

File diff suppressed because it is too large Load Diff

View File

@@ -52,11 +52,7 @@ const primaries = {
const clean = (text) => text.replace(new RegExp(String.fromCodePoint(0x08), 'g'), '');
export function build() {
// vitestの挙動を調整するため、一度ローカル変数化する必要がある
// https://github.com/vitest-dev/vitest/issues/3988#issuecomment-1686599577
// https://github.com/misskey-dev/misskey/pull/14057#issuecomment-2192833785
const metaUrl = import.meta.url;
const locales = languages.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(new URL(`${c}.yml`, metaUrl), 'utf-8'))) || {}, a), {});
const locales = languages.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(new URL(`${c}.yml`, import.meta.url), 'utf-8'))) || {}, a), {});
// 空文字列が入ることがあり、フォールバックが動作しなくなるのでプロパティごと消す
const removeEmpty = (obj) => {

View File

@@ -1,6 +1,6 @@
---
_lang_: "Italiano"
headlineMisskey: "Rete collegata tramite Note"
headlineMisskey: "Rete collegata tramite note"
introMisskey: "Eccoci! Misskey è un servizio di microblogging decentralizzato, libero e aperto. \n\n📡 Puoi pubblicare «Note» per condividere ciò che sta succedendo o per dire a tutti qualcosa su di te. \n\n👍 Puoi reagire inviando emoji rapidi alle «Note» provenienti da altri profili nel Fediverso.\n\n🚀 Esplora un nuovo mondo insieme a noi!"
poweredByMisskeyDescription: "{name} è uno dei servizi (chiamati istanze) che utilizzano la piattaforma open source <b>Misskey</b>."
monthAndDay: "{day}/{month}"
@@ -8,9 +8,6 @@ search: "Cerca"
notifications: "Notifiche"
username: "Nome utente"
password: "Password"
initialPasswordForSetup: "Password iniziale, per avviare le impostazioni"
initialPasswordIsIncorrect: "Password iniziale, sbagliata."
initialPasswordForSetupDescription: "Se hai installato Misskey di persona, usa la password che hai indicato nel file di configurazione.\nSe stai utilizzando un servizio di hosting Misskey, usa la password fornita dal gestore.\nSe non hai una password preimpostata, lascia il campo vuoto e continua."
forgotPassword: "Hai dimenticato la password?"
fetchingAsApObject: "Recuperando dal Fediverso..."
ok: "OK"
@@ -63,7 +60,6 @@ copyFileId: "Copia ID del file"
copyFolderId: "Copia ID della cartella"
copyProfileUrl: "Copia URL del profilo"
searchUser: "Cerca profilo"
searchThisUsersNotes: "Cerca le sue Note"
reply: "Rispondi"
loadMore: "Mostra di più"
showMore: "Espandi"
@@ -89,7 +85,7 @@ note: "Nota"
notes: "Note"
following: "Follow"
followers: "Follower"
followsYou: "Follower"
followsYou: "Segue"
createList: "Aggiungi una nuova lista"
manageLists: "Gestisci liste"
error: "Errore"
@@ -112,14 +108,11 @@ enterEmoji: "Inserisci emoji"
renote: "Rinota"
unrenote: "Elimina la Rinota"
renoted: "Rinotata!"
renotedToX: "Rinota da {name}."
cantRenote: "È impossibile rinotare questa nota."
cantReRenote: "È impossibile rinotare una Rinota."
quote: "Citazione"
inChannelRenote: "Rinota nel canale"
inChannelQuote: "Cita nel canale"
renoteToChannel: "Rinota al canale"
renoteToOtherChannel: "Rinota a un altro canale"
pinnedNote: "Nota in primo piano"
pinned: "Fissa sul profilo"
you: "Tu"
@@ -141,12 +134,12 @@ deleteFile: "File da Drive eliminato"
markAsSensitive: "Segna come esplicito"
unmarkAsSensitive: "Non segnare come esplicito "
enterFileName: "Nome del file"
mute: "Silenziare"
mute: "Silenzia"
unmute: "Riattiva l'audio"
renoteMute: "Silenziare le Rinota"
renoteMute: "Silenzia le Rinota"
renoteUnmute: "Non silenziare le Rinota"
block: "Bloccare"
unblock: "Sbloccare"
block: "Blocca"
unblock: "Sblocca"
suspend: "Sospensione"
unsuspend: "Revoca la sospensione"
blockConfirm: "Vuoi davvero bloccare il profilo?"
@@ -158,7 +151,6 @@ editList: "Modifica Lista"
selectChannel: "Seleziona canale"
selectAntenna: "Scegli un'antenna"
editAntenna: "Modifica Antenna"
createAntenna: "Crea Antenna"
selectWidget: "Seleziona il riquadro"
editWidgets: "Modifica i riquadri"
editWidgetsExit: "Conferma le modifiche"
@@ -185,10 +177,6 @@ addAccount: "Aggiungi profilo"
reloadAccountsList: "Ricarica l'elenco dei profili"
loginFailed: "Accesso non riuscito"
showOnRemote: "Leggi sull'istanza remota"
continueOnRemote: "Continua da remoto"
chooseServerOnMisskeyHub: "Scegli l'istanza sul sito Misskey Hub"
specifyServerHost: "Indica l'indirizzo dell'istanza"
inputHostName: "Digita il nome del dominio "
general: "Generali"
wallpaper: "Sfondo"
setWallpaper: "Imposta sfondo"
@@ -199,7 +187,6 @@ followConfirm: "Vuoi seguire {name}?"
proxyAccount: "Profilo proxy"
proxyAccountDescription: "Un profilo proxy funziona come follower per i profili remoti, sotto certe condizioni. Ad esempio, quando un profilo locale ne inserisce uno remoto in una lista (senza seguirlo), se nessun altro segue quel profilo remoto, le attività non possono essere distribuite. Dunque, il profilo proxy le seguirà per tutti."
host: "Host"
selectSelf: "Segli me"
selectUser: "Seleziona profilo"
recipient: "Destinatario"
annotation: "Annotazione preventiva"
@@ -213,9 +200,8 @@ charts: "Grafici"
perHour: "orario"
perDay: "giornaliero"
stopActivityDelivery: "Interrompi la distribuzione di attività"
blockThisInstance: "Bloccare l'istanza"
silenceThisInstance: "Silenziare l'istanza"
mediaSilenceThisInstance: "Silenzia i media dell'istanza"
blockThisInstance: "Blocca questa istanza"
silenceThisInstance: "Silenzia l'istanza"
operations: "Operazioni"
software: "Software"
version: "Versione"
@@ -237,11 +223,7 @@ blockedInstances: "Istanze bloccate"
blockedInstancesDescription: "Elenca le istanze che vuoi bloccare, una per riga. Esse non potranno più interagire con la tua istanza."
silencedInstances: "Istanze silenziate"
silencedInstancesDescription: "Elenca i nomi host delle istanze che vuoi silenziare. Tutti i profili nelle istanze silenziate vengono trattati come tali. Possono solo inviare richieste di follow e menzionare soltanto i profili locali che seguono. Le istanze bloccate non sono interessate."
mediaSilencedInstances: "Istanze coi media silenziati"
mediaSilencedInstancesDescription: "Elenca i nomi host delle istanze di cui vuoi silenziare i media, uno per riga. Tutti gli allegati dei profili nelle istanze silenziate per via degli allegati espliciti, verranno impostati come tali, le emoji personalizzate non saranno disponibili. Le istanze bloccate sono escluse."
federationAllowedHosts: "Server a cui consentire la federazione"
federationAllowedHostsDescription: "Indica gli host dei server a cui è consentita la federazione, uno per ogni linea."
muteAndBlock: "Silenziare e bloccare"
muteAndBlock: "Silenziati / Bloccati"
mutedUsers: "Profili silenziati"
blockedUsers: "Profili bloccati"
noUsers: "Non ci sono profili"
@@ -331,7 +313,6 @@ selectFile: "Scelta allegato"
selectFiles: "Scelta allegato"
selectFolder: "Seleziona cartella"
selectFolders: "Seleziona cartella"
fileNotSelected: "Nessun file selezionato"
renameFile: "Rinomina file"
folderName: "Nome della cartella"
createFolder: "Nuova cartella"
@@ -339,7 +320,6 @@ renameFolder: "Rinomina cartella"
deleteFolder: "Elimina cartella"
folder: "Cartella"
addFile: "Allega"
showFile: "Visualizza file"
emptyDrive: "Il Drive è vuoto"
emptyFolder: "La cartella è vuota"
unableToDelete: "Eliminazione impossibile"
@@ -420,7 +400,6 @@ name: "Nome"
antennaSource: "Fonte dell'antenna"
antennaKeywords: "Parole chiavi da ricevere"
antennaExcludeKeywords: "Parole chiavi da escludere"
antennaExcludeBots: "Escludere i Bot"
antennaKeywordsDescription: "Sparando con uno spazio indichi la condizione E (and). Separando con un a capo, indichi la condizione O (or)."
notifyAntenna: "Invia notifiche delle nuove note"
withFileAntenna: "Solo note con file in allegato"
@@ -431,7 +410,7 @@ withReplies: "Includere le risposte"
connectedTo: "Connessione ai seguenti profili:"
notesAndReplies: "Note e risposte"
withFiles: "Con allegati"
silence: "Silenziare"
silence: "Silenzia"
silenceConfirm: "Vuoi davvero silenziare questo profilo?"
unsilence: "Riattiva"
unsilenceConfirm: "Vuoi davvero riattivare questo profilo?"
@@ -461,7 +440,7 @@ securityKeyAndPasskey: "Chiave di sicurezza e accesso"
securityKey: "Chiave di sicurezza"
lastUsed: "Ultima attività"
lastUsedAt: "Uso più recente: {t}"
unregister: "Rimuovi autenticazione a due fattori (2FA/MFA)"
unregister: "Annulla l'iscrizione"
passwordLessLogin: "Accedi senza password"
passwordLessLoginDescription: "Accedi senza password, usando la chiave di sicurezza"
resetPassword: "Ripristina la password"
@@ -471,7 +450,7 @@ share: "Condividi"
notFound: "Non trovato"
notFoundDescription: "Nessuna pagina corrisponde all'URL indicata."
uploadFolder: "Destinazione caricamento predefinita"
markAsReadAllNotifications: "Segnare tutte le notifiche come lette"
markAsReadAllNotifications: "Segna tutte le notifiche come lette"
markAsReadAllUnreadNotes: "Segna tutte le note come lette"
markAsReadAllTalkMessages: "Segna tutte le chat come lette"
help: "Guida"
@@ -488,12 +467,10 @@ retype: "Conferma"
noteOf: "Note di {user}"
quoteAttached: "Citazione allegata"
quoteQuestion: "Vuoi aggiungere una citazione?"
attachAsFileQuestion: "Il testo copiato eccede le dimensioni, vuoi allegarlo?"
noMessagesYet: "Ancora nessuna chat"
newMessageExists: "Hai ricevuto un nuovo messaggio"
onlyOneFileCanBeAttached: "È possibile allegare al messaggio soltanto uno file"
signinRequired: "Occorre avere un profilo registrato su questa istanza"
signinOrContinueOnRemote: "Per continuare, devi accedere alla tua istanza o registrarti su questa e poi accedere"
invitations: "Invita"
invitationCode: "Codice di invito"
checking: "Confermando"
@@ -515,12 +492,8 @@ uiLanguage: "Lingua di visualizzazione dell'interfaccia"
aboutX: "Informazioni su {x}"
emojiStyle: "Stile emoji"
native: "Nativo"
menuStyle: "Stile menu"
style: "Stile"
drawer: "Drawer"
popup: "Popup"
disableDrawer: "Non mostrare il menù sul drawer"
showNoteActionsOnlyHover: "Mostra le azioni delle Note solo al passaggio del mouse"
showReactionsCount: "Visualizza il numero di reazioni su una nota"
noHistory: "Nessuna cronologia"
signinHistory: "Storico degli accessi al profilo"
enableAdvancedMfm: "Attiva MFM avanzati"
@@ -574,7 +547,7 @@ deleteAll: "Cancella cronologia"
showFixedPostForm: "Visualizzare la finestra di pubblicazione in cima alla timeline"
showFixedPostFormInChannel: "Per i canali, mostra il modulo di pubblicazione in cima alla timeline"
withRepliesByDefaultForNewlyFollowed: "Quando segui nuovi profili, includi le risposte in TL come impostazione predefinita"
newNoteRecived: "Nuove Note da leggere"
newNoteRecived: "Nuove note da leggere"
sounds: "Impostazioni suoni"
sound: "Suono"
listen: "Ascolta"
@@ -601,12 +574,10 @@ ascendingOrder: "Aumenta"
descendingOrder: "Diminuisce"
scratchpad: "ScratchPad"
scratchpadDescription: "Lo Scratchpad offre un ambiente per esperimenti di AiScript. È possibile scrivere, eseguire e confermare i risultati dell'interazione del codice con Misskey."
uiInspector: "UI Inspector"
uiInspectorDescription: "Puoi visualizzare un elenco di elementi UI presenti in memoria. I componenti dell'interfaccia utente vengono generati dalle funzioni Ui:C:."
output: "Uscita"
script: "Script"
disablePagesScript: "Disabilita AiScript nelle pagine"
updateRemoteUser: "Aggiorna dati dal profilo remoto"
updateRemoteUser: "Aggiorna le informazioni dal profilo remoto"
unsetUserAvatar: "Rimozione foto profilo"
unsetUserAvatarConfirm: "Vuoi davvero rimuovere la foto profilo?"
unsetUserBanner: "Rimuovi intestazione profilo"
@@ -616,7 +587,7 @@ deleteAllFilesConfirm: "Vuoi davvero eliminare tutti i file?"
removeAllFollowing: "Annulla tutti i follow"
removeAllFollowingDescription: "Cancella tutti i follows del server {host}. Per favore, esegui se, ad esempio, l'istanza non esiste più."
userSuspended: "L'utente è in sospensione"
userSilenced: "Profilo silenziato"
userSilenced: "Profilo silente."
yourAccountSuspendedTitle: "Questo profilo è sospeso"
yourAccountSuspendedDescription: "Questo profilo è stato sospeso a causa di una violazione del regolamento. Per informazioni, contattare l'amministrazione. Si prega di non creare un nuovo account."
tokenRevoked: "Il token non è valido"
@@ -686,7 +657,7 @@ wordMute: "Filtri parole"
hardWordMute: "Filtro parole forte"
regexpError: "errore regex"
regexpErrorDescription: "Si è verificato un errore nell'espressione regolare alla riga {line} della parola muta {tab}:"
instanceMute: "Silenziare l'istanza"
instanceMute: "Silenzia l'istanza"
userSaysSomething: "{name} ha parlato"
makeActive: "Attiva"
display: "Visualizza"
@@ -711,15 +682,18 @@ fileIdOrUrl: "ID o URL del file"
behavior: "Comportamento"
sample: "Esempio"
abuseReports: "Segnalazioni"
reportAbuse: "Segnalare"
reportAbuseRenote: "Segnalare la Rinota"
reportAbuseOf: "Segnalare {name}"
reportAbuse: "Segnala"
reportAbuseRenote: "Segnala la Rinota"
reportAbuseOf: "Segnala {name}"
fillAbuseReportDescription: "Per favore, spiegaci il motivo della segnalazione. Se riguarda una Nota precisa, indica anche l'indirizzo URL."
abuseReported: "La segnalazione è stata inviata. Grazie."
reporter: "il corrispondente"
reporteeOrigin: "Segnalazione a"
reporterOrigin: "Segnalazione da"
reporteeOrigin: "Origine del segnalato"
reporterOrigin: "Origine del segnalatore"
forwardReport: "Inoltro di un report a un'istanza remota."
forwardReportIsAnonymous: "L'istanza remota non vedrà le tue informazioni, apparirai come profilo di sistema, anonimo."
send: "Inviare"
abuseMarkAsResolved: "Contrassegna la segnalazione come risolta"
openInNewTab: "Apri in una nuova scheda"
openInSideView: "Apri in vista laterale"
defaultNavigationBehaviour: "Navigazione preimpostata"
@@ -856,7 +830,6 @@ administration: "Gestione"
accounts: "Profilo"
switch: "Cambia"
noMaintainerInformationWarning: "Mancano le informazioni sull'amministratore."
noInquiryUrlWarning: "Non è stata impostata la URL di contatto"
noBotProtectionWarning: "Non è stata impostata alcuna protezione dai Bot"
configure: "Imposta"
postToGallery: "Pubblicare nella galleria"
@@ -888,7 +861,7 @@ troubleshooting: "Risoluzione problemi"
useBlurEffect: "Utilizza effetto sfocatura"
learnMore: "Più dettagli"
misskeyUpdated: "Misskey è stato aggiornato!"
whatIsNew: "Informazioni sull'aggiornamento"
whatIsNew: "Visualizza le informazioni sull'aggiornamento"
translate: "Traduci"
translatedFrom: "Traduzione da {x}"
accountDeletionInProgress: "È in corso l'eliminazione del profilo"
@@ -914,14 +887,13 @@ manageAccounts: "Gestisci i profili"
makeReactionsPublic: "Pubblicare la lista delle reazioni."
makeReactionsPublicDescription: "La lista delle reazioni che avete fatto è a disposizione di tutti."
classic: "Classico"
muteThread: "Silenziare conversazione"
muteThread: "Silenzia conversazione"
unmuteThread: "Riattiva la conversazione"
followingVisibility: "Visibilità dei profili seguiti"
followersVisibility: "Visibilità dei profili che ti seguono"
continueThread: "Altre conversazioni"
deleteAccountConfirm: "Così verrà eliminato il profilo. Vuoi procedere?"
incorrectPassword: "La password è errata."
incorrectTotp: "Il codice OTP è sbagliato, oppure scaduto."
voteConfirm: "Votare per「{choice}」?"
hide: "Nascondere"
useDrawerReactionPickerForMobile: "Mostra sul drawer da dispositivo mobile"
@@ -997,11 +969,11 @@ shuffle: "Casuale"
account: "Account"
move: "Sposta"
pushNotification: "Notifiche Push"
subscribePushNotification: "Attivare le notifiche push"
unsubscribePushNotification: "Disattivare le notifiche push"
subscribePushNotification: "Attiva le notifiche push"
unsubscribePushNotification: "Disattiva le notifiche push"
pushNotificationAlreadySubscribed: "Le notifiche push sono già attivate"
pushNotificationNotSupported: "Il client o il server non supporta le notifiche push"
sendPushNotificationReadMessage: "Eliminare le notifiche push dopo la relativa lettura"
sendPushNotificationReadMessage: "Elimina le notifiche push dopo la relativa lettura"
sendPushNotificationReadMessageCaption: "Se possibile, verrà mostrata brevemente una notifica con il testo \"{emptyPushNotificationMessage}\". Potrebbe influire negativamente sulla durata della batteria."
windowMaximize: "Ingrandisci"
windowMinimize: "Contrai finestra"
@@ -1047,7 +1019,6 @@ thisPostMayBeAnnoyingHome: "Pubblica sulla timeline principale"
thisPostMayBeAnnoyingCancel: "Annulla"
thisPostMayBeAnnoyingIgnore: "Pubblica lo stesso"
collapseRenotes: "Comprimi le Rinota già viste"
collapseRenotesDescription: "Comprimi le Note con cui hai già interagito."
internalServerError: "Errore interno del server"
internalServerErrorDescription: "Si è verificato un errore imprevisto all'interno del server"
copyErrorInfo: "Copia le informazioni sull'errore"
@@ -1121,8 +1092,6 @@ preservedUsernames: "Nomi utente riservati"
preservedUsernamesDescription: "Elenca, uno per linea, i nomi utente che non possono essere registrati durante la creazione del profilo. La restrizione non si applica agli amministratori. Inoltre, i profili già registrati sono esenti."
createNoteFromTheFile: "Crea Nota da questo file"
archive: "Archivio"
archived: "Archiviato"
unarchive: "Annulla archiviazione"
channelArchiveConfirmTitle: "Vuoi davvero archiviare {name}?"
channelArchiveConfirmDescription: "Un canale archiviato non compare nell'elenco canali, nemmeno nei risultati di ricerca. Non può ricevere nemmeno nuove Note."
thisChannelArchived: "Questo canale è stato archiviato."
@@ -1133,9 +1102,6 @@ preventAiLearning: "Impedisci l'apprendimento della IA"
preventAiLearningDescription: "Aggiungendo il campo \"noai\" alla risposta HTML, si indica ai Robot esterni di non usare testi e allegati per addestrare sistemi di Machine Learning (IA predittiva/generativa). Anche se è impossibile sapere se la richiesta venga onorata o semplicemente ignorata."
options: "Opzioni del ruolo"
specifyUser: "Profilo specifico"
lookupConfirm: "Vuoi davvero richiedere informazioni?"
openTagPageConfirm: "Vuoi davvero aprire la pagina dell'hashtag?"
specifyHost: "Specifica l'host"
failedToPreviewUrl: "Anteprima non disponibile"
update: "Aggiorna"
rolesThatCanBeUsedThisEmojiAsReaction: "Ruoli che possono usare questa emoji come reazione"
@@ -1194,7 +1160,6 @@ showRenotes: "Includi le Rinota"
edited: "Modificato"
notificationRecieveConfig: "Preferenze di notifica"
mutualFollow: "Follow reciproco"
followingOrFollower: "Following o Follower"
fileAttachedOnly: "Solo con allegati"
showRepliesToOthersInTimeline: "Risposte altrui nella TL"
hideRepliesToOthersInTimeline: "Nascondi Riposte altrui nella TL"
@@ -1245,8 +1210,6 @@ soundWillBePlayed: "Con musica ed effetti sonori"
showReplay: "Vedi i replay"
replay: "Replay"
replaying: "Replay in corso"
endReplay: "Termina replay"
copyReplayData: "Copia replay"
ranking: "Classifica"
lastNDays: "Ultimi {n} giorni"
backToTitle: "Torna al titolo"
@@ -1254,57 +1217,9 @@ hemisphere: "Geolocalizzazione"
withSensitive: "Mostra le Note con allegati espliciti"
userSaysSomethingSensitive: "Note da {name} con allegati espliciti"
enableHorizontalSwipe: "Trascina per invertire i tab"
loading: "Caricamento"
surrender: "Annulla"
gameRetry: "Riprova"
notUsePleaseLeaveBlank: "Lasciare vuoto, se non in uso"
useTotp: "Usare il codice OTP"
useBackupCode: "Usare il codice usa-e-getta"
launchApp: "Esegui l'App"
useNativeUIForVideoAudioPlayer: "Riprodurre audio/video usando le funzionalità del browser"
keepOriginalFilename: "Mantieni il nome file originale"
keepOriginalFilenameDescription: "Disattivandola, i file verranno caricati usando nomi casuali."
noDescription: "Manca la descrizione"
alwaysConfirmFollow: "Richiedi conferma per i Follow"
inquiry: "Contattaci"
tryAgain: "Per favore riprova"
confirmWhenRevealingSensitiveMedia: "Richiedi conferma prima di mostrare gli allegati espliciti"
sensitiveMediaRevealConfirm: "Questo allegato è esplicito, vuoi vederlo?"
createdLists: "Liste create"
createdAntennas: "Antenne create"
fromX: "Da {x}"
genEmbedCode: "Ottieni il codice di incorporamento"
noteOfThisUser: "Elenco di Note di questo profilo"
clipNoteLimitExceeded: "Non è possibile aggiungere ulteriori Note a questa Clip."
performance: "Prestazioni"
modified: "Modificato"
discard: "Scarta"
thereAreNChanges: "Ci sono {n} cambiamenti"
signinWithPasskey: "Accedi con passkey"
unknownWebAuthnKey: "Questa è una passkey sconosciuta."
passkeyVerificationFailed: "La verifica della passkey non è riuscita."
passkeyVerificationSucceededButPasswordlessLoginDisabled: "La verifica della passkey è riuscita, ma l'accesso senza password è disabilitato."
messageToFollower: "Messaggio ai follower"
_delivery:
status: "Stato della consegna"
stop: "Sospensione"
resume: "Riprendi la consegna"
_type:
none: "Pubblicazione"
manuallySuspended: "Sospesa manualmente"
goneSuspended: "Sospensione server a causa dell'eliminazione"
autoSuspendedForNotResponding: "Sospensione del server a causa di mancata risposta"
_bubbleGame:
howToPlay: "Come giocare"
hold: "Tieni"
_score:
score: "Punteggio"
scoreYen: "Capitale"
highScore: "Punteggio migliore"
maxChain: "Miglior combo"
yen: "{yen}¥"
estimatedQty: "{qty} punti"
scoreSweets: "Onigiri {onigiriQtyWithUnit}"
_howToPlay:
section1: "Scegli la posizione e rilascia l'oggetto nel contenitore."
section2: "Se due oggetti dello stesso tipo si toccano, si trasformano in un oggetto diverso, aumentando il punteggio."
@@ -1320,7 +1235,7 @@ _announcement:
readConfirmText: "Hai già letto \"{title}˝?"
shouldNotBeUsedToPresentPermanentInfo: "Ti consigliamo di utilizzare gli annunci per pubblicare informazioni tempestive e limitate nel tempo, anziché informazioni importanti a lungo andare nel tempo, poiché potrebbero risultare difficili da ritrovare e peggiorare la fruibilità del servizio, specialmente alle nuove persone iscritte."
dialogAnnouncementUxWarn: "Ti consigliamo di usarli con cautela, poiché è molto probabile che avere più di un annuncio in stile \"finestra di dialogo\" peggiori sensibilmente la fruibilità del servizio, specialmente alle nuove persone iscritte."
silence: "Silenziare gli annunci"
silence: "Silenzia gli annunci"
silenceDescription: "Se attivi questa opzione, non riceverai notifiche sugli annunci, evitando di contrassegnarle come già lette."
_initialAccountSetting:
accountCreated: "Il tuo profilo è stato creato!"
@@ -1339,7 +1254,7 @@ _initialAccountSetting:
skipAreYouSure: "Vuoi davvero saltare la configurazione iniziale?"
laterAreYouSure: "Vuoi davvero rimandare la configurazione iniziale?"
_initialTutorial:
launchTutorial: "Inizia il tutorial"
launchTutorial: "Guarda il tutorial"
title: "Tutorial"
wellDone: "Ottimo lavoro!"
skipAreYouSure: "Vuoi davvero interrompere il tutorial?"
@@ -1349,26 +1264,26 @@ _initialTutorial:
_note:
title: "Cosa sono le Note?"
description: "Gli status su Misskey sono chiamati \"Note\". Le Note sono elencate in ordine cronologico nelle timeline e vengono aggiornate in tempo reale."
reply: "Puoi rispondere alle Note, alle altre risposte e dialogare in conversazioni."
renote: "Puoi ri-condividere le Note, ritorneranno sulla Timeline. Aggiungendo del testo, scriverai una Citazione."
reaction: "Puoi aggiungere una reazione. Nella pagina successiva ti spiego come."
menu: "Per altre attività, ad esempio, vedere i dettagli delle Note o copiare i collegamenti."
reply: "Puoi rispondere alle Note. Puoi anche rispondere alle risposte e continuare i dialoghi come un conversazioni."
renote: "Puoi ri-condividere le Note, facendole rifluire sulla Timeline. Puoi anche aggiungere testo e citare altri profili."
reaction: "Puoi aggiungere una reazione. Nella pagina successiva spiegheremo i dettagli."
menu: "Puoi svolgere varie attività, come visualizzare i dettagli delle Note o copiare i collegamenti."
_reaction:
title: "Cosa sono le Reazioni?"
description: "Reazioni alle Note. Le sensazioni che non si possono descrivere con \"Mi piace\" si esprimono facilmente con le reazioni."
description: "Puoi reagire alle Note. Le sensazioni che non si riescono a trasmettere con i \"Mi piace\" si possono esprimere facilmente inviando una reazione."
letsTryReacting: "Puoi aggiungere una Reazione cliccando il bottone \"+\" (più) della relativa Nota. Prova ad aggiungerne una a questa Nota di esempio!"
reactToContinue: "Aggiungere la Reazione ti consentirà di procedere col tutorial."
reactNotification: "Quando qualcuno reagisce alle tue Note, ricevi una notifica in tempo reale."
reactDone: "Annulla la tua Reazione premendo il bottone \"ー\" (meno)"
reactDone: "Puoi annullare la tua Reazione premendo il bottone \"ー\" (meno)"
_timeline:
title: "Come funziona la Timeline"
description1: "Misskey fornisce alcune Timeline (sequenze cronologiche di Note). Una di queste potrebbe essere stata disattivata dagli amministratori."
home: "le Note provenienti dai profili che segui (follow)."
local: "tutte le Note pubblicate dai profili di questa istanza."
social: "sia le Note della Timeline Home che quelle della Timeline Locale, insieme!"
global: "le Note da pubblicate da tutte le altre istanze federate con la nostra."
home: "Puoi vedere le Note provenienti dai profili che segui (follow)."
local: "Puoi vedere tutte le Note pubblicate dai profili di questa istanza."
social: "Puoi vedere sia le Note della Timeline Home che quelle della Timeline Locale, insieme!"
global: "Puoi vedere le Note da pubblicate da tutte le altre istanze federate con la nostra."
description2: "Nella parte superiore dello schermo, puoi scegliere una Timeline o l'altra in qualsiasi momento."
description3: "Ci sono anche sequenze temporali di elenchi, sequenze temporali di canali, ecc. Per ulteriori dettagli, consultare la {link}.\nPuoi vedere anche Timeline delle liste di profili (se ne hai create), canali, ecc... Per i dettagli, c'è la {link}."
description3: "Ci sono anche sequenze temporali di elenchi, sequenze temporali di canali, ecc. Per ulteriori dettagli, consultare il {link}.\nPuoi vedere anche Timeline delle liste di profili (se ne hai create), canali, ecc... Per i dettagli, visita {link}."
_postNote:
title: "La Nota e le sue impostazioni"
description1: "Quando scrivi una Nota su Misskey, hai a disposizione varie opzioni. Il modulo di invio è simile a questo."
@@ -1390,13 +1305,13 @@ _initialTutorial:
useCases: "Utilizzalo per chiarire il contenuto della Nota, prima che sia letta. Come richiesto dal regolamento del server o per autoregolamentare spoiler e testi troppo espliciti."
_howToMakeAttachmentsSensitive:
title: "Come indicare che gli allegati sono espliciti?"
description: "Si fa quando è richiesto dal regolamento del server o quando non devono essere visibili immediatamente."
description: "Contrassegnare gli allegati come espliciti, va fatto quando è richiesto dal regolamento del server o quando gli allegati non devono essere immediatamente visibili."
tryThisFile: "Prova a rendere esplicite le immagini allegate a questo modulo!"
_exampleNote:
note: "AAA! Ho rotto il coperchio del natto... (fagioli di soia fermentati)"
method: "Tocca il file, si aprirà il menu, scegli la voce \"Segna come esplicito\""
sensitiveSucceeded: "Quando alleghi file, assicurati di indicare se è materiale esplicito in modo appropriato, decidi in base al regolamento dell'istanza."
doItToContinue: "Imposta l'immagine come esplicita per procedere col tutorial."
note: "Ho fatto un errore aprendo il coperchio del natto... (fagioli di soia fermentati, particolarmente appiccicosi)"
method: "Per indicare che un allegato è esplicito, tocca il file per aprirne il menu e scegliere la voce \"Segna come esplicito\"."
sensitiveSucceeded: "Quando alleghi file, assicurati di indicare se è materiale esplicito, in modo appropriato, in base al regolamento del tuo server."
doItToContinue: "Impostando l'immagine come esplicita, potrai procedere col tutorial."
_done:
title: "Il tutorial è finito! 🎉"
description: "Queste sono solamente alcune delle funzionalità principali di Misskey. Per ulteriori informazioni, {link}."
@@ -1419,13 +1334,10 @@ _serverSettings:
fanoutTimelineDescription: "Attivando questa funzionalità migliori notevolmente la capacità delle Timeline di collezionare Note, riducendo il carico sul database. Tuttavia, aumenterà l'impiego di memoria RAM per Redis. Disattiva se il tuo server ha poca RAM o la funzionalità è irregolare."
fanoutTimelineDbFallback: "Elaborazione dati alternativa"
fanoutTimelineDbFallbackDescription: "Attivando l'elaborazione alternativa, verrà interrogato ulteriormente il database se la timeline non è nella cache. \nDisattivando, si può ridurre ulteriormente il carico del server, evitando l'elaborazione alternativa, ma limitando l'intervallo recuperabile delle timeline."
reactionsBufferingDescription: "Attivando questa opzione, puoi migliorare significativamente le prestazioni durante la creazione delle reazioni e ridurre il carico sul database. Tuttavia, aumenterà l'impiego di memoria Redis."
inquiryUrl: "URL di contatto"
inquiryUrlDescription: "Specificare l'URL al modulo di contatto, oppure le informazioni con i dati di contatto dell'amministrazione."
_accountMigration:
moveFrom: "Migra un altro profilo dentro a questo"
moveFromSub: "Crea un alias verso un altro profilo remoto"
moveFromLabel: "Profilo da cui migrare #{n}"
moveFromLabel: "Profilo da cui migrare:"
moveFromDescription: "Se desideri spostare i profili follower da un altro profilo a questo, devi prima creare un alias qui. Assicurati averlo creato PRIMA di eseguire l'attività! Inserisci l'indirizzo del profilo mittente in questo modo: @persona@istanza.it"
moveTo: "Migrare questo profilo verso un un altro"
moveToLabel: "Profilo verso cui migrare"
@@ -1729,7 +1641,6 @@ _role:
gtlAvailable: "Disponibilità della Timeline Federata"
ltlAvailable: "Disponibilità della Timeline Locale"
canPublicNote: "Scrivere Note con Visibilità Pubblica"
mentionMax: "Numero massimo di menzioni in una nota"
canInvite: "Generare codici di invito all'istanza"
inviteLimit: "Limite di codici invito"
inviteLimitCycle: "Intervallo di emissione del codice di invito"
@@ -1738,7 +1649,6 @@ _role:
canManageAvatarDecorations: "Gestisce le decorazioni di immagini del profilo"
driveCapacity: "Capienza del Drive"
alwaysMarkNsfw: "Impostare sempre come esplicito (NSFW)"
canUpdateBioMedia: "Può aggiornare foto profilo e di testata"
pinMax: "Quantità massima di Note in primo piano"
antennaMax: "Quantità massima di Antenne"
wordMuteMax: "Lunghezza massima del filtro parole"
@@ -1753,20 +1663,9 @@ _role:
canSearchNotes: "Ricercare nelle Note"
canUseTranslator: "Tradurre le Note"
avatarDecorationLimit: "Numero massimo di decorazioni foto profilo installabili"
canImportAntennas: "Può importare Antenne"
canImportBlocking: "Può importare Blocchi"
canImportFollowing: "Può importare Following"
canImportMuting: "Può importare Silenziati"
canImportUserLists: "Può importare liste di Profili"
_condition:
roleAssignedTo: "Assegnato a ruoli manualmente"
isLocal: "Profilo locale"
isRemote: "Profilo remoto"
isCat: "È un gattino"
isBot: "È un bot"
isSuspended: "È sospeso"
isLocked: "È in stato privato"
isExplorable: "Autorizza la pubblicazione nei cataloghi"
createdLessThan: "Profilo creato da meno di N"
createdMoreThan: "Profilo creato da più di N"
followersLessThanOrEq: "Profilo con N follower o meno"
@@ -1836,7 +1735,6 @@ _plugin:
installWarn: "Si prega di installare soltanto estensioni che provengono da fonti affidabili."
manage: "Gestisci estensioni"
viewSource: "Visualizza sorgente"
viewLog: "Mostra log"
_preferencesBackups:
list: "Elenco di impostazioni salvate in precedenza"
saveNew: "Nuovo salvataggio"
@@ -1911,7 +1809,7 @@ _instanceMute:
instanceMuteDescription: "Disattiva tutte le note, le note di rinvio (condivisione) dell'istanza configurata, comprese le risposte agli utenti dell'istanza."
instanceMuteDescription2: "Impostazione separata da una nuova riga"
title: "Nasconde le note dell'istanza configurata."
heading: "Istanze da silenziare"
heading: "Istanze da silenziare."
_theme:
explore: "Esplora temi"
install: "Installa un tema"
@@ -1987,6 +1885,8 @@ _sfx:
note: "Nota"
noteMy: "Mia nota"
notification: "Notifiche"
antenna: "Ricezione dell'antenna"
channel: "Notifiche di canale"
reaction: "Quando seleziono una reazione"
_soundSettings:
driveFile: "Suoni del Drive"
@@ -1995,7 +1895,6 @@ _soundSettings:
driveFileTypeWarnDescription: "Per favore, scegli un file di tipo audio"
driveFileDurationWarn: "La durata dell'audio è troppo lunga"
driveFileDurationWarnDescription: "Scegliere un audio lungo potrebbe interferire con l'uso di Misskey. Vuoi continuare lo stesso?"
driveFileError: "Impossibile caricare l'audio. Si prega di modificare le impostazioni"
_ago:
future: "Futuro"
justNow: "Adesso"
@@ -2025,6 +1924,7 @@ _2fa:
registerTOTP: "Registra una App di autenticazione a due fattori (2FA/MFA)"
step1: "Innanzitutto, installa sul dispositivo un'App di autenticazione come {a} o {b}."
step2: "Quindi, tramite la App installata, scansiona questo codice QR."
step2Click: "Cliccando sul codice QR, puoi registrarlo con l'app di autenticazione o il portachiavi installato sul tuo dispositivo."
step2Uri: "Inserisci il seguente URL se desideri utilizzare una App per PC"
step3Title: "Inserisci il codice di verifica"
step3: "Inserite il token visualizzato nell'app e il gioco è fatto."
@@ -2048,7 +1948,6 @@ _2fa:
backupCodesDescription: "Puoi usare questi codici usa-e-getta per ottenere l'accesso al tuo profilo in caso sia impossibile usare l'App col codice OTP. Salvali in un posto sicuro."
backupCodeUsedWarning: "È stato usato un codice usa-e-getta. Per favore, riconfigura l'autenticazione a due fattori il prima possibile, nel caso la configurazione precedente abbia smesso di funzionare."
backupCodesExhaustedWarning: "Hai esaurito i codici usa-e-getta. Se l'App che genera il codice OTP non è più disponibile, non potrai più accedere al tuo profilo. Ripeti la configurazione per l'autenticazione a due fattori."
moreDetailedGuideHere: "Informazioni dettagliate sull'autenticazione multi fattore (2FA/MFA)"
_permissions:
"read:account": "Visualizza le informazioni sul profilo"
"write:account": "Modifica le informazioni sul profilo"
@@ -2065,8 +1964,8 @@ _permissions:
"read:mutes": "Vedi i profili silenziati"
"write:mutes": "Gestisci i profili silenziati"
"write:notes": "Creare / Eliminare note"
"read:notifications": "Visualizzare notifiche"
"write:notifications": "Gestire notifiche"
"read:notifications": "Visualizza notifiche"
"write:notifications": "Gerisci notifiche"
"read:reactions": "Vedi reazioni"
"write:reactions": "Gerisci reazioni"
"write:votes": "Votare"
@@ -2099,6 +1998,7 @@ _permissions:
"read:admin:server-info": "Vedere le informazioni sul server"
"read:admin:show-moderation-log": "Vedere lo storico di moderazione"
"read:admin:show-user": "Vedere le informazioni private degli account utente"
"read:admin:show-users": "Vedere le informazioni private degli account utente"
"write:admin:suspend-user": "Sospendere i profili"
"write:admin:unset-user-avatar": "Rimuovere la foto profilo dai profili"
"write:admin:unset-user-banner": "Rimuovere l'immagine testata dai profili"
@@ -2252,9 +2152,6 @@ _profile:
changeBanner: "Cambia intestazione"
verifiedLinkDescription: "Puoi verificare il tuo profilo mostrando una icona. Devi inserire la URL alla pagina che contiene un link al tuo profilo."
avatarDecorationMax: "Puoi aggiungere fino a {max} decorazioni."
followedMessage: "Messaggio, quando qualcuno ti segue"
followedMessageDescription: "Puoi impostare un breve messaggio da mostrare agli altri profili quando ti seguono."
followedMessageDescriptionForLockedAccount: "Quando approvi una richiesta di follow, verrà visualizzato questo testo."
_exportOrImport:
allNotes: "Tutte le note"
favoritedNotes: "Note preferite"
@@ -2312,7 +2209,6 @@ _play:
title: "Titolo"
script: "Script"
summary: "Descrizione"
visibilityDescription: "Impostarlo su privato significa che non verrà visualizzato sul tuo profilo, ma chiunque ha l'URL potrà comunque accedervi."
_pages:
newPage: "Crea pagina"
editPage: "Modifica pagina"
@@ -2347,7 +2243,6 @@ _pages:
eyeCatchingImageSet: "Imposta un'immagine attraente"
eyeCatchingImageRemove: "Elimina immagine attraente"
chooseBlock: "Aggiungi blocco"
enterSectionTitle: "Inserisci il titolo della sezione"
selectType: "Seleziona tipo"
contentBlocks: "Contenuto"
inputBlocks: "Blocchi di input"
@@ -2358,8 +2253,6 @@ _pages:
section: "Sezione"
image: "Immagini"
button: "Pulsante"
dynamic: "Riquadri dinamici"
dynamicDescription: "Questo riquadro è obsoleto. Utilizza {play} da ora in poi."
note: "Nota integrata"
_note:
id: "ID nota"
@@ -2384,17 +2277,13 @@ _notification:
roleAssigned: "Ruolo assegnato"
emptyPushNotificationMessage: "Le notifiche push sono state aggiornate."
achievementEarned: "Obiettivo raggiunto"
testNotification: "Provare la notifica"
checkNotificationBehavior: "Provare il comportamento della notifica"
testNotification: "Prova la notifica"
checkNotificationBehavior: "Prova il comportamento della notifica"
sendTestNotification: "Spedisci una notifica di prova"
notificationWillBeDisplayedLikeThis: "La notifica apparirà così"
reactedBySomeUsers: "{n} reazioni"
likedBySomeUsers: "{n} apprezzamenti"
renotedBySomeUsers: "{n} Rinota"
followedBySomeUsers: "{n} follower"
flushNotification: "Azzera le notifiche"
exportOfXCompleted: "Abbiamo completato l'esportazione di {x}"
login: "Autenticazione avvenuta"
followedBySomeUsers: "{n} nuovi follower"
_types:
all: "Tutto"
note: "Nuove Note"
@@ -2409,9 +2298,6 @@ _notification:
followRequestAccepted: "Richiesta di follow accettata"
roleAssigned: "Ruolo concesso"
achievementEarned: "Risultato raggiunto"
exportCompleted: "Esportazione completata"
login: "Accedi"
test: "Prova la notifica"
app: "Notifiche da applicazioni"
_actions:
followBack: "Segui"
@@ -2421,7 +2307,6 @@ _deck:
alwaysShowMainColumn: "Mostra sempre la colonna principale"
columnAlign: "Allineare colonne"
addColumn: "Aggiungi colonna"
newNoteNotificationSettings: "Preferenze per le notifiche di nuove Note"
configureColumn: "Impostazioni colonna"
swapLeft: "Sposta a sinistra"
swapRight: "Sposta a destra"
@@ -2450,8 +2335,8 @@ _deck:
direct: "Note Dirette"
roleTimeline: "Timeline Ruolo"
_dialog:
charactersExceeded: "Hai superato il limite di {max} caratteri! ({current})"
charactersBelow: "Sei al di sotto del minimo di {min} caratteri! ({current})"
charactersExceeded: "Hai superato il limite di {max} caratteri! ({corrente})"
charactersBelow: "Sei al di sotto del minimo di {min} caratteri! ({corrente})"
_disabledTimeline:
title: "Timeline disabilitata"
description: "Il ruolo in cui sei non ti permette di leggere questa timeline"
@@ -2460,10 +2345,9 @@ _drivecleaner:
orderByCreatedAtAsc: "Dal più vecchio al più recente"
_webhookSettings:
createWebhook: "Creazione Webhook"
modifyWebhook: "Modifica Webhook"
name: "Nome"
secret: "Segreto"
trigger: "Trigger"
events: "Quando eseguire il Webhook"
active: "Attivo"
_events:
follow: "Quando segui un profilo"
@@ -2473,27 +2357,6 @@ _webhookSettings:
renote: "Quando la Nota è Rinotata"
reaction: "Quando ricevo una reazione"
mention: "Quando mi menzionano"
_systemEvents:
abuseReport: "Quando arriva una segnalazione"
abuseReportResolved: "Quando una segnalazione è risolta"
userCreated: "Quando viene creato un profilo"
deleteConfirm: "Vuoi davvero eliminare il Webhook?"
testRemarks: "Clicca il bottone a destra dell'interruttore, per provare l'invio di un webhook con dati fittizi."
_abuseReport:
_notificationRecipient:
createRecipient: "Aggiungi destinatario della segnalazione"
modifyRecipient: "Modifica destinatario della segnalazione"
recipientType: "Tipo di notifica"
_recipientType:
mail: "Email"
webhook: "Webhook"
_captions:
mail: "Quando ricevi un abuso, notifica l'amministrazione via email"
webhook: "Spedire una notifica al SystemWebhook specificato (sia quando si riceve una segnalazione, che quando viene risolta)"
keywords: "Parole chiave"
notifiedUser: "Profili da notificare"
notifiedWebhook: "Webhook da usare"
deleteConfirm: "Vuoi davvero rimuovere il destinatario della notifica?"
_moderationLogTypes:
createRole: "Ruolo creato"
deleteRole: "Ruolo eliminato"
@@ -2518,7 +2381,6 @@ _moderationLogTypes:
resetPassword: "Password azzerata"
suspendRemoteInstance: "Istanza remota sospesa"
unsuspendRemoteInstance: "Istanza remota riattivata"
updateRemoteInstanceNote: "Aggiornamento del promemoria di moderazione per il server remoto"
markSensitiveDriveFile: "File nel Drive segnato come esplicito"
unmarkSensitiveDriveFile: "File nel Drive segnato come non esplicito"
resolveAbuseReport: "Segnalazione risolta"
@@ -2531,16 +2393,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "Eliminazione decorazione della foto profilo"
unsetUserAvatar: "Rimossa foto profilo"
unsetUserBanner: "Rimossa intestazione profilo"
createSystemWebhook: "Crea un SystemWebhook"
updateSystemWebhook: "Modifica SystemWebhook"
deleteSystemWebhook: "Elimina SystemWebhook"
createAbuseReportNotificationRecipient: "Crea destinatario per le notifiche di segnalazioni"
updateAbuseReportNotificationRecipient: "Aggiorna destinatario notifiche di segnalazioni"
deleteAbuseReportNotificationRecipient: "Elimina destinatario notifiche di segnalazioni"
deleteAccount: "Quando viene eliminato un profilo"
deletePage: "Pagina eliminata"
deleteFlash: "Play eliminato"
deleteGalleryPost: "Eliminazione pubblicazione nella Galleria"
_fileViewer:
title: "Dettagli del file"
type: "Tipo di file"
@@ -2649,45 +2501,7 @@ _reversi:
opponentHasSettingsChanged: "L'avversario ha cambiato configurazione"
allowIrregularRules: "Regole inconsuete (completamente libere)"
disallowIrregularRules: "Impedire le regole inconsuete"
showBoardLabels: "Mostra le coordinate del gioco"
useAvatarAsStone: "Immagini profilo come pedine"
_offlineScreen:
title: "Scollegato. Impossibile connettersi al server"
header: "Impossibile connettersi al server"
_urlPreviewSetting:
title: "Impostazioni per l'anteprima delle URL"
enable: "Attiva l'anteprima delle URL"
timeout: "Timeout dell'anteprima in millisecondi"
timeoutDescription: "Impegna al massimo il tempo indicato, altrimenti ignora l'anteprima"
maximumContentLength: "Grandezza del contenuto (Content-Length in byte)"
maximumContentLengthDescription: "Se la grandezza supera il valore, l'anteprima verrà ignorata."
requireContentLength: "Genenerare l'anteprima solo quando è definito Content-Length"
requireContentLengthDescription: "In assenza di questo parametro dal server remoto, l'anteprima verrà ignorata."
userAgent: "User-Agent"
userAgentDescription: "Definire con quale User-Agent si intende identificarsi durante l'acquisizione di un'anteprima. Se è vuoto, useremo il valore predefinito."
summaryProxy: "Endpoint proxy che genera l'anteprima"
summaryProxyDescription: "Genera anteprime utilizzando un proxy Summaly anziché Misskey."
summaryProxyDescription2: "I parametri sono collegano al proxy come stringa query. Se il proxy non li supporta, verranno ignorati."
_mediaControls:
pip: "Sovraimpressione"
playbackRate: "Velocità di riproduzione"
loop: "Ripetizione infinita"
_contextMenu:
title: "Menu contestuale"
app: "Applicazione"
appWithShift: "Applicazione Shift+Tasto"
native: "Interfaccia utente del browser"
_embedCodeGen:
title: "Personalizza il codice di incorporamento"
header: "Mostra la testata"
autoload: "Carica automaticamente di più (sconsigliato)"
maxHeight: "Altezza massima"
maxHeightDescription: "Specifica un valore per evitare che continui a crescere verticalmente. Il valore 0 disabilita il limite d'altezza."
maxHeightWarn: "L'altezza massima è disabilitata (0). Se l'effetto è indesiderato, prova a impostare l'altezza massima a un valore specifico."
previewIsNotActual: "Poiché supera l'intervallo che può essere visualizzato in anteprima, la visualizzazione vera e propria sarà diversa quando effettivamente incorporata."
rounded: "Bordo arrotondato"
border: "Aggiungi un bordo al contenitore"
applyToPreview: "Applica all'anteprima"
generateCode: "Crea il codice di incorporamento"
codeGenerated: "Codice generato"
codeGeneratedDescription: "Incolla il codice appena generato sul tuo sito web."

View File

@@ -8,9 +8,6 @@ search: "検索"
notifications: "通知"
username: "ユーザー名"
password: "パスワード"
initialPasswordForSetup: "初期設定開始用パスワード"
initialPasswordIsIncorrect: "初期設定開始用のパスワードが違います。"
initialPasswordForSetupDescription: "Misskeyを自分でインストールした場合は、設定ファイルに入力したパスワードを使用してください。\nMisskeyのホスティングサービスなどを使用している場合は、提供されたパスワードを使用してください。\nパスワードを設定していない場合は、空欄にしたまま続行してください。"
forgotPassword: "パスワードを忘れた"
fetchingAsApObject: "連合に照会中"
ok: "OK"
@@ -63,7 +60,6 @@ copyFileId: "ファイルIDをコピー"
copyFolderId: "フォルダーIDをコピー"
copyProfileUrl: "プロフィールURLをコピー"
searchUser: "ユーザーを検索"
searchThisUsersNotes: "ユーザーのノートを検索"
reply: "返信"
loadMore: "もっと見る"
showMore: "もっと見る"
@@ -112,14 +108,11 @@ enterEmoji: "絵文字を入力"
renote: "リノート"
unrenote: "リノート解除"
renoted: "リノートしました。"
renotedToX: "{name} にリノートしました。"
cantRenote: "この投稿はリノートできません。"
cantReRenote: "リノートをリノートすることはできません。"
quote: "引用"
inChannelRenote: "チャンネル内リノート"
inChannelQuote: "チャンネル内引用"
renoteToChannel: "チャンネルにリノート"
renoteToOtherChannel: "他のチャンネルにリノート"
pinnedNote: "ピン留めされたノート"
pinned: "ピン留め"
you: "あなた"
@@ -158,7 +151,6 @@ editList: "リストを編集"
selectChannel: "チャンネルを選択"
selectAntenna: "アンテナを選択"
editAntenna: "アンテナを編集"
createAntenna: "アンテナを作成"
selectWidget: "ウィジェットを選択"
editWidgets: "ウィジェットを編集"
editWidgetsExit: "編集を終了"
@@ -185,10 +177,6 @@ addAccount: "アカウントを追加"
reloadAccountsList: "アカウントリストの情報を更新"
loginFailed: "ログインに失敗しました"
showOnRemote: "リモートで表示"
continueOnRemote: "リモートで続行"
chooseServerOnMisskeyHub: "Misskey Hubからサーバーを選択"
specifyServerHost: "サーバーのドメインを直接指定"
inputHostName: "ドメインを入力してください"
general: "全般"
wallpaper: "壁紙"
setWallpaper: "壁紙を設定"
@@ -199,7 +187,6 @@ followConfirm: "{name}をフォローしますか?"
proxyAccount: "プロキシアカウント"
proxyAccountDescription: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
host: "ホスト"
selectSelf: "自分を選択"
selectUser: "ユーザーを選択"
recipient: "宛先"
annotation: "注釈"
@@ -215,7 +202,6 @@ perDay: "1日ごと"
stopActivityDelivery: "アクティビティの配送を停止"
blockThisInstance: "このサーバーをブロック"
silenceThisInstance: "サーバーをサイレンス"
mediaSilenceThisInstance: "サーバーをメディアサイレンス"
operations: "操作"
software: "ソフトウェア"
version: "バージョン"
@@ -236,11 +222,7 @@ clearCachedFilesConfirm: "キャッシュされたリモートファイルをす
blockedInstances: "ブロックしたサーバー"
blockedInstancesDescription: "ブロックしたいサーバーのホストを改行で区切って設定します。ブロックされたサーバーは、このインスタンスとやり取りできなくなります。"
silencedInstances: "サイレンスしたサーバー"
silencedInstancesDescription: "サイレンスしたいサーバーのホストを改行で区切って設定します。サイレンスされたサーバーに所属するアカウントはすべて「サイレンス」として扱われ、フォローがすべてリクエストになります。ブロックしたインスタンスには影響しません。"
mediaSilencedInstances: "メディアサイレンスしたサーバー"
mediaSilencedInstancesDescription: "メディアサイレンスしたいサーバーのホストを改行で区切って設定します。メディアサイレンスされたサーバーに所属するアカウントによるファイルはすべてセンシティブとして扱われ、カスタム絵文字が使用できないようになります。ブロックしたインスタンスには影響しません。"
federationAllowedHosts: "連合を許可するサーバー"
federationAllowedHostsDescription: "連合を許可するサーバーのホストを改行で区切って設定します。"
silencedInstancesDescription: "サイレンスしたいサーバーのホストを改行で区切って設定します。サイレンスされたサーバーに所属するアカウントはすべて「サイレンス」として扱われ、フォローがすべてリクエストになり、フォロワーでないローカルアカウントにはメンションできなくなります。ブロックしたインスタンスには影響しません。"
muteAndBlock: "ミュートとブロック"
mutedUsers: "ミュートしたユーザー"
blockedUsers: "ブロックしたユーザー"
@@ -331,7 +313,6 @@ selectFile: "ファイルを選択"
selectFiles: "ファイルを選択"
selectFolder: "フォルダーを選択"
selectFolders: "フォルダーを選択"
fileNotSelected: "ファイルが選択されていません"
renameFile: "ファイル名を変更"
folderName: "フォルダー名"
createFolder: "フォルダーを作成"
@@ -339,7 +320,6 @@ renameFolder: "フォルダー名を変更"
deleteFolder: "フォルダーを削除"
folder: "フォルダー"
addFile: "ファイルを追加"
showFile: "ファイルを表示"
emptyDrive: "ドライブは空です"
emptyFolder: "フォルダーは空です"
unableToDelete: "削除できません"
@@ -420,7 +400,6 @@ name: "名前"
antennaSource: "受信ソース"
antennaKeywords: "受信キーワード"
antennaExcludeKeywords: "除外キーワード"
antennaExcludeBots: "Botアカウントを除外"
antennaKeywordsDescription: "スペースで区切るとAND指定になり、改行で区切るとOR指定になります"
notifyAntenna: "新しいノートを通知する"
withFileAntenna: "ファイルが添付されたノートのみ"
@@ -454,7 +433,6 @@ totpDescription: "認証アプリを使ってワンタイムパスワードを
moderator: "モデレーター"
moderation: "モデレーション"
moderationNote: "モデレーションノート"
moderationNoteDescription: "モデレーター間でだけ共有されるメモを記入することができます。"
addModerationNote: "モデレーションノートを追加する"
moderationLogs: "モデログ"
nUsersMentioned: "{n}人が投稿"
@@ -489,12 +467,10 @@ retype: "再入力"
noteOf: "{user}のノート"
quoteAttached: "引用付き"
quoteQuestion: "引用として添付しますか?"
attachAsFileQuestion: "クリップボードのテキストが長いです。テキストファイルとして添付しますか?"
noMessagesYet: "まだチャットはありません"
newMessageExists: "新しいメッセージがあります"
onlyOneFileCanBeAttached: "メッセージに添付できるファイルはひとつです"
signinRequired: "続行する前に、登録またはログインが必要です"
signinOrContinueOnRemote: "続行するには、お使いのサーバーに移動するか、このサーバーに登録・ログインする必要があります"
signinRequired: "続行する前に、サインアップまたはサインインが必要です"
invitations: "招待"
invitationCode: "招待コード"
checking: "確認しています"
@@ -516,12 +492,8 @@ uiLanguage: "UIの表示言語"
aboutX: "{x}について"
emojiStyle: "絵文字のスタイル"
native: "ネイティブ"
menuStyle: "メニューのスタイル"
style: "スタイル"
drawer: "ドロワー"
popup: "ポップアップ"
disableDrawer: "メニューをドロワーで表示しない"
showNoteActionsOnlyHover: "ノートのアクションをホバー時のみ表示する"
showReactionsCount: "ノートのリアクション数を表示する"
noHistory: "履歴はありません"
signinHistory: "ログイン履歴"
enableAdvancedMfm: "高度なMFMを有効にする"
@@ -602,8 +574,6 @@ ascendingOrder: "昇順"
descendingOrder: "降順"
scratchpad: "スクラッチパッド"
scratchpadDescription: "スクラッチパッドは、AiScriptの実験環境を提供します。Misskeyと対話するコードの記述、実行、結果の確認ができます。"
uiInspector: "UIインスペクター"
uiInspectorDescription: "メモリ上に存在しているUIコンポーネントのインスタンスの一覧を見ることができます。UIコンポーネントはUi:C:系関数により生成されます。"
output: "出力"
script: "スクリプト"
disablePagesScript: "Pagesのスクリプトを無効にする"
@@ -715,12 +685,15 @@ abuseReports: "通報"
reportAbuse: "通報"
reportAbuseRenote: "リノートを通報"
reportAbuseOf: "{name}を通報する"
fillAbuseReportDescription: "通報理由の詳細を記入してください。対象のノートやページなどがある場合はそのURLも記入してください。"
fillAbuseReportDescription: "通報理由の詳細を記入してください。対象のートがある場合はそのURLも記入してください。"
abuseReported: "内容が送信されました。ご報告ありがとうございました。"
reporter: "通報者"
reporteeOrigin: "通報先"
reporterOrigin: "通報元"
forwardReport: "リモートサーバーに通報を転送する"
forwardReportIsAnonymous: "リモートサーバーからはあなたの情報は見れず、匿名のシステムアカウントとして表示されます。"
send: "送信"
abuseMarkAsResolved: "対応済みにする"
openInNewTab: "新しいタブで開く"
openInSideView: "サイドビューで開く"
defaultNavigationBehaviour: "デフォルトのナビゲーション"
@@ -785,7 +758,7 @@ left: "左"
center: "中央"
wide: "広い"
narrow: "狭い"
reloadToApplySetting: "設定はページリロード後に反映されます。"
reloadToApplySetting: "設定はページリロード後に反映されます。今すぐリロードしますか?"
needReloadToApply: "反映には再起動が必要です。"
showTitlebar: "タイトルバーを表示する"
clearCache: "キャッシュをクリア"
@@ -857,7 +830,6 @@ administration: "管理"
accounts: "アカウント"
switch: "切り替え"
noMaintainerInformationWarning: "管理者情報が設定されていません。"
noInquiryUrlWarning: "問い合わせ先URLが設定されていません。"
noBotProtectionWarning: "Botプロテクションが設定されていません。"
configure: "設定する"
postToGallery: "ギャラリーへ投稿"
@@ -922,7 +894,6 @@ followersVisibility: "フォロワーの公開範囲"
continueThread: "さらにスレッドを見る"
deleteAccountConfirm: "アカウントが削除されます。よろしいですか?"
incorrectPassword: "パスワードが間違っています。"
incorrectTotp: "ワンタイムパスワードが間違っているか、期限切れになっています。"
voteConfirm: "「{choice}」に投票しますか?"
hide: "隠す"
useDrawerReactionPickerForMobile: "モバイルデバイスのときドロワーで表示"
@@ -1047,8 +1018,7 @@ thisPostMayBeAnnoying: "この投稿は迷惑になる可能性があります
thisPostMayBeAnnoyingHome: "ホームに投稿"
thisPostMayBeAnnoyingCancel: "やめる"
thisPostMayBeAnnoyingIgnore: "このまま投稿"
collapseRenotes: "リノートのスマート省略"
collapseRenotesDescription: "リアクションやリノートをしたことがあるノートをたたんで表示します。"
collapseRenotes: "見たことのあるリノートを省略して表示"
internalServerError: "サーバー内部エラー"
internalServerErrorDescription: "サーバー内部で予期しないエラーが発生しました。"
copyErrorInfo: "エラー情報をコピー"
@@ -1122,8 +1092,6 @@ preservedUsernames: "予約ユーザー名"
preservedUsernamesDescription: "予約するユーザー名を改行で列挙します。ここで指定されたユーザー名はアカウント作成時に使えなくなりますが、管理者によるアカウント作成時はこの制限を受けません。また、既に存在するアカウントも影響を受けません。"
createNoteFromTheFile: "このファイルからノートを作成"
archive: "アーカイブ"
archived: "アーカイブ済み"
unarchive: "アーカイブ解除"
channelArchiveConfirmTitle: "{name}をアーカイブしますか?"
channelArchiveConfirmDescription: "アーカイブすると、チャンネル一覧や検索結果に表示されなくなり、新たな書き込みもできなくなります。"
thisChannelArchived: "このチャンネルはアーカイブされています。"
@@ -1134,9 +1102,6 @@ preventAiLearning: "生成AIによる学習を拒否"
preventAiLearningDescription: "外部の文章生成AIや画像生成AIに対して、投稿したートや画像などのコンテンツを学習の対象にしないように要求します。これはnoaiフラグをHTMLレスポンスに含めることによって実現されますが、この要求に従うかはそのAI次第であるため、学習を完全に防止するものではありません。"
options: "オプション"
specifyUser: "ユーザー指定"
lookupConfirm: "照会しますか?"
openTagPageConfirm: "ハッシュタグのページを開きますか?"
specifyHost: "ホスト指定"
failedToPreviewUrl: "プレビューできません"
update: "更新"
rolesThatCanBeUsedThisEmojiAsReaction: "リアクションとして使えるロール"
@@ -1258,53 +1223,6 @@ enableHorizontalSwipe: "スワイプしてタブを切り替える"
loading: "読み込み中"
surrender: "やめる"
gameRetry: "リトライ"
notUsePleaseLeaveBlank: "使用しない場合は空欄にしてください"
useTotp: "ワンタイムパスワードを使う"
useBackupCode: "バックアップコードを使う"
launchApp: "アプリを起動"
useNativeUIForVideoAudioPlayer: "動画・音声の再生にブラウザのUIを使用する"
keepOriginalFilename: "オリジナルのファイル名を保持"
keepOriginalFilenameDescription: "この設定をオフにすると、アップロード時にファイル名が自動でランダム文字列に置き換えられます。"
noDescription: "説明文はありません"
alwaysConfirmFollow: "フォローの際常に確認する"
inquiry: "お問い合わせ"
tryAgain: "もう一度お試しください。"
confirmWhenRevealingSensitiveMedia: "センシティブなメディアを表示するとき確認する"
sensitiveMediaRevealConfirm: "センシティブなメディアです。表示しますか?"
createdLists: "作成したリスト"
createdAntennas: "作成したアンテナ"
fromX: "{x}から"
genEmbedCode: "埋め込みコードを生成"
noteOfThisUser: "このユーザーのノート一覧"
clipNoteLimitExceeded: "これ以上このクリップにノートを追加できません。"
performance: "パフォーマンス"
modified: "変更あり"
discard: "破棄"
thereAreNChanges: "{n}件の変更があります"
signinWithPasskey: "パスキーでログイン"
unknownWebAuthnKey: "登録されていないパスキーです。"
passkeyVerificationFailed: "パスキーの検証に失敗しました。"
passkeyVerificationSucceededButPasswordlessLoginDisabled: "パスキーの検証に成功しましたが、パスワードレスログインが無効になっています。"
messageToFollower: "フォロワーへのメッセージ"
target: "対象"
_abuseUserReport:
forward: "転送"
forwardDescription: "匿名のシステムアカウントとして、リモートサーバーに通報を転送します。"
resolve: "解決"
accept: "是認"
reject: "否認"
resolveTutorial: "内容が正当である通報に対応した場合は「是認」を選択し、肯定的にケースが解決されたことをマークします。\n内容が正当でない通報の場合は「否認」を選択し、否定的にケースが解決されたことをマークします。"
_delivery:
status: "配信状態"
stop: "配信停止"
resume: "配信再開"
_type:
none: "配信中"
manuallySuspended: "手動停止中"
goneSuspended: "サーバー削除のため停止中"
autoSuspendedForNotResponding: "サーバー応答なしのため停止中"
_bubbleGame:
howToPlay: "遊び方"
@@ -1437,9 +1355,6 @@ _serverSettings:
fanoutTimelineDescription: "有効にすると、各種タイムラインを取得する際のパフォーマンスが大幅に向上し、データベースへの負荷を軽減することが可能です。ただし、Redisのメモリ使用量は増加します。サーバーのメモリ容量が少ない場合、または動作が不安定な場合は無効にすることができます。"
fanoutTimelineDbFallback: "データベースへのフォールバック"
fanoutTimelineDbFallbackDescription: "有効にすると、タイムラインがキャッシュされていない場合にDBへ追加で問い合わせを行うフォールバック処理を行います。無効にすると、フォールバック処理を行わないことでさらにサーバーの負荷を軽減することができますが、タイムラインが取得できる範囲に制限が生じます。"
reactionsBufferingDescription: "有効にすると、リアクション作成時のパフォーマンスが大幅に向上し、データベースへの負荷を軽減することが可能です。ただし、Redisのメモリ使用量は増加します。"
inquiryUrl: "問い合わせ先URL"
inquiryUrlDescription: "サーバー運営者へのお問い合わせフォームのURLや、運営者の連絡先等が記載されたWebページのURLを指定します。"
_accountMigration:
moveFrom: "別のアカウントからこのアカウントに移行"
@@ -1759,7 +1674,6 @@ _role:
canManageAvatarDecorations: "アバターデコレーションの管理"
driveCapacity: "ドライブ容量"
alwaysMarkNsfw: "ファイルにNSFWを常に付与"
canUpdateBioMedia: "アイコンとバナーの更新を許可"
pinMax: "ノートのピン留めの最大数"
antennaMax: "アンテナの作成可能数"
wordMuteMax: "ワードミュートの最大文字数"
@@ -1774,20 +1688,10 @@ _role:
canSearchNotes: "ノート検索の利用"
canUseTranslator: "翻訳機能の利用"
avatarDecorationLimit: "アイコンデコレーションの最大取付個数"
canImportAntennas: "アンテナのインポートを許可"
canImportBlocking: "ブロックのインポートを許可"
canImportFollowing: "フォローのインポートを許可"
canImportMuting: "ミュートのインポートを許可"
canImportUserLists: "リストのインポートを許可"
_condition:
roleAssignedTo: "マニュアルロールにアサイン済み"
isLocal: "ローカルユーザー"
isRemote: "リモートユーザー"
isCat: "猫ユーザー"
isBot: "botユーザー"
isSuspended: "サスペンド済みユーザー"
isLocked: "鍵アカウントユーザー"
isExplorable: "「アカウントを見つけやすくする」が有効なユーザー"
createdLessThan: "アカウント作成から~以内"
createdMoreThan: "アカウント作成から~経過"
followersLessThanOrEq: "フォロワー数が~以下"
@@ -1867,7 +1771,6 @@ _plugin:
installWarn: "信頼できないプラグインはインストールしないでください。"
manage: "プラグインの管理"
viewSource: "ソースを表示"
viewLog: "ログを表示"
_preferencesBackups:
list: "作成したバックアップ"
@@ -2031,6 +1934,8 @@ _sfx:
note: "ノート"
noteMy: "ノート(自分)"
notification: "通知"
antenna: "アンテナ受信"
channel: "チャンネル通知"
reaction: "リアクション選択時"
_soundSettings:
@@ -2040,7 +1945,6 @@ _soundSettings:
driveFileTypeWarnDescription: "音声ファイルを選択してください"
driveFileDurationWarn: "音声が長すぎます"
driveFileDurationWarnDescription: "長い音声を使用するとMisskeyの使用に支障をきたす可能性があります。それでも続行しますか"
driveFileError: "音声が読み込めませんでした。設定を変更してください"
_ago:
future: "未来"
@@ -2073,7 +1977,8 @@ _2fa:
alreadyRegistered: "既に設定は完了しています。"
registerTOTP: "認証アプリの設定を開始"
step1: "まず、{a}や{b}などの認証アプリをお使いのデバイスにインストールします。"
step2: "次に、表示されているQRコードをアプリでスキャンするか、ボタンをクリックして端末上でアプリを開きます。"
step2: "次に、表示されているQRコードをアプリでスキャンます。"
step2Click: "QRコードをクリックすると、お使いの端末にインストールされている認証アプリやキーリングに登録できます。"
step2Uri: "デスクトップアプリを使用する場合は次のURIを入力します"
step3Title: "確認コードを入力"
step3: "アプリに表示されている確認コード(トークン)を入力します。"
@@ -2097,7 +2002,6 @@ _2fa:
backupCodesDescription: "認証アプリが使用できなくなった場合、以下のバックアップコードを使ってアカウントにアクセスできます。これらのコードは必ず安全な場所に保管してください。各コードは一回だけ使用できます。"
backupCodeUsedWarning: "バックアップコードが使用されました。認証アプリが使えなくなっている場合、なるべく早く認証アプリを再設定してください。"
backupCodesExhaustedWarning: "バックアップコードが全て使用されました。認証アプリを利用できない場合、これ以上アカウントにアクセスできなくなります。認証アプリを再登録してください。"
moreDetailedGuideHere: "詳細なガイドはこちら"
_permissions:
"read:account": "アカウントの情報を見る"
@@ -2149,6 +2053,7 @@ _permissions:
"read:admin:server-info": "サーバーの情報を見る"
"read:admin:show-moderation-log": "モデレーションログを見る"
"read:admin:show-user": "ユーザーのプライベートな情報を見る"
"read:admin:show-users": "ユーザーのプライベートな情報を見る"
"write:admin:suspend-user": "ユーザーを凍結する"
"write:admin:unset-user-avatar": "ユーザーのアバターを削除する"
"write:admin:unset-user-banner": "ユーザーのバーナーを削除する"
@@ -2311,9 +2216,6 @@ _profile:
changeBanner: "バナー画像を変更"
verifiedLinkDescription: "内容にURLを設定すると、リンク先のWebサイトに自分のプロフィールへのリンクが含まれている場合に所有者確認済みアイコンを表示させることができます。"
avatarDecorationMax: "最大{max}つまでデコレーションを付けられます。"
followedMessage: "フォローされた時のメッセージ"
followedMessageDescription: "フォローされた時に相手に表示する短いメッセージを設定できます。"
followedMessageDescriptionForLockedAccount: "フォローを承認制にしている場合、フォローリクエストを許可した時に表示されます。"
_exportOrImport:
allNotes: "全てのノート"
@@ -2376,7 +2278,6 @@ _play:
title: "タイトル"
script: "スクリプト"
summary: "説明"
visibilityDescription: "非公開に設定するとプロフィールに表示されなくなりますが、URLを知っている人は引き続きアクセスできます。"
_pages:
newPage: "ページの作成"
@@ -2412,7 +2313,6 @@ _pages:
eyeCatchingImageSet: "アイキャッチ画像を設定"
eyeCatchingImageRemove: "アイキャッチ画像を削除"
chooseBlock: "ブロックを追加"
enterSectionTitle: "セクションタイトルを入力"
selectType: "種類を選択"
contentBlocks: "コンテンツ"
inputBlocks: "入力"
@@ -2423,8 +2323,6 @@ _pages:
section: "セクション"
image: "画像"
button: "ボタン"
dynamic: "動的ブロック"
dynamicDescription: "このブロックは廃止されています。今後は{play}を利用してください。"
note: "ノート埋め込み"
_note:
@@ -2457,12 +2355,9 @@ _notification:
sendTestNotification: "テスト通知を送信する"
notificationWillBeDisplayedLikeThis: "通知はこのように表示されます"
reactedBySomeUsers: "{n}人がリアクションしました"
likedBySomeUsers: "{n}人がいいねしました"
renotedBySomeUsers: "{n}人がリノートしました"
followedBySomeUsers: "{n}人にフォローされました"
flushNotification: "通知の履歴をリセットする"
exportOfXCompleted: "{x}のエクスポートが完了しました"
login: "ログインがありました"
_types:
all: "すべて"
@@ -2478,9 +2373,6 @@ _notification:
followRequestAccepted: "フォローが受理された"
roleAssigned: "ロールが付与された"
achievementEarned: "実績の獲得"
exportCompleted: "エクスポートが完了した"
login: "ログイン"
test: "通知のテスト"
app: "連携アプリからの通知"
_actions:
@@ -2492,7 +2384,6 @@ _deck:
alwaysShowMainColumn: "常にメインカラムを表示"
columnAlign: "カラムの寄せ"
addColumn: "カラムを追加"
newNoteNotificationSettings: "新着ノート通知の設定"
configureColumn: "カラムの設定"
swapLeft: "左に移動"
swapRight: "右に移動"
@@ -2536,10 +2427,9 @@ _drivecleaner:
_webhookSettings:
createWebhook: "Webhookを作成"
modifyWebhook: "Webhookを編集"
name: "名前"
secret: "シークレット"
trigger: "トリガー"
events: "Webhookを実行するタイミング"
active: "有効"
_events:
follow: "フォローしたとき"
@@ -2549,28 +2439,6 @@ _webhookSettings:
renote: "Renoteされたとき"
reaction: "リアクションがあったとき"
mention: "メンションされたとき"
_systemEvents:
abuseReport: "ユーザーから通報があったとき"
abuseReportResolved: "ユーザーからの通報を処理したとき"
userCreated: "ユーザーが作成されたとき"
deleteConfirm: "Webhookを削除しますか"
testRemarks: "スイッチの右にあるボタンをクリックするとダミーのデータを使用したテスト用Webhookを送信できます。"
_abuseReport:
_notificationRecipient:
createRecipient: "通報の通知先を追加"
modifyRecipient: "通報の通知先を編集"
recipientType: "通知先の種類"
_recipientType:
mail: "メール"
webhook: "Webhook"
_captions:
mail: "モデレーター権限を持つユーザーのメールアドレスに通知を送ります(通報を受けた時のみ)"
webhook: "指定したSystemWebhookに通知を送ります(通報を受けた時と通報を解決した時にそれぞれ発信)"
keywords: "キーワード"
notifiedUser: "通知先ユーザー"
notifiedWebhook: "使用するWebhook"
deleteConfirm: "通知先を削除しますか?"
_moderationLogTypes:
createRole: "ロールを作成"
@@ -2600,8 +2468,6 @@ _moderationLogTypes:
markSensitiveDriveFile: "ファイルをセンシティブ付与"
unmarkSensitiveDriveFile: "ファイルをセンシティブ解除"
resolveAbuseReport: "通報を解決"
forwardAbuseReport: "通報を転送"
updateAbuseReportNote: "通報のモデレーションノート更新"
createInvitation: "招待コードを作成"
createAd: "広告を作成"
deleteAd: "広告を削除"
@@ -2611,16 +2477,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "アイコンデコレーションを削除"
unsetUserAvatar: "ユーザーのアイコンを解除"
unsetUserBanner: "ユーザーのバナーを解除"
createSystemWebhook: "SystemWebhookを作成"
updateSystemWebhook: "SystemWebhookを更新"
deleteSystemWebhook: "SystemWebhookを削除"
createAbuseReportNotificationRecipient: "通報の通知先を作成"
updateAbuseReportNotificationRecipient: "通報の通知先を更新"
deleteAbuseReportNotificationRecipient: "通報の通知先を削除"
deleteAccount: "アカウントを削除"
deletePage: "ページを削除"
deleteFlash: "Playを削除"
deleteGalleryPost: "ギャラリーの投稿を削除"
_fileViewer:
title: "ファイルの詳細"
@@ -2675,16 +2531,16 @@ _externalResourceInstaller:
_dataSaver:
_media:
title: "メディアの読み込みを無効化"
title: "メディアの読み込み"
description: "画像・動画が自動で読み込まれるのを防止します。隠れている画像・動画はタップすると読み込まれます。"
_avatar:
title: "アイコン画像のアニメーションを無効化"
title: "アイコン画像"
description: "アイコン画像のアニメーションが停止します。アニメーション画像は通常の画像よりファイルサイズが大きいことがあるので、データ通信量をさらに削減できます。"
_urlPreview:
title: "URLプレビューのサムネイルを非表示"
title: "URLプレビューのサムネイル"
description: "URLプレビューのサムネイル画像が読み込まれなくなります。"
_code:
title: "コードハイライトを非表示"
title: "コードハイライト"
description: "MFMなどでコードハイライト記法が使われている場合、タップするまで読み込まれなくなります。コードハイライトではハイライトする言語ごとにその定義ファイルを読み込む必要がありますが、それらが自動で読み込まれなくなるため、通信量の削減が見込めます。"
_hemisphere:
@@ -2741,43 +2597,3 @@ _offlineScreen:
title: "オフライン - サーバーに接続できません"
header: "サーバーに接続できません"
_urlPreviewSetting:
title: "URLプレビューの設定"
enable: "URLプレビューを有効にする"
timeout: "プレビュー取得時のタイムアウト(ms)"
timeoutDescription: "プレビュー取得の所要時間がこの値を超えた場合、プレビューは生成されません。"
maximumContentLength: "Content-Lengthの最大値(byte)"
maximumContentLengthDescription: "Content-Lengthがこの値を超えた場合、プレビューは生成されません。"
requireContentLength: "Content-Lengthが取得できた場合のみプレビューを生成"
requireContentLengthDescription: "相手サーバがContent-Lengthを返さない場合、プレビューは生成されません。"
userAgent: "User-Agent"
userAgentDescription: "プレビュー取得時に使用されるUser-Agentを設定します。空欄の場合、デフォルトのUser-Agentが使用されます。"
summaryProxy: "プレビューを生成するプロキシのエンドポイント"
summaryProxyDescription: "Misskey本体ではなく、サマリープロキシを使用してプレビューを生成します。"
summaryProxyDescription2: "プロキシには下記パラメータがクエリ文字列として連携されます。プロキシ側がこれらをサポートしない場合、設定値は無視されます。"
_mediaControls:
pip: "ピクチャインピクチャ"
playbackRate: "再生速度"
loop: "ループ再生"
_contextMenu:
title: "コンテキストメニュー"
app: "アプリケーション"
appWithShift: "Shiftキーでアプリケーション"
native: "ブラウザのUI"
_embedCodeGen:
title: "埋め込みコードをカスタマイズ"
header: "ヘッダーを表示"
autoload: "自動で続きを読み込む(非推奨)"
maxHeight: "高さの最大値"
maxHeightDescription: "0で最大値の設定が無効になります。ウィジェットが縦に伸び続けるのを防ぐために、何らかの値に指定してください。"
maxHeightWarn: "高さの最大値制限が無効0になっています。これが意図した変更ではない場合は、高さの最大値を何らかの値に設定してください。"
previewIsNotActual: "プレビュー画面で表示可能な範囲を超えたため、実際に埋め込んだ際とは表示が異なります。"
rounded: "角丸にする"
border: "外枠に枠線をつける"
applyToPreview: "プレビューに反映"
generateCode: "埋め込みコードを作成"
codeGenerated: "コードが生成されました"
codeGeneratedDescription: "生成されたコードをウェブサイトに貼り付けてご利用ください。"

View File

@@ -60,7 +60,6 @@ copyFileId: "ファイルIDをコピー"
copyFolderId: "フォルダーIDをコピー"
copyProfileUrl: "プロフィールURLをコピー"
searchUser: "ユーザーを探す"
searchThisUsersNotes: "ユーザーのノートを検索"
reply: "返事"
loadMore: "まだまだあるで!"
showMore: "まだまだあるで!"
@@ -109,14 +108,11 @@ enterEmoji: "絵文字を入れてや"
renote: "リノート"
unrenote: "リノートやめる"
renoted: "リノートしたで。"
renotedToX: "{name}にリノートしたで"
cantRenote: "この投稿はリノートできへんっぽい。"
cantReRenote: "リノート自体はリノートできへんで。"
quote: "引用"
inChannelRenote: "チャンネルの中でリノート"
inChannelQuote: "チャンネル内引用"
renoteToChannel: "チャンネルにリノート"
renoteToOtherChannel: "他のチャンネルにリノート"
pinnedNote: "ピン留めされとるノート"
pinned: "ピン留めしとく"
you: "あんた"
@@ -155,7 +151,6 @@ editList: "リストいじる"
selectChannel: "チャンネルを選ぶ"
selectAntenna: "アンテナを選ぶ"
editAntenna: "アンテナいじる"
createAntenna: "アンテナを作成"
selectWidget: "ウィジェットを選ぶ"
editWidgets: "ウィジェットをいじる"
editWidgetsExit: "いじるのをやめる"
@@ -182,10 +177,6 @@ addAccount: "アカウントを追加"
reloadAccountsList: "アカウントリストの情報を更新"
loginFailed: "ログインに失敗してもうた…"
showOnRemote: "リモートで見る"
continueOnRemote: "リモートで続行"
chooseServerOnMisskeyHub: "Misskey Hubからサーバーを選択"
specifyServerHost: "サーバーのドメインを直接指定"
inputHostName: "ドメインを入力せえや"
general: "全般"
wallpaper: "壁紙"
setWallpaper: "壁紙を設定"
@@ -196,7 +187,6 @@ followConfirm: "{name}をフォローしてええか?"
proxyAccount: "プロキシアカウント"
proxyAccountDescription: "プロキシアカウントは、代わりにフォローしてくれるアカウントや。例えば、551に豚まんが無いときやったり、ユーザーがリモートユーザーをアカウントに入れたとき、リストに入れられたユーザーが誰からもフォローされてないと寂しいやん。寂しいし、アクティビティも配達されへんから、プロキシアカウントがフォローしてくれるで。ええやつやん…"
host: "ホスト"
selectSelf: "自分を選択"
selectUser: "ユーザーを選ぶ"
recipient: "宛先"
annotation: "注釈"
@@ -212,7 +202,6 @@ perDay: "1日ごと"
stopActivityDelivery: "アクティビティの配送をやめる"
blockThisInstance: "このサーバーをブロックすんで"
silenceThisInstance: "サーバーサイレンスすんで?"
mediaSilenceThisInstance: "サーバーをメディアサイレンス"
operations: "操作"
software: "ソフトウェア"
version: "バージョン"
@@ -234,8 +223,6 @@ blockedInstances: "ブロックしたサーバー"
blockedInstancesDescription: "ブロックしたいサーバーのホストを改行で区切って設定してな。ブロックされてもうたサーバーとはもう金輪際やり取りできひんくなるで。"
silencedInstances: "サーバーサイレンスされてんねん"
silencedInstancesDescription: "サイレンスしたいサーバーのホストを改行で区切って設定すんで。サイレンスされたサーバーに所属するアカウントはすべて「サイレンス」として扱われ、フォローがすべてリクエストになり、フォロワーでないローカルアカウントにはメンションできなくなんねん。ブロックしたインスタンスには影響せーへんで。"
mediaSilencedInstances: "メディアサイレンスしたサーバー"
mediaSilencedInstancesDescription: "メディアサイレンスしたいサーバーのホストを改行で区切って設定するで。メディアサイレンスされたサーバーに所属するアカウントによるファイルはすべてセンシティブとして扱われてな、カスタム絵文字が使えへんようになるで。ブロックしたインスタンスには影響せえへんで。"
muteAndBlock: "ミュートとブロック"
mutedUsers: "ミュートしとるユーザー"
blockedUsers: "ブロックしとるユーザー"
@@ -326,7 +313,6 @@ selectFile: "ファイル選んでや"
selectFiles: "ファイル選んでや"
selectFolder: "フォルダ選んでや"
selectFolders: "フォルダ選んでや"
fileNotSelected: "ファイルが選択されてへんで"
renameFile: "ファイル名をいらう"
folderName: "フォルダー名"
createFolder: "フォルダー作る"
@@ -414,7 +400,6 @@ name: "名前"
antennaSource: "受信ソース(このソースは食われへん)"
antennaKeywords: "受信キーワード"
antennaExcludeKeywords: "除外キーワード"
antennaExcludeBots: "Botアカウントを除外"
antennaKeywordsDescription: "スペースで区切ったるとAND指定で、改行で区切ったるとOR指定や"
notifyAntenna: "新しいノートを通知すんで"
withFileAntenna: "なんか添付されたノートだけ"
@@ -482,12 +467,10 @@ retype: "もっかい入力"
noteOf: "{user}はんのノート"
quoteAttached: "引用付いとるで"
quoteQuestion: "引用として添付してもええか?"
attachAsFileQuestion: "クリップボードのテキストが長すぎるからテキストファイルとして添付してもええか?"
noMessagesYet: "まだチャットはあらへんで"
newMessageExists: "新しいメッセージがきたで"
onlyOneFileCanBeAttached: "ごめんな、メッセージに添付できるファイルはひとつだけなんよ。"
signinRequired: "ログインしてくれへん?"
signinOrContinueOnRemote: "続行するには、お使いのサーバーに移動するか、このサーバーに登録・ログインする必要があるで"
invitations: "来てや"
invitationCode: "招待コード"
checking: "確認しとるで"
@@ -509,8 +492,8 @@ uiLanguage: "UIの表示言語"
aboutX: "{x}について"
emojiStyle: "絵文字のスタイル"
native: "ネイティブ"
disableDrawer: "メニューをドロワーで表示せえへん"
showNoteActionsOnlyHover: "ノートの操作部をホバー時のみ表示するで"
showReactionsCount: "ノートのリアクション数を表示する"
noHistory: "履歴はないわ。"
signinHistory: "ログイン履歴"
enableAdvancedMfm: "ややこしいMFMもありにする"
@@ -707,7 +690,10 @@ abuseReported: "無事内容が送信されたみたいやで。おおきに〜
reporter: "通報者"
reporteeOrigin: "通報先"
reporterOrigin: "通報元"
forwardReport: "リモートサーバーに通報を転送するで"
forwardReportIsAnonymous: "リモートサーバーからはあんたの情報は見えんなって、匿名のシステムアカウントとして表示されるで。"
send: "送信"
abuseMarkAsResolved: "対応したで"
openInNewTab: "新しいタブで開く"
openInSideView: "サイドビューで開く"
defaultNavigationBehaviour: "デフォルトのナビゲーション"
@@ -844,7 +830,6 @@ administration: "管理"
accounts: "アカウント"
switch: "切り替え"
noMaintainerInformationWarning: "管理者情報が設定されてへんで"
noInquiryUrlWarning: "問い合わせ先URLが設定されてへんで。"
noBotProtectionWarning: "Botプロテクションが設定されてへんで。"
configure: "設定する"
postToGallery: "ギャラリーへ投稿"
@@ -1034,7 +1019,6 @@ thisPostMayBeAnnoyingHome: "ホームに投稿"
thisPostMayBeAnnoyingCancel: "やめとく"
thisPostMayBeAnnoyingIgnore: "このまま投稿"
collapseRenotes: "見たことあるリノートは飛ばして表示するで"
collapseRenotesDescription: "リアクションやリノートをしたことがあるノートをたたんで表示するで。"
internalServerError: "サーバー内部エラー"
internalServerErrorDescription: "サーバーでなんか変なこと起こっとるわ。"
copyErrorInfo: "エラー情報をコピるで"
@@ -1058,8 +1042,6 @@ resetPasswordConfirm: "パスワード作り直すんでええな?"
sensitiveWords: "けったいな単語"
sensitiveWordsDescription: "設定した単語が入っとるノートの公開範囲をホームにしたるわ。改行で区切ったら複数設定できるで。"
sensitiveWordsDescription2: "スペースで区切るとAND指定、キーワードをスラッシュで囲んだら正規表現や。"
prohibitedWords: "禁止ワード"
prohibitedWordsDescription: "設定した言葉が含まれるノートを投稿しようとしたら、エラーが出るようにするで。改行で区切って複数設定できるで。"
prohibitedWordsDescription2: "スペースで区切るとAND指定、キーワードをスラッシュで囲んだら正規表現や。"
hiddenTags: "見えてへんハッシュタグ"
hiddenTagsDescription: "設定したタグを最近流行りのとこに見えんようにすんで。複数設定するときは改行で区切ってな。"
@@ -1108,8 +1090,6 @@ preservedUsernames: "予約ユーザー名"
preservedUsernamesDescription: "予約しとくユーザー名を行ごとに挙げるで。ここで指定されたユーザー名はアカウント作るときに使えへんくなるけど、管理者は例外や。あと、もうあるアカウントも例外やな。"
createNoteFromTheFile: "このファイル使うてノート作るで"
archive: "アーカイブ"
archived: "アーカイブ済み"
unarchive: "アーカイブ解除"
channelArchiveConfirmTitle: "{name}をアーカイブしてええか?"
channelArchiveConfirmDescription: "アーカイブしたら、チャンネル一覧とか検索結果からなくなるし、新しく書き込みもできへんなるで。"
thisChannelArchived: "このチャンネル、アーカイブされとるで。"
@@ -1120,9 +1100,6 @@ preventAiLearning: "生成AIの学習に使わんといて"
preventAiLearningDescription: "他の文章生成AIとか画像生成AIに、投稿したートとか画像なんかを勝手に使わんように頼むで。具体的にはnoaiフラグをHTMLレスポンスに含めるんやけど、これ聞いてくれるんはAIの気分次第やから、使われる可能性もちょっとはあるな。"
options: "オプション"
specifyUser: "ユーザー指定"
lookupConfirm: "照会するけどええか?"
openTagPageConfirm: "ハッシュタグのページを開くんか?"
specifyHost: "ホスト指定"
failedToPreviewUrl: "プレビューできへん"
update: "更新"
rolesThatCanBeUsedThisEmojiAsReaction: "ツッコミとして使えるロール"
@@ -1181,7 +1158,6 @@ showRenotes: "リノート出す"
edited: "いじったやつ"
notificationRecieveConfig: "通知もらうかの設定"
mutualFollow: "お互いフォローしてんで"
followingOrFollower: "フォロー中またはフォロワー"
fileAttachedOnly: "ファイルのっけてあるやつだけ"
showRepliesToOthersInTimeline: "タイムラインに他の人への返信とかも入れるで"
hideRepliesToOthersInTimeline: "タイムラインに他の人への返信とかは入れへん"
@@ -1191,12 +1167,6 @@ confirmShowRepliesAll: "これは元に戻せへんから慎重に決めてや
confirmHideRepliesAll: "これは元に戻せへんから慎重に決めてや。本当にタイムラインに今フォローしとる全員の返信を入れへんのか?"
externalServices: "他のサイトのサービス"
sourceCode: "ソースコード"
sourceCodeIsNotYetProvided: "ソースコードはまだ提供されてへんで。問題の修正について管理者に問い合わせてみ。"
repositoryUrl: "リポジトリURL"
repositoryUrlDescription: "ソースコードが公開されているリポジトリがある場合、そのURLを記入するで。Misskeyをそのまんまソースコードにいかなる変更も加えずに使っとる場合は https://github.com/misskey-dev/misskey と記入するで。"
repositoryUrlOrTarballRequired: "リポジトリを公開してへんなら、代わりにtarballを提供する必要があるで。詳細は.config/example.ymlを参照してな。"
feedback: "フィードバック"
feedbackUrl: "フィードバックURL"
impressum: "運営者の情報"
impressumUrl: "運営者の情報URL"
impressumDescription: "ドイツとかの一部んところではな、表示が義務付けられてんねん(Impressum)。"
@@ -1232,8 +1202,6 @@ soundWillBePlayed: "サウンドが再生されるで"
showReplay: "リプレイ見る"
replay: "リプレイ"
replaying: "リプレイ中"
endReplay: "リプレイを終了"
copyReplayData: "リプレイデータをコピー"
ranking: "ランキング"
lastNDays: "直近{n}日"
backToTitle: "タイトルへ"
@@ -1241,44 +1209,9 @@ hemisphere: "住んでる地域"
withSensitive: "センシティブなファイルを含むノートを表示"
userSaysSomethingSensitive: "{name}のセンシティブなファイルを含む投稿"
enableHorizontalSwipe: "スワイプしてタブを切り替える"
loading: "読み込み中"
surrender: "やめとく"
gameRetry: "もういっちょ"
notUsePleaseLeaveBlank: "使用せえへん場合は空欄にしてや"
useTotp: "ワンタイムパスワードを使う"
useBackupCode: "バックアップコードを使う"
launchApp: "アプリを起動"
useNativeUIForVideoAudioPlayer: "動画・音声の再生にブラウザのUIを使用する"
keepOriginalFilename: "オリジナルのファイル名を保持"
keepOriginalFilenameDescription: "この設定をオフにすると、アップロード時にファイル名が自動でランダム文字列に置き換えられるで。"
noDescription: "説明文はあらへんで"
alwaysConfirmFollow: "フォローの際常に確認する"
inquiry: "問い合わせ"
tryAgain: "もう一度試しいや。"
confirmWhenRevealingSensitiveMedia: "センシティブなメディアを表示するとき確認する"
sensitiveMediaRevealConfirm: "センシティブなメディアやで。表示するんか?"
createdLists: "作成したリスト"
createdAntennas: "作成したアンテナ"
_delivery:
status: "配信状態"
stop: "配信せぇへん"
resume: "配信再開"
_type:
none: "配信しとる"
manuallySuspended: "手動停止中"
goneSuspended: "サーバー削除のため停止中"
autoSuspendedForNotResponding: "サーバー応答せえへんから停止中"
_bubbleGame:
howToPlay: "遊び方"
hold: "ホールド"
_score:
score: "スコア"
scoreYen: "稼いだ金額"
highScore: "ハイスコア"
maxChain: "最大チェーン数"
yen: "{yen}円"
estimatedQty: "{qty}個分"
scoreSweets: "おにぎり {onigiriQtyWithUnit}"
_howToPlay:
section1: "位置を調整してハコにモノを落とすで。"
section2: "同じもんがくっついたら別のやつになって、スコアがもらえるで。"
@@ -1393,8 +1326,6 @@ _serverSettings:
fanoutTimelineDescription: "入れると、おのおのタイムラインを取得するときにめちゃめちゃ動きが良うなって、データベースが軽くなるわ。でも、Redisのメモリ使う量が増えるから注意な。サーバーのメモリが足りんときとか、動きが変なときは切れるで。"
fanoutTimelineDbFallback: "データベースにフォールバックする"
fanoutTimelineDbFallbackDescription: "有効にしたら、タイムラインがキャッシュん中に入ってないときにDBにもっかい問い合わせるフォールバック処理ってのをやっとくで。切ったらフォールバック処理をやらんからサーバーはもっと軽くなんねんけど、タイムラインの取得範囲がちょっと減るで。"
inquiryUrl: "問い合わせ先URL"
inquiryUrlDescription: "サーバー運営者へのお問い合わせフォームのURLや、運営者の連絡先等が記載されたWebページのURLを指定するで。"
_accountMigration:
moveFrom: "別のアカウントからこのアカウントに引っ越す"
moveFromSub: "別のアカウントへエイリアスを作る"
@@ -1702,7 +1633,6 @@ _role:
gtlAvailable: "グローバルタイムライン見る"
ltlAvailable: "ローカルタイムライン見る"
canPublicNote: "パブリック投稿できるか"
mentionMax: "ノート内の最大メンション数"
canInvite: "サーバー招待コード作る"
inviteLimit: "招待コード作れる数"
inviteLimitCycle: "招待コードの作れる間隔"
@@ -1711,7 +1641,6 @@ _role:
canManageAvatarDecorations: "アバターを飾るモンの管理"
driveCapacity: "ドライブ容量"
alwaysMarkNsfw: "勝手にファイルにNSFWをくっつける"
canUpdateBioMedia: "アイコンとバナーの更新を許可"
pinMax: "ノートピン留めできる数"
antennaMax: "アンテナ作れる数"
wordMuteMax: "ワードミュートの最大文字数"
@@ -1727,14 +1656,8 @@ _role:
canUseTranslator: "翻訳使えるかどうか"
avatarDecorationLimit: "アイコンデコのいっちばんつけれる数"
_condition:
roleAssignedTo: "マニュアルロールにアサイン済み"
isLocal: "ローカルユーザー"
isRemote: "リモートユーザー"
isCat: "猫ユーザー"
isBot: "botユーザー"
isSuspended: "サスペンド済みユーザー"
isLocked: "鍵アカウントユーザー"
isExplorable: "「アカウントを見つけやすくする」が有効なユーザー"
createdLessThan: "アカウント作ってから~以内"
createdMoreThan: "アカウント作ってから~経過"
followersLessThanOrEq: "フォロワー数が~以下"
@@ -1804,7 +1727,6 @@ _plugin:
installWarn: "信頼できへんプラグインはインストールせんとってな"
manage: "プラグインの管理"
viewSource: "ソース見る"
viewLog: "ログを表示"
_preferencesBackups:
list: "作ったバックアップ"
saveNew: "新しく保存"
@@ -1819,8 +1741,8 @@ _preferencesBackups:
deleteConfirm: "{name}を消すん?"
renameConfirm: "「{old}」を「{new}」に変えるん?"
noBackups: "バックアップはないで。「新しく保存」ってとこでこのクライアント設定を鯖に保存できるで。"
createdAt: "作った日時: {date} {time}"
updatedAt: "更新日時: {date} {time}"
createdAt: "作った日時:{date}{time}"
updatedAt: "更新日時:{date}{time}"
cannotLoad: "読み込みできへん..."
invalidFile: "ファイル形式が違うで?"
_registry:
@@ -1834,8 +1756,6 @@ _aboutMisskey:
contributors: "主な貢献者"
allContributors: "全ての貢献者"
source: "ソースコード"
original: "オリジナル"
thisIsModifiedVersion: "{name}はオリジナルのMisskeyをいじったバージョンをつこうてるで。"
translation: "Misskeyを翻訳"
donate: "Misskeyに寄付"
morePatrons: "他にもぎょうさんの人からサポートしてもろてんねん。ほんまおおきに🥰"
@@ -1955,6 +1875,8 @@ _sfx:
note: "ノート"
noteMy: "ノート(自分)"
notification: "通知"
antenna: "アンテナ受信"
channel: "チャンネル通知"
reaction: "ツッコミ選んどるとき"
_soundSettings:
driveFile: "ドライブん中の音使う"
@@ -1963,7 +1885,6 @@ _soundSettings:
driveFileTypeWarnDescription: "音声ファイルを選びや"
driveFileDurationWarn: "音が長すぎるわ"
driveFileDurationWarnDescription: "長い音使うたらMisskey使うのに良うないかもしれへんで。それでもええか"
driveFileError: "音声が読み込めへんかったで。設定を変更せえや"
_ago:
future: "未来"
justNow: "ついさっき"
@@ -1993,6 +1914,7 @@ _2fa:
registerTOTP: "認証アプリの設定はじめる"
step1: "ほんなら、{a}や{b}とかの認証アプリを使っとるデバイスにインストールしてな。"
step2: "次に、ここにあるQRコードをアプリでスキャンしてな。"
step2Click: "QRコード押したら、今使とる端末に入っとる認証アプリとかキーリングに登録できるで。"
step2Uri: "デスクトップアプリを使う時は次のURIを入れるで"
step3Title: "確認コードを入れてーや"
step3: "アプリに映っとる確認コード(トークン)を入れて終わりや。"
@@ -2016,7 +1938,6 @@ _2fa:
backupCodesDescription: "認証アプリが使用できんなった場合、以下のバックアップコードを使ってアカウントにアクセスできるで。これらのコードは必ず安全な場所に置いときや。各コードは一回だけ使用できるで。"
backupCodeUsedWarning: "バックアップコードが使用されたで。認証アプリが使えなくなってるん場合、なるべく早く認証アプリを再設定しや。"
backupCodesExhaustedWarning: "バックアップコードが全て使用されたで。認証アプリを利用できん場合、これ以上アカウントにアクセスできなくなるで。認証アプリを再登録しや。"
moreDetailedGuideHere: "詳細なガイドはこちら"
_permissions:
"read:account": "アカウントの情報を見るで"
"write:account": "アカウントの情報を変更するで"
@@ -2067,6 +1988,7 @@ _permissions:
"read:admin:server-info": "サーバーの情報見る"
"read:admin:show-moderation-log": "モデレーションログ見る"
"read:admin:show-user": "ユーザーのプライベートな情報見る"
"read:admin:show-users": "ユーザーのプライベートな情報見る"
"write:admin:suspend-user": "ユーザーを凍結"
"write:admin:unset-user-avatar": "ユーザーのアバターを削除"
"write:admin:unset-user-banner": "ユーザーのバナーを削除"
@@ -2277,7 +2199,6 @@ _play:
title: "タイトル"
script: "スクリプト"
summary: "説明"
visibilityDescription: "非公開に設定するとプロフィールに表示されへんくなるけど、URLを知っとる人は引き続きアクセスできるで。"
_pages:
newPage: "ページを作る"
editPage: "ページの編集"
@@ -2322,8 +2243,6 @@ _pages:
section: "セクション"
image: "画像"
button: "ボタン"
dynamic: "動的ブロック"
dynamicDescription: "このブロックは廃止されとるで。今後は{play}を利用してや。"
note: "ノート埋め込み"
_note:
id: "ートID"
@@ -2353,10 +2272,8 @@ _notification:
sendTestNotification: "テスト通知を送信するで"
notificationWillBeDisplayedLikeThis: "通知はこのように表示されるで"
reactedBySomeUsers: "{n}人がツッコんだで"
likedBySomeUsers: "{n}人がいいねしたで"
renotedBySomeUsers: "{n}人がリノートしたで"
followedBySomeUsers: "{n}人にフォローされたで"
flushNotification: "通知の履歴をリセットする"
_types:
all: "すべて"
note: "あんたらの新規投稿"
@@ -2371,7 +2288,6 @@ _notification:
followRequestAccepted: "フォローが受理されたで"
roleAssigned: "ロールが付与された"
achievementEarned: "実績の獲得"
login: "ログイン"
app: "連携アプリからの通知や"
_actions:
followBack: "フォローバック"
@@ -2381,7 +2297,6 @@ _deck:
alwaysShowMainColumn: "いつもメインカラムを表示"
columnAlign: "カラムの寄せ"
addColumn: "カラムを追加"
newNoteNotificationSettings: "新着ノート通知の設定"
configureColumn: "カラムの設定"
swapLeft: "左に移動"
swapRight: "右に移動"
@@ -2420,10 +2335,9 @@ _drivecleaner:
orderByCreatedAtAsc: "追加日の古い順"
_webhookSettings:
createWebhook: "Webhookをつくる"
modifyWebhook: "Webhookを編集"
name: "名前"
secret: "シークレット"
trigger: "トリガー"
events: "Webhookを投げるタイミング"
active: "有効"
_events:
follow: "フォローしたとき~!"
@@ -2433,26 +2347,6 @@ _webhookSettings:
renote: "リノートされるとき~!"
reaction: "ツッコまれたとき~!"
mention: "メンションがあるとき~!"
_systemEvents:
abuseReport: "ユーザーから通報があったとき"
abuseReportResolved: "ユーザーからの通報を処理したとき"
userCreated: "ユーザーが作成されたとき"
deleteConfirm: "ほんまにWebhookをほかしてもええんか"
_abuseReport:
_notificationRecipient:
createRecipient: "通報の通知先を追加"
modifyRecipient: "通報の通知先を編集"
recipientType: "通知先の種類"
_recipientType:
mail: "メール"
webhook: "Webhook"
_captions:
mail: "モデレーター権限を持つユーザーのメアドに通知を送るで(通報を受けた時のみ)"
webhook: "指定したSystemWebhookに通知を送るで(通報を受けた時と通報を解決した時にそれぞれ発信)"
keywords: "キーワード"
notifiedUser: "通知先ユーザー"
notifiedWebhook: "使用するWebhook"
deleteConfirm: "通知先を削除してもええか?"
_moderationLogTypes:
createRole: "ロールを追加すんで"
deleteRole: "ロールほかす"
@@ -2477,7 +2371,6 @@ _moderationLogTypes:
resetPassword: "パスワードをリセット"
suspendRemoteInstance: "リモートサーバーを止めんで"
unsuspendRemoteInstance: "リモートサーバーを再開すんで"
updateRemoteInstanceNote: "リモートサーバーのモデレーションノート更新"
markSensitiveDriveFile: "ファイルをセンシティブ付与"
unmarkSensitiveDriveFile: "ファイルをセンシティブ解除"
resolveAbuseReport: "苦情を解決"
@@ -2490,8 +2383,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "アイコンデコレーションを削除"
unsetUserAvatar: "この子のアイコン元に戻す"
unsetUserBanner: "この子のバナー元に戻す"
createSystemWebhook: "SystemWebhookを作成"
updateSystemWebhook: "SystemWebhookを更新"
_fileViewer:
title: "ファイルの詳しい情報"
type: "ファイルの種類"
@@ -2600,26 +2491,7 @@ _reversi:
opponentHasSettingsChanged: "相手が設定変えたで"
allowIrregularRules: "変則許可 (完全フリー)"
disallowIrregularRules: "変則なし"
showBoardLabels: "盤面に行・列番号を表示"
useAvatarAsStone: "石をアイコンにする"
_offlineScreen:
title: "オフライン - サーバーに接続できひんで"
header: "サーバーに接続できへんわ"
_urlPreviewSetting:
title: "URLプレビューの設定"
enable: "URLプレビューを有効にする"
timeout: "プレビュー取得時のタイムアウト(ms)"
timeoutDescription: "プレビュー取得の所要時間がこの値を超えた場合、プレビューは生成されへんで。"
maximumContentLength: "Content-Lengthの最大値(byte)"
maximumContentLengthDescription: "Content-Lengthがこの値を超えた場合、プレビューは生成されへんで。"
requireContentLength: "Content-Lengthが取得できた場合のみプレビューを生成"
requireContentLengthDescription: "相手サーバがContent-Lengthを返さない場合、プレビューは生成されへんで。"
userAgent: "User-Agent"
userAgentDescription: "プレビュー取得時に使用されるUser-Agentを設定するで。空欄の場合、デフォルトのUser-Agentが使用されるで。"
summaryProxy: "プレビューを生成するプロキシのエンドポイント"
summaryProxyDescription: "Misskey本体やなく、サマリープロキシを使用してプレビューを生成するで。"
summaryProxyDescription2: "プロキシには下記パラメータがクエリ文字列として連携されるで。プロキシ側がこれらをサポートせえへんときは、設定値は無視されるで。"
_mediaControls:
pip: "ピクチャインピクチャ"
playbackRate: "再生速度"
loop: "ループ再生"

View File

@@ -1,3 +1,4 @@
---
_lang_: "la .lojban."
headlineMisskey: "lo se tcana noi jorne fi loi notci"

View File

@@ -104,7 +104,4 @@ _deck:
_columns:
notifications: "Ilɣuyen"
list: "Tibdarin"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Imayl"

View File

@@ -77,8 +77,6 @@ _profile:
username: "ಬಳಕೆಹೆಸರು"
_notification:
youWereFollowed: "ಹಿಂಬಾಲಿಸಿದರು"
_types:
login: "ಪ್ರವೇಶ"
_actions:
reply: "ಉತ್ತರಿಸು"
_deck:
@@ -86,3 +84,4 @@ _deck:
notifications: "ಅಧಿಸೂಚನೆಗಳು"
tl: "ಸಮಯಸಾಲು"
mentions: "ಹೆಸರಿಸಿದ"

View File

@@ -16,8 +16,8 @@ cancel: "아이예"
noThankYou: "뎃어예"
enterUsername: "사용자 이럼 서기"
renotedBy: "{user}님이 리노트햇어예"
noNotes: "노트가 어ᇝ십니다"
noNotifications: "알림이 어ᇝ십니다"
noNotes: "노트가 십니다"
noNotifications: "알림이 십니다"
instance: "서버"
settings: "설정"
notificationSettings: "알림 설정"
@@ -26,7 +26,7 @@ otherSettings: "다린 설정"
openInWindow: "창서 옐기"
profile: "프로필"
timeline: "타임라인"
noAccountDescription: "자기소개가 어ᇝ십니다"
noAccountDescription: "자기소개가 십니다"
login: "로그인"
loggingIn: "로그인하고 잇어예"
logout: "로그아웃"
@@ -80,7 +80,7 @@ unfollowConfirm: "{name}님얼 고마 팔로잉합니꺼?"
exportRequested: "내가기 요청얼 햇십니다. 시간이 쪼매 걸릴 깁니다. 요청이 껕나모 ‘드라이브’에 옇십니다."
importRequested: "가오기 요청얼 햇십니다. 시간이 쪼매 걸릴 깁니다."
lists: "리스트"
noLists: "리스트가 어ᇝ십니다"
noLists: "리스트가 십니다"
note: "노트"
notes: "노트"
following: "팔로잉"
@@ -161,7 +161,7 @@ youCanCleanRemoteFilesCache: "파일 간리으 🗑️ 모냥얼 누질리모
cacheRemoteSensitiveFiles: "웬겍으 수ᇚ힌 파일얼 캐시하기"
cacheRemoteSensitiveFilesDescription: "요 설정얼 꺼모 웬겍 수ᇚ힌 파일이 캐시하지 아이하고 바리 링크합니다."
flagAsBot: "자동 게정입니다"
flagAsBotDescription: "요 게정얼 프로그램서 설라먼 키야 합니다. 키모 다런 개발자가 반엉얼 끋어ᇝ이 데풀이하지 몬 하게 도아 줄 수 잇고 Misskey으 시스템서 자동 게정이 뎁니다."
flagAsBotDescription: "요 게정얼 프로그램서 설라먼 키야 합니다. 키모 다런 개발자가 반엉얼 끋이 데풀이하지 몬 하게 도아 줄 수 잇고 Misskey으 시스템서 자동 게정이 뎁니다."
flagAsCat: "애웅애웅애웅애웅!"
flagAsCatDescription: "애옹?"
flagShowTimelineReplies: "타임라인서 노트으 답하기 보기"
@@ -176,7 +176,7 @@ wallpaper: "벡지"
setWallpaper: "벡지 설정"
removeWallpaper: "벡지 뭉캐기"
searchWith: "찾기: {q}"
youHaveNoLists: "리스트가 어ᇝ십니다"
youHaveNoLists: "리스트가 십니다"
followConfirm: "{name}님얼 팔로잉합니꺼?"
proxyAccount: "프락시 게정"
proxyAccountDescription: "프락시 게정언 턱벨한 조겐서 웬겍 팔로잉얼 하넌 게정입니다. 사용자가 웬겍 사용자럴 리스트에 옇얼 때 리스트에 옇언 사용자럴 누도 팔로잉 아이하모 할동이 서버로 아이 오니께 요 게정이 아인 프락시 게정얼 팔로잉하게 합니다."
@@ -210,17 +210,17 @@ instanceInfo: "서버 정보"
statistics: "통게"
clearQueue: "대기옐 비우기"
clearQueueConfirmTitle: "대기옐얼 비웁니꺼?"
clearQueueConfirmText: "대기옐에 잇넌 걸얼 아이 보냅니다. 흐이 요 동작언 할 필요가 어ᇝ십니다."
clearQueueConfirmText: "대기옐에 잇넌 걸얼 아이 보냅니다. 흐이 요 동작언 할 필요가 십니다."
clearCachedFiles: "캐시 비우기"
clearCachedFilesConfirm: "캐시한 웬겍 파일얼 말캉 뭉캡니꺼?"
blockedInstances: "차단한 서버"
blockedInstancesDescription: "차단할라넌 서버으 호스트럴 줄 바꿈해서로 비이 줍니다. 차단한 서버넌 요 서버하고 교류 몬 합니다."
silencedInstances: "수ᇚ훈 서버"
silencedInstancesDescription: "수ᇚ훌라넌 서버으 호스트럴 줄 바꿈해서로 비이 줍니다. 수ᇚ훈 서버으 게정언 말캉 ‘수ᇚ후기’가 데서 팔로잉 요청만 데고 팔로워가 아인 로컬 게정서 멘션얼 몬 합니다. 차단한 서버넌 상간 어ᇝ십니다."
silencedInstancesDescription: "수ᇚ훌라넌 서버으 호스트럴 줄 바꿈해서로 비이 줍니다. 수ᇚ훈 서버으 게정언 말캉 ‘수ᇚ후기’가 데서 팔로잉 요청만 데고 팔로워가 아인 로컬 게정서 멘션얼 몬 합니다. 차단한 서버넌 상간 십니다."
muteAndBlock: "수ᇚ훔하고 차단"
mutedUsers: "수ᇚ훈 사용자"
blockedUsers: "차단한 사용자"
noUsers: "사용자가 어ᇝ십니다"
noUsers: "사용자가 십니다"
editProfile: "프로필 적기"
noteDeleteConfirm: "요 노트럴 뭉캡니꺼?"
pinLimitExceeded: "더 몬 붙입니다"
@@ -230,15 +230,15 @@ processing: "처리하고 잇어예"
preview: "미리보기"
default: "기본값"
defaultValueIs: "기본값: {value}"
noCustomEmojis: "이모지가 어ᇝ십니다"
noJobs: "작업이 어ᇝ십니다"
noCustomEmojis: "이모지가 십니다"
noJobs: "작업이 십니다"
federating: "옌합하고 잇어예"
blocked: "차단햇어예"
suspended: "고만 보내예"
all: "말캉"
subscribing: "구독하고 잇어예"
publishing: "보내고 잇어예"
notResponding: "답이 어ᇝ어예"
notResponding: "답이 어예"
instanceFollowing: "서버으 팔로잉"
instanceFollowers: "서버으 팔로워"
instanceUsers: "서버으 사용자"
@@ -275,7 +275,7 @@ uploadFromUrlRequested: "올리기럴 요청햇십니다"
uploadFromUrlMayTakeTime: "올리기가 껕날라먼 시간이 쪼매 걸릴 깁니다."
explore: "살펴보기"
messageRead: "이럿어예"
noMoreHistory: "요카마 날 기록이 어ᇝ십니다"
noMoreHistory: "요카마 날 기록이 십니다"
startMessaging: "대화하기"
nUsersRead: "{n}멩이 이럿십니다"
agreeTo: "{0}에 동이하기"
@@ -432,28 +432,28 @@ securityKey: "보안키"
lastUsed: "마지막 쓰임"
lastUsedAt: "마지막 쓰임: {t}"
unregister: "맨걸기 무루기"
passwordLessLogin: "비밀번호 어ᇝ이 로그인"
passwordLessLoginDescription: "비밀번호 어ᇝ이 보안 키나 패스 키만 서서 로그인합니다."
passwordLessLogin: "비밀번호 없시 로그인"
passwordLessLoginDescription: "비밀번호 말고 보안키나 패스키 같은 것만 써 가 로그인합니다."
resetPassword: "비밀번호 재설정"
newPasswordIs: "새 비밀번호{password}입니다"
newPasswordIs: "새 비밀번호는 \"{password}\" 입니다"
reduceUiAnimation: "화면 움직임 효과들을 수ᇚ후기"
share: "노누기"
notFound: "몬 찾앗십니다"
notFoundDescription: " 주소에 맞넌 페이지가 어ᇝ십니다."
uploadFolder: "기본 올리기 위치"
markAsReadAllNotifications: "모 알림얼 읽엄 포시"
markAsReadAllUnreadNotes: "모던 걸얼 읽엄 포시"
markAsReadAllTalkMessages: "모 대화 읽엄 포시"
notFoundDescription: "고런 주소로 들어가는 하멘은 없십니다."
uploadFolder: "기본 업로드 위치"
markAsReadAllNotifications: "모 알림 이럿다고 표시"
markAsReadAllUnreadNotes: "모든 글 이럿다고 표시"
markAsReadAllTalkMessages: "모 대화 이럿다고 표시"
help: "도움말"
inputMessageHere: "옇다 메시지럴 서이소"
close: "기"
inputMessageHere: "여따가 메시지를 입력해주이소"
close: "기"
invites: "초대하기"
members: "구성원"
transfer: "넘구기"
members: "멤버"
transfer: "양도"
title: "제목"
text: ""
text: ""
enable: "키기"
next: "다"
next: "다"
retype: "다시 서기"
noteOf: "{user}님으 노트"
quoteAttached: "따옴"
@@ -468,7 +468,6 @@ tooShort: "억수로 짜립니다"
tooLong: "억수로 집니다"
passwordMatched: "맞십니다"
passwordNotMatched: "안 맞십니다"
signinWith: "{n}서 로그인"
signinFailed: "로그인 몬 했십니다. 고 이름이랑 비밀번호 제대로 썼는가 확인해 주이소."
or: "아니면"
language: "언어"
@@ -476,6 +475,7 @@ uiLanguage: "UI 표시 언어"
aboutX: "{x}에 대해서"
emojiStyle: "이모지 모양"
native: "기본"
disableDrawer: "드로어 메뉴 쓰지 않기"
showNoteActionsOnlyHover: "마우스 올맀을 때만 노트 액션 버턴 보이기"
noHistory: "기록이 없십니다"
signinHistory: "로그인 기록"
@@ -512,13 +512,13 @@ useObjectStorage: "오브젝트 스토리지 키기"
objectStorageBaseUrl: "Base URL"
objectStorageBaseUrlDesc: "오브젝트 (미디어) 참조 링크 만들 때 쓰는 URL임다. CDN 내지 프락시를 쓴다 카멘은 그 URL을 갖다 늫고, 아이면 써먹을 서비스네 가이드를 봐봐가 공개적으로 접근할 수 있는 주소를 여 넣어 주이소. 그니께, 내가 AWS S3을 쓴다 카면은 'https://<bucket>.s3.amazonaws.com', GCS를 쓴다 카면 'https://storage.googleapis.com/<bucket>' 처럼 쓰믄 되입니더."
objectStorageBucket: "Bucket"
objectStorageBucketDesc: " 서비스으 버킷 이럼얼 서 주이소."
objectStorageBucketDesc: "써먹을 서비스의 바께쓰 이름을 여 써 주이소."
objectStoragePrefix: "Prefix"
objectStoragePrefixDesc: "요 Prefix 디렉토리 안에다가 파일이 들어감다."
objectStorageEndpoint: "Endpoint"
objectStorageEndpointDesc: "AWS S3넌 비아 두고 다런 것언 거 서비스으 엔드포인트럴 서 주이소. <host>’나 <host>:<port>’맨치로 섭니다."
objectStorageEndpointDesc: "AWS S3을 쓸라멘 요는 비워두고, 아이멘은 그 서비스 가이드에 맞게 endpoint를 넣어 주이소. '<host>' 내지 '<host>:<port>'처럼 넣십니다."
objectStorageRegion: "Region"
objectStorageRegionDesc: "xx-east-1’맨치로 리전 이럼얼 서 주이소. 설 서비스에 리전어ᇝ어먼 us-east-1라고 해 두이소. 에이더블유에스 설정 파일이나 환겡 벤수가 이ᇇ어면 두이소."
objectStorageRegionDesc: "'xx-east-1' 같은 region 이름을 옇어 주이소. 만약에 내 서비스엔 region 같은읎다, 카면은 대신에 'us-east-1'라고 해 두이소. AWS 설정 파일이나 환경 변수를 끌어다 쓰겠다믄 요는 두이소."
objectStorageUseSSL: "SSL 쓰기"
objectStorageUseSSLDesc: "API 호출할 때 HTTPS 안 쓸거면은 꺼 두이소"
objectStorageUseProxy: "연결에 프락시 사용"
@@ -534,7 +534,7 @@ newNoteRecived: "새 노트 있어예"
sounds: "소리"
sound: "소리"
listen: "듣기"
none: "어ᇝ엄"
none: "없음"
showInPage: "바닥서 보기"
popout: "새 창 열기"
volume: "음량"
@@ -542,13 +542,13 @@ masterVolume: "대빵 음량"
notUseSound: "음소거하기"
useSoundOnlyWhenActive: "Misskey가 활성화되어 있을 때만 소리 내기"
details: "자세히"
chooseEmoji: "이모지 개리기"
chooseEmoji: "이모지 선택"
unableToProcess: "작업 다 몬 했십니다"
recentUsed: "최근 쓴 놈"
install: "설치"
uninstall: "삭제"
installedApps: "설치된 애플리케이션"
nothing: "어ᇝ어예"
nothing: "뭣도 없어예"
installedDate: "설치한 날"
lastUsedDate: "마지막 사용"
state: "상태"
@@ -579,12 +579,8 @@ enableInfiniteScroll: "알아서 더 보기"
useCw: "내용 수ᇚ후기"
description: "설멩"
describeFile: "캡션 옇기"
enterFileDescription: "캡션 서기"
author: "맨던 사람"
manage: "간리"
large: "커게"
medium: "엔갆게"
small: "쪼맪게"
emailServer: "전자우펜 서버"
email: "전자우펜"
emailAddress: "전자우펜 주소"
@@ -601,7 +597,7 @@ reportAbuseOf: "{name}님얼 신고하기"
reporter: "신고한 사람"
reporteeOrigin: "신고덴 사람"
reporterOrigin: "신고한 곳"
waitingFor: "{x}(얼)럴 지달리고 잇십니다"
forwardReport: "웬겍 서버에 신고 보내기"
random: "무작이"
system: "시스템"
clip: "클립 맨걸기"
@@ -614,15 +610,10 @@ followersCount: "팔로워 수"
noteFavoritesCount: "질겨찾기한 노트 수"
clips: "클립 맨걸기"
clearCache: "캐시 비우기"
nUsers: "{n} 사용자"
typingUsers: "{users} 님이 서고 잇어예"
unlikeConfirm: "좋네예럴 무룹니꺼?"
info: "정보"
selectAccount: "계정 개리기"
user: "사용자"
administration: "간리"
middle: "엔갆게"
translatedFrom: "{x}서 번옉"
on: "킴"
off: "껌"
hide: "수ᇚ후기"
@@ -634,9 +625,6 @@ oneDay: "하리"
oneWeek: "한 주"
oneMonth: "한 달"
file: "파일"
typeToConfirm: "게속할라먼 {x}럴 누질라 주이소"
pleaseSelect: "개리 주이소"
remoteOnly: "웬겍만"
tools: "도구"
like: "좋네예!"
unlike: "좋네예 무루기"
@@ -644,22 +632,15 @@ numberOfLikes: "좋네예 수"
show: "보기"
roles: "옉할"
role: "옉할"
noRole: "옉할이 어ᇝ십니다"
noRole: "옉할이 십니다"
thisPostMayBeAnnoyingCancel: "아이예"
likeOnly: "좋네예마"
hiddenTags: "수ᇚ훈 해시태그"
myClips: "내 클립"
preservedUsernames: "예약 사용자 이럼"
specifyUser: "사용자 지정"
icon: "아바타"
replies: "답하기"
renotes: "리노트"
attach: "옇기"
surrender: "아이예"
_delivery:
stop: "고만 보내예"
_type:
none: "보내고 잇어예"
_initialAccountSetting:
startTutorial: "길라잡이 하기"
_initialTutorial:
@@ -716,16 +697,6 @@ _achievements:
description: "0분 0초에 노트를 섰어예"
_tutorialCompleted:
description: "길라잡이럴 껕냇십니다"
_role:
displayOrder: "보기 순서"
_priority:
middle: "엔갆게"
_options:
canHideAds: "강고 수ᇚ후기"
_condition:
isRemote: "웬겍 사용자"
isCat: "갱이 사용자"
isBot: "자동 사용자"
_gallery:
my: "내 걸"
liked: "좋네예한 걸"
@@ -749,7 +720,6 @@ _theme:
_sfx:
note: "새 노트"
notification: "알림"
reaction: "리액션 개리기"
_2fa:
step3Title: "학인 기호럴 서기"
renewTOTPCancel: "뎃어예"
@@ -774,9 +744,6 @@ _cw:
_visibility:
home: "덜머리"
followers: "팔로워"
_postForm:
_placeholders:
e: "옇다 서 주이소"
_profile:
name: "이럼"
username: "사용자 이럼"
@@ -811,7 +778,6 @@ _notification:
mention: "멘션"
quote: "따오기"
reaction: "반엉"
login: "로그인"
_actions:
reply: "답하기"
_deck:
@@ -823,10 +789,6 @@ _deck:
mentions: "받언 멘션"
_webhookSettings:
name: "이럼"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "전자우펜"
_moderationLogTypes:
suspend: "얼우기"
deleteNote: "노트 뭉캐기"
@@ -834,8 +796,5 @@ _moderationLogTypes:
resetPassword: "비밀번호 재설정"
resolveAbuseReport: "신고 해겔하기"
_reversi:
reversi: "리버시"
chooseBoard: "보드 개리기"
black: "꺼멍"
white: "허영"
total: "합게"
total: "합계"

View File

@@ -8,9 +8,6 @@ search: "검색"
notifications: "알림"
username: "유저명"
password: "비밀번호"
initialPasswordForSetup: "초기 설정용 비밀번호"
initialPasswordIsIncorrect: "초기 설정용 비밀번호가 올바르지 않습니다."
initialPasswordForSetupDescription: "Misskey를 직접 설치하는 경우, 설정 파일에 입력해둔 비밀번호를 사용하세요.\nMisskey 설치를 도와주는 호스팅 서비스 등을 사용하는 경우, 서비스 제공자로부터 받은 비밀번호를 사용하세요.\n비밀번호를 따로 설정하지 않은 경우, 아무것도 입력하지 않아도 됩니다."
forgotPassword: "비밀번호 재설정"
fetchingAsApObject: "연합에서 찾아보는 중"
ok: "확인"
@@ -41,9 +38,9 @@ addUser: "유저 추가"
favorite: "즐겨찾기"
favorites: "즐겨찾기"
unfavorite: "즐겨찾기에서 제거"
favorited: "즐겨찾기에 등록했습니다."
alreadyFavorited: "이미 즐겨찾기에 등록습니다."
cantFavorite: "즐겨찾기에 등록하지 못했습니다."
favorited: "즐겨찾기에 등록했습니다"
alreadyFavorited: "이미 즐겨찾기에 등록되어 있습니다"
cantFavorite: "즐겨찾기에 등록하지 못했습니다"
pin: "프로필에 고정"
unpin: "프로필에서 고정 해제"
copyContent: "내용 복사"
@@ -56,14 +53,13 @@ addToList: "리스트에 추가"
addToAntenna: "안테나에 추가"
sendMessage: "메시지 보내기"
copyRSS: "RSS 복사"
copyUsername: "유저명 복사"
copyUserId: "유저 ID 복사"
copyUsername: "사용자 이름 복사"
copyUserId: "사용자 ID 복사"
copyNoteId: "노트 ID 복사"
copyFileId: "파일 ID 복사"
copyFolderId: "폴더 ID 복사"
copyProfileUrl: "프로필 URL 복사"
searchUser: "사용자 검색"
searchThisUsersNotes: "사용자의 노트 검색"
reply: "답글"
loadMore: "더 보기"
showMore: "더 보기"
@@ -97,7 +93,7 @@ somethingHappened: "오류가 발생했습니다"
retry: "다시 시도"
pageLoadError: "페이지를 불러오지 못했습니다."
pageLoadErrorDescription: "네트워크 연결 또는 브라우저 캐시로 인해 발생했을 가능성이 높습니다. 캐시를 삭제하거나, 잠시 후 다시 시도해 주세요."
serverIsDead: "서버가 응답하지 않습니다. 잠시 후 다시 시도해 주세요."
serverIsDead: "서버로부터 응답이 없습니다. 잠시 후 다시 시도해주세요."
youShouldUpgradeClient: "이 페이지를 표시하려면 새로고침하여 새로운 버전의 클라이언트를 이용해 주십시오."
enterListName: "리스트 이름을 입력"
privacy: "프라이버시"
@@ -112,14 +108,11 @@ enterEmoji: "이모지 입력"
renote: "리노트"
unrenote: "리노트 취소"
renoted: "리노트했습니다"
renotedToX: "{name}명이 리노트했습니다."
cantRenote: "이 게시물은 리노트 할 수 없습니다."
cantReRenote: "리노트를 리노트 할 수 없습니다."
cantReRenote: "리노트를 리노트할 수 없습니다."
quote: "인용"
inChannelRenote: "채널 내 리노트"
inChannelQuote: "채널 내 인용"
renoteToChannel: "채널에 리노트"
renoteToOtherChannel: "다른 채널에 리노트"
pinnedNote: "고정된 노트"
pinned: "고정하기"
you: "나"
@@ -129,8 +122,8 @@ add: "추가"
reaction: "리액션"
reactions: "리액션"
emojiPicker: "이모지 선택기"
pinnedEmojisForReactionSettingDescription: "리액션을 할 때 이모지 선택기 상단에 표시할 이모지를 설정할 수 있습니다."
pinnedEmojisSettingDescription: "이모지를 입력할 때 이모지 선택기 상단에 표시할 이모지를 설정할 수 있습니다."
pinnedEmojisForReactionSettingDescription: "리액션을 할 때 프로필에 고정하여 표시할 이모지를 설정할 수 있습니다"
pinnedEmojisSettingDescription: "이모지를 입력할 때 프로필에 고정하여 표시할 이모지를 설정할 수 있습니다"
emojiPickerDisplay: "선택기 표시"
overwriteFromPinnedEmojisForReaction: "리액션 설정을 덮어쓰기"
overwriteFromPinnedEmojis: "일반 설정을 덮어쓰기"
@@ -143,7 +136,7 @@ unmarkAsSensitive: "열람주의 해제"
enterFileName: "파일명을 입력"
mute: "뮤트"
unmute: "뮤트 해제"
renoteMute: "리노트 뮤트"
renoteMute: "리노트 뮤트하기"
renoteUnmute: "리노트 뮤트 해제"
block: "차단"
unblock: "차단 해제"
@@ -158,7 +151,6 @@ editList: "리스트 편집"
selectChannel: "채널 선택"
selectAntenna: "안테나 선택"
editAntenna: "안테나 편집"
createAntenna: "안테나 만들기"
selectWidget: "위젯 선택"
editWidgets: "위젯 편집"
editWidgetsExit: "편집 종료"
@@ -177,21 +169,17 @@ cacheRemoteSensitiveFilesDescription: "이 설정을 비활성화하면 리모
flagAsBot: "나는 봇입니다"
flagAsBotDescription: "이 계정을 자동화된 수단으로 운용할 경우에 활성화해 주세요. 이 플래그를 활성화하면, 다른 봇이 이를 참고하여 봇 끼리의 무한 연쇄 반응을 회피하거나, 이 계정의 시스템 상에서의 취급이 Bot 운영에 최적화되는 등의 변화가 생깁니다."
flagAsCat: "미야아아아오오오오오오오오오옹!!!!!!!"
flagAsCatDescription: "야옹?(이 계정이 고양이라면 눌러 주세요.)"
flagAsCatDescription: "야옹?"
flagShowTimelineReplies: "타임라인에 노트의 답글을 표시하기"
flagShowTimelineRepliesDescription: "이 설정을 활성화하면 타임라인에 다른 유저 간의 답글을 표시합니다."
autoAcceptFollowed: "팔로우 중인 유저로부터의 팔로우 요청을 자동 수락"
addAccount: "계정 추가"
reloadAccountsList: "계정 목록 새로고침"
reloadAccountsList: "계정 리스트 정보 갱신"
loginFailed: "로그인에 실패했습니다"
showOnRemote: "리모트에서 보기"
continueOnRemote: "리모트에서 계속"
chooseServerOnMisskeyHub: "Misskey Hub에서 서버 찾아보기"
specifyServerHost: "서버 도메인 직접 지정"
inputHostName: "도메인을 입력하세요"
general: "일반"
wallpaper: "배경"
setWallpaper: "배경 설정"
setWallpaper: "배경화면 설정"
removeWallpaper: "배경 제거"
searchWith: "검색: {q}"
youHaveNoLists: "리스트가 없습니다"
@@ -199,7 +187,6 @@ followConfirm: "{name}님을 팔로우 하시겠습니까?"
proxyAccount: "프록시 계정"
proxyAccountDescription: "프록시 계정은 특정 조건 하에서 유저의 리모트 팔로우를 대행하는 계정입니다. 예를 들면, 유저가 리모트 유저를 리스트에 넣었을 때, 리스트에 들어간 유저를 아무도 팔로우한 적이 없다면 액티비티가 서버로 배달되지 않기 때문에, 대신 프록시 계정이 해당 유저를 팔로우하도록 합니다."
host: "호스트"
selectSelf: "본인을 선택"
selectUser: "유저 선택"
recipient: "수신인"
annotation: "내용에 대한 주석"
@@ -215,7 +202,6 @@ perDay: "1일마다"
stopActivityDelivery: "액티비티 보내지 않기"
blockThisInstance: "이 서버를 차단"
silenceThisInstance: "서버를 사일런스"
mediaSilenceThisInstance: "서버의 미디어를 사일런스"
operations: "작업"
software: "소프트웨어"
version: "버전"
@@ -237,10 +223,6 @@ blockedInstances: "차단된 서버"
blockedInstancesDescription: "차단하려는 서버의 호스트 이름을 줄바꿈으로 구분하여 설정합니다. 차단된 인스턴스는 이 인스턴스와 통신할 수 없게 됩니다."
silencedInstances: "사일런스한 서버"
silencedInstancesDescription: "사일런스하려는 서버의 호스트명을 한 줄에 하나씩 입력합니다. 사일런스된 서버에 소속된 유저는 모두 '사일런스'된 상태로 취급되며, 이 서버로부터의 팔로우가 프로필 설정과 무관하게 승인제로 변경되고, 팔로워가 아닌 로컬 유저에게는 멘션할 수 없게 됩니다. 정지된 서버에는 적용되지 않습니다."
mediaSilencedInstances: "미디어를 사일런스한 서버"
mediaSilencedInstancesDescription: "미디어를 사일런스 하려는 서버의 호스트를 한 줄에 하나씩 입력합니다. 미디어가 사일런스된 서버의 유저가 업로드한 파일은 모두 민감한 미디어로 처리되며, 커스텀 이모지를 사용할 수 없게 됩니다. 또한, 차단한 인스턴스에는 적용되지 않습니다."
federationAllowedHosts: "연합을 허가하는 서버"
federationAllowedHostsDescription: "연합을 허가하는 서버의 호스트를 엔터로 구분해서 설정합니다."
muteAndBlock: "뮤트 및 차단"
mutedUsers: "뮤트한 유저"
blockedUsers: "차단한 유저"
@@ -265,7 +247,7 @@ publishing: "배포 중"
notResponding: "응답 없음"
instanceFollowing: "서버의 팔로잉"
instanceFollowers: "서버의 팔로워"
instanceUsers: "서버의 사용자"
instanceUsers: "서버의 유저"
changePassword: "비밀번호 변경"
security: "보안"
retypedNotMatch: "입력이 일치하지 않습니다."
@@ -281,12 +263,12 @@ lookup: "찾아보기"
announcements: "공지사항"
imageUrl: "이미지 URL"
remove: "삭제"
removed: "삭제습니다"
removed: "삭제하였습니다"
removeAreYouSure: "\"{x}\" 을(를) 삭제하시겠습니까?"
deleteAreYouSure: "\"{x}\" 을(를) 삭제하시겠습니까?"
resetAreYouSure: "초기화 하시겠습니까?"
areYouSure: "계속 진행하시겠습니까?"
saved: "저장습니다"
saved: "저장하였습니다"
messaging: "대화"
upload: "업로드"
keepOriginalUploading: "원본 이미지를 유지"
@@ -331,7 +313,6 @@ selectFile: "파일 선택"
selectFiles: "파일 선택"
selectFolder: "폴더 선택"
selectFolders: "폴더 선택"
fileNotSelected: "파일을 선택하지 않았습니다"
renameFile: "파일 이름 변경"
folderName: "폴더 이름"
createFolder: "폴더 만들기"
@@ -339,7 +320,6 @@ renameFolder: "폴더 이름 바꾸기"
deleteFolder: "폴더 삭제"
folder: "폴더"
addFile: "파일 추가"
showFile: "파일 표시하기"
emptyDrive: "드라이브가 비어 있습니다"
emptyFolder: "폴더가 비어 있습니다"
unableToDelete: "삭제할 수 없습니다"
@@ -385,12 +365,12 @@ registration: "등록"
enableRegistration: "신규 회원가입을 활성화"
invite: "초대"
driveCapacityPerLocalAccount: "로컬 유저 한 명당 드라이브 용량"
driveCapacityPerRemoteAccount: "원격 사용자별 드라이브 용량"
driveCapacityPerRemoteAccount: "리모트 유저 한 명당 드라이브 용량"
inMb: "메가바이트 단위"
bannerUrl: "배너 이미지 URL"
backgroundImageUrl: "배경 이미지 URL"
basicInfo: "기본 정보"
pinnedUsers: "고정한 사용자"
pinnedUsers: "고정된 유저"
pinnedUsersDescription: "\"발견하기\" 페이지 등에 고정하고 싶은 유저를 한 줄에 한 명씩 적습니다."
pinnedPages: "고정한 페이지"
pinnedPagesDescription: "서버의 대문에 고정하고 싶은 페이지의 경로를 한 줄에 하나씩 적습니다."
@@ -420,7 +400,6 @@ name: "이름"
antennaSource: "받을 소스"
antennaKeywords: "받을 검색어"
antennaExcludeKeywords: "제외할 검색어"
antennaExcludeBots: "봇 계정 제외"
antennaKeywordsDescription: "공백으로 구분하는 경우 AND, 줄바꿈으로 구분하는 경우 OR로 지정됩니다"
notifyAntenna: "새로운 노트를 알림"
withFileAntenna: "파일이 첨부된 노트만"
@@ -435,11 +414,11 @@ silence: "사일런스"
silenceConfirm: "이 계정을 사일런스로 설정하시겠습니까?"
unsilence: "사일런스 해제"
unsilenceConfirm: "이 계정의 사일런스를 해제하시겠습니까?"
popularUsers: "인기 사용자"
recentlyUpdatedUsers: "최근 활동한 사용자"
recentlyRegisteredUsers: "최근 가입한 사용자"
recentlyDiscoveredUsers: "최근 발견한 사용자"
exploreUsersCount: "{count}명의 사용자가 있습니다"
popularUsers: "인기 유저"
recentlyUpdatedUsers: "최근 활동한 유저"
recentlyRegisteredUsers: "최근 가입한 유저"
recentlyDiscoveredUsers: "최근 발견한 유저"
exploreUsersCount: "{count}명의 유저가 있습니다"
exploreFediverse: "연합우주를 탐색"
popularTags: "인기 태그"
userList: "리스트"
@@ -454,17 +433,16 @@ totpDescription: "인증 앱을 사용하여 일회성 비밀번호 입력"
moderator: "모더레이터"
moderation: "조정"
moderationNote: "조정 기록"
moderationNoteDescription: "모더레이터 역할을 가진 유저만 보이는 메모를 적을 수 있습니다."
addModerationNote: "조정 기록 추가하기"
moderationLogs: "모더레이션 로그"
nUsersMentioned: "{n}명이 언급함"
securityKeyAndPasskey: "보안 키 또는 패스키"
securityKeyAndPasskey: "보안 키 또는 패스 키"
securityKey: "보안 키"
lastUsed: "마지막 사용"
lastUsedAt: "마지막 사용: {t}"
unregister: "등록 해제"
passwordLessLogin: "비밀번호 없이 로그인"
passwordLessLoginDescription: "비밀번호 없이 보안 키 또는 패스키만 사용해서 로그인합니다."
passwordLessLoginDescription: "비밀번호를 사용하지 않고 보안 키 또는 패스 키 등으로만 로그인합니다."
resetPassword: "비밀번호 재설정"
newPasswordIs: "새로운 비밀번호는 \"{password}\" 입니다"
reduceUiAnimation: "UI의 애니메이션을 줄이기"
@@ -489,12 +467,10 @@ retype: "다시 입력"
noteOf: "{user}의 노트"
quoteAttached: "인용함"
quoteQuestion: "인용해서 작성하시겠습니까?"
attachAsFileQuestion: "붙여넣으려는 글이 너무 깁니다. 텍스트 파일로 첨부하시겠습니까?"
noMessagesYet: "아직 대화가 없습니다"
newMessageExists: "새 메시지가 있습니다"
onlyOneFileCanBeAttached: "메시지에 첨부할 수 있는 파일은 하나까지입니다"
signinRequired: "진행하기 전에 로그인 주세요"
signinOrContinueOnRemote: "계속하려면 사용하는 서버로 이동하거나 이 서버에 로그인해야 합니다."
signinRequired: "로그인 해주세요"
invitations: "초대"
invitationCode: "초대 코드"
checking: "확인하는 중입니다"
@@ -509,19 +485,15 @@ strongPassword: "강한 비밀번호"
passwordMatched: "일치합니다"
passwordNotMatched: "일치하지 않습니다"
signinWith: "{x}로 로그인"
signinFailed: "로그인할 수 없습니다. 사용자 이름과 비밀번호를 확인 주십시오."
signinFailed: "로그인할 수 없습니다. 사용자과 비밀번호를 확인하여 주십시오."
or: "혹은"
language: "언어"
uiLanguage: "UI 표시 언어"
aboutX: "{x}에 대하여"
emojiStyle: "이모지 스타일"
native: "기본"
menuStyle: "메뉴 스타일"
style: "스타일"
drawer: "서랍"
popup: "팝업"
showNoteActionsOnlyHover: "마우스가 올라간 때에만 노트 동작 버튼을 표시하기"
showReactionsCount: "노트의 반응 수를 표시하기"
disableDrawer: "드로어 메뉴를 사용하지 않기"
showNoteActionsOnlyHover: "노트 액션 버튼을 마우스를 올렸을 때에만 표시"
noHistory: "기록이 없습니다"
signinHistory: "로그인 기록"
enableAdvancedMfm: "고급 MFM을 활성화"
@@ -557,13 +529,13 @@ useObjectStorage: "오브젝트 스토리지를 사용"
objectStorageBaseUrl: "Base URL"
objectStorageBaseUrlDesc: "오브젝트 (미디어) 참조 URL 을 만들 때 사용되는 URL입니다. CDN 또는 프록시를 사용하는 경우 그 URL을 지정하고, 그 외의 경우 사용할 서비스의 가이드에 따라 공개적으로 액세스 할 수 있는 주소를 지정해 주세요. 예를 들어, AWS S3의 경우 'https://<bucket>.s3.amazonaws.com', GCS등의 경우 'https://storage.googleapis.com/<bucket>' 와 같이 지정합니다."
objectStorageBucket: "Bucket"
objectStorageBucketDesc: "사용하는 서비스의 bucket 이름을 지정해 주세요."
objectStorageBucketDesc: "사용 서비스의 bucket을 지정해주세요."
objectStoragePrefix: "Prefix"
objectStoragePrefixDesc: "이 Prefix 의 디렉토리 아래에 파일이 저장됩니다."
objectStorageEndpoint: "Endpoint"
objectStorageEndpointDesc: "AWS S3는 비워 두고 다른 서비스 각 서비스의 endpoint를 설정해 주세요. <host> 혹은 <host>:<port>’처럼 지정합니다."
objectStorageEndpointDesc: "AWS S3의 경우 공란, 다른 서비스의 경우 각 서비스의 가이드에 맞게 endpoint를 설정해주세요. '<host>' 혹은 '<host>:<port>' 와 같이 지정합니다."
objectStorageRegion: "Region"
objectStorageRegionDesc: "xx-east-1’처럼 region을 지정해 주세요. 사용하는 서비스에 region 개념이 없으면 us-east-1’처럼 설정해 주세요. AWS 설정 파일이나 환경 변수가 있으면 비워 주세요."
objectStorageRegionDesc: "'xx-east-1'와 같이 region을 지정해 주세요. 사용하는 서비스에 region 개념이 없는 경우 'us-east-1'으로 설정해 주세요. AWS 설정 파일 또는 환경 변수를 참조할 경우에는 비워주세요."
objectStorageUseSSL: "SSL 사용"
objectStorageUseSSLDesc: "API 호출시 HTTPS 를 사용하지 않는 경우 OFF 로 설정해 주세요"
objectStorageUseProxy: "연결에 프록시를 사용"
@@ -585,7 +557,7 @@ popout: "새 창으로 열기"
volume: "음량"
masterVolume: "마스터 볼륨"
notUseSound: "음소거 하기"
useSoundOnlyWhenActive: "Misskey 활성화만 소리 출력하기"
useSoundOnlyWhenActive: "Misskey 활성화 되어져 있을 때만 소리 출력하기"
details: "자세히"
chooseEmoji: "이모지 선택"
unableToProcess: "작업을 완료할 수 없습니다"
@@ -602,12 +574,10 @@ ascendingOrder: "오름차순"
descendingOrder: "내림차순"
scratchpad: "스크래치 패드"
scratchpadDescription: "스크래치 패드는 AiScript 의 테스트 환경을 제공합니다. Misskey 와 상호 작용하는 코드를 작성, 실행 및 결과를 확인할 수 있습니다."
uiInspector: "UI 인스펙터"
uiInspectorDescription: "메모리에 있는 UI 컴포넌트의 인스턴트 목록을 볼 수 있습니다. UI 컴포넌트는 Ui:C: 계열 함수로 만들어집니다."
output: "출력"
script: "스크립트"
disablePagesScript: "Pages 에서 AiScript 를 사용하지 않음"
updateRemoteUser: "원격 사용자 정보 갱신"
updateRemoteUser: "리모트 유저 정보 갱신"
unsetUserAvatar: "아바타 제거"
unsetUserAvatarConfirm: "아바타를 제거할까요?"
unsetUserBanner: "배너 제거"
@@ -616,7 +586,7 @@ deleteAllFiles: "모든 파일 삭제"
deleteAllFilesConfirm: "모든 파일을 삭제하시겠습니까?"
removeAllFollowing: "모든 팔로잉 해제"
removeAllFollowingDescription: "{host} 서버의 모든 팔로잉을 해제합니다. 해당 서버가 더 이상 존재하지 않는 경우 등에 실행해 주세요."
userSuspended: "이 사용자는 정지되었습니다."
userSuspended: "이 계정은 정지된 상태입니다."
userSilenced: "이 계정은 사일런스된 상태입니다."
yourAccountSuspendedTitle: "계정이 정지되었습니다"
yourAccountSuspendedDescription: "이 계정은 서버의 이용 약관을 위반하거나, 기타 다른 이유로 인해 정지되었습니다. 자세한 사항은 관리자에게 문의해 주십시오. 계정을 새로 생성하지 마십시오."
@@ -690,7 +660,7 @@ regexpErrorDescription: "{tab}단어 뮤트 {line}행의 정규 표현식에 오
instanceMute: "서버 뮤트"
userSaysSomething: "{name}님이 무언가를 말했습니다"
makeActive: "활성화"
display: "보기"
display: "표시"
copy: "복사"
metrics: "통계"
overview: "요약"
@@ -714,13 +684,16 @@ sample: "예시"
abuseReports: "신고"
reportAbuse: "신고"
reportAbuseRenote: "리노트 신고하기"
reportAbuseOf: "{name} 신고하기"
reportAbuseOf: "{name} 신고하기"
fillAbuseReportDescription: "신고하려는 이유를 자세히 알려주세요. 특정 게시물을 신고할 때에는 게시물의 URL도 포함해 주세요."
abuseReported: "신고를 보냈습니다. 신고해 주셔서 감사합니다."
reporter: "신고자"
reporteeOrigin: "피신고자"
reporterOrigin: "신고자"
forwardReport: "리모트 서버에도 신고 내용 보내기"
forwardReportIsAnonymous: "리모트 서버에서는 나의 정보를 볼 수 없으며, 익명의 시스템 계정으로 표시됩니다."
send: "전송"
abuseMarkAsResolved: "해결됨으로 표시"
openInNewTab: "새 탭에서 열기"
openInSideView: "사이드뷰로 열기"
defaultNavigationBehaviour: "기본 탐색 동작"
@@ -736,7 +709,7 @@ createNew: "새로 만들기"
optional: "옵션"
createNewClip: "새 클립 만들기"
unclip: "클립 해제"
confirmToUnclipAlreadyClippedNote: "이 노트는 {name} 클립을 이미 포함합니다. 클립에서 제외하시겠습니까?"
confirmToUnclipAlreadyClippedNote: "이 노트는 이미 \"{name}\" 클립에 포함되어 있습니다. 클립을 해제하시겠습니까?"
public: "공개"
private: "비공개"
i18nInfo: "Misskey는 자원봉사자들에 의해 다양한 언어로 번역되고 있습니다. {link}에서 번역에 참가할 수 있습니다."
@@ -749,13 +722,13 @@ repliedCount: "받은 답글 수"
renotedCount: "받은 리노트 수"
followingCount: "팔로우 수"
followersCount: "팔로워 수"
sentReactionsCount: "반응 수"
receivedReactionsCount: "받은 반응 수"
pollVotesCount: "투표 수"
pollVotedCount: "받은 투표 수"
sentReactionsCount: "보낸 리액션 수"
receivedReactionsCount: "받은 리액션 수"
pollVotesCount: "투표한 횟수"
pollVotedCount: "투표받은 수"
yes: "예"
no: "아니오"
driveFilesCount: "드라이브에 있는 파일 수"
driveFilesCount: "드라이브 파일 수"
driveUsage: "드라이브 사용량"
noCrawle: "검색엔진의 인덱싱 거부"
noCrawleDescription: "검색엔진에 사용자 페이지, 노트, 페이지 등의 콘텐츠를 인덱싱되지 않게 합니다."
@@ -777,7 +750,7 @@ experimentalFeatures: "실험실"
experimental: "실험실"
thisIsExperimentalFeature: "이 기능은 실험적인 기능입니다. 사양이 변경되거나 정상적으로 동작하지 않을 가능성이 있습니다."
developer: "개발자"
makeExplorable: "계정을 쉽게 발견하도록 하기"
makeExplorable: "\"발견하기\"에 내 계정 보이기"
makeExplorableDescription: "비활성화하면 \"발견하기\"에 나의 계정을 표시하지 않습니다."
showGapBetweenNotesInTimeline: "타임라인의 노트 사이를 띄워서 표시"
duplicate: "복제"
@@ -790,7 +763,7 @@ needReloadToApply: "변경 사항은 새로고침하면 적용됩니다."
showTitlebar: "타이틀 바를 표시하기"
clearCache: "캐시 비우기"
onlineUsersCount: "{n}명이 접속 중"
nUsers: "{n} 사용자"
nUsers: "{n} 유저"
nNotes: "{n} 노트"
sendErrorReports: "오류 보고서 보내기"
sendErrorReportsDescription: "이 설정을 활성화하면, 문제가 발생했을 때 오류에 대한 상세 정보를 Misskey에 보내어 더 나은 소프트웨어를 만드는 데에 도움을 줄 수 있습니다."
@@ -823,7 +796,7 @@ emailNotification: "메일 알림"
publish: "게시"
inChannelSearch: "채널에서 검색"
useReactionPickerForContextMenu: "우클릭하여 리액션 선택기 열기"
typingUsers: "{users}님이 입력"
typingUsers: "{users} 님이 입력하고 있어요.."
jumpToSpecifiedDate: "특정 날짜로 이동"
showingPastTimeline: "과거의 타임라인을 표시하고 있어요"
clear: "지우기"
@@ -836,7 +809,7 @@ addDescription: "설명 추가"
userPagePinTip: "각 노트의 메뉴에서 「프로필에 고정」을 선택하는 것으로, 여기에 노트를 표시해 둘 수 있어요."
notSpecifiedMentionWarning: "수신자가 선택되지 않은 멘션이 있어요"
info: "정보"
userInfo: "사용자 정보"
userInfo: "유저 정보"
unknown: "알 수 없음"
onlineStatus: "온라인 상태"
hideOnlineStatus: "온라인 상태 숨기기"
@@ -857,7 +830,6 @@ administration: "관리"
accounts: "계정"
switch: "전환"
noMaintainerInformationWarning: "관리자 정보가 설정되어 있지 않습니다."
noInquiryUrlWarning: "문의처 주소를 설정하지 않았습니다."
noBotProtectionWarning: "Bot 방어가 설정되어 있지 않습니다."
configure: "설정하기"
postToGallery: "갤러리에 업로드"
@@ -922,11 +894,10 @@ followersVisibility: "팔로워의 공개 범위"
continueThread: "글타래 더 보기"
deleteAccountConfirm: "계정이 삭제되고 되돌릴 수 없게 됩니다. 계속하시겠습니까? "
incorrectPassword: "비밀번호가 올바르지 않습니다."
incorrectTotp: "OTP 번호가 틀렸거나 유효기간이 만료되어 있을 수 있습니다."
voteConfirm: "\"{choice}\"에 투표하시겠습니까?"
hide: "숨기기"
useDrawerReactionPickerForMobile: "모바일에서 드로어 메뉴로 표시"
welcomeBackWithName: "{name}님, 환영합니다."
welcomeBackWithName: "환영합니다, {name}님"
clickToFinishEmailVerification: "[{ok}]를 눌러 이메일 인증을 완료하세요."
overridedDeviceKind: "장치 유형"
smartphone: "스마트폰"
@@ -1048,7 +1019,6 @@ thisPostMayBeAnnoyingHome: "홈에 게시"
thisPostMayBeAnnoyingCancel: "그만두기"
thisPostMayBeAnnoyingIgnore: "이대로 게시"
collapseRenotes: "이미 본 리노트를 간략화하기"
collapseRenotesDescription: "반응이나 리노트를 한 노트를 접어서 표시합니다."
internalServerError: "내부 서버 오류"
internalServerErrorDescription: "내부 서버에서 예기치 않은 오류가 발생했습니다."
copyErrorInfo: "오류 정보 복사"
@@ -1118,15 +1088,13 @@ serverRules: "서버 규칙"
pleaseConfirmBelowBeforeSignup: "이 서버에 가입하기 전에 아래 사항을 확인하여 주십시오."
pleaseAgreeAllToContinue: "계속하시려면 모든 항목에 동의하십시오."
continue: "계속"
preservedUsernames: "예약 사용자 이름"
preservedUsernames: "예약 사용자"
preservedUsernamesDescription: "예약할 사용자명을 한 줄에 하나씩 입력합니다. 여기에서 지정한 사용자명으로는 계정을 생성할 수 없게 됩니다. 단, 관리자 권한으로 계정을 생성할 때에는 해당되지 않으며, 이미 존재하는 계정도 영향을 받지 않습니다."
createNoteFromTheFile: "이 파일로 노트를 작성"
archive: "아카이브"
archived: "아카이브 됨"
unarchive: "보관 취소"
channelArchiveConfirmTitle: "{name} 채널을 보존하시겠습니까?"
channelArchiveConfirmDescription: "보존한 채널은 채널 목록과 검색 결과에 표시되지 않으며 새로운 노트도 작성할 수 없습니다."
thisChannelArchived: "이 채널은 보존되었습니다."
channelArchiveConfirmTitle: "{name} 을(를) 아카이브하시겠습니까?"
channelArchiveConfirmDescription: "아카이브한 채널은 채널 목록과 검색 결과에 표시되지 않으며, 채널에 새로운 노트를 작성할 수 없게 됩니다."
thisChannelArchived: "이 채널은 아카이브되었습니다."
displayOfNote: "노트 표시"
initialAccountSetting: "초기 설정"
youFollowing: "팔로잉"
@@ -1134,9 +1102,6 @@ preventAiLearning: "기계학습(생성형 AI)으로의 사용을 거부"
preventAiLearningDescription: "외부의 문장 생성 AI나 이미지 생성 AI에 대해 제출한 노트나 이미지 등의 콘텐츠를 학습의 대상으로 사용하지 않도록 요구합니다. 다만, 이 요구사항을 지킬 의무는 없기 때문에 학습을 완전히 방지하는 것은 아닙니다."
options: "옵션"
specifyUser: "사용자 지정"
lookupConfirm: "조회 할까요?"
openTagPageConfirm: "해시태그의 페이지를 열까요?"
specifyHost: "호스트 지정"
failedToPreviewUrl: "미리 볼 수 없음"
update: "업데이트"
rolesThatCanBeUsedThisEmojiAsReaction: "이 이모지를 리액션으로 사용할 수 있는 역할"
@@ -1191,11 +1156,10 @@ unnotifyNotes: "새 노트 알림 끄기"
authentication: "인증"
authenticationRequiredToContinue: "계속하려면 인증하십시오"
dateAndTime: "일시"
showRenotes: "리노트 보기"
showRenotes: "리노트 표시"
edited: "수정됨"
notificationRecieveConfig: "알림 설정"
mutualFollow: "맞팔로우"
followingOrFollower: "팔로 중이거나 팔로워"
fileAttachedOnly: "미디어를 포함한 노트만"
showRepliesToOthersInTimeline: "타임라인에 다른 사람에게 보내는 답글을 포함"
hideRepliesToOthersInTimeline: "타임라인에 다른 사람에게 보내는 답글을 포함하지 않음"
@@ -1246,74 +1210,16 @@ soundWillBePlayed: "소리가 재생됩니다"
showReplay: "리플레이 보기"
replay: "리플레이"
replaying: "리플레이 중"
endReplay: "리플레이 종료"
copyReplayData: "리플레이 데이터를 복사"
ranking: "랭킹"
lastNDays: "최근 {n}일"
backToTitle: "타이틀로 가기"
hemisphere: "거주 지역"
withSensitive: "민감한 파일이 포함된 노트 보기"
userSaysSomethingSensitive: "{name} 같은 민감한 파일이 포함된 "
userSaysSomethingSensitive: "{name} 민감한 파일이 포함된 게시물"
enableHorizontalSwipe: "스와이프하여 탭 전환"
loading: "불러오는 중"
surrender: "그만두기"
gameRetry: "다시 시도"
notUsePleaseLeaveBlank: "사용하지 않는 경우 비워두세요."
useTotp: "일회용 비밀번호 사용"
useBackupCode: "백업 코드 사용"
launchApp: "앱 실행"
useNativeUIForVideoAudioPlayer: "브라우저 UI에서 미디어 재생"
keepOriginalFilename: "원본 파일 이름을 유지"
keepOriginalFilenameDescription: "이 설정을 끄면 업로드를 할 때 파일 이름이 자동으로 무작위 문자열로 바뀝니다."
noDescription: "설명문이 없습니다"
alwaysConfirmFollow: "팔로우일 때 항상 확인하기"
inquiry: "문의하기"
tryAgain: "다시 시도해 주세요."
confirmWhenRevealingSensitiveMedia: "민감한 미디어를 열 때 두 번 확인"
sensitiveMediaRevealConfirm: "민감한 미디어입니다. 표시할까요?"
createdLists: "만든 리스트"
createdAntennas: "만든 안테나"
fromX: "{x}부터"
genEmbedCode: "임베디드 코드 만들기"
noteOfThisUser: "이 유저의 노트 목록"
clipNoteLimitExceeded: "더 이상 이 클립에 노트를 추가 할 수 없습니다."
performance: "퍼포먼스"
modified: "변경 있음"
discard: "파기"
thereAreNChanges: "{n}건 변경이 있습니다."
signinWithPasskey: "패스키로 로그인"
unknownWebAuthnKey: "등록되지 않은 패스키입니다."
passkeyVerificationFailed: "패스키 검증을 실패했습니다."
passkeyVerificationSucceededButPasswordlessLoginDisabled: "패스키를 검증했으나, 비밀번호 없이 로그인하기가 꺼져 있습니다."
messageToFollower: "팔로워에 보낼 메시지"
target: "대상"
_abuseUserReport:
forward: "전달"
forwardDescription: "익명 시스템 계정을 사용하여 리모트 서버에 신고 내용을 전달할 수 있습니다."
resolve: "해결됨"
accept: "인용"
reject: "기각"
resolveTutorial: "적절한 신고 내용에 대응한 경우, \"인용\"을 선택하여 \"해결됨\"으로 기록합니다.\n적절하지 않은 신고를 받은 경우, \"기각\"을 선택하여 \"기각\"으로 기록합니다."
_delivery:
status: "전송 상태"
stop: "정지됨"
resume: "전송 다시 시작"
_type:
none: "배포 중"
manuallySuspended: "수동 정지 중"
goneSuspended: "서버 삭제를 이유로 정지 중"
autoSuspendedForNotResponding: "서버 응답 없음을 이유로 정지 중"
_bubbleGame:
howToPlay: "설명"
hold: "홀드"
_score:
score: "점수"
scoreYen: "번 돈"
highScore: "최고 점수"
maxChain: "최대 콤보 수"
yen: "{yen}엔"
estimatedQty: "{qty}개"
scoreSweets: "오니기리 {onigiriQtyWithUnit}"
_howToPlay:
section1: "위치를 조정하여 상자에 물건을 떨어뜨립니다."
section2: "같은 종류의 물건이 붙으면 다른 물건으로 바뀌면서 점수를 얻게 됩니다."
@@ -1326,7 +1232,7 @@ _announcement:
end: "공지에서 내리기"
tooManyActiveAnnouncementDescription: "공지사항이 너무 많을 경우, 사용자 경험에 영향을 끼칠 가능성이 있습니다. 오래된 공지사항은 아카이브하시는 것을 권장드립니다."
readConfirmTitle: "읽음으로 표시합니까?"
readConfirmText: "{title}〉의 내용을 읽음으로 표시합니다."
readConfirmText: "\"{title}\"을(를) 읽음으로 표시합니다."
shouldNotBeUsedToPresentPermanentInfo: "신규 유저의 이용 경험에 악영향을 끼칠 수 있으므로, 일시적인 알림 수단으로만 사용하고 고정된 정보에는 사용을 지양하는 것을 추천합니다."
dialogAnnouncementUxWarn: "다이얼로그 형태의 알림이 동시에 2개 이상 존재하는 경우, 사용자 경험에 악영향을 끼칠 수 있으므로 신중히 결정하십시오."
silence: "조용히 알림"
@@ -1428,9 +1334,6 @@ _serverSettings:
fanoutTimelineDescription: "활성화하면 각종 타임라인을 가져올 때의 성능을 대폭 향상하며, 데이터베이스의 부하를 줄일 수 있습니다. 단, Redis의 메모리 사용량이 증가합니다. 서버의 메모리 용량이 작거나, 서비스가 불안정해지는 경우 비활성화할 수 있습니다."
fanoutTimelineDbFallback: "데이터베이스를 예비로 사용하기"
fanoutTimelineDbFallbackDescription: "활성화하면 타임라인의 캐시되어 있지 않은 부분에 대해 DB에 질의하여 정보를 가져옵니다. 비활성화하면 이를 실행하지 않음으로써 서버의 부하를 줄일 수 있지만, 타임라인에서 가져올 수 있는 게시물 범위가 한정됩니다."
reactionsBufferingDescription: "활성화 한 경우, 리액션 작성 퍼포먼스가 대폭 향상되어 DB의 부하를 줄일 수 있으나, Redis의 메모리 사용량이 많아집니다."
inquiryUrl: "문의처 URL"
inquiryUrlDescription: "서버 운영자에게 보내는 문의 양식의 URL이나 운영자의 연락처 등이 적힌 웹 페이지의 URL을 설정합니다."
_accountMigration:
moveFrom: "다른 계정에서 이 계정으로 이사"
moveFromSub: "다른 계정에 대한 별칭을 생성"
@@ -1610,7 +1513,7 @@ _achievements:
_iLoveMisskey:
title: "I Love Misskey"
description: "\"I ❤ #Misskey\"를 포스트했습니다"
flavor: "Misskey를 이용해 주셔서 감사합니다! 개발 팀"
flavor: "Misskey를 이용해주셔서 감사합니다! - 개발팀 일동"
_foundTreasure:
title: "보물찾기"
description: "숨겨진 보물을 발견했습니다"
@@ -1648,10 +1551,10 @@ _achievements:
description: "3개 이상의 창을 열었습니다"
_driveFolderCircularReference:
title: "순환 참조"
description: "드라이브 폴더에 스스로를 넣게 했습니다"
description: "드라이브 폴더를 자신을 가리키도록 만드려 시도했습니다"
_reactWithoutRead:
title: "읽고 답하긴 하시는 건가요?"
description: "100자가 넘는 노트 작성한 지 3초 안에 반응했어요"
description: "100자가 넘는 노트 작성되고 3초 안에 반응했습니다"
_clickedClickHere:
title: "여기를 누르세요"
description: "여기를 눌렀습니다"
@@ -1738,7 +1641,6 @@ _role:
gtlAvailable: "글로벌 타임라인 보이기"
ltlAvailable: "로컬 타임라인 보이기"
canPublicNote: "공개 노트 허용"
mentionMax: "노트에 넣을 수 있는 멘션 수"
canInvite: "서버 초대 코드 발행"
inviteLimit: "초대 한도"
inviteLimitCycle: "초대 발급 간격"
@@ -1747,43 +1649,31 @@ _role:
canManageAvatarDecorations: "아바타 꾸미기 관리"
driveCapacity: "드라이브 용량"
alwaysMarkNsfw: "파일을 항상 NSFW로 지정"
canUpdateBioMedia: "아바타 및 배너 이미지 변경 허용"
pinMax: "고정할 수 있는 노트 수"
antennaMax: "만들 수 있는 안테나 수"
antennaMax: "최대 안테나 생성 허용 수"
wordMuteMax: "단어 뮤트할 수 있는 문자 수"
webhookMax: "만들 수 있는 Webhook 수"
clipMax: "만들 수 있는 클립 수"
noteEachClipsMax: "클립에 넣을 수 있는 노트 수"
userListMax: "만들 수 있는 사용자 리스트 수"
userEachUserListsMax: "사용자 리스트에 넣을 수 있는 사용자 수"
webhookMax: "생성할 수 있는 웹훅 수"
clipMax: "생성할 수 있는 클립 수"
noteEachClipsMax: "클립에 추가할 수 있는 노트 수"
userListMax: "생성할 수 있는 유저 리스트 수"
userEachUserListsMax: "유저 리스트당 최대 사용자 수"
rateLimitFactor: "요청 빈도 제한"
descriptionOfRateLimitFactor: "작을수록 제한이 완화되고, 클수록 제한이 강화됩니다."
canHideAds: "광고 숨기기"
canSearchNotes: "노트 검색 이용 가능 여부"
canUseTranslator: "번역 기능의 사용"
avatarDecorationLimit: "아바타 장식의 최대 붙임 개수"
canImportAntennas: "안테나 가져오기 허용"
canImportBlocking: "차단 목록 가져오기 허용"
canImportFollowing: "팔로우 가져오기 허용"
canImportMuting: "뮤트 목록 가져오기 허용"
canImportUserLists: "리스트 목록 가져오기 허용"
_condition:
roleAssignedTo: "수동 역할에 이미 할당됨"
isLocal: "로컬 사용자"
isRemote: "원격 사용자"
isCat: "고양이 사용자"
isBot: "봇 사용자"
isSuspended: "정지된 사용자"
isLocked: "잠금 계정 사용자"
isExplorable: "‘계정을 쉽게 발견하도록 하기’를 활성화한 사용자"
isRemote: "리모트 사용자"
createdLessThan: "가입한 지 다음 일수 이내인 유저"
createdMoreThan: "가입한 지 다음 일수 이상인 유저"
followersLessThanOrEq: "팔로워 수가 다음 이하인 유저"
followersMoreThanOrEq: "팔로워 수가 다음보다 많은 사용자"
followersMoreThanOrEq: "팔로워 수가 다음 이상인 유저"
followingLessThanOrEq: "팔로잉 수가 다음 이하인 유저"
followingMoreThanOrEq: "팔로잉 수가 다음보다 많은 사용자"
followingMoreThanOrEq: "팔로잉 수가 다음 이상인 유저"
notesLessThanOrEq: "노트 수가 다음 이하인 유저"
notesMoreThanOrEq: "노트 수가 다음보다 많은 사용자"
notesMoreThanOrEq: "노트 수가 다음 이상인 유저"
and: "다음을 모두 만족"
or: "다음을 하나라도 만족"
not: "다음을 만족하지 않음"
@@ -1845,7 +1735,6 @@ _plugin:
installWarn: "신뢰할 수 없는 플러그인은 설치하지 않는 것이 좋습니다."
manage: "플러그인 관리"
viewSource: "소스 보기"
viewLog: "로그 보기"
_preferencesBackups:
list: "생성한 백업"
saveNew: "새 백업 만들기"
@@ -1856,12 +1745,12 @@ _preferencesBackups:
cannotSave: "저장하지 못했습니다"
nameAlreadyExists: "\"{name}\" 백업이 이미 존재합니다. 다른 이름을 설정하여 주십시오."
applyConfirm: "\"{name}\" 백업을 현재 기기에 적용하시겠습니까? 현재 설정은 덮어 씌워집니다."
saveConfirm: "{name} 백업을 덮어쓰시겠습니까?"
deleteConfirm: "{name} 백업을 삭제하시겠습니까?"
renameConfirm: "{old} 백업을 {new} 백업으로 바꾸시겠습니까?"
saveConfirm: "{name} 을 덮어쓰시겠습니까?"
deleteConfirm: "{name} 을(를) 삭제하시겠습니까?"
renameConfirm: "\"{old}\" 백업을 \"{new}\"(으)로 바꾸시겠습니까?"
noBackups: "저장된 백업이 없습니다. \"새 백업 만들기\"를 눌러 현재 클라이언트 설정을 서버에 백업할 수 있습니다."
createdAt: "만든 날짜: {date} {time}"
updatedAt: "고친 날짜: {date} {time}"
createdAt: "생성 날짜: {date} {time}"
updatedAt: "갱신 날짜: {date} {time}"
cannotLoad: "가져오기에 실패했습니다"
invalidFile: "파일 형식이 올바르지 않습니다."
_registry:
@@ -1996,15 +1885,16 @@ _sfx:
note: "새 노트"
noteMy: "내 노트"
notification: "알림"
antenna: "안테나 수신"
channel: "채널 알림"
reaction: "리액션 선택"
_soundSettings:
driveFile: "드라이브에 있는 오디오를 사용"
driveFileWarn: "드라이브에 있는 파일을 선택하세요."
driveFileTypeWarn: "이 파"
driveFileTypeWarn: "이 파일은 지원되지 않습니다."
driveFileTypeWarnDescription: "오디오 파일을 선택하세요."
driveFileDurationWarn: "오디오가 너무 깁니다"
driveFileDurationWarnDescription: "긴 오디오로 설정할 경우 미스키 사용에 지장이 갈 수도 있습니다. 그래도 괜찮습니까?"
driveFileError: "오디오를 불러올 수 없습니다. 설정을 바꿔주세요."
_ago:
future: "미래"
justNow: "방금 전"
@@ -2034,6 +1924,7 @@ _2fa:
registerTOTP: "인증 앱 설정 시작"
step1: "먼저, {a}나 {b}등의 인증 앱을 사용 중인 디바이스에 설치합니다."
step2: "그 후, 표시되어 있는 QR코드를 앱으로 스캔합니다."
step2Click: "QR 코드를 클릭하면 기기에 설치된 인증 앱에 등록할 수 있습니다."
step2Uri: "데스크톱 앱을 사용하려면 다음 URI를 입력하십시오"
step3Title: "인증 코드 입력"
step3: "앱에 표시된 토큰을 입력하시면 완료됩니다."
@@ -2046,7 +1937,7 @@ _2fa:
securityKeyName: "키 이름 입력"
tapSecurityKey: "브라우저의 지시에 따라 보안 키 또는 패스키를 등록하여 주십시오"
removeKey: "보안 키를 삭제"
removeKeyConfirm: "{name} 을 삭제하시겠습니까?"
removeKeyConfirm: "{name} 을(를) 삭제하시겠습니까?"
whyTOTPOnlyRenew: "보안 키가 등록되어 있는 경우 인증 앱을 해제할 수 없습니다."
renewTOTP: "인증 앱 재설정"
renewTOTPConfirm: "기존에 등록되어 있던 인증 키는 사용하지 못하게 됩니다."
@@ -2057,7 +1948,6 @@ _2fa:
backupCodesDescription: "인증 앱을 사용할 수 없게 된 경우 아래 백업 코드를 사용하여 계정에 액세스 할 수 있습니다.이 코드들은 반드시 안전한 장소에 보관하십시오.각 코드는 한 번만 사용할 수 있습니다."
backupCodeUsedWarning: "백업 코드가 사용되었습니다.인증 앱을 사용할 수 없게 된 경우, 조속히 인증 앱을 다시 설정해 주십시오."
backupCodesExhaustedWarning: "백업 코드가 모두 사용되었습니다.인증 앱을 사용할 수 없는 경우 더 이상 계정에 액세스하는 것이 불가능합니다.인증 앱을 다시 등록해 주세요."
moreDetailedGuideHere: "여기에 자세한 설명이 있습니다"
_permissions:
"read:account": "계정의 정보를 봅니다"
"write:account": "계정의 정보를 변경합니다"
@@ -2108,6 +1998,7 @@ _permissions:
"read:admin:server-info": "서버 정보 보기"
"read:admin:show-moderation-log": "조정 기록 보기"
"read:admin:show-user": "사용자 개인정보 보기"
"read:admin:show-users": "사용자 개인정보 보기"
"write:admin:suspend-user": "사용자 정지하기"
"write:admin:unset-user-avatar": "사용자 아바타 삭제하기"
"write:admin:unset-user-banner": "사용자 배너 삭제하기"
@@ -2187,7 +2078,7 @@ _widgets:
postForm: "글 입력란"
slideshow: "슬라이드 쇼"
button: "버튼"
onlineUsers: "온라인 사용자"
onlineUsers: "온라인 유저"
jobQueue: "작업 대기열"
serverMetric: "서버 통계"
aiscript: "AiScript 콘솔"
@@ -2249,7 +2140,7 @@ _postForm:
f: "작성해주시길 기다리고 있어요..."
_profile:
name: "이름"
username: "사용자 이름"
username: "유저명"
description: "자기소개"
youCanIncludeHashtags: "해시 태그를 포함할 수 있습니다."
metadata: "추가 정보"
@@ -2261,9 +2152,6 @@ _profile:
changeBanner: "배너 이미지 변경"
verifiedLinkDescription: "내용에 자신의 프로필로 향하는 링크가 포함된 페이지의 URL을 삽입하면 소유자 인증 마크가 표시됩니다."
avatarDecorationMax: "최대 {max}개까지 장식을 할 수 있습니다."
followedMessage: "팔로우 받았을 때 메시지"
followedMessageDescription: "팔로우 받았을 때 상대방에게 보여줄 단문 메시지를 설정할 수 있습니다."
followedMessageDescriptionForLockedAccount: "팔로우를 승인제로 한 경우, 팔로우 요청을 수락했을 때 보여줍니다."
_exportOrImport:
allNotes: "모든 노트"
favoritedNotes: "즐겨찾기한 노트"
@@ -2280,7 +2168,7 @@ _charts:
apRequest: "요청"
usersIncDec: "유저 수 증감"
usersTotal: "유저 수 합계"
activeUsers: "활동 사용자 수"
activeUsers: "활성 유저 수"
notesIncDec: "노트 수 증감"
localNotesIncDec: "로컬 노트 수 증감"
remoteNotesIncDec: "리모트 노트 수 증감"
@@ -2291,8 +2179,8 @@ _charts:
storageUsageTotal: "스토리지 사용량 합계"
_instanceCharts:
requests: "요청"
users: "사용자차이"
usersTotal: "누적 사용자 수"
users: "유저증감"
usersTotal: "누적 유저 수"
notes: "노트 수 증감"
notesTotal: "누적 노트 수"
ff: "팔로잉/팔로워 증감"
@@ -2321,7 +2209,6 @@ _play:
title: "제목"
script: "스크립트"
summary: "설명"
visibilityDescription: "비공개로 설정하면 프로필에 표시하지 않지만 URL을 아는 사람은 계속해서 접속할 수 있습니다."
_pages:
newPage: "페이지 만들기"
editPage: "페이지 수정"
@@ -2332,7 +2219,7 @@ _pages:
pageSetting: "페이지 설정"
nameAlreadyExists: "지정한 페이지 URL이 이미 존재합니다"
invalidNameTitle: "유효하지 않은 페이지 URL입니다"
invalidNameText: "비어있지 확인해 주세요"
invalidNameText: "비어있지 않은지 확인해주세요"
editThisPage: "이 페이지를 편집"
viewSource: "소스 보기"
viewPage: "페이지 보기"
@@ -2356,7 +2243,6 @@ _pages:
eyeCatchingImageSet: "아이캐치 이미지를 설정"
eyeCatchingImageRemove: "아이캐치 이미지를 삭제"
chooseBlock: "블록 추가"
enterSectionTitle: "섹션 타이틀을 입력하기"
selectType: "종류 선택"
contentBlocks: "콘텐츠"
inputBlocks: "입력"
@@ -2367,8 +2253,6 @@ _pages:
section: "섹션"
image: "이미지"
button: "버튼"
dynamic: "동적 블록"
dynamicDescription: "이 블록은 폐지되었습니다. 이제부터 {play}에서 이용해 주세요."
note: "노트필기"
_note:
id: "노트 ID"
@@ -2398,29 +2282,22 @@ _notification:
sendTestNotification: "테스트 알림 보내기"
notificationWillBeDisplayedLikeThis: "알림이 이렇게 표시됩니다"
reactedBySomeUsers: "{n}명이 반응했습니다"
likedBySomeUsers: "{n}명이 좋아요를 했습니다"
renotedBySomeUsers: "{n}명이 리노트했습니다"
followedBySomeUsers: "{n}명에게 팔로우됨"
flushNotification: "알림 이력을 초기화"
exportOfXCompleted: "{x} 추출에 성공했습니다."
login: "로그인 알림이 있습니다"
_types:
all: "전부"
note: "사용자의 새 "
note: "유저의 새 게시물"
follow: "팔로잉"
mention: "멘션"
reply: "답글"
renote: "리노트"
quote: "인용"
reaction: "반응"
reaction: "리액션"
pollEnded: "투표가 종료됨"
receiveFollowRequest: "팔로우 요청을 받았을 때"
followRequestAccepted: "팔로우 요청이 승인되었을 때"
roleAssigned: "역할이 부여 됨"
achievementEarned: "도전 과제 획득"
exportCompleted: "추출을 성공함"
login: "로그인"
test: "알림 테스트"
app: "연동된 앱을 통한 알림"
_actions:
followBack: "팔로우"
@@ -2430,7 +2307,6 @@ _deck:
alwaysShowMainColumn: "메인 칼럼 항상 표시"
columnAlign: "칼럼 정렬"
addColumn: "칼럼 추가"
newNoteNotificationSettings: "새 노트 알림 설정"
configureColumn: "칼럼 설정"
swapLeft: "왼쪽으로 이동"
swapRight: "오른쪽으로 이동"
@@ -2459,7 +2335,7 @@ _deck:
direct: "다이렉트"
roleTimeline: "역할 타임라인"
_dialog:
charactersExceeded: "최대 글자수를 초과하였습니다! 현재 {current} / 최대 {max}"
charactersExceeded: "최대 글자수를 초과하였습니다! 현재 {current} / 최대 {min}"
charactersBelow: "최소 글자수 미만입니다! 현재 {current} / 최소 {min}"
_disabledTimeline:
title: "비활성화된 타임라인"
@@ -2469,10 +2345,9 @@ _drivecleaner:
orderByCreatedAtAsc: "등록일이 오래된 순"
_webhookSettings:
createWebhook: "Webhook 생성"
modifyWebhook: "Webhook 수정"
name: "이름"
secret: "시크릿"
trigger: "트리거"
events: "Webhook을 실행할 타이밍"
active: "활성화"
_events:
follow: "누군가를 팔로우했을 때"
@@ -2482,27 +2357,6 @@ _webhookSettings:
renote: "누군가 내 글을 리노트했을 때"
reaction: "누군가 내 노트에 리액션했을 때"
mention: "누군가 나를 멘션했을 때"
_systemEvents:
abuseReport: "유저롭"
abuseReportResolved: "받은 신고를 처리했을 때"
userCreated: "유저가 생성되었을 때"
deleteConfirm: "Webhook을 삭제할까요?"
testRemarks: "스위치 오른쪽에 있는 버튼을 클릭하여 더미 데이터를 사용한 테스트용 웹 훅을 보낼 수 있습니다."
_abuseReport:
_notificationRecipient:
createRecipient: "신고 수신자 추가"
modifyRecipient: "신고 수신자 편집"
recipientType: "알림 종류"
_recipientType:
mail: "이메일"
webhook: "Webhook"
_captions:
mail: "모더레이터 권한을 가진 사용자의 이메일 주소에 알림을 보냅니다 (신고를 받은 때에만)"
webhook: "지정한 SystemWebhook에 알림을 보냅니다 (신고를 받은 때와 해결했을 때에 송신)"
keywords: "키워드"
notifiedUser: "알릴 사용자"
notifiedWebhook: "사용할 Webhook"
deleteConfirm: "수신자를 삭제하시겠습니까?"
_moderationLogTypes:
createRole: "역할 생성"
deleteRole: "역할 삭제"
@@ -2518,7 +2372,7 @@ _moderationLogTypes:
updateUserNote: "조정 기록 갱신"
deleteDriveFile: "파일 삭제"
deleteNote: "노트 삭제"
createGlobalAnnouncement: "전역 공지사항 생성"
createGlobalAnnouncement: "모든 공지사항 만들기"
createUserAnnouncement: "사용자 공지사항 만들기"
updateGlobalAnnouncement: "모든 공지사항 수정"
updateUserAnnouncement: "사용자 공지사항 수정"
@@ -2531,8 +2385,6 @@ _moderationLogTypes:
markSensitiveDriveFile: "파일에 열람주의를 설정"
unmarkSensitiveDriveFile: "파일에 열람주의를 해제"
resolveAbuseReport: "신고 처리"
forwardAbuseReport: "신고 전달"
updateAbuseReportNote: "신고 조정 노트 갱신"
createInvitation: "초대 코드 생성"
createAd: "광고 생성"
deleteAd: "광고 삭제"
@@ -2542,16 +2394,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "아바타 장식 삭제"
unsetUserAvatar: "유저 아바타 제거"
unsetUserBanner: "유저 배너 제거"
createSystemWebhook: "SystemWebhook을 생성"
updateSystemWebhook: "SystemWebhook을 수정"
deleteSystemWebhook: "SystemWebhook을 삭제"
createAbuseReportNotificationRecipient: "신고 알림 수신자 생성"
updateAbuseReportNotificationRecipient: "신고 알림 수신자 편집"
deleteAbuseReportNotificationRecipient: "신고 알림 수신자 삭제"
deleteAccount: "계정을 삭제"
deletePage: "페이지를 삭제"
deleteFlash: "Play를 삭제"
deleteGalleryPost: "갤러리 포스트를 삭제"
_fileViewer:
title: "파일 상세"
type: "파일 유형"
@@ -2617,7 +2459,7 @@ _dataSaver:
_hemisphere:
N: "북반구"
S: "남반구"
caption: "일부 클라이언트 설정에서 계절을 판단하려고 사용합니다."
caption: "일부 클라이언트 설정에서 계절을 판단하기 위해 사용합니다."
_reversi:
reversi: "리버시"
gameSettings: "대국 설정"
@@ -2625,80 +2467,42 @@ _reversi:
blackOrWhite: "선공/후공"
blackIs: "{name}님이 흑(선공)"
rules: "규칙"
thisGameIsStartedSoon: "대국 곧 시작니다"
waitingForOther: "상대의 준비가 끝나기를 기다리고 있습니다."
waitingForMe: "의 준비가 끝나기를 기다리고 있습니다."
thisGameIsStartedSoon: "대국 곧 시작니다"
waitingForOther: "상대의 준비가 완료되기를 기다리고 있습니다."
waitingForMe: "당신의 준비가 완료되기를 기다리고 있습니다."
waitingBoth: "준비하세요"
ready: "준비 완료"
cancelReady: "준비되지 않음"
cancelReady: "준비 다시 시작"
opponentTurn: "상대의 차례입니다"
myTurn: "의 차례입니다"
turnOf: "{name}의 차례입니다"
pastTurnOf: "{name}의 차례"
myTurn: "당신의 차례입니다"
turnOf: "{name}의 차례입니다"
pastTurnOf: "{name}의 차례"
surrender: "기권"
surrendered: "상대의 기권"
surrendered: "기권에 의해"
timeout: "시간 초과"
drawn: "무승부"
won: "{name}의 승리"
won: "{name}의 승리"
black: "흑"
white: "백"
total: "합계"
turnCount: "{count}번째 수"
turnCount: "{count}턴 째"
myGames: "내 대국"
allGames: "모 대국"
allGames: "모두의 대국"
ended: "종료"
playing: "대국 중"
isLlotheo: "돌이 적은 이 승리(로세오)"
loopedMap: "순환 지도"
canPutEverywhere: "어디 둘 수 있는 모드"
timeLimitForEachTurn: "각 수의 시간 제한"
freeMatch: "자유 대국"
lookingForPlayer: "대국 상대를 찾고 있습니다"
isLlotheo: "돌이 적은 사람이 승리 (로세오)"
loopedMap: "루프 지도"
canPutEverywhere: "어디에도 둘 수 있는 모드"
timeLimitForEachTurn: "1턴의 시간 제한"
freeMatch: "프리매치"
lookingForPlayer: "상대를 찾고 있습니다"
gameCanceled: "대국이 취소되었습니다"
shareToTlTheGameWhenStart: "대국 시작할 때 타임라인에 공유"
iStartedAGame: "대국 시작하였습니다! #MisskeyReversi"
opponentHasSettingsChanged: "상대 설정을 변경했습니다"
allowIrregularRules: "규칙 변경 허(완전 자유)"
disallowIrregularRules: "규칙 변경 없음"
showBoardLabels: "판에 행·열 번호 표시"
useAvatarAsStone: "돌을 아이콘으로 표시"
shareToTlTheGameWhenStart: "대국 시작 타임라인에 대국을 게시"
iStartedAGame: "대국 시작되었습니다! #MisskeyReversi"
opponentHasSettingsChanged: "상대방이 설정을 변경했습니다"
allowIrregularRules: "규칙변경 허(완전 자유)"
disallowIrregularRules: "규칙변경 없음"
_offlineScreen:
title: "오프라인 - 서버에 접속할 수 없습니다"
header: "서버에 접속할 수 없습니다"
_urlPreviewSetting:
title: "URL 미리보기 설정"
enable: "URL 미리보기 활성화"
timeout: "미리보기를 불러올 때의 타임아웃 (ms)"
timeoutDescription: "미리보기를 로딩하는데 걸리는 시간이 정한 시간보다 오래 걸리는 경우, 미리보기를 생성하지 않습니다."
maximumContentLength: "Content-Length의 최대치 (byte)"
maximumContentLengthDescription: "Content-Length가 이 값을 넘어서면 미리보기를 생성하지 않습니다."
requireContentLength: "Content-Length를 받아온 경우에만 "
requireContentLengthDescription: "상대 서버가 Content-Length를 되돌려주지 않는다면 미리보기를 만들지 않습니다."
userAgent: "User-Agent"
userAgentDescription: "미리보기를 얻을 때 사용한 User-Agent를 설정합니다. 비어 있다면 기본값의 User-Agent를 사용합니다."
summaryProxy: "미리보기를 만든 프록시의 엔드포인트"
summaryProxyDescription: "Misskey 본체를 사용하지 않고 서머리 프록시로 미리보기를 만듭니다."
summaryProxyDescription2: "프록시는 아래의 파라미터를 쿼리 문자열로 연동합니다. 프록시 측이 이를 지원하지 않으면 설정값을 무시합니다."
_mediaControls:
pip: "화면 속 화면"
playbackRate: "재생 속도"
loop: "반복 재생"
_contextMenu:
title: "컨텍스트 메뉴"
app: "애플리케이션"
appWithShift: "Shift 키로 애플리케이션"
native: "브라우저의 UI"
_embedCodeGen:
title: "임베디드 코드를 커스터마이즈"
header: "해더를 표시"
autoload: "자동으로 다음 코드를 실행 (비권장)"
maxHeight: "최대 높이"
maxHeightDescription: "최대 값을 무시하려면 0을 입력하세요. 위젯이 상하로 길어지는 것을 방지하려면, 임의의 값을 입력해 주세요."
maxHeightWarn: "높이 최대 값이 설정되어져 있지 않습니다(0). 의도적으로 설정 하지 않았다면 임의의 값을 설정해주세요."
previewIsNotActual: "미리보기로 표시할 수 있는 크기보다 큽니다. 실제로 넣은 코드의 표시가 다른 경우가 있습니다."
rounded: "외곽선을 둥글게 하기"
border: "외곽선에 테두리를 씌우기"
applyToPreview: "미리보기에 반영"
generateCode: "임베디드 코드를 만들기"
codeGenerated: "코드를 만들었습니다."
codeGeneratedDescription: "만들어진 코드를 웹 사이트에 붙여서 사용하세요."

View File

@@ -18,15 +18,15 @@ enterUsername: "ປ້ອນຊື່ຜູ້ໃຊ້"
renotedBy: "Renoted ໂດຍ {user}"
noNotes: "ບໍ່ມີ note"
noNotifications: "ບໍ່ມີການແຈ້ງເຕືອນ"
instance: "ເຊີຟເວີຣ໌"
settings: "ຕັ້ງຄ່າ"
instance: "ອີນສະແຕນ"
settings: "ກຳນົດຄ່າ"
notificationSettings: "ຕັ້ງຄ່າການແຈ້ງເຕືອນ"
basicSettings: "ການຕັ້ງຄ່າພື້ນຖານ"
otherSettings: "ການຕັ້ງຄ່າອື່ນໆ"
openInWindow: "ເປີດໃນ window"
profile: "ໂປຣໄຟລ໌"
openInWindow: "ເປີດໃນປ່ອງຢ້ຽມ"
profile: "ໂພຼຟາຍ"
timeline: "ໄທມ໌ໄລນ໌"
noAccountDescription: "ຜູ້ໃຊ້ຄົນນີ້ຍັງບໍ່ໄດ້ຂຽນຄຳແນະນຳໂຕ"
noAccountDescription: "ຜູ້ໃຊ້ນີ້ຍັງບໍ່ໄດ້ຂຽນໃນຊີວະປະຫວັດຂອງເຂົາເຈົ້າເທື່ອ"
login: "ເຂົ້າ​ສູ່​ລະ​ບົບ"
loggingIn: "ກຳລັງເຂົ້າສູ່ລະບົບ..."
logout: "ອອກ​ຈາກ​ລະ​ບົບ"
@@ -37,7 +37,7 @@ users: "ຜູ້ໃຊ້"
addUser: "ເພີ່ມຜູ້ໃຊ້"
favorite: "ເພີ່ມໃສ່ລາຍການທີ່ມັກ"
favorites: "ລາຍການທີ່ມັກ"
unfavorite: "ເອົາອອກຈາກລາຍການທີ່ມັກ"
unfavorite: "ລຶບອອກຈາກລາຍການທີ່ມັກ"
favorited: "ເພີ່ມໃສ່ລາຍການທີ່ມັກແລ້ວ"
alreadyFavorited: "ເພີ່ມເຂົ້າໃນລາຍການທີ່ມັກແລ້ວ."
cantFavorite: "ບໍ່ສາມາດເພີ່ມໃສ່ລາຍການທີ່ມັກໄດ້."
@@ -48,41 +48,41 @@ copyLink: "ຄັດລອກລິ້ງ"
copyLinkRenote: "ຄັດລອກລິ້ງຂອງ renote"
delete: "ລຶບ"
deleteAndEdit: "ລຶບ​ແລະ​ແກ້​ໄຂ​"
deleteAndEditConfirm: "ຕ້ອງການລຶບ note ນີ້ແລະແກ້ໄຂໃໝ່ແມ່ນບໍ່? reaction, renote ແລະການຕອບກັບຕໍ່ note ນີ້ ທັງເບິດຈະຖືກລຶບອອກ"
deleteAndEditConfirm: "ເຈົ້າ​ແນ່​ໃຈ​ບໍ່? ທີ່ທ່ານຕ້ອງການທີ່ຈະລຶບ note ນີ້ ແລະແກ້ໄຂມັນ ທ່ານອາດຈະສູນເສຍ reaction, renote, ແລະການຕອບກັບທັງໝົດ"
addToList: "ເພີ່ມໃສ່ລາຍຊື່"
addToAntenna: "ເພີ່ມໃສ່ເສົາອາກາດ"
sendMessage: "ສົ່ງຂໍ້ຄວາມ"
copyRSS: "ຄັດລອກ RSS"
copyUsername: "ຄັດລອກຊື່ຜູ້ໃຊ້"
copyUserId: "ຄັດລອກ ID ຜູ້ໃຊ້"
copyNoteId: "ຄັດລອກ ID ຂອງ note"
copyFileId: "ຄັດລອກ ID ໄຟລ໌"
copyFolderId: "ຄັດລອກ ID ໂຟລ໌ເດີຣ໌"
copyProfileUrl: "ຄັດລອກ URL ໂປຣໄຟລ໌"
copyRSS: "ສຳເນົາ RSS"
copyUsername: "ສຳເນົາຊື່ຜູ້ໃຊ້"
copyUserId: "ສຳເນົາ ID ຜູ້ໃຊ້"
copyNoteId: "ສຳເນົາ ID ບັນທຶກ"
copyFileId: "ສຳເນົາ ID ໄຟລ໌"
copyFolderId: "ສຳເນົາ ID ໂຟເດີ"
copyProfileUrl: "ສຳເນົາ URL ໂປຣໄຟລ໌"
searchUser: "ຄົ້ນຫາຜູ້ໃຊ້"
reply: "ຕອບ​ກັບ"
reply: "ຕອບ​ໄປ​ທີ"
loadMore: "ໂຫຼດເພີ່ມເຕີມ"
showMore: "ໂຫຼດເພີ່ມເຕີມ"
showLess: "ປິດ"
youGotNewFollower: "ໄດ້ຕິດຕາມເຈົ້າ"
receiveFollowRequest: "ມີຄຳຂໍຕິດຕາມສົ່ງມາ"
followRequestAccepted: "ການຕິດຕາມໄດ້ຮັບອນຸຍາດແລ້ວ"
mention: "ເວົ້າເຖີງ"
mentions: "ເວົ້າເຖີງເຈົ້າ"
youGotNewFollower: "ໄດ້ຕິດຕາມທ່ານ"
receiveFollowRequest: "ປະຕິບັດຕາມຄໍາຮ້ອງຂໍທີ່ໄດ້ຮັບ"
followRequestAccepted: "ຜູ້ຕິດຕາມໄດ້ຍອມຮັບຄໍາຮ້ອງຂໍຂອງທ່ານ"
mention: "ກ່າວຖືງ"
mentions: "ກ່າວເຖິງ"
directNotes: "ໂພສ Direct note"
importAndExport: "ນໍາເຂົ້າ / ສົ່ງອອກ"
import: "ນຳເຂົ້າ"
export: "ສົ່ງອອກ"
files: "ໄຟລ໌"
download: "ດາວໂຫລດ"
driveFileDeleteConfirm: "ຕ້ອງການລຶບໄຟລ໌ {name}” ແມ່ນບໍ່? Note ທີ່ແນບມາກັບໄຟລ໌ນີ້ຈະຖືກລຶບອອກ"
unfollowConfirm: "ຕ້ອງການເລີກຕິດຕາມ {name} ແມ່ນບໍ່?"
exportRequested: "ເຈົ້າໄດ້ຮ້ອງຂໍການສົ່ງອອກ ອາດໃຊ້ເວລາຈັກໜ່ອຍ ເມື່ອແລ້ວຈະຖືກເພີ່ມໃສ່ drive"
importRequested: "ເຈົ້າໄດ້ຮ້ອງຂໍການນເຂົ້າ ການດຳເນິນການນີ້ອາດໃຊ້ເວລາຈັກໜ່ອຍ"
driveFileDeleteConfirm: "ທ່ານແນ່ໃຈບໍ່ວ່າຕ້ອງການລຶບໄຟລ໌ \"{name}\"? note ທີ່ມີໄຟລ໌ແນບນີ້ຈະຖືກລຶບຖິ້ມ"
unfollowConfirm: "ທ່ານແນ່ໃຈບໍ່ວ່າຕ້ອງການເຊົາຕິດຕາມ {name}?"
exportRequested: "ໃນເວລາທີ່ທ່ານໄດ້ຮ້ອງຂໍການສົ່ງອອກ ມັນອາດຈະໃຊ້ເວລາບາງເວລາ ແລະມັນຈະຖືກເພີ່ມໃສ່ drive ຂອງທ່ານເມື່ອມັນສຳເລັດແລ້ວ"
importRequested: "ໃນເວລາທີ່ທ່ານໄດ້ຮ້ອງຂໍການນໍາເຂົ້າ ມັນອາດຈະໃຊ້ເວລາບາງເວລາ"
lists: "ລາຍການ"
noLists: "ບໍ່​ມີ​ລາຍ​ການ​ໃດໆ​"
note: "Note"
notes: "Note"
noLists: "ທ່ານ​ບໍ່​ມີ​ລາຍ​ການ​ໃດໆ​"
note: "ບັນທຶກ"
notes: "ບັນທຶກ"
following: "ກຳລັງຕິດຕາມ"
followers: "ຜູ້ຕິດຕາມ"
followsYou: "ຕິດ​ຕາມ​ເຈົ້າ"
@@ -124,11 +124,11 @@ reactions: "reaction"
attachCancel: "ເອົາໄຟລ໌ແນບ"
mute: "ປີດສຽງ"
unmute: "ເປີດສຽງ"
block: "ບລັອກ"
unblock: "ເລີກບລັອກ"
block: "ບອກ"
unblock: "ຍົກເລີກກາຮົບລັອກ"
suspend: "ລະງັບ"
unsuspend: "ເຊົາ​ລະ​ງັບ"
selectList: "ເລືອກລາຍຊື່"
selectList: "ເລືອກບັນຊີລາຍການ"
editList: "ແກ້ໄຂລາຍຊື່"
selectChannel: "ເລືອກຊ່ອງ"
selectAntenna: "ເລືອກເສົາອາກາດ"
@@ -151,30 +151,30 @@ flagShowTimelineRepliesDescription: "ສະແດງການຕອບກັບ
autoAcceptFollowed: "ອະນຸມັດອັດຕະໂນມັດຕາມຄຳຮ້ອງຂໍຈາກຜູ້ໃຊ້ທີ່ທ່ານກຳລັງຕິດຕາມຢູ່"
addAccount: "ເພີ່ມບັນຊີ"
loginFailed: "ການເຂົ້າສູ່ລະບົບບໍ່ສຳເລັດ"
showOnRemote: "ເບິ່ງໃນເຊີຟເວີຣ໌ໄລຍະໄກ"
showOnRemote: "ເບິ່ງຢູ່ໃນຕົວຢ່າງໄລຍະໄກ"
general: "ທົ່ວໄປ"
wallpaper: "ພາບພື້ນຫລັງ"
setWallpaper: "ຕັ້ງເປັນພາບພື້ນຫຼັງ"
removeWallpaper: "ລຶບຮູບວໍເປເປີອອກ"
searchWith: "ຊອກຫາ: {q}"
youHaveNoLists: "ເຈົ້າບໍ່ມີລາຍຊື່ໃດໆ"
youHaveNoLists: "ທ່ານ​ບໍ່ມີລາຍ​ການ​ໃດໆ"
proxyAccount: "ບັນຊີພຣັອກຊີ"
host: "ໂຮສຕ໌"
host: "ໂຮສ"
selectUser: "ເລືອກຜູ້ໃຊ້"
recipient: "ເຖິງ"
annotation: "ຄຳເຫັນ"
federation: "ສະຫະພັນ"
instances: "ເຊີຟເວີຣ໌"
instances: "ອີນສະແຕນ"
registeredAt: "ລົງທະບຽນຢູ່"
storageUsage: "ບ່ອນ​ຈັດ​ເກັບ​ຂໍ້​ມູນທີ່ໃຊ້"
charts: "ແຜນພູມ"
charts: "ອັນດັບເພງ"
perHour: "ຕໍ່ຊົ່ວໂມງ"
perDay: "ຕໍ່​ມື້"
stopActivityDelivery: "ຢຸດເຊົາການສົ່ງກິດຈະກໍາ"
blockThisInstance: "ຂັດຂວາງຕົວຢ່າງນີ້"
operations: "ການດຳເນີນງານ"
software: "ຊອບແວ"
version: "ເວີຣ໌ຊັນ"
version: "ສະບັບ"
metadata: "Metadata"
withNFiles: "{n} ໄຟລ໌(s)"
monitor: "ຈໍພາບ"
@@ -199,15 +199,15 @@ federating: "ສະຫະພັນ"
blocked: "ບລັອກແລ້ວ "
suspended: "ໂຈະ"
all: "ທັງໝົດ"
subscribing: "ກຳລັງສະັກສະມາຊິກ"
publishing: "ກຳລັງ​ເຜີຍ​ແ່"
subscribing: "ສະັກສະມາຊິກແລັວ"
publishing: "ການ​ພິມ​ເຜີຍ​ແ່"
notResponding: "ບໍ່ຕອບສະໜອງ"
instanceFollowing: "ກຳລັງຕິດຕາມບົນເຊີຟເວີຣ໌"
instanceFollowers: "ຜູ້ຕິດຕາມຂອງເຊີຟເວີຣ໌"
instanceUsers: "ຜູ້​ໃຊ້​ຂອງ​ເຊີຟເວີຣ໌ນີ້"
instanceFollowing: "ກຳລັງຕິດຕາມສຸດຕົວຢ່າງ"
instanceFollowers: "ຜູ້ຕິດຕາມຕົວຢ່າງ"
instanceUsers: "ຜູ້​ຊົມ​ໃຊ້​ຂອງ​ຕົວ​ຢ່າງ​ນີ້"
changePassword: "ປ່ຽນ​ລະ​ຫັດ​ຜ່ານ"
security: "ຄວາມປອດໄພ"
retypedNotMatch: "ປ້ອນຂໍ້ມູນບໍ່ກົງກັນ"
retypedNotMatch: "ວັດສະດຸປ້ອນບໍ່ກົງກັນ"
currentPassword: "ລະຫັດຜ່ານປະຈຸບັນ"
newPassword: "ລະຫັດຜ່ານໃໝ່"
newPasswordRetype: "ໃສ່ລະຫັດຜ່ານໃໝ່ອີກເທື່ອໜຶ່ງ"
@@ -223,14 +223,14 @@ remove: "ລຶບ"
removed: "ລຶບແລ້ວ"
resetAreYouSure: "ຣີ​ເຊັດບໍ?"
saved: "ບັນທຶກແລ້ວ"
messaging: "ແຊັຕ"
messaging: "ແຊ໋ດ"
upload: "ອັບໂຫຼດ"
keepOriginalUploading: "ຮັກສາຮູບພາບຕົ້ນສະບັບ"
fromDrive: "ຈາກ Drive"
fromUrl: "ຈາກ URL"
uploadFromUrl: "ອັບໂຫຼດຈາກ URL"
uploadFromUrlDescription: "URL ຂອງໄຟລ໌ທີ່ທ່ານຕ້ອງການອັບໂຫລດ"
uploadFromUrlRequested: "ຮ້ອງຂໍການອັບໂຫລດແລ້ວ"
uploadFromUrlRequested: "ຮ້ອງຂໍການອັບໂຫລດ"
explore: "ສຳຫຼວດ"
messageRead: "ອ່ານແລ້ວ"
startMessaging: "ເລີ່ມການສົນທະນາໃໝ່"
@@ -244,47 +244,47 @@ images: "ຮູບພາບ"
image: "ຮູບພາບ"
birthday: "ວັນເກີດ"
yearsOld: "{age} ປີ"
registeredDate: "ວັນທີ່ລົງທະບຽນ"
registeredDate: "ວັນທີ່ເປັນສະມາຊິກ"
location: "ທີ່ຕັ້ງ"
theme: "Theme"
themeForLightMode: "Theme ໃຊ້ໃນໂໝດສະຫວ່າງ"
themeForDarkMode: "Theme ໃຊ້ໃນໂໝດມືດ"
theme: "ແທ໋ມ"
themeForLightMode: "ຮູບແບບສີສັນເພື່ອໃຊ້ໃນໂໝດສງ"
themeForDarkMode: "ຮູບແບບສີສັນທີ່ຈະໃຊ້ຢູ່ໃນໂໝດມືດ"
light: "ສະຫວ່າງ"
dark: "ມືດ"
lightThemes: "ຊຸດຮູບແບບສະຫວ່າງ"
darkThemes: "ຮູບແບບສີສັນມືດ"
syncDeviceDarkMode: "ຊິງຄ໌ໂໝດມືດກັບການຕັ້ງຄ່າທົ່ວອຸປະກອນ"
drive: "Drive"
drive: "ຂັບ"
fileName: "ຊື່ໄຟລ໌"
selectFile: "ເລືອກໄຟລ໌"
selectFiles: "ເລືອກໄຟລ໌"
selectFolder: "ເລືອກໂຟລເດີ"
selectFolders: "ເລືອກໂຟລເດີ"
renameFile: "ປ່ຽນຊື່ໄຟລ໌"
folderName: "ຊື່ໂຟເດີຣ໌"
folderName: "ຊື່ໂຟເດີ"
createFolder: "​ສ້າງ​ໂຟ​ລ​ເດີ"
renameFolder: "ປ່ຽນຊື່ໂຟນເດີນີ້"
deleteFolder: "ລົບໂຟ​ລ​ເດີ​"
addFile: "ເພີ່ມໄຟລ໌"
emptyDrive: "Drive ຂອງທ່ານຫວ່າງເປົ່າ"
emptyFolder: "ໂຟເດີຣ໌ນີ້ວ່າງເປົ່າ"
emptyFolder: "ໂຟເດີນີ້ເປົ່າຫວ່າງ"
unableToDelete: "ບໍ່​ສາ​ມາດລົບໄດ້"
inputNewFileName: "ໃສ່ຊື່ໄຟລ໌ໃໝ່"
inputNewDescription: "ໃສ່ຄຳບັນຍາຍໃໝ່"
inputNewFolderName: "ໃສ່ຊື່ໂຟນເດີໃໝ່"
circularReferenceFolder: "ໂຟນເດີປາຍທາງແມ່ນໂຟນເດີຍ່ອຍຂອງໂຟນເດີທີ່ທ່ານຕ້ອງການຍ້າຍ"
rename: "ປ່ຽນຊື່"
doNothing: "ຢ່າມັນ"
watch: "ເພັ່ງເລັງ"
unwatch: "ຢຸດເພັ່ງເລັງ"
doNothing: "ບໍ່ສົນໃຈ"
watch: "ເບິ່ງ"
unwatch: "ຢຸດເບິ່ງ"
accept: "ອະນຸຍາດ"
reject: "ປະຕິເສດ"
normal: "ປົກກະຕິ"
instanceName: "ຊື່ເຊີເວີ້"
instanceDescription: "ຄອະທິບາຍແນະນຳເຊີຟເວີຣ໌"
instanceDescription: "ຄໍາອະທິບາຍຕົວຢ່າງ"
maintainerName: "ຜູ້ດູແລ"
maintainerEmail: "ອີເມລຜູ້ດູແລ"
tosUrl: " URL ເງື່ອນໄຂການໃຫ້ບໍລິການ"
maintainerEmail: "ອີເມວ admin"
tosUrl: "ເງື່ອນໄຂການໃຫ້ບໍລິການ URL"
thisYear: "ປີນີ້"
thisMonth: "ເດືອນນີ້"
today: "ມື້ນີ້"
@@ -292,34 +292,34 @@ dayX: "ວັນ {day}"
monthX: "ເດືອນ {month}"
yearX: "ປີ {year}"
pages: "ໜ້າ"
integration: "ເຊື່ອມໂຍງ"
integration: "ຄວາມສຳພັນຂອງ"
connectService: "ເຊື່ອມຕໍ່"
disconnectService: "ຕັດການເຊື່ອມຕໍ່"
enableLocalTimeline: "ເປີດໃຊ້ທາມລາຍທ້ອງຖິ່ນ"
enableGlobalTimeline: "ເປີດໃຊ້ທາມລາຍທົ່ວໂລກ"
disablingTimelinesInfo: "ຜູ້ດູແລລະບບແລະຜູ້ຄວບຄຸມຈະສາມາດເຂົ້າເຖີງໄທມ໌ໄລນ໌ທັ້ງເບີດ ເຖີງວ່າຈະບໍ່ໄດ້ເປີດໃຊ້ງານກໍຕາມ"
disablingTimelinesInfo: "ຜູ້ເບິ່ງແຍງລະບົບ ແລະຜູ້ຄວບຄຸມຈະມີການເຂົ້າເຖິງທຸກກຳນົດເວລາ, ເຖິງແມ່ນວ່າຈະບໍ່ໄດ້ເປີດໃຊ້ງານກໍຕາມ"
registration: "ລົງທະບຽນ"
enableRegistration: "ເປີດໃຊ້ການລົງທະບຽນຜູ້ໃຊ້ໃໝ່"
invite: "ເຊີນ"
driveCapacityPerLocalAccount: "ຄວາມຈຸຂອງ drive ຕໍ່ຜູ້ໃຊ້ທ້ອງຖິ່ນ"
driveCapacityPerRemoteAccount: "ຄວາມຈຸຂອງ drive ຕໍ່ຜູ້ໃຊ້ໄລຍະໄກ"
driveCapacityPerLocalAccount: "ຄວາມອາດສາມາດຂັບຕໍ່ຜູ້ໃຊ້ທ້ອງຖິ່ນ"
driveCapacityPerRemoteAccount: "ໄດຣຟ໌ຄວາມອາດສາມາດຕໍ່ຜູ້ໃຊ້ທາງໄກ"
basicInfo: "ຂໍ້ມຸນເບື້ອງຕົ້ນ"
pinnedNotes: "Note ທີ່ປັກໝຸດໄວ້"
hcaptchaSiteKey: "Site key"
hcaptchaSecretKey: "Secret key"
mcaptchaSiteKey: "Site key"
mcaptchaSecretKey: "Secret Key"
pinnedNotes: "ບັນທຶກທີ່ປັກໝຸດໄວ້"
hcaptchaSiteKey: "ກະແຈໄຊທ໌"
hcaptchaSecretKey: "ກະແຈລັບ"
mcaptchaSiteKey: "ກະແຈໄຊທ໌"
mcaptchaSecretKey: "ກະແຈລັບ"
recaptcha: "reCAPTCHA"
enableRecaptcha: "ເປີດໃຊ້ງານ reCAPTCHA"
recaptchaSiteKey: "Site key"
recaptchaSecretKey: "Secret key"
turnstileSiteKey: "Site key"
turnstileSecretKey: "Secret key"
enableRecaptcha: "ເປີດໃຊ້ງານລີແຄ໋ບຈາ"
recaptchaSiteKey: "ກະແຈໄຊທ໌"
recaptchaSecretKey: "ກະແຈລັບ"
turnstileSiteKey: "ກະແຈໄຊທ໌"
turnstileSecretKey: "ກະແຈລັບ"
name: "ຊື່"
userList: "ລາຍການ"
about: "ກ່ຽວກັບ"
aboutMisskey: "ກ່ຽວກັບ Misskey"
administrator: "ຜູ້ດູແລ"
administrator: "ຜູ້ບໍລິຫານ"
token: "ໂທເຄັນ"
share: "ແບ່ງປັນ"
notFound: "ບໍ່ພົບ"
@@ -332,27 +332,27 @@ title: "ຫົວຂໍ້"
text: "ຂໍ້ຄວາມ"
enable: "ເປີດໃຊ້"
next: "ຕໍ່ໄປ"
retype: "ລອງພິມລະຫັດອີກເທື່ອໜຶ່ງ"
quoteAttached: "ອ້າງອິງ"
retype: "ເຂົ້າໄປອີກຄັ້ງ"
quoteAttached: "ວົງຢືມ"
invitations: "ເຊີນ"
unavailable: "ບໍ່​ສາ​ມາດ​ໃຊ້​ໄດ້"
language: "ພາສາ"
aboutX: "ກ່ຽວກັບ {x}"
emojiStyle: "ຮູບແບບອີໂມຈິ"
native: "ພາ​ສາ​ແມ່"
noHistory: "​ບໍ່​ມີປະຫວັດ"
noHistory: "​ບໍ່​ມີ​ລາຍ​ການ​ຢູ່​ບ່ອນ​ນີ້"
doing: "ກຳລັງປະມວນຜົນ..."
category: "ຫມວດຫມູ່"
tags: "Aliases"
tags: "ແທ໋ກ"
createAccount: "ສ້າງບັນຊີ"
existingAccount: "ບັນຊີທີ່ມີຢູ່ແລ້ວ"
dashboard: "Dashboard"
existingAccount: "ທີ່ມີຢູ່"
dashboard: "ໜ້າປັດ"
local: "ທ້ອງຖິ່ນ"
numberOfDays: "ຈຳນວນມື້"
objectStorageBucket: "Bucket"
objectStoragePrefix: "Prefix"
objectStorageEndpoint: "Endpoint"
objectStorageRegion: "ພູມິພາກ"
objectStorageRegion: "ພາກ​ພື້ນ"
deleteAll: "ລຶບທັງໝົດ"
sounds: "ສຽງ"
sound: "ສຽງ"
@@ -365,11 +365,11 @@ state: "ສະຖານະ"
sort: "ຈັດຮຽງໂດຍ"
ascendingOrder: "ນ້ອຍໄປຫາໃຫຍ່"
descendingOrder: "ໃຫຍ່ຫານ້ອຍ"
output: "Output"
script: "Script"
output: "ຜົນຜະລິດ"
script: "ບົດ​ຄວາມ"
menu: "ເມນູ"
rearrange: "ຈັດລຽງໃໝ່"
poll: "Poll"
rearrange: "ຈັດລຽງຄືນ"
poll: "ການພູນ"
description: "ລາຍລະອຽດ"
author: "ຜູ້ຂຽນ"
manage: "ການຈັດການ"
@@ -383,7 +383,7 @@ permission: "ການອະນຸຍາດ"
notificationType: "​ປະເພດການ​ແຈ້ງ​ເຕືອນ"
edit: "ແກ້ໄຂ"
email: "ອີເມວ"
smtpHost: "ໂຮສຕ໌"
smtpHost: "ໂຮສ"
smtpUser: "ຊື່ຜູ້ໃຊ້"
smtpPass: "ລະຫັດຜ່ານ"
clearCache: "ລຶບລ້າງແຄສ"
@@ -393,12 +393,8 @@ administration: "ການຈັດການ"
middle: "ປານກາງ"
searchByGoogle: "ຄົ້ນຫາ"
file: "ໄຟລ໌"
replies: "ຕອບ​ກັບ"
replies: "ຕອບ​ໄປ​ທີ"
renotes: "Renote"
_delivery:
stop: "ໂຈະ"
_type:
none: "ກຳລັງ​ເຜີຍ​ແພ່"
_role:
_priority:
middle: "ປານກາງ"
@@ -416,8 +412,8 @@ _sfx:
_2fa:
renewTOTPCancel: "ບໍ່​ແມ່ນ​ຕອນ​ນີ້"
_widgets:
profile: "ໂປຣໄຟລ໌"
instanceInfo: "ຂໍ້ມູລເຊີຟເວີຣ໌"
profile: "ໂພຼຟາຍ"
instanceInfo: "ອີນສະແຕນ"
notifications: "ການແຈ້ງເຕືອນ"
timeline: "​ເສັ້ນກຳ​ນົດ​ເວ​ລາ​"
activity: "ກິດຈະກຳ"
@@ -436,29 +432,28 @@ _profile:
_exportOrImport:
followingList: "ກຳລັງຕິດຕາມ"
muteList: "ປີດສຽງ"
blockingList: "ບລັອກ"
blockingList: "ບອກ"
userLists: "ລາຍການ"
_charts:
federation: "ສະຫະພັນ"
_timelines:
home: "ໜ້າຫຼັກ"
_play:
script: "Script"
script: "ບົດ​ຄວາມ"
summary: "ລາຍລະອຽດ"
_pages:
blocks:
image: "ຮູບພາບ"
_notification:
youWereFollowed: "ໄດ້ຕິດຕາມເຈົ້າ"
youWereFollowed: "ໄດ້ຕິດຕາມທ່ານ"
_types:
follow: "ກຳລັງຕິດຕາມ"
mention: "ໄດ້ກ່າວເຖິງ"
mention: "ໄດ້ກ່າວມາ"
renote: "Renote"
quote: "ອ້າງອີງ"
reaction: "Reaction"
login: "ເຂົ້າ​ສູ່​ລະ​ບົບ"
quote: "ລວມຂໍ້ຄວາມອ້າງອີງ"
reaction: "ປະຕິກິລິຍາ"
_actions:
reply: "ຕອບ​ກັບ"
reply: "ຕອບ​ໄປ​ທີ"
renote: "Renote"
_deck:
_columns:
@@ -466,12 +461,9 @@ _deck:
tl: "​ເສັ້ນກຳ​ນົດ​ເວ​ລາ​"
list: "ລາຍການ"
channel: "ຊ່ອງ"
mentions: "ກ່າວເຖິງເຈົ້າ"
mentions: "ກ່າວເຖິງ"
_webhookSettings:
name: "ຊື່"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "ອີເມວ"
_moderationLogTypes:
suspend: "ລະງັບ"

View File

@@ -429,10 +429,6 @@ loggedInAsBot: "Momenteel als bot ingelogd"
icon: "Avatar"
replies: "Antwoord"
renotes: "Herdelen"
_delivery:
stop: "Opgeschort"
_type:
none: "Publiceren"
_email:
_follow:
title: "volgde jou"
@@ -486,7 +482,6 @@ _notification:
renote: "Herdelen"
quote: "Quote"
reaction: "Reacties"
login: "Inloggen"
_actions:
reply: "Antwoord"
renote: "Herdelen"
@@ -502,3 +497,4 @@ _webhookSettings:
_moderationLogTypes:
suspend: "Opschorten"
resetPassword: "Wachtwoord terugzetten"

View File

@@ -464,8 +464,6 @@ icon: "Avatar"
replies: "Svar"
renotes: "Renote"
surrender: "Avbryt"
_delivery:
stop: "Suspendert"
_initialAccountSetting:
theseSettingsCanEditLater: "Du kan endre disse innstillingene senere."
_achievements:
@@ -701,7 +699,6 @@ _notification:
renote: "Renotes"
quote: "Sitater"
reaction: "Reaksjoner"
login: "Logg inn"
_actions:
reply: "Svar"
renote: "Renote"
@@ -722,9 +719,6 @@ _deck:
direct: "Direkte"
_webhookSettings:
name: "Navn"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "E-post"
_moderationLogTypes:
suspend: "Suspender"

View File

@@ -20,7 +20,6 @@ noNotes: "Brak wpisów"
noNotifications: "Brak powiadomień"
instance: "Instancja"
settings: "Ustawienia"
notificationSettings: "Powiadomienia"
basicSettings: "Podstawowe ustawienia"
otherSettings: "Pozostałe ustawienia"
openInWindow: "Otwórz w oknie"
@@ -45,20 +44,13 @@ pin: "Przypnij do profilu"
unpin: "Odepnij z profilu"
copyContent: "Skopiuj zawartość"
copyLink: "Skopiuj odnośnik"
copyLinkRenote: "Skopiuj link renote'a"
delete: "Usuń"
deleteAndEdit: "Usuń i edytuj"
deleteAndEditConfirm: "Czy na pewno chcesz usunąć ten wpis i zedytować go? Utracisz wszystkie reakcje, udostępnienia i odpowiedzi do tego wpisu."
addToList: "Dodaj do listy"
addToAntenna: "Dodaj do anteny"
sendMessage: "Wyślij wiadomość"
copyRSS: "Kopiuj RSS"
copyUsername: "Kopiuj nazwę użytkownika"
copyUserId: "Kopiuj ID użytkownika"
copyNoteId: "Kopiuj ID notatki"
copyFileId: "Kopiuj ID pliku"
copyFolderId: "Kopiuj ID folderu"
copyProfileUrl: "Kopiuj URL profilu"
searchUser: "Wyszukiwanie użytkowników"
reply: "Odpowiedz"
loadMore: "Załaduj więcej"
@@ -111,8 +103,6 @@ renoted: "Udostępniono."
cantRenote: "Ten wpis nie może zostać udostępniony."
cantReRenote: "Udostępnienie nie może zostać udostępnione."
quote: "Cytuj"
inChannelRenote: "Renote tylko na kanale"
inChannelQuote: "Cytat tylko na kanale"
pinnedNote: "Przypięty wpis"
pinned: "Przypnij do profilu"
you: "Ty"
@@ -121,23 +111,14 @@ sensitive: "NSFW"
add: "Dodaj"
reaction: "Reakcja"
reactions: "Reakcja"
emojiPicker: "Selektor Emoji"
pinnedEmojisForReactionSettingDescription: "Ustaw emotikony które powinny być przypięte i od razu wyświetlone podczas reagowania."
pinnedEmojisSettingDescription: "Ustaw emotikony które powinny być przypięte i wyświetlone podczas przeglądania selektora Emoji"
emojiPickerDisplay: "Wyświetlanie selektora Emoji"
overwriteFromPinnedEmojisForReaction: "Zastąp z ustawień reakcji"
overwriteFromPinnedEmojis: "Zastąp z ogólnych ustawień"
reactionSettingDescription2: "Przeciągnij aby zmienić kolejność, naciśnij aby usunąć, naciśnij „+” aby dodać"
rememberNoteVisibility: "Zapamiętuj ustawienia widoczności wpisu"
attachCancel: "Usuń załącznik"
deleteFile: "Usuń plik"
markAsSensitive: "Oznacz jako NSFW"
unmarkAsSensitive: "Cofnij NSFW"
enterFileName: "Wprowadź nazwę pliku"
mute: "Wycisz"
unmute: "Cofnij wyciszenie"
renoteMute: "Wycisz renote'y"
renoteUnmute: "Wyłącz wyciszenie renote'ów"
block: "Zablokuj"
unblock: "Odblokuj"
suspend: "Zawieś"
@@ -147,10 +128,8 @@ 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"
@@ -163,15 +142,11 @@ 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"
addAccount: "Dodaj konto"
reloadAccountsList: "Odśwież listę kont"
@@ -201,7 +176,6 @@ perHour: "co godzinę"
perDay: "co dzień"
stopActivityDelivery: "Przestań przesyłać aktywności"
blockThisInstance: "Zablokuj tę instancję"
silenceThisInstance: "Wycisz tę instancję"
operations: "Działania"
software: "Oprogramowanie"
version: "Wersja"
@@ -221,8 +195,6 @@ clearCachedFiles: "Wyczyść pamięć podręczną"
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."
muteAndBlock: "Wycisz / Zablokuj"
mutedUsers: "Wyciszeni użytkownicy"
blockedUsers: "Zablokowani użytkownicy"
@@ -267,12 +239,10 @@ removed: "Pomyślnie usunięto"
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"
@@ -285,10 +255,7 @@ 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."
@@ -318,7 +285,6 @@ folderName: "Nazwa katalogu"
createFolder: "Utwórz katalog"
renameFolder: "Zmień nazwę katalogu"
deleteFolder: "Usuń ten katalog"
folder: "Folder"
addFile: "Dodaj plik"
emptyDrive: "Dysk jest pusty"
emptyFolder: "Ten katalog jest pusty"
@@ -332,7 +298,6 @@ copyUrl: "Skopiuj adres URL"
rename: "Zmień nazwę"
avatar: "Awatar"
banner: "Baner"
displayOfSensitiveMedia: "Wyświetlanie wrażliwej zawartości"
whenServerDisconnected: "Po utracie połączenia z serwerem"
disconnectedFromServer: "Utracono połączenie z serwerem."
reload: "Odśwież"
@@ -380,11 +345,8 @@ hcaptcha: "hCaptcha"
enableHcaptcha: "Włącz hCaptcha"
hcaptchaSiteKey: "Klucz strony"
hcaptchaSecretKey: "Tajny klucz"
mcaptcha: "mCaptcha"
enableMcaptcha: "Włącz mCaptcha"
mcaptchaSiteKey: "Klucz strony"
mcaptchaSecretKey: "Tajny klucz"
mcaptchaInstanceUrl: "URL instancji mCaptcha"
recaptcha: "reCAPTCHA"
enableRecaptcha: "Włącz reCAPTCHA"
recaptchaSiteKey: "Klucz strony"
@@ -427,19 +389,15 @@ aboutMisskey: "O Misskey"
administrator: "Admin"
token: "Token"
2fa: "Klucz 2FA "
setupOf2fa: "Skonfiguruj dwuetapową autentykację"
totp: "Klucz aplikacji uwierzytelniającej (totp)"
totpDescription: "Opis klucza czasowego"
moderator: "Moderator"
moderation: "Moderacja"
moderationNote: "Notka moderacyjna"
addModerationNote: "Dodaj notkę moderacyjną"
moderationLogs: "Logi moderacyjne"
nUsersMentioned: "{n} wspomnianych użytkowników"
securityKeyAndPasskey: "Klucz bezpieczeństwa i klucze Passkey"
securityKey: "Klucz bezpieczeństwa"
lastUsed: "Ostatnio używane"
lastUsedAt: "Ostatnio używane: {t}"
lastUsedAt: "Ostatnio używane w"
unregister: "Cofnij rejestrację"
passwordLessLogin: "Skonfiguruj logowanie bez użycia hasła"
passwordLessLoginDescription: "Opis logowania bez użycia hasła"
@@ -492,12 +450,9 @@ uiLanguage: "Język wyświetlania UI"
aboutX: "O {x}"
emojiStyle: "Styl emoji"
native: "Natywny"
showNoteActionsOnlyHover: "Pokazuj akcje notatek tylko po najechaniu myszką"
showReactionsCount: "Wyświetl liczbę reakcji na notatkę"
disableDrawer: "Nie używaj menu w stylu szuflady"
noHistory: "Brak historii"
signinHistory: "Historia logowania"
enableAdvancedMfm: "Włącz zaawansowane MFM"
enableAnimatedMfm: "Włącz animowane MFM"
doing: "Przetwarzanie..."
category: "Kategoria"
tags: "Tagi"
@@ -506,8 +461,6 @@ 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"
@@ -527,7 +480,6 @@ 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ę."
objectStoragePrefix: "Prefiks"
@@ -540,13 +492,9 @@ objectStorageUseSSL: "Użyj SSL"
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"
@@ -556,8 +504,6 @@ 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."
@@ -578,10 +524,6 @@ 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?"
removeAllFollowing: "Przestań obserwować"
@@ -597,7 +539,6 @@ accountDeletedDescription: "Opis konta usuniętego"
menu: "Menu"
divider: "Rozdzielacz"
addItem: "Dodaj element"
rearrange: "Posortuj"
relays: "Przekaźniki"
addRelay: "Dodaj przekaźnik"
inboxUrl: "Adres URL skrzynki nadawczej"
@@ -632,7 +573,6 @@ medium: "Średnie"
small: "Małe"
generateAccessToken: "Generuj token dostępu"
permission: "Uprawnienia"
adminPermission: "Uprawnienia administracyjne"
enableAll: "Włącz wszystko"
disableAll: "Wyłącz wszystko"
tokenRequested: "Przydziel dostęp do konta"
@@ -650,12 +590,9 @@ smtpPort: "Port"
smtpUser: "Nazwa użytkownika"
smtpPass: "Hasło"
emptyToDisableSmtpAuth: "Pozostaw adres e-mail i hasło puste, aby wyłączyć weryfikację SMTP"
smtpSecure: "Użyj niejawnego SSL/TLS dla połączeń SMTP"
smtpSecureInfo: "Wyłącz, jeżeli używasz STARTTLS"
testEmail: "Przetestuj dostarczanie wiadomości e-mail"
wordMute: "Wyciszenie słowa"
regexpError: "Błąd wyrażenia regularnego"
regexpErrorDescription: "Wystąpił błąd w wyrażeniu regularnym w linii {line} twoich {tab} wyciszeń:"
instanceMute: "Wyciszone instancje"
userSaysSomething: "{name} powiedział(-a) coś"
makeActive: "Aktywuj"
@@ -675,21 +612,20 @@ useGlobalSettingDesc: "Jeżeli włączone, zostaną wykorzystane ustawienia powi
other: "Inne"
regenerateLoginToken: "Generuj token logowania ponownie"
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"
@@ -732,7 +668,6 @@ 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"
disableShowingAnimatedImages: "Nie odtwarzaj animowanych obrazów"
highlightSensitiveMedia: "Podkreśl wrażliwą zawartość"
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"
@@ -743,8 +678,6 @@ 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”."
@@ -762,14 +695,12 @@ 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"
@@ -829,14 +760,12 @@ 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"
@@ -863,19 +792,13 @@ 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"
@@ -885,8 +808,6 @@ 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ć?"
incorrectPassword: "Nieprawidłowe hasło."
@@ -899,14 +820,9 @@ overridedDeviceKind: "Typ urządzenia"
smartphone: "Smartfon"
tablet: "Tablet"
auto: "Automatycznie"
themeColor: "Motyw kolorystyczny"
size: "Rozmiar"
numberOfColumn: "Liczba kolumn"
searchByGoogle: "Szukaj"
instanceDefaultLightTheme: "Domyślny motyw dla trybu jasnego"
instanceDefaultDarkTheme: "Domyślny motyw dla trybu ciemnego"
instanceDefaultThemeDescription: "Opis domyślnego motywu instancji"
mutePeriod: "Okres wyciszenia"
period: "Ankieta kończy się"
indefinitely: "Nigdy"
tenMinutes: "10 minut"
@@ -915,50 +831,29 @@ oneDay: "1 dzień"
oneWeek: "1 tydzień"
oneMonth: "jeden miesiąc"
failedToFetchAccountInformation: "Nie udało się uzyskać informacji o koncie"
rateLimitExceeded: "Limit szybkości przekroczony"
cropImage: "Przytnij obraz"
cropImageAsk: "Czy chcesz przyciąć obrazek?"
cropYes: "Tak, przytnij"
cropNo: "Nie chce przycinać"
file: "Pliki"
recentNHours: "W ciągu ostatnich {n} godzin"
recentNDays: "W ciągu ostatnich {n} dni"
noEmailServerWarning: "Serwer Email nie jest skonfigurowany"
recommended: "Zalecane"
check: "Zweryfikuj"
driveCapOverrideLabel: "Zmień limit pojemności dysku użytkownika"
requireAdminForView: "Aby to zobaczyć, musisz być administratorem"
isSystemAccount: "To jest konto stworzone i zarządzane przez system"
typeToConfirm: "Wprowadź {x}, aby potwierdzić"
deleteAccount: "Usuń konto"
document: "Dokumentacja"
numberOfPageCache: "Ilość stron w cache"
numberOfPageCacheDescription: "Zwiększenie tej liczby polepszy wygodę, ale spowoduje większe obciążenie jako użycie pamięci na urządzeniu użytkownika."
logoutConfirm: "Czy na pewno chcesz się wylogować?"
lastActiveDate: "Ostatnio użyte w"
statusbar: "Pasek stanu"
pleaseSelect: "Wybierz opcję"
reverse: "Odwróć"
colored: "Kolorowe"
refreshInterval: "Okres aktualizacji"
label: "Etykieta"
type: "Typ"
speed: "Prędkość"
slow: "Wolny"
fast: "Szybki"
sensitiveMediaDetection: "Detekcja wrażliwej zawartości"
localOnly: "Lokalne tylko"
remoteOnly: "Tylko zdalne instancje"
failedToUpload: "Przesyłanie nie powiodło się"
cannotUploadBecauseInappropriate: "Nie można przesłać tego pliku, ponieważ jego części zostały wykryte jako potencjalnie nieodpowiednie."
cannotUploadBecauseNoFreeSpace: "Przesyłanie nie powiodło się z powodu braku miejsca na dysku."
cannotUploadBecauseExceedsFileSizeLimit: "Nie można przesłać pliku, ponieważ wykracza on poza limit wielkości pliku."
beta: "Beta"
enableAutoSensitive: "Automatyczne oznaczanie NSFW"
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"
@@ -968,74 +863,22 @@ 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}."
roles: "Role"
role: "Rola"
noRole: "Rola nie znaleziona"
normalUser: "Normalny użytkownik"
undefined: "Niezdefiniowane"
assign: "Przydziel"
unassign: "Cofnij przydzielenie"
color: "Kolor"
manageCustomEmojis: "Zarządzaj niestandardowymi Emoji"
manageAvatarDecorations: "Zarządzaj dekoracjami awatara"
invalidParamError: "Błąd parametrów"
permissionDeniedError: "Odrzucono operacje"
permissionDeniedErrorDescription: "Konto nie posiada uprawnień"
preset: "Konfiguracja"
selectFromPresets: "Wybierz konfiguracje"
achievements: "Osiągnięcia"
thisPostMayBeAnnoyingCancel: "Odrzuć"
internalServerError: "Wewnętrzny błąd serwera"
internalServerErrorDescription: "Niespodziewany błąd po stronie serwera"
copyErrorInfo: "Kopiuj informacje o błędzie"
joinThisServer: "Dołącz do chaty"
disableFederationOk: "Wyłącz federacje"
invitationRequiredToRegister: "Ten serwer wymaga zaproszenia. Tylko osoby z zaproszeniem mogą się zarejestrować"
emailNotSupported: "Wysyłanie wiadomości E-mail nie jest obsługiwane na tym serwerze"
postToTheChannel: "Publikuj na kanale"
youFollowing: "Śledzeni"
icon: "Awatar"
replies: "Odpowiedz"
renotes: "Udostępnij"
sourceCode: "Kod źródłowy"
flip: "Odwróć"
lastNDays: "W ciągu ostatnich {n} dni"
surrender: "Odrzuć"
gameRetry: "Spróbuj ponownie"
_delivery:
stop: "Zawieszono"
_type:
none: "Publikowanie"
_bubbleGame:
_score:
score: "Wynik"
_role:
assignTarget: "Przydziel"
priority: "Priorytet"
_priority:
low: "Niski"
middle: "Średnie"
high: "Wysoki"
_options:
canManageCustomEmojis: "Zarządzaj niestandardowymi Emoji"
canManageAvatarDecorations: "Zarządzaj dekoracjami awatara"
_sensitiveMediaDetection:
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"
@@ -1217,6 +1060,8 @@ _sfx:
note: "Wpisy"
noteMy: "Mój wpis"
notification: "Powiadomienia"
antenna: "Anteny"
channel: "Powiadomienia kanału"
_ago:
future: "W przyszłości"
justNow: "Przed chwilą"
@@ -1506,7 +1351,6 @@ _notification:
reaction: "Reakcja"
receiveFollowRequest: "Otrzymano prośbę o możliwość obserwacji"
followRequestAccepted: "Przyjęto prośbę o możliwość obserwacji"
login: "Zaloguj się"
app: "Powiadomienia z aplikacji"
_actions:
followBack: "zaobserwował cię z powrotem"
@@ -1541,6 +1385,7 @@ _webhookSettings:
createWebhook: "Stwórz Webhook"
name: "Nazwa"
secret: "Sekret"
events: "Uruchomienie Webhooka"
active: "Właczono"
_events:
follow: "Po zaobserwowaniu użytkownika"
@@ -1550,12 +1395,9 @@ _webhookSettings:
renote: "Po udostępnieniu wpisu"
reaction: "Po otrzymaniu reakcji"
mention: "Po zostaniu wspomnianym"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Adres e-mail"
_moderationLogTypes:
suspend: "Zawieś"
resetPassword: "Zresetuj hasło"
_reversi:
total: "Łącznie"

File diff suppressed because it is too large Load Diff

View File

@@ -453,6 +453,7 @@ or: "Sau"
language: "Limbă"
uiLanguage: "Limba interfeței"
aboutX: "Despre {x}"
disableDrawer: "Nu folosi meniuri în stil sertar"
noHistory: "Nu există istoric"
signinHistory: "Istoric autentificări"
doing: "Se procesează..."
@@ -625,7 +626,10 @@ abuseReported: "Raportul tău a fost trimis. Mulțumim."
reporter: "Raportorul"
reporteeOrigin: "Originea raportatului"
reporterOrigin: "Originea raportorului"
forwardReport: "Redirecționează raportul către instanța externă"
forwardReportIsAnonymous: "În locul contului tău, va fi afișat un cont anonim, de sistem, ca raportor către instanța externă."
send: "Trimite"
abuseMarkAsResolved: "Marchează raportul ca rezolvat"
openInNewTab: "Deschide în tab nou"
openInSideView: "Deschide în vedere laterală"
defaultNavigationBehaviour: "Comportament de navigare implicit"
@@ -647,10 +651,6 @@ show: "Arată"
icon: "Avatar"
replies: "Răspunde"
renotes: "Re-notează"
_delivery:
stop: "Suspendat"
_type:
none: "Publicare"
_role:
_priority:
middle: "Mediu"
@@ -711,7 +711,6 @@ _notification:
renote: "Re-notează"
quote: "Citează"
reaction: "Reacție"
login: "Autentifică-te"
_actions:
reply: "Răspunde"
renote: "Re-notează"
@@ -725,12 +724,9 @@ _deck:
mentions: "Mențiuni"
_webhookSettings:
name: "Nume"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Email"
_moderationLogTypes:
suspend: "Suspendă"
resetPassword: "Resetează parola"
_reversi:
total: "Total"

View File

@@ -2,7 +2,7 @@
_lang_: "Русский"
headlineMisskey: "Сеть, сплетённая из заметок"
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,24 +45,22 @@ pin: "Закрепить в профиле"
unpin: "Открепить от профиля"
copyContent: "Скопировать содержимое"
copyLink: "Скопировать ссылку"
copyLinkRenote: "Скопировать ссылку на репост"
delete: "Удалить"
deleteAndEdit: "Удалить и отредактировать"
deleteAndEditConfirm: "Удалить этот пост и отредактировать заново? Все реакции, репосты и ответы на него также будут удалены."
deleteAndEditConfirm: "Удалить эту заметку и создать отредактированную? Все реакции, ссылки и ответы на существующую будут будут потеряны."
addToList: "Добавить в список"
addToAntenna: "Добавить к антенне"
sendMessage: "Отправить сообщение"
copyRSS: "Скопировать RSS"
copyUsername: "Скопировать имя пользователя"
copyUserId: "Скопировать ID пользователя"
copyNoteId: "Скопировать ID поста"
copyUserId: "Скопировать идентификатор пользователя"
copyNoteId: "Скопировать идентификатор заметки"
copyFileId: "Скопировать ID файла"
copyFolderId: "Скопировать ID папки"
copyProfileUrl: "Скопировать ссылку на профиль"
copyProfileUrl: "Скопировать URL профиля "
searchUser: "Поиск людей"
searchThisUsersNotes: "Искать по заметкам пользователя"
reply: "Ответ"
loadMore: "Загрузить ещё"
loadMore: "Показать еще"
showMore: "Показать ещё"
showLess: "Закрыть"
youGotNewFollower: "Новый подписчик"
@@ -109,14 +107,11 @@ enterEmoji: "Введите эмодзи"
renote: "Репост"
unrenote: "Отмена репоста"
renoted: "Репост совершён."
renotedToX: "Репостнуть в {name}."
cantRenote: "Это нельзя репостить."
cantReRenote: "Невозможно репостить репост."
quote: "Цитата"
inChannelRenote: "В канале"
inChannelQuote: "Заметки в канале"
renoteToChannel: "Репостнуть в канал"
renoteToOtherChannel: "Репостнуть в другой канал"
pinnedNote: "Закреплённая заметка"
pinned: "Закрепить в профиле"
you: "Вы"
@@ -134,7 +129,6 @@ overwriteFromPinnedEmojis: "Заменить на эмодзи из общего
reactionSettingDescription2: "Расставляйте перетаскиванием, удаляйте нажатием, добавляйте кнопкой «+»."
rememberNoteVisibility: "Запоминать видимость заметок"
attachCancel: "Удалить вложение"
deleteFile: "Удалить файл"
markAsSensitive: "Отметить как «не для всех»"
unmarkAsSensitive: "Снять отметку «не для всех»"
enterFileName: "Введите имя файла"
@@ -155,7 +149,6 @@ editList: "Редактировать список"
selectChannel: "Выберите канал"
selectAntenna: "Выберите антенну"
editAntenna: "Редактировать антенну"
createAntenna: "Создать антенну"
selectWidget: "Выберите виджет"
editWidgets: "Редактировать виджеты"
editWidgetsExit: "Готово"
@@ -163,12 +156,11 @@ customEmojis: "Собственные эмодзи"
emoji: "Эмодзи"
emojis: "Эмодзи"
emojiName: "Название эмодзи"
emojiUrl: "Ссылка на эмодзи"
emojiUrl: "URL эмодзи"
addEmoji: "Добавить эмодзи"
settingGuide: "Рекомендуемые настройки"
cacheRemoteFiles: "Кешировать внешние файлы"
cacheRemoteFilesDescription: "Когда эта настройка отключена, файлы с других сайтов будут загружаться прямо оттуда. Это сэкономит место на сервере, но увеличит трафик, так как не будут создаваться эскизы."
youCanCleanRemoteFilesCache: "Вы можете очистить кэш, нажав на кнопку 🗑️ в меню управления файлами."
cacheRemoteSensitiveFiles: "Кэшировать внешние файлы «не для всех»"
cacheRemoteSensitiveFilesDescription: "Если отключено, файлы «не для всех» загружаются непосредственно с удалённых серверов, не кэшируясь."
flagAsBot: "Аккаунт бота"
@@ -182,10 +174,6 @@ addAccount: "Добавить учётную запись"
reloadAccountsList: "Обновить список учётных записей"
loginFailed: "Неудачная попытка входа"
showOnRemote: "Перейти к оригиналу на сайт"
continueOnRemote: "Продолжить на удалённом сервере"
chooseServerOnMisskeyHub: "Выбрать сервер с Misskey Hub"
specifyServerHost: "Укажите сервер напрямую"
inputHostName: "Введите домен"
general: "Общее"
wallpaper: "Обои"
setWallpaper: "Установить обои"
@@ -196,7 +184,6 @@ followConfirm: "Подписаться на {name}?"
proxyAccount: "Учётная запись прокси"
proxyAccountDescription: "Учетная запись прокси предназначена служить подписчиком на пользователей с других сайтов. Например, если пользователь добавит кого-то с другого сайта а список, деятельность того не отобразится, пока никто с этого же сайта не подписан на него. Чтобы это стало возможным, на него подписывается прокси."
host: "Хост"
selectSelf: "Выбрать себя"
selectUser: "Выберите пользователя"
recipient: "Кому"
annotation: "Описание"
@@ -211,7 +198,6 @@ perHour: "По часам"
perDay: "По дням"
stopActivityDelivery: "Остановить отправку обновлений активности"
blockThisInstance: "Блокировать этот инстанс"
silenceThisInstance: "Заглушить этот инстанс"
operations: "Операции"
software: "Программы"
version: "Версия"
@@ -231,7 +217,6 @@ clearCachedFiles: "Очистить кэш"
clearCachedFilesConfirm: "Удалить все закэшированные файлы с других сайтов?"
blockedInstances: "Заблокированные инстансы"
blockedInstancesDescription: "Введите список инстансов, которые хотите заблокировать. Они больше не смогут обмениваться с вашим инстансом."
silencedInstances: "Заглушённые инстансы"
muteAndBlock: "Скрытие и блокировка"
mutedUsers: "Скрытые пользователи"
blockedUsers: "Заблокированные пользователи"
@@ -250,7 +235,7 @@ noJobs: "Нет заданий"
federating: "Федерируется"
blocked: "Заблокировано"
suspended: "Заморожено"
all: "Все"
all: "Всё"
subscribing: "Подписка"
publishing: "Публикация"
notResponding: "Нет ответа"
@@ -282,7 +267,7 @@ messaging: "Сообщения"
upload: "Загрузить"
keepOriginalUploading: "Сохранить исходное изображение"
keepOriginalUploadingDescription: "Сохраняет исходную версию при загрузке изображений. Если выключить, то при загрузке браузер генерирует изображение для публикации."
fromDrive: "С Диска"
fromDrive: "С «диска»"
fromUrl: "По ссылке"
uploadFromUrl: "Загрузить по ссылке"
uploadFromUrlDescription: "Ссылка на файл, который хотите загрузить"
@@ -322,13 +307,11 @@ selectFile: "Выберите файл"
selectFiles: "Выберите файлы"
selectFolder: "Выберите папку"
selectFolders: "Выберите папки"
fileNotSelected: "Файл не выбран"
renameFile: "Переименовать файл"
folderName: "Имя папки"
createFolder: "Создать папку"
renameFolder: "Переименовать папку"
deleteFolder: "Удалить папку"
folder: "Папка"
addFile: "Добавить файл"
emptyDrive: "Диск пуст"
emptyFolder: "Папка пуста"
@@ -374,8 +357,8 @@ disablingTimelinesInfo: "У администраторов и модератор
registration: "Регистрация"
enableRegistration: "Разрешить регистрацию"
invite: "Пригласить"
driveCapacityPerLocalAccount: "Объём Диска на одного локального пользователя"
driveCapacityPerRemoteAccount: "Объём Диска на одного пользователя с другого экземпляра"
driveCapacityPerLocalAccount: "Объём диска на одного локального пользователя"
driveCapacityPerRemoteAccount: "Объём диска на одного пользователя с другого сайта"
inMb: "В мегабайтах"
bannerUrl: "Ссылка на изображение в шапке"
backgroundImageUrl: "Ссылка на фоновое изображение"
@@ -390,11 +373,8 @@ hcaptcha: "hCaptcha"
enableHcaptcha: "Включить hCaptcha"
hcaptchaSiteKey: "Ключ сайта"
hcaptchaSecretKey: "Секретный ключ"
mcaptcha: "mCaptcha"
enableMcaptcha: "Включить mCaptcha"
mcaptchaSiteKey: "Ключ сайта"
mcaptchaSecretKey: "Секретный ключ"
mcaptchaInstanceUrl: "Ссылка на сервер mCaptcha"
recaptcha: "reCAPTCHA"
enableRecaptcha: "Включить reCAPTCHA"
recaptchaSiteKey: "Ключ сайта"
@@ -409,8 +389,7 @@ manageAntennas: "Настройки антенн"
name: "Название"
antennaSource: "Источник антенны"
antennaKeywords: "Ключевые слова"
antennaExcludeKeywords: "Чёрный список слов"
antennaExcludeBots: "Исключать ботов"
antennaExcludeKeywords: "Исключения"
antennaKeywordsDescription: "Пишите слова через пробел в одной строке, чтобы ловить их появление вместе; на отдельных строках располагайте слова, или группы слов, чтобы ловить любые из них."
notifyAntenna: "Уведомлять о новых заметках"
withFileAntenna: "Только заметки с вложениями"
@@ -443,7 +422,6 @@ totp: "Приложение-аутентификатор"
totpDescription: "Описание приложения-аутентификатора"
moderator: "Модератор"
moderation: "Модерация"
moderationLogs: "Журнал модерации"
nUsersMentioned: "Упомянуло пользователей: {n}"
securityKeyAndPasskey: "Ключ безопасности и парольная фраза"
securityKey: "Ключ безопасности"
@@ -476,12 +454,10 @@ retype: "Введите ещё раз"
noteOf: "Что пишет {user}"
quoteAttached: "Цитата"
quoteQuestion: "Хотите добавить цитату?"
attachAsFileQuestion: "Текста в буфере обмена слишком много. Прикрепить как текстовый файл?"
noMessagesYet: "Пока ни одного сообщения"
newMessageExists: "Новое сообщение"
onlyOneFileCanBeAttached: "К сообщению можно прикрепить только один файл"
signinRequired: "Пожалуйста, войдите"
signinOrContinueOnRemote: "Чтобы продолжить, вам необходимо войти в аккаунт на своём сервере или зарегистрироваться / войти в аккаунт на этом."
invitations: "Приглашения"
invitationCode: "Код приглашения"
checking: "Проверка"
@@ -491,7 +467,7 @@ usernameInvalidFormat: "Можно использовать только лат
tooShort: "Слишком короткий"
tooLong: "Слишком длинный"
weakPassword: "Слабый пароль"
normalPassword: "Хороший пароль"
normalPassword: "Годный пароль"
strongPassword: "Надёжный пароль"
passwordMatched: "Совпали"
passwordNotMatched: "Не совпадают"
@@ -503,8 +479,8 @@ uiLanguage: "Язык интерфейса"
aboutX: "Описание {x}"
emojiStyle: "Стиль эмодзи"
native: "Системные"
disableDrawer: "Не использовать выдвижные меню"
showNoteActionsOnlyHover: "Показывать кнопки у заметок только при наведении"
showReactionsCount: "Видеть количество реакций на заметках"
noHistory: "История пока пуста"
signinHistory: "Журнал посещений"
enableAdvancedMfm: "Включить расширенный MFM"
@@ -566,8 +542,6 @@ showInPage: "Показать страницу"
popout: "Развернуть"
volume: "Громкость"
masterVolume: "Основная регулировка громкости"
notUseSound: "Выключить звук"
useSoundOnlyWhenActive: "Воспроизводить звук только когда Misskey активен."
details: "Подробнее"
chooseEmoji: "Выберите эмодзи"
unableToProcess: "Не удаётся завершить операцию"
@@ -588,10 +562,6 @@ output: "Выходы"
script: "Скрипт"
disablePagesScript: "Отключить скрипты на «Страницах»"
updateRemoteUser: "Обновить данные пользователя с его сервера"
unsetUserAvatar: "Убрать аватар"
unsetUserAvatarConfirm: "Вы точно хотите убрать аватар?"
unsetUserBanner: "Убрать баннер"
unsetUserBannerConfirm: "Вы точно хотите убрать баннер?"
deleteAllFiles: "Удалить все файлы"
deleteAllFilesConfirm: "Вы хотите удалить все файлы?"
removeAllFollowing: "Удалить всех подписчиков"
@@ -621,7 +591,7 @@ poll: "Опрос"
useCw: "Скрывать содержимое под предупреждением"
enablePlayer: "Включить проигрыватель"
disablePlayer: "Выключить проигрыватель"
expandTweet: "Развернуть заметку"
expandTweet: "Развернуть твит"
themeEditor: "Редактор темы оформления"
description: "Описание"
describeFile: "Добавить подпись"
@@ -633,7 +603,7 @@ plugins: "Расширения"
preferencesBackups: "Резервная копия"
deck: "Пульт"
undeck: "Покинуть пульт"
useBlurEffectForModal: "Размытие за формой ввода заметки"
useBlurEffectForModal: "Размывка под формой поверх всего"
useFullReactionPicker: "Полнофункциональный выбор реакций"
width: "Ширина"
height: "Высота"
@@ -642,7 +612,6 @@ medium: "Средне"
small: "Мелко"
generateAccessToken: "Создать токен доступа"
permission: "Разрешения"
adminPermission: "Доступ администратора"
enableAll: "Включить все"
disableAll: "Выключить всё"
tokenRequested: "Открыть доступ к учётной записи"
@@ -664,7 +633,6 @@ smtpSecure: "Использовать SSL/TLS для SMTP-соединений"
smtpSecureInfo: "Выключите при использовании STARTTLS."
testEmail: "Проверка доставки электронной почты"
wordMute: "Скрытие слов"
hardWordMute: "Строгое скрытие слов"
regexpError: "Ошибка в регулярном выражении"
regexpErrorDescription: "В списке {tab} скрытых слов, в строке {line} обнаружена синтаксическая ошибка:"
instanceMute: "Глушение инстансов"
@@ -700,7 +668,10 @@ abuseReported: "Жалоба отправлена. Большое спасибо
reporter: "Сообщивший"
reporteeOrigin: "О ком сообщено"
reporterOrigin: "Кто сообщил"
forwardReport: "Отправить жалобу на инстанс автора."
forwardReportIsAnonymous: "Жалоба на удалённый инстанс будет отправлена анонимно. Вместо ваших данных у получателя будет отображена системная учётная запись."
send: "Отправить"
abuseMarkAsResolved: "Отметить жалобу как решённую"
openInNewTab: "Открыть в новой вкладке"
openInSideView: "Открывать в боковой колонке"
defaultNavigationBehaviour: "Поведение навигации по умолчанию"
@@ -743,7 +714,6 @@ lockedAccountInfo: "Даже если вы вручную подтверждае
alwaysMarkSensitive: "Отмечать файлы как «содержимое не для всех» по умолчанию"
loadRawImages: "Сразу показывать изображения в полном размере"
disableShowingAnimatedImages: "Не проигрывать анимацию"
highlightSensitiveMedia: "Выделять содержимое не для всех"
verificationEmailSent: "Вам отправлено письмо для подтверждения. Пройдите, пожалуйста, по ссылке из письма, чтобы завершить проверку."
notSet: "Не настроено"
emailVerified: "Адрес электронной почты подтверждён."
@@ -761,7 +731,7 @@ makeExplorable: "Опубликовать профиль в «Обзоре»."
makeExplorableDescription: "Если выключить, ваш профиль не будет показан в разделе «Обзор»."
showGapBetweenNotesInTimeline: "Показывать разделитель между заметками в ленте"
duplicate: "Дубликат"
left: "Слева"
left: "Влево"
center: "По центру"
wide: "Толстый"
narrow: "Тонкий"
@@ -840,7 +810,7 @@ noMaintainerInformationWarning: "Не заполнены сведения об
noBotProtectionWarning: "Ботозащита не настроена"
configure: "Настроить"
postToGallery: "Опубликовать в галерею"
postToHashtag: "Написать заметку с этим хештегом"
postToHashtag: "Написать заметку с этим хэштегом"
gallery: "Галерея"
recentPosts: "Недавние публикации"
popularPosts: "Популярные публикации"
@@ -857,13 +827,13 @@ emailNotConfiguredWarning: "Не указан адрес электронной
ratio: "Соотношение"
previewNoteText: "Предварительный просмотр"
customCss: "Индивидуальный CSS"
customCssWarn: "Используйте эту настройку только если знаете, что делаете. Ошибки здесь чреваты тем, что у вас перестанет нормально работать сайт."
customCssWarn: "Используйте эту настройку только если знаете, что делаете. Ошибки здесь чреваты тем, что сайт перестанет нормально работать у вас."
global: "Всеобщая"
squareAvatars: "Квадратные аватарки"
sent: "Отправить"
received: "Получено"
searchResult: "Результаты поиска"
hashtags: "Хештеги"
hashtags: "Хэштег"
troubleshooting: "Разрешение проблем"
useBlurEffect: "Размытие в интерфейсе"
learnMore: "Подробнее"
@@ -875,7 +845,7 @@ accountDeletionInProgress: "В настоящее время выполняет
usernameInfo: "Имя, которое отличает вашу учетную запись от других на этом сервере. Вы можете использовать алфавит (a~z, A~Z), цифры (0~9) или символы подчеркивания (_). Имена пользователей не могут быть изменены позже."
aiChanMode: "Режим Ай"
devMode: "Режим разработчика"
keepCw: "Сохраняйте предупреждения о содержимом"
keepCw: "Сохраняйте Предупреждения о содержимом"
pubSub: "Учётные записи Pub/Sub"
lastCommunication: "Последнее сообщение"
resolved: "Решено"
@@ -896,8 +866,6 @@ makeReactionsPublicDescription: "Список сделанных вами реа
classic: "Классика"
muteThread: "Скрыть цепочку"
unmuteThread: "Отменить сокрытие цепочки"
followingVisibility: "Видимость подписок"
followersVisibility: "Видимость подписчиков"
continueThread: "Показать следующие ответы"
deleteAccountConfirm: "Учётная запись будет безвозвратно удалена. Подтверждаете?"
incorrectPassword: "Пароль неверен."
@@ -1007,7 +975,6 @@ assign: "Назначить"
unassign: "Отменить назначение"
color: "Цвет"
manageCustomEmojis: "Управлять пользовательскими эмодзи"
manageAvatarDecorations: "Управление украшениями аватара"
youCannotCreateAnymore: "Вы достигли лимита создания."
cannotPerformTemporary: "Временно недоступен"
cannotPerformTemporaryDescription: "Это действие временно невозможно выполнить из-за превышения лимита выполнения."
@@ -1024,8 +991,7 @@ thisPostMayBeAnnoying: "Это сообщение может быть непри
thisPostMayBeAnnoyingHome: "Этот пост может быть отправлен на главную"
thisPostMayBeAnnoyingCancel: "Этот пост не может быть отменен."
thisPostMayBeAnnoyingIgnore: "Этот пост может быть проигнорирован "
collapseRenotes: "Сворачивать увиденные репосты"
collapseRenotesDescription: "Сворачивать посты с которыми вы взаимодействовали."
collapseRenotes: "Свернуть репосты"
internalServerError: "Внутренняя ошибка сервера"
internalServerErrorDescription: "Внутри сервера произошла непредвиденная ошибка."
copyErrorInfo: "Скопировать код ошибки"
@@ -1049,10 +1015,7 @@ resetPasswordConfirm: "Сбросить пароль?"
sensitiveWords: "Чувствительные слова"
sensitiveWordsDescription: "Установите общедоступный диапазон заметки, содержащей заданное слово, на домашний. Можно сделать несколько настроек, разделив их переносами строк."
sensitiveWordsDescription2: "Разделение пробелом создаёт спецификацию AND, а разделение косой чертой создаёт регулярное выражение."
prohibitedWords: "Запрещённые слова"
prohibitedWordsDescription: "Включает вывод ошибки при попытке опубликовать пост, содержащий указанное слово/набор слов.\nМножество слов может быть указано, разделяемые новой строкой."
prohibitedWordsDescription2: "Разделение пробелом создаёт спецификацию AND, а разделение косой чертой создаёт регулярное выражение."
hiddenTags: "Скрытые хештеги"
notesSearchNotAvailable: "Поиск заметок недоступен"
license: "Лицензия"
unfavoriteConfirm: "Удалить избранное?"
@@ -1063,14 +1026,9 @@ retryAllQueuesConfirmTitle: "Хотите попробовать ещё раз?"
retryAllQueuesConfirmText: "Нагрузка на сервер может увеличиться"
enableChartsForRemoteUser: "Создание диаграмм для удалённых пользователей"
enableChartsForFederatedInstances: "Создание диаграмм для удалённых серверов"
showClipButtonInNoteFooter: "Показать кнопку добавления в подборку в меню действий с заметкой"
reactionsDisplaySize: "Размер реакций"
limitWidthOfReaction: "Ограничить максимальную ширину реакций и отображать их в уменьшенном размере."
noteIdOrUrl: "ID или ссылка на заметку"
video: "Видео"
videos: "Видео"
audio: "Звук"
audioFiles: "Звуковые файлы"
dataSaver: "Экономия трафика"
accountMigration: "Перенос учётной записи"
accountMoved: "Учётная запись перенесена"
@@ -1082,13 +1040,12 @@ editMemo: "Изменить памятку"
reactionsList: "Список реакций"
renotesList: "Репосты"
notificationDisplay: "Отображение уведомлений"
leftTop: "Слева вверху"
rightTop: "Справа сверху"
leftBottom: "Слева внизу"
rightBottom: "Справа внизу"
stackAxis: "Положение уведомлений"
vertical: "Вертикально"
horizontal: "Горизонтально"
leftTop: "Влево вверх"
rightTop: "Вправо вверх"
leftBottom: "Влево вниз"
rightBottom: "Вправо вниз"
vertical: "Вертикальная"
horizontal: "Сбоку"
position: "Позиция"
serverRules: "Правила сервера"
pleaseConfirmBelowBeforeSignup: "Для регистрации на данном сервере, необходимо согласится с нижеследующими положениями."
@@ -1100,114 +1057,52 @@ createNoteFromTheFile: "Создать заметку из этого файла
archive: "Архив"
channelArchiveConfirmTitle: "Переместить {name} в архив?"
channelArchiveConfirmDescription: "Архивированные каналы перестанут отображаться в списке каналов или результатах поиска. В них также нельзя будет добавлять новые записи."
thisChannelArchived: "Этот канал находится в архиве."
displayOfNote: "Отображение заметок"
initialAccountSetting: "Настройка профиля"
youFollowing: "Подписки"
preventAiLearning: "Отказаться от использования в машинном обучении (Генеративный ИИ)"
preventAiLearningDescription: "Запросить краулеров не использовать опубликованный текст или изображения и т.д. для машинного обучения (Прогнозирующий / Генеративный ИИ) датасетов. Это достигается путём добавления \"noai\" HTTP-заголовка в ответ на соответствующий контент. Полного предотвращения через этот заголовок не избежать, так как он может быть просто проигнорирован."
options: "Настройки ролей"
specifyUser: "Указанный пользователь"
openTagPageConfirm: "Открыть страницу этого хештега?"
specifyHost: "Указать сайт"
failedToPreviewUrl: "Предварительный просмотр недоступен"
update: "Обновить"
rolesThatCanBeUsedThisEmojiAsReaction: "Роли тех, кому можно использовать эти эмодзи как реакцию"
rolesThatCanBeUsedThisEmojiAsReactionEmptyDescription: "Если здесь ничего не указать, в качестве реакции эту эмодзи сможет использовать каждый."
rolesThatCanBeUsedThisEmojiAsReactionPublicRoleWarn: "Эти роли должны быть общедоступными."
cancelReactionConfirm: "Вы действительно хотите удалить свою реакцию?"
later: "Позже"
goToMisskey: "К Misskey"
additionalEmojiDictionary: "Дополнительные словари эмодзи"
installed: "Установлено"
branding: "Бренд"
enableServerMachineStats: "Опубликовать характеристики сервера"
enableIdenticonGeneration: "Включить генерацию иконки пользователя"
turnOffToImprovePerformance: "Отключение этого параметра может повысить производительность."
createInviteCode: "Создать код приглашения"
createCount: "Количество приглашений"
expirationDate: "Дата истечения"
noExpirationDate: "Бессрочно"
unused: "Неиспользованное"
used: "Использован"
unused: "Неиспользуемый"
expired: "Срок действия приглашения истёк"
doYouAgree: "Согласны?"
icon: "Аватар"
replies: "Ответы"
renotes: "Репост"
loadReplies: "Показать ответы"
pinnedList: "Закреплённый список"
keepScreenOn: "Держать экран включённым"
showRenotes: "Показывать репосты"
mutualFollow: "Взаимные подписки"
followingOrFollower: "Подписки или подписчики"
fileAttachedOnly: "Только заметки с файлами"
showRepliesToOthersInTimeline: "Показывать ответы в ленте"
showRepliesToOthersInTimelineAll: "Показывать в ленте ответы пользователей, на которых вы подписаны"
hideRepliesToOthersInTimelineAll: "Скрывать в ленте ответы пользователей, на которых вы подписаны"
sourceCode: "Исходный код"
sourceCodeIsNotYetProvided: "Исходный код пока не доступен. Свяжитесь с администратором, чтобы исправить эту проблему."
repositoryUrl: "Ссылка на репозиторий"
repositoryUrlDescription: "Если вы используете Misskey как есть (без изменений в исходном коде), введите https://github.com/misskey-dev/misskey"
privacyPolicy: "Политика Конфиденциальности"
privacyPolicyUrl: "Ссылка на Политику Конфиденциальности"
attach: "Прикрепить"
angle: "Угол"
flip: "Переворот"
disableStreamingTimeline: "Отключить обновление ленты в режиме реального времени"
useGroupedNotifications: "Отображать уведомления сгруппировано"
doReaction: "Добавить реакцию"
code: "Код"
remainingN: "Остаётся: {n}"
seasonalScreenEffect: "Эффект времени года на экране"
decorate: "Украсить"
addMfmFunction: "Добавить MFM"
lastNDays: "Последние {n} сут"
hemisphere: "Место проживания"
enableHorizontalSwipe: "Смахните в сторону, чтобы сменить вкладки"
surrender: "Этот пост не может быть отменен."
useNativeUIForVideoAudioPlayer: "Использовать интерфейс браузера при проигрывании видео и звука"
keepOriginalFilename: "Сохранять исходное имя файла"
keepOriginalFilenameDescription: "Если вы выключите данную настройку, имена файлов будут автоматически заменены случайной строкой при загрузке."
alwaysConfirmFollow: "Всегда подтверждать подписку"
inquiry: "Связаться"
_delivery:
stop: "Заморожено"
_type:
none: "Публикация"
_announcement:
tooManyActiveAnnouncementDescription: "Большое количество оповещений может ухудшить пользовательский опыт. Рассмотрите архивирование неактуальных оповещений. "
_initialAccountSetting:
accountCreated: "Аккаунт успешно создан!"
letsStartAccountSetup: "Давайте настроим вашу учётную запись."
profileSetting: "Настройки профиля"
privacySetting: "Настройки конфиденциальности"
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: "Аккаунт был перемещён. Это действие необратимо."
_achievements:
earnedAt: "Разблокировано в"
_types:
@@ -1483,7 +1378,6 @@ _role:
canPublicNote: "Может публиковать общедоступные заметки"
canInvite: "Может создавать пригласительные коды"
canManageCustomEmojis: "Управлять пользовательскими эмодзи"
canManageAvatarDecorations: "Управление украшениями аватара"
driveCapacity: "Доступное пространство на «диске»"
alwaysMarkNsfw: "Всегда отмечать файлы как «не для всех»"
pinMax: "Доступное количество закреплённых заметок"
@@ -1594,11 +1488,6 @@ _aboutMisskey:
donate: "Пожертвование на Misskey"
morePatrons: "Большое спасибо и многим другим, кто принял участие в этом проекте! 🥰"
patrons: "Материальная поддержка"
projectMembers: "Участники проекта"
_displayOfSensitiveMedia:
respect: "Скрывать содержимое не для всех"
ignore: "Показывать содержимое не для всех"
force: "Скрывать всё содержимое"
_instanceTicker:
none: "Не показывать"
remote: "Только для других сайтов"
@@ -1627,7 +1516,7 @@ _wordMute:
muteWordsDescription: "Пишите слова через пробел в одной строке, чтобы фильтровать их появление вместе; а если хотите фильтровать любое из них, пишите в отдельных строках."
muteWordsDescription2: "Здесь можно использовать регулярные выражения — просто заключите их между двумя дробными чертами (/)."
_instanceMute:
instanceMuteDescription: "Любые активности, затрагивающие инстансы из данного списка, будут скрыты."
instanceMuteDescription: "Заметки и репосты с указанных здесь инстансов, а также ответы пользователям оттуда же не будут отображаться."
instanceMuteDescription2: "Пишите каждый инстанс на отдельной строке"
title: "Скрывает заметки с заданных инстансов."
heading: "Список скрытых инстансов"
@@ -1676,7 +1565,7 @@ _theme:
navActive: "Текст на боковой панели (активирован)"
navIndicator: "Индикатор на боковой панели"
link: "Ссылка"
hashtag: "Хештег"
hashtag: "Хэштег"
mention: "Упоминание"
mentionMe: "Упоминания вас"
renote: "Репост"
@@ -1706,10 +1595,8 @@ _sfx:
note: "Заметки"
noteMy: "Собственные заметки"
notification: "Уведомления"
reaction: "При выборе реакции"
_soundSettings:
driveFile: "Использовать аудиофайл с Диска."
driveFileWarn: "Выбрать аудиофайл с Диска."
antenna: "Антенна"
channel: "Канал"
_ago:
future: "Из будущего"
justNow: "Только что"
@@ -1739,6 +1626,7 @@ _2fa:
registerTOTP: "Начните настраивать приложение-аутентификатор"
step1: "Прежде всего, установите на устройство приложение для аутентификации, например, {a} или {b}."
step2: "Далее отсканируйте отображаемый QR-код при помощи приложения."
step2Click: "Нажав на QR-код, вы можете зарегистрироваться с помощью приложения для аутентификации или брелка для ключей, установленного на вашем устройстве."
step3Title: "Введите проверочный код"
step3: "И наконец, введите код, который покажет приложение."
step4: "Теперь при каждом входе на сайт вам нужно будет вводить код из приложения аналогичным образом."
@@ -1788,7 +1676,6 @@ _permissions:
"write:gallery": "Редактирование галереи"
"read:gallery-likes": "Просмотр списка понравившегося в галерее"
"write:gallery-likes": "Изменение списка понравившегося в галерее"
"write:admin:reset-password": "Сбросить пароль пользователю"
_auth:
shareAccessTitle: "Разрешения для приложений"
shareAccess: "Дать доступ для «{name}» к вашей учётной записи?"
@@ -1842,7 +1729,6 @@ _widgets:
_userList:
chooseList: "Выберите список"
clicker: "Счётчик щелчков"
birthdayFollowings: "Пользователи, у которых сегодня день рождения"
_cw:
hide: "Спрятать"
show: "Показать"
@@ -1896,7 +1782,7 @@ _profile:
name: "Имя"
username: "Имя пользователя"
description: "О себе"
youCanIncludeHashtags: "Можете использовать здесь хештеги."
youCanIncludeHashtags: "Можете использовать здесь хэштеги"
metadata: "Дополнительные сведения"
metadataEdit: "Редактировать дополнительные сведения"
metadataDescription: "Можно добавить до четырёх дополнительных граф в профиль."
@@ -1904,8 +1790,6 @@ _profile:
metadataContent: "Содержимое"
changeAvatar: "Поменять аватар"
changeBanner: "Поменять изображение в шапке"
verifiedLinkDescription: "Указывая здесь URL, содержащий ссылку на профиль, иконка владения ресурсом может быть отображена рядом с полем"
avatarDecorationMax: "Вы можете добавить до {max} украшений."
_exportOrImport:
allNotes: "Все заметки\n"
favoritedNotes: "Избранное"
@@ -2028,9 +1912,6 @@ _notification:
unreadAntennaNote: "Антенна {name}"
emptyPushNotificationMessage: "Обновлены push-уведомления"
achievementEarned: "Получено достижение"
checkNotificationBehavior: "Проверить внешний вид уведомления"
sendTestNotification: "Отправить тестовое уведомление"
flushNotification: "Очистить уведомления"
_types:
all: "Все"
follow: "Подписки"
@@ -2043,7 +1924,6 @@ _notification:
receiveFollowRequest: "Получен запрос на подписку"
followRequestAccepted: "Запрос на подписку одобрен"
achievementEarned: "Получение достижений"
login: "Войти"
app: "Уведомления из приложений"
_actions:
followBack: "отвечает взаимной подпиской"
@@ -2083,57 +1963,16 @@ _dialog:
_disabledTimeline:
title: "Лента отключена"
description: "Ваша текущая роль не позволяет пользоваться этой лентой."
_drivecleaner:
orderBySizeDesc: "Размеры файлов по убыванию"
orderByCreatedAtAsc: "По увеличению даты"
_webhookSettings:
createWebhook: "Создать вебхук"
modifyWebhook: "Изменить Вебхук"
name: "Название"
secret: "Секрет"
trigger: "Условие срабатывания"
active: "Вкл."
_events:
follow: "Когда подписались на пользователя"
followed: "Когда на вас подписались"
note: "Когда создали заметку"
reply: "Когда получили ответ на заметку"
renote: "Когда вас репостнули"
reaction: "Когда получили реакцию"
mention: "Когда вас упоминают"
_systemEvents:
abuseReport: "Когда приходит жалоба"
abuseReportResolved: "Когда разрешается жалоба"
userCreated: "Когда создан пользователь"
deleteConfirm: "Вы уверены, что хотите удалить этот Вебхук?"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Электронная почта"
webhook: "Вебхук"
_captions:
webhook: "Отправить уведомление Системному Вебхуку при получении или разрешении жалоб."
notifiedWebhook: "Используемый Вебхук"
_moderationLogTypes:
suspend: "Заморозить"
addCustomEmoji: "Добавлено эмодзи"
updateCustomEmoji: "Изменено эмодзи"
deleteCustomEmoji: "Удалено эмодзи"
deleteDriveFile: "Файл удалён"
resetPassword: "Сброс пароля:"
createInvitation: "Создать код приглашения"
createSystemWebhook: "Создать Системный Вебхук"
updateSystemWebhook: "Обновить Системый Вебхук"
deleteSystemWebhook: "Удалить Системный Вебхук"
_fileViewer:
url: "Ссылка"
attachedNotes: "Закреплённые заметки"
_dataSaver:
_code:
title: "Подсветка кода"
_hemisphere:
N: "Северное полушарие"
S: "Южное полушарие"
caption: "Используется для некоторых настроек клиента для определения сезона."
_reversi:
total: "Всего"

View File

@@ -1,22 +1,2 @@
---
_lang_: "සිංහල"
monthAndDay: "{month}-{day}"
username: "පරිශීලක නාමය"
password: "මුරපදය"
cancel: "අවලංගු කරන්න"
instance: "සර්වර්"
login: "පිවිසෙන්න"
users: "පරිශීලක"
note: "නෝට්"
notes: "නෝට්"
instances: "සර්වර්"
smtpUser: "පරිශීලක නාමය"
smtpPass: "මුරපදය"
user: "පරිශීලක"
_sfx:
note: "නෝට්"
_profile:
username: "පරිශීලක නාමය"
_notification:
_types:
login: "පිවිසෙන්න"

View File

@@ -454,6 +454,7 @@ uiLanguage: "Jazyk používateľského prostredia"
aboutX: "O {x}"
emojiStyle: "Štýl emoji"
native: "Natívne"
disableDrawer: "Nepoužívať šuflíkové menu"
showNoteActionsOnlyHover: "Ovládacie prvky poznámky sa zobrazujú len po nabehnutí myši"
noHistory: "Žiadna história"
signinHistory: "História prihlásení"
@@ -631,7 +632,10 @@ abuseReported: "Vaše nahlásenie je odoslané. Veľmi pekne ďakujeme."
reporter: "Nahlásil"
reporteeOrigin: "Pôvod nahláseného"
reporterOrigin: "Pôvod nahlasovača"
forwardReport: "Preposlať nahlásenie na server"
forwardReportIsAnonymous: "Namiesto vášho účtu bude zobrazený anonymný systémový účet na vzdialenom serveri ako autor nahlásenia."
send: "Poslať"
abuseMarkAsResolved: "Označiť nahlásenia ako vyriešené"
openInNewTab: "Otvoriť v novom tabe"
openInSideView: "Otvoriť v bočnom paneli"
defaultNavigationBehaviour: "Predvolené správanie navigácie"
@@ -918,10 +922,6 @@ renotes: "Preposlať"
sourceCode: "Zdrojový kód"
flip: "Preklopiť"
lastNDays: "Posledných {n} dní"
_delivery:
stop: "Zmrazené"
_type:
none: "Zverejňovanie"
_role:
priority: "Priorita"
_priority:
@@ -1120,6 +1120,8 @@ _sfx:
note: "Poznámky"
noteMy: "Vlastná poznámka"
notification: "Oznámenia"
antenna: "Antény"
channel: "Upozornenia kanála"
_ago:
future: "Budúcnosť"
justNow: "Teraz"
@@ -1406,7 +1408,6 @@ _notification:
pollEnded: "Hlasovanie skončilo"
receiveFollowRequest: "Doručené žiadosti o sledovanie"
followRequestAccepted: "Schválené žiadosti o sledovanie"
login: "Prihlásiť sa"
app: "Oznámenia z prepojených aplikácií"
_actions:
followBack: "Sledovať späť\n"
@@ -1442,12 +1443,9 @@ _deck:
_webhookSettings:
name: "Názov"
active: "Zapnuté"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Email"
_moderationLogTypes:
suspend: "Zmraziť"
resetPassword: "Resetovať heslo"
_reversi:
total: "Celkom"

View File

@@ -488,10 +488,6 @@ dataSaver: "Databesparing"
icon: "Profilbild"
replies: "Svara"
renotes: "Omnotera"
_delivery:
stop: "Suspenderad"
_type:
none: "Publiceras"
_achievements:
_types:
_open3windows:
@@ -512,6 +508,7 @@ _theme:
_sfx:
note: "Noter"
notification: "Notifikationer"
antenna: "Antenner"
_2fa:
renewTOTPCancel: "Nej tack"
_antennaSources:
@@ -562,7 +559,6 @@ _notification:
renote: "Omnotera"
quote: "Citat"
reaction: "Reaktioner"
login: "Logga in"
_actions:
reply: "Svara"
renote: "Omnotera"
@@ -577,10 +573,7 @@ _deck:
_webhookSettings:
name: "Namn"
active: "Aktiverad"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "E-post"
_moderationLogTypes:
suspend: "Suspendera"
resetPassword: "Återställ Lösenord"

File diff suppressed because it is too large Load Diff

View File

@@ -378,10 +378,6 @@ addMemo: "Kısa not ekle"
icon: "Avatar"
replies: "yanıt"
renotes: "vazgeçme"
_delivery:
stop: "Askıya alınmış"
_type:
none: "Paylaşım"
_accountDelete:
started: "Silme işlemi başlatıldı"
_email:
@@ -446,7 +442,6 @@ _notification:
reaction: "Tepkiler"
receiveFollowRequest: "Takip isteği alındı"
followRequestAccepted: "Takip isteği kabul edildi"
login: "Giriş Yap "
_actions:
reply: "yanıt"
renote: "vazgeçme"
@@ -460,3 +455,4 @@ _deck:
_moderationLogTypes:
suspend: "askıya al"
resetPassword: "Şifre sıfırlama"

View File

@@ -17,6 +17,4 @@ _2fa:
renewTOTPCancel: "ئۇنى توختىتىڭ"
_widgets:
profile: "profile"
_notification:
_types:
login: "كىرىش"

View File

@@ -452,6 +452,7 @@ language: "Мова"
uiLanguage: "Мова інтерфейсу"
aboutX: "Про {x}"
native: "місцевий"
disableDrawer: "Не використовувати висувні меню"
noHistory: "Історія порожня"
signinHistory: "Історія входів"
enableAdvancedMfm: "Увімкнути розширений MFM"
@@ -630,7 +631,10 @@ abuseReported: "Дякуємо, вашу скаргу було відправл
reporter: "Репортер"
reporteeOrigin: "Про кого повідомлено"
reporterOrigin: "Хто повідомив"
forwardReport: "Переслати звіт на віддалений інстанс"
forwardReportIsAnonymous: "Замість вашого облікового запису анонімний системний обліковий запис буде відображатися як доповідач на віддаленому інстансі"
send: "Відправити"
abuseMarkAsResolved: "Позначити скаргу як вирішену"
openInNewTab: "Відкрити в новій вкладці"
openInSideView: "Відкрити збоку"
defaultNavigationBehaviour: "Поведінка навігації за замовчуванням"
@@ -910,10 +914,6 @@ renotes: "Поширити"
sourceCode: "Вихідний код"
flip: "Перевернути"
lastNDays: "Останні {n} днів"
_delivery:
stop: "Призупинено"
_type:
none: "Публікація"
_achievements:
earnedAt: "Відкрито"
_types:
@@ -1314,6 +1314,8 @@ _sfx:
note: "Нотатки"
noteMy: "Мої нотатки"
notification: "Сповіщення"
antenna: "Прийом антени"
channel: "Повідомлення каналу"
_ago:
future: "Майбутнє"
justNow: "Щойно"
@@ -1584,7 +1586,6 @@ _notification:
reaction: "Реакції"
receiveFollowRequest: "Запити на підписку"
followRequestAccepted: "Прийняті підписки"
login: "Увійти"
app: "Сповіщення від додатків"
_actions:
reply: "Відповісти"
@@ -1617,12 +1618,9 @@ _deck:
_webhookSettings:
name: "Ім'я"
active: "Увімкнено"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "E-mail"
_moderationLogTypes:
suspend: "Призупинити"
resetPassword: "Скинути пароль"
_reversi:
total: "Всього"

View File

@@ -471,6 +471,7 @@ uiLanguage: "Interfeys tili"
aboutX: "{x} haqida"
emojiStyle: "Emoji ko'rinishi"
native: "Mahalliy"
disableDrawer: "Slayd menyusidan foydalanmang"
showNoteActionsOnlyHover: "Eslatma amallarini faqat sichqonchani olib borganda korsatish"
noHistory: "Tarix yo'q"
signinHistory: "kirish tarixi"
@@ -629,7 +630,10 @@ abuseReported: "Shikoyatingiz yetkazildi. Ma'lumot uchun rahmat."
reporter: "Shikoyat qiluvchi"
reporteeOrigin: "Xabarning kelib chiqishi"
reporterOrigin: "Xabarchining joylashuvi"
forwardReport: "Xabarni masofadagi serverga yuborish"
forwardReportIsAnonymous: "Sizning yuborayotgan xabaringiz o'z akkountingiz emas balki anonim tarzda qoladi"
send: "Yuborish"
abuseMarkAsResolved: "Yuborilgan xabarni hal qilingan deb belgilash"
openInNewTab: "Yangi tab da ochish"
openInSideView: "Yon panelda ochish"
defaultNavigationBehaviour: "Standart navigatsiya harakati"
@@ -842,10 +846,6 @@ icon: "Avatar"
replies: "Javob berish"
renotes: "Qayta qayd etish"
flip: "Teskari"
_delivery:
stop: "To'xtatilgan"
_type:
none: "Yuborilmoqda"
_achievements:
_types:
_viewInstanceChart:
@@ -1054,7 +1054,6 @@ _notification:
quote: "Iqtibos keltirish"
reaction: "Reaktsiyalar"
receiveFollowRequest: "Qabul qilingan kuzatuv so'rovlari"
login: "Kirish"
_actions:
reply: "Javob berish"
renote: "Qayta qayd qilish"
@@ -1086,12 +1085,9 @@ _webhookSettings:
_events:
renote: "Qayta qayd qilinganda"
mention: "Eslanganda"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Email"
_moderationLogTypes:
suspend: "To'xtatish"
resetPassword: "Parolni tiklash"
_reversi:
total: "Jami"

View File

@@ -1,53 +0,0 @@
import locales from './index.js';
let valid = true;
function writeError(type, lang, tree, data) {
process.stderr.write(JSON.stringify({ type, lang, tree, data }));
process.stderr.write('\n');
valid = false;
}
function verify(expected, actual, lang, trace) {
for (let key in expected) {
if (!Object.prototype.hasOwnProperty.call(actual, key)) {
continue;
}
if (typeof expected[key] === 'object') {
if (typeof actual[key] !== 'object') {
writeError('mismatched_type', lang, trace ? `${trace}.${key}` : key, { expected: 'object', actual: typeof actual[key] });
continue;
}
verify(expected[key], actual[key], lang, trace ? `${trace}.${key}` : key);
} else if (typeof expected[key] === 'string') {
switch (typeof actual[key]) {
case 'object':
writeError('mismatched_type', lang, trace ? `${trace}.${key}` : key, { expected: 'string', actual: 'object' });
break;
case 'undefined':
continue;
case 'string':
const expectedParameters = new Set(expected[key].match(/\{[^}]+\}/g)?.map((s) => s.slice(1, -1)));
const actualParameters = new Set(actual[key].match(/\{[^}]+\}/g)?.map((s) => s.slice(1, -1)));
for (let parameter of expectedParameters) {
if (!actualParameters.has(parameter)) {
writeError('missing_parameter', lang, trace ? `${trace}.${key}` : key, { parameter });
}
}
}
}
}
}
const { ['ja-JP']: original, ...verifiees } = locales;
for (let lang in verifiees) {
if (!Object.prototype.hasOwnProperty.call(locales, lang)) {
continue;
}
verify(original, verifiees[lang], lang);
}
if (!valid) {
process.exit(1);
}

View File

@@ -121,11 +121,9 @@ sensitive: "Nhạy cảm"
add: "Thêm"
reaction: "Biểu cảm"
reactions: "Biểu cảm"
emojiPicker: "Bộ chọn biểu tượng cảm xúc"
reactionSettingDescription2: "Kéo để sắp xếp, nhấn để xóa, nhấn \"+\" để thêm."
rememberNoteVisibility: "Lưu kiểu tút mặc định"
attachCancel: "Gỡ tập tin đính kèm"
deleteFile: "Xoá tệp tin"
markAsSensitive: "Đánh dấu là nhạy cảm"
unmarkAsSensitive: "Bỏ đánh dấu nhạy cảm"
enterFileName: "Nhập tên tập tin"
@@ -259,7 +257,6 @@ removed: "Đã xóa"
removeAreYouSure: "Bạn có chắc muốn gỡ \"{x}\"?"
deleteAreYouSure: "Bạn có chắc muốn xóa \"{x}\"?"
resetAreYouSure: "Bạn có chắc muốn đặt lại?"
areYouSure: "Bạn chắc chứ?"
saved: "Đã lưu"
messaging: "Trò chuyện"
upload: "Tải lên"
@@ -310,7 +307,6 @@ folderName: "Tên thư mục"
createFolder: "Tạo thư mục"
renameFolder: "Đổi tên thư mục"
deleteFolder: "Xóa thư mục"
folder: "Thư mục"
addFile: "Thêm tập tin"
emptyDrive: "Ổ đĩa của bạn trống trơn"
emptyFolder: "Thư mục trống"
@@ -372,11 +368,8 @@ hcaptcha: "hCaptcha"
enableHcaptcha: "Bật hCaptcha"
hcaptchaSiteKey: "Khóa của trang"
hcaptchaSecretKey: "Khóa bí mật"
mcaptcha: "mCaptcha"
enableMcaptcha: "Bật mCaptcha"
mcaptchaSiteKey: "Khóa của trang"
mcaptchaSecretKey: "Khóa bí mật"
mcaptchaInstanceUrl: "URL mCaptcha máy chủ"
recaptcha: "reCAPTCHA"
enableRecaptcha: "Bật reCAPTCHA"
recaptchaSiteKey: "Khóa của trang"
@@ -392,7 +385,6 @@ name: "Tên"
antennaSource: "Nguồn trạm phát sóng"
antennaKeywords: "Từ khóa để nghe"
antennaExcludeKeywords: "Từ khóa để lọc ra"
antennaExcludeBots: "Loại trừ các tài khoản bot"
antennaKeywordsDescription: "Phân cách bằng dấu cách cho điều kiện AND hoặc bằng xuống dòng cho điều kiện OR."
notifyAntenna: "Thông báo có tút mới"
withFileAntenna: "Chỉ những tút có media"
@@ -427,7 +419,6 @@ moderator: "Kiểm duyệt viên"
moderation: "Kiểm duyệt"
moderationNote: "Ghi chú kiểm duyệt"
addModerationNote: "Thêm ghi chú kiểm duyệt"
moderationLogs: "Nhật kí quản trị"
nUsersMentioned: "Dùng bởi {n} người"
securityKeyAndPasskey: "Mã bảo mật・Passkey"
securityKey: "Khóa bảo mật"
@@ -460,7 +451,6 @@ retype: "Nhập lại"
noteOf: "Tút của {user}"
quoteAttached: "Trích dẫn"
quoteQuestion: "Trích dẫn lại?"
attachAsFileQuestion: "Văn bản ở trong bộ nhớ tạm rất dài. Bạn có muốn đăng nó dưới dạng một tệp văn bản không?"
noMessagesYet: "Chưa có tin nhắn"
newMessageExists: "Bạn có tin nhắn mới"
onlyOneFileCanBeAttached: "Bạn chỉ có thể đính kèm một tập tin"
@@ -486,6 +476,7 @@ uiLanguage: "Ngôn ngữ giao diện"
aboutX: "Giới thiệu {x}"
emojiStyle: "Kiểu cách Emoji"
native: "Bản xứ"
disableDrawer: "Không dùng menu thanh bên"
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"
@@ -546,7 +537,6 @@ 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"
@@ -567,10 +557,6 @@ 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"
@@ -675,7 +661,10 @@ 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"
@@ -870,8 +859,6 @@ 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."
@@ -981,7 +968,6 @@ 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."
@@ -1005,24 +991,18 @@ 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:"
@@ -1039,88 +1019,36 @@ 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 ý?"
beSureToReadThisAsItIsImportant: "Hãy đọc kỹ vì nó rất quan trọng."
iHaveReadXCarefullyAndAgree: "Tôi đã đọc và đồng ý với \"{x}\"."
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ó."
@@ -1352,7 +1280,6 @@ _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"
@@ -1558,6 +1485,8 @@ _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"
@@ -1579,6 +1508,7 @@ _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 đó."
@@ -1860,7 +1790,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 {name}"
unreadAntennaNote: "Ăng ten"
emptyPushNotificationMessage: "Đã cập nhật thông báo đẩy"
achievementEarned: "Hoàn thành Achievement"
_types:
@@ -1875,7 +1805,6 @@ _notification:
receiveFollowRequest: "Yêu cầu theo dõi"
followRequestAccepted: "Yêu cầu theo dõi được chấp nhận"
achievementEarned: "Hoàn thành Achievement"
login: "Đăng nhập"
app: "Từ app liên kết"
_actions:
followBack: "đã theo dõi lại bạn"
@@ -1915,17 +1844,14 @@ _webhookSettings:
createWebhook: "Tạo Webhook"
name: "Tên"
secret: "Mã bí mật"
events: "Sự kiện Webhook"
active: "Đã bật"
_events:
reaction: "Khi nhận được sự kiện"
mention: "Khi có người nhắc tới bạn"
_abuseReport:
_notificationRecipient:
_recipientType:
mail: "Email"
_moderationLogTypes:
suspend: "Vô hiệu hóa"
resetPassword: "Đặt lại mật khẩu"
createInvitation: "Tạo lời mời"
_reversi:
total: "Tổng cộng"

View File

@@ -8,9 +8,6 @@ search: "搜索"
notifications: "通知"
username: "用户名"
password: "密码"
initialPasswordForSetup: "初始化密码"
initialPasswordIsIncorrect: "初始化密码不正确"
initialPasswordForSetupDescription: "如果是自己安装的 Misskey请输入配置文件里设好的密码。\n如果使用的是 Misskey 的托管服务等,请输入服务商提供的密码。\n如果没有设置密码请留空并继续。"
forgotPassword: "忘记密码"
fetchingAsApObject: "在联邦宇宙查询中..."
ok: "OK"
@@ -61,9 +58,8 @@ copyUserId: "复制用户 ID"
copyNoteId: "复制帖子 ID"
copyFileId: "复制文件ID"
copyFolderId: "复制文件夹ID"
copyProfileUrl: "复制个人资料URL"
copyProfileUrl: "复制配置文件URL"
searchUser: "搜索用户"
searchThisUsersNotes: "搜索用户帖子"
reply: "回复"
loadMore: "查看更多"
showMore: "查看更多"
@@ -93,7 +89,7 @@ followsYou: "正在关注你"
createList: "创建列表"
manageLists: "管理列表"
error: "错误"
somethingHappened: "出错了"
somethingHappened: "出现了一些问题!"
retry: "重试"
pageLoadError: "页面加载失败。"
pageLoadErrorDescription: "这通常是由于网络或浏览器缓存的原因。请清除缓存或等待片刻后重试。"
@@ -112,14 +108,11 @@ enterEmoji: "输入表情符号"
renote: "转发"
unrenote: "取消转发"
renoted: "已转发。"
renotedToX: "转帖给 {name}"
cantRenote: "该帖无法转发。"
cantReRenote: "转发无法被再次转发。"
quote: "引用"
inChannelRenote: "在频道内转发"
inChannelQuote: "在频道内引用"
renoteToChannel: "转帖至频道"
renoteToOtherChannel: "转帖至其它频道"
pinnedNote: "已置顶的帖子"
pinned: "置顶"
you: "您"
@@ -158,7 +151,6 @@ editList: "编辑列表"
selectChannel: "选择频道"
selectAntenna: "选择天线"
editAntenna: "编辑天线"
createAntenna: "创建天线"
selectWidget: "选择小工具"
editWidgets: "编辑部件"
editWidgetsExit: "完成编辑"
@@ -170,7 +162,7 @@ emojiUrl: "emoji 地址"
addEmoji: "添加表情符号"
settingGuide: "推荐配置"
cacheRemoteFiles: "缓存远程文件"
cacheRemoteFilesDescription: "启用此设定时,将在此服务器上缓存远程文件。虽然可以加快图片显示的速度,但是相对的会消耗大量的服务器存储空间。用户角色内的网盘容量决定了这个远程用户能在服务器上保留多少缓存。当超出了这个限制时,旧的文件将从缓存中被删除,成为链接。当禁用此设定时,则是从一开始就将远程文件保留为链接。此时推荐将 default.yml 的 proxyRemoteFiles 设置为 true 以优化缩略图生成及保护用户隐私。"
cacheRemoteFilesDescription: "启用此设定时,将在此服务器上缓存远程文件。虽然可以加快图片显示的速度,但是相对的会消耗大量的服务器存储空间。用户角色内的网盘容量决定了这个远程用户能在服务器上保留保留多少缓存。当超出了这个限制时,旧的文件将从缓存中被删除,成为链接。当禁用此设定时,则是从一开始就将远程文件保留为链接。此时推荐将 default.yml 的 proxyRemoteFiles 设置为 true 以优化缩略图生成及保护用户隐私。"
youCanCleanRemoteFilesCache: "可以使用文件管理的🗑️按钮来删除所有的缓存。"
cacheRemoteSensitiveFiles: "缓存远程敏感媒体文件"
cacheRemoteSensitiveFilesDescription: "如果禁用这项设定,远程服务器的敏感媒体将不会被缓存,而是直接链接。"
@@ -185,10 +177,6 @@ addAccount: "添加账户"
reloadAccountsList: "更新账户列表"
loginFailed: "登录失败"
showOnRemote: "转到所在服务器显示"
continueOnRemote: "转到所在服务器继续"
chooseServerOnMisskeyHub: "从 Misskey Hub 选择服务器"
specifyServerHost: "直接输入服务器域名"
inputHostName: "请输入域名"
general: "常规设置"
wallpaper: "壁纸"
setWallpaper: "设置壁纸"
@@ -199,7 +187,6 @@ followConfirm: "你确定要关注 {name} 吗?"
proxyAccount: "代理账户"
proxyAccountDescription: "代理账户是在某些情况下替代用户进行远程关注用的账户。 例如说,当用户将一位远程用户放入一个列表中时,如果本地服务器上没有任何人关注这位远程用户,则这位远程用户的账户活动将不会被送到本地服务器上。作为替代,此时将使用代理账户进行关注。"
host: "主机名"
selectSelf: "选择自己"
selectUser: "选择用户"
recipient: "收件人"
annotation: "注解"
@@ -215,7 +202,6 @@ perDay: "每天"
stopActivityDelivery: "停止发送活动"
blockThisInstance: "阻止此服务器向本服务器推流"
silenceThisInstance: "使服务器静音"
mediaSilenceThisInstance: "隐藏此服务器的媒体文件"
operations: "操作"
software: "软件"
version: "版本"
@@ -234,13 +220,9 @@ clearQueueConfirmText: "未送达的帖子将不会被投递。 通常无需执
clearCachedFiles: "清除缓存"
clearCachedFilesConfirm: "确定要清除所有缓存的远程文件?"
blockedInstances: "被封锁的服务器"
blockedInstancesDescription: "设定要封锁的服务器,以换行分隔。被封锁的服务器将无法与本服务器进行交换通讯。子域名也同样会被封锁。"
blockedInstancesDescription: "设定要封锁的服务器,以换行来进行分割。被封锁的服务器将无法与本服务器进行交换通讯。子域名也同样会被封锁。"
silencedInstances: "被静音的服务器"
silencedInstancesDescription: "设置要静音的服务器,以换行分隔。被静音的服务器内所有的账户将默认处于「静音」状态,仅能发送关注请求,并且在未关注状态下无法提及本地账户。被阻止的实例不受影响。"
mediaSilencedInstances: "已隐藏媒体文件的服务器"
mediaSilencedInstancesDescription: "设置要隐藏媒体文件的服务器,以换行分隔。被设置为隐藏媒体文件服务器内所有账号的文件均按照「敏感内容」处理,且将无法使用自定义表情符号。被阻止的实例不受影响。"
federationAllowedHosts: "允许联合的服务器"
federationAllowedHostsDescription: "设定允许联合的服务器,以换行分隔。"
silencedInstancesDescription: "设置要静音的服务器,以换行分隔。被静音的服务器内所有的账户将默认处于「静音」状态,仅能发送关注请求,并且在未关注状态下无法提及本地账户。被阻止的实例不受影响。"
muteAndBlock: "静音/拉黑"
mutedUsers: "已静音用户"
blockedUsers: "已拉黑的用户"
@@ -331,7 +313,6 @@ selectFile: "选择文件"
selectFiles: "选择文件"
selectFolder: "选择文件夹"
selectFolders: "选择多个文件夹"
fileNotSelected: "未选择文件"
renameFile: "重命名文件"
folderName: "文件夹名称"
createFolder: "创建文件夹"
@@ -339,7 +320,6 @@ renameFolder: "重命名文件夹"
deleteFolder: "删除文件夹"
folder: "文件夹"
addFile: "添加文件"
showFile: "显示文件"
emptyDrive: "网盘中无文件"
emptyFolder: "此文件夹中无文件"
unableToDelete: "无法删除"
@@ -367,7 +347,7 @@ instanceName: "服务器名称"
instanceDescription: "服务器简介"
maintainerName: "管理员名称"
maintainerEmail: "管理员电子邮箱"
tosUrl: "服务条款地址"
tosUrl: "服务条款 URL"
thisYear: "今年"
thisMonth: "本月"
today: "今天"
@@ -420,7 +400,6 @@ name: "名称"
antennaSource: "接收来源"
antennaKeywords: "包含关键字"
antennaExcludeKeywords: "排除关键字"
antennaExcludeBots: "排除机器人账户"
antennaKeywordsDescription: "AND 条件用空格分隔OR 条件用换行符分隔。"
notifyAntenna: "开启通知"
withFileAntenna: "仅带有附件的帖子"
@@ -449,12 +428,11 @@ administrator: "管理员"
token: "Token (令牌)"
2fa: "双因素认证"
setupOf2fa: "设置双因素认证"
totp: "验证器"
totpDescription: "使用验证器输入一次性密码"
totp: "身份验证应用"
totpDescription: "使用认证应用输入一次性密码"
moderator: "监察员"
moderation: "管理"
moderationNote: "管理笔记"
moderationNoteDescription: "可以用来记录仅在管理员之间共享的笔记。"
addModerationNote: "添加管理笔记"
moderationLogs: "管理日志"
nUsersMentioned: "{n} 被提到"
@@ -489,12 +467,10 @@ retype: "重新输入"
noteOf: "{user} 的帖子"
quoteAttached: "已引用"
quoteQuestion: "是否引用此链接内容?"
attachAsFileQuestion: "剪贴板内的文字过长。要转换为文本文件并添加吗?"
noMessagesYet: "现在没有新的聊天"
newMessageExists: "新信息"
onlyOneFileCanBeAttached: "只能添加一个附件"
signinRequired: "请先登录"
signinOrContinueOnRemote: "若要继续,需要转到您所使用的实例,或者在此服务器上注册或登录。"
invitations: "邀请"
invitationCode: "邀请码"
checking: "正在确认"
@@ -516,12 +492,8 @@ uiLanguage: "显示语言"
aboutX: "关于 {x}"
emojiStyle: "表情符号的样式"
native: "原生"
menuStyle: "菜单样式"
style: "样式"
drawer: "抽屉"
popup: "弹窗"
disableDrawer: "不显示抽屉菜单"
showNoteActionsOnlyHover: "仅在悬停时显示帖子操作"
showReactionsCount: "显示帖子的回应数"
noHistory: "没有历史记录"
signinHistory: "登录历史"
enableAdvancedMfm: "启用扩展 MFM"
@@ -602,8 +574,6 @@ ascendingOrder: "升序"
descendingOrder: "降序"
scratchpad: "AiScript 控制台"
scratchpadDescription: "AiScript 控制台为 AiScript 提供了实验环境。您可以编写代码与 Misskey 交互,运行并查看结果。"
uiInspector: "UI 检查器"
uiInspectorDescription: "查看所有内存中由 UI 组件生成出的实例。UI 组件由 UI:C 系列函数所生成。"
output: "输出"
script: "脚本"
disablePagesScript: "禁用页面脚本"
@@ -644,7 +614,7 @@ disablePlayer: "关闭播放器"
expandTweet: "展开帖子"
themeEditor: "主题编辑器"
description: "描述"
describeFile: "添加描述"
describeFile: "添加标题"
enterFileDescription: "输入标题"
author: "作者"
leaveConfirm: "存在未保存的更改。要放弃更改吗?"
@@ -720,7 +690,10 @@ abuseReported: "内容已发送。感谢您提交信息。"
reporter: "举报者"
reporteeOrigin: "举报来源"
reporterOrigin: "举报者来源"
forwardReport: "将该举报信息转发给远程服务器"
forwardReportIsAnonymous: "在远程实例上显示的报告者是匿名的系统账号,而不是您的账号。"
send: "发送"
abuseMarkAsResolved: "处理完毕"
openInNewTab: "在新标签页中打开"
openInSideView: "在侧边栏中打开"
defaultNavigationBehaviour: "默认导航"
@@ -857,7 +830,6 @@ administration: "管理"
accounts: "账户"
switch: "切换"
noMaintainerInformationWarning: "管理人员信息未设置。"
noInquiryUrlWarning: "尚未设置联络地址。"
noBotProtectionWarning: "Bot 防御未设置。"
configure: "设置"
postToGallery: "发送到图库"
@@ -869,7 +841,7 @@ shareWithNote: "在帖子中分享"
ads: "广告"
expiration: "截止时间"
startingperiod: "开始时间"
memo: "备注"
memo: "便笺"
priority: "优先级"
high: "高"
middle: "中"
@@ -922,7 +894,6 @@ followersVisibility: "关注者的公开范围"
continueThread: "查看更多帖子"
deleteAccountConfirm: "将要删除账户。是否确认?"
incorrectPassword: "密码错误"
incorrectTotp: "一次性密码不正确或已过期"
voteConfirm: "确定投给 “{choice}” "
hide: "隐藏"
useDrawerReactionPickerForMobile: "在移动设备上使用抽屉显示"
@@ -1048,7 +1019,6 @@ thisPostMayBeAnnoyingHome: "发到首页"
thisPostMayBeAnnoyingCancel: "取消"
thisPostMayBeAnnoyingIgnore: "就这样发布"
collapseRenotes: "省略显示已经看过的转发内容"
collapseRenotesDescription: "将回应过或转贴过的贴子折叠表示。"
internalServerError: "内部服务器错误"
internalServerErrorDescription: "内部服务器发生了预期外的错误"
copyErrorInfo: "复制错误信息"
@@ -1122,8 +1092,6 @@ preservedUsernames: "保留的用户名"
preservedUsernamesDescription: "列出需要保留的用户名,使用换行来作为分割。被指定的用户名在建立账户时无法使用,但由管理员所创建的账户不受该限制。此外,现有的账户也不会受到影响。"
createNoteFromTheFile: "从文件创建帖子"
archive: "归档"
archived: "已归档"
unarchive: "取消归档"
channelArchiveConfirmTitle: "要将 {name} 归档吗?"
channelArchiveConfirmDescription: "归档后,在频道列表与搜索结果中不会显示,也无法发布新的贴文。"
thisChannelArchived: "该频道已被归档。"
@@ -1134,9 +1102,6 @@ preventAiLearning: "拒绝接受生成式 AI 的学习"
preventAiLearningDescription: "要求文章生成 AI 或图像生成 AI 不能够以发布的帖子和图像等内容作为学习对象。这是通过在 HTML 响应中包含 noai 标志来实现的,这不能完全阻止 AI 学习你的发布内容,并不是所有 AI 都会遵守这类请求。"
options: "选项"
specifyUser: "用户指定"
lookupConfirm: "确定查询?"
openTagPageConfirm: "确定打开话题标签页面?"
specifyHost: "指定主机名"
failedToPreviewUrl: "无法预览"
update: "更新"
rolesThatCanBeUsedThisEmojiAsReaction: "可以使用表情作为回应的角色"
@@ -1207,7 +1172,7 @@ externalServices: "外部服务"
sourceCode: "源代码"
sourceCodeIsNotYetProvided: "还未提供源代码。要解决此问题请联系管理员。"
repositoryUrl: "仓库地址"
repositoryUrlDescription: "若源代码所在的仓库是公开的,请填入对应的 URL。若并未追加或者修改 Misskey 的代码,请填入 https://github.com/misskey-dev/misskey。"
repositoryUrlDescription: "若源代码所在的仓库是公开的,请填入对应的 URL。若是按原样使用 Misskey并未追加或者修改代码的情况请填入 https://github.com/misskey-dev/misskey。"
repositoryUrlOrTarballRequired: "若仓库并未公开,则需要提供 tarball 作为替代。详情请看 .config/example.yml。"
feedback: "反馈"
feedbackUrl: "反馈地址"
@@ -1236,7 +1201,7 @@ code: "代码"
reloadRequiredToApplySettings: "需要重新载入来使设置生效"
remainingN: "剩余:{n}"
overwriteContentConfirm: "将覆盖现有内容。确定吗?"
seasonalScreenEffect: "符合当前季节的画面效果"
seasonalScreenEffect: "应景的画面效果"
decorate: "装饰"
addMfmFunction: "添加装饰"
enableQuickAddMfmFunction: "显示高级 MFM 选择器"
@@ -1258,47 +1223,6 @@ enableHorizontalSwipe: "滑动切换标签页"
loading: "读取中"
surrender: "取消"
gameRetry: "重试"
notUsePleaseLeaveBlank: "如不使用请留空"
useTotp: "使用一次性代码"
useBackupCode: "使用备用代码"
launchApp: "启动应用"
useNativeUIForVideoAudioPlayer: "使用浏览器的 UI 播放动画及音频"
keepOriginalFilename: "保持原文件名"
keepOriginalFilenameDescription: "若关闭此设置,上传文件时文件名将被替换为随机字符。"
noDescription: "没有描述"
alwaysConfirmFollow: "总是确认关注"
inquiry: "联系我们"
tryAgain: "请再试一次"
confirmWhenRevealingSensitiveMedia: "显示敏感内容前需要确认"
sensitiveMediaRevealConfirm: "这是敏感内容。是否显示?"
createdLists: "已创建的列表"
createdAntennas: "已创建的天线"
fromX: "从 {x}"
genEmbedCode: "生成嵌入代码"
noteOfThisUser: "此用户的帖子"
clipNoteLimitExceeded: "无法再往此便签内添加更多帖子"
performance: "性能"
modified: "有变更"
discard: "取消"
thereAreNChanges: "有 {n} 处更改"
signinWithPasskey: "使用通行密钥登录"
unknownWebAuthnKey: "此通行密钥未注册。"
passkeyVerificationFailed: "验证通行密钥失败。"
passkeyVerificationSucceededButPasswordlessLoginDisabled: "通行密钥验证成功,但账户未开启无密码登录。"
messageToFollower: "给关注者的消息"
target: "对象"
_abuseUserReport:
forward: "转发"
forwardDescription: "目标是匿名系统账户,将把举报转发给远程服务器。"
_delivery:
status: "投递状态"
stop: "停止投递"
resume: "继续投递"
_type:
none: "投递中"
manuallySuspended: "手动停止中"
goneSuspended: "因服务器被删除而停止"
autoSuspendedForNotResponding: "因服务器无应答而停止"
_bubbleGame:
howToPlay: "游戏说明"
hold: "抓住"
@@ -1309,7 +1233,6 @@ _bubbleGame:
maxChain: "最高连击数"
yen: "{yen} 日元"
estimatedQty: "约 {qty} 个"
scoreSweets: "相当于 {onigiriQtyWithUnit} 饭团"
_howToPlay:
section1: "对准位置将Emoji投入盒子。"
section2: "相同的Emoji相互接触合成后会得到新的Emoji以此获得分数。"
@@ -1424,13 +1347,10 @@ _serverSettings:
fanoutTimelineDescription: "当启用时,可显著提高获取各种时间线时的性能,并减轻数据库的负荷。但是相对的 Redis 的内存使用量将会增加。如果服务器的内存不是很大,又或者运行不稳定的话可以把它关掉。"
fanoutTimelineDbFallback: "回退到数据库"
fanoutTimelineDbFallbackDescription: "当启用时,若时间线未被缓存,则将额外查询数据库。禁用该功能可通过不执行回退处理进一步减少服务器负载,但会限制可检索的时间线范围。"
reactionsBufferingDescription: "开启时可显著提高发送回应时的性能,及减轻数据库负荷。但 Redis 的内存用量会相应增加。"
inquiryUrl: "联络地址"
inquiryUrlDescription: "用来指定诸如向服务运营商咨询的论坛地址,或记载了运营商联系方式之类的网页地址。"
_accountMigration:
moveFrom: "从别的账号迁移到此账户"
moveFromSub: "为另一个账户建立别名"
moveFromLabel: "迁移前的账户 #{n}"
moveFromLabel: "迁移前的账户"
moveFromDescription: "如果迁移时需要继承其他账户的关注者,你需要创建一个别名。此操作需要在迁移前完成!\n请像这样输入要迁移的账户@username@server.example.com\n如果要删除请将输入字段留空并保存不推荐。"
moveTo: "把这个账户迁移到新的账户"
moveToLabel: "迁移后的账户"
@@ -1626,7 +1546,7 @@ _achievements:
_postedAt0min0sec:
title: "报时"
description: "在 0 点发布一篇帖子"
flavor: "报时信号最后一响,零点整"
flavor: "嘣 嘣 嘣 Biu——"
_selfQuote:
title: "自我引用"
description: "引用了自己的帖子"
@@ -1675,8 +1595,8 @@ _achievements:
flavor: "今年也请对本服务器多多指教!"
_cookieClicked:
title: "点击饼干小游戏"
description: "点击了饼干"
flavor: "用错软件了"
description: "点击了可疑的饼干"
flavor: "是不是软件有问题"
_brainDiver:
title: "Brain Diver"
description: "发布了包含 Brain Diver 链接的帖子"
@@ -1693,7 +1613,6 @@ _achievements:
_bubbleGameDoubleExplodingHead:
title: "两个🤯"
description: "你合成出了2个游戏里最大的Emoji"
flavor: "大约能 装满 这些便当盒 🤯 🤯 (比划)"
_role:
new: "创建角色"
edit: "编辑角色"
@@ -1723,8 +1642,8 @@ _role:
descriptionOfIsExplorable: "打开后将公开角色时间线。如果角色不是公开的,就无法公开时间线。"
displayOrder: "显示顺序"
descriptionOfDisplayOrder: "数字越大,显示位置越靠前。"
canEditMembersByModerator: "允许监察编辑成员"
descriptionOfCanEditMembersByModerator: "如果选中,监察和管理员都能够为用户分配/取消分配角色。如果未选中,则只有管理员可以执行此操作。"
canEditMembersByModerator: "允许监察编辑成员"
descriptionOfCanEditMembersByModerator: "如果选中,监察和管理员都能够为用户分配/取消分配角色。如果未选中,则只有管理员可以执行此操作。"
priority: "优先级"
_priority:
low: "低"
@@ -1743,7 +1662,6 @@ _role:
canManageAvatarDecorations: "管理头像挂件"
driveCapacity: "网盘容量"
alwaysMarkNsfw: "总是将文件标记为 NSFW"
canUpdateBioMedia: "可以更新头像和横幅"
pinMax: "帖子置顶数量限制"
antennaMax: "可创建的最大天线数量"
wordMuteMax: "屏蔽词的字数限制"
@@ -1758,20 +1676,10 @@ _role:
canSearchNotes: "是否可以搜索帖子"
canUseTranslator: "使用翻译功能"
avatarDecorationLimit: "可添加头像挂件的最大个数"
canImportAntennas: "允许导入天线"
canImportBlocking: "允许导入拉黑列表"
canImportFollowing: "允许导入关注列表"
canImportMuting: "允许导入屏蔽列表"
canImportUserLists: "允许导入用户列表"
_condition:
roleAssignedTo: "已分配给手动角色"
isLocal: "是本地用户"
isRemote: "是远程用户"
isCat: "猫猫用户"
isBot: "机器人用户"
isSuspended: "停用的用户"
isLocked: "锁推用户"
isExplorable: "启用“使账号可见”的用户"
createdLessThan: "账户创建时间少于"
createdMoreThan: "账户创建时间超过"
followersLessThanOrEq: "关注者不多于"
@@ -1841,7 +1749,6 @@ _plugin:
installWarn: "请不要安装不可信的插件。"
manage: "管理插件..."
viewSource: "查看源代码"
viewLog: "显示日志"
_preferencesBackups:
list: "已创建的备份"
saveNew: "另存为"
@@ -1992,6 +1899,8 @@ _sfx:
note: "帖子"
noteMy: "我的帖子"
notification: "通知"
antenna: "天线接收"
channel: "频道通知"
reaction: "选择回应时"
_soundSettings:
driveFile: "使用网盘内的音频"
@@ -2000,7 +1909,6 @@ _soundSettings:
driveFileTypeWarnDescription: "请选择音频文件"
driveFileDurationWarn: "音频过长"
driveFileDurationWarnDescription: "使用长音频可能会影响 Misskey 的使用。即使这样也要继续吗?"
driveFileError: "无法读取声音。请更改设置。"
_ago:
future: "未来"
justNow: "最近"
@@ -2027,33 +1935,33 @@ _time:
day: "日"
_2fa:
alreadyRegistered: "此设备已被注册"
registerTOTP: "开始设置验证器"
registerTOTP: "开始设置认证应用"
step1: "首先,在您的设备上安装验证应用,例如 {a} 或 {b}。"
step2: "然后,扫描屏幕上显示的二维码。"
step2Click: "通过点击二维码,您可以使用设备上安装的身份验证器应用程序或密钥环进行注册"
step2Uri: "如果使用桌面应用程序的话,请输入下面的 URI"
step3Title: "输入验证码"
step3: "输入您的应用提供的动态口令以完成设置。"
setupCompleted: "设置完成"
step4: "从现在开始,任何登录操作都将要求您提供动态口令。"
securityKeyNotSupported: "您的浏览器不支持安全密钥。"
registerTOTPBeforeKey: "要注册安全密钥或 Passkey请先设置验证器。"
registerTOTPBeforeKey: "要注册安全密钥或 Passkey请先设置验证器应用程序。"
securityKeyInfo: "注册兼容 WebAuthn 的密钥,例如支持 FIDO2 的硬件安全密钥、设备上的生物识别功能、PIN 码以及 Passkey 等。"
registerSecurityKey: "注册安全密钥或 Passkey"
securityKeyName: "输入密钥名称"
tapSecurityKey: "请按照浏览器说明操作来注册安全密钥或 Passkey。"
removeKey: "删除安全密钥"
removeKeyConfirm: "您确定要删除 {name} 吗?"
whyTOTPOnlyRenew: "注册了安全密钥,无法取消使用验证器。"
renewTOTP: "重置验证器"
renewTOTPConfirm: "当前验证器的验证码及备用代码已失效"
whyTOTPOnlyRenew: "如果注册了安全密钥,无法取消验证器应用程序上的设置。"
renewTOTP: "重置验证器应用程序"
renewTOTPConfirm: "当前验证器应用程序的验证码将不再有效"
renewTOTPOk: "重新配置"
renewTOTPCancel: "不用,谢谢"
checkBackupCodesBeforeCloseThisWizard: "在关闭此窗口前,请确认下面的备用代码"
backupCodes: "备用代码"
backupCodesDescription: "如果无法使用验证器,可以使用以下的备用代码来访问账户。请务必将这些代码保存在安全的地方。每个代码仅可使用一次。"
backupCodeUsedWarning: "已使用备用代码。若验证器无法使用,请尽快重置验证器。"
backupCodesExhaustedWarning: "已使用完所有的备用代码。若验证器无法使用,则无法再访问您的账户。请重置验证器。"
moreDetailedGuideHere: "此处为详细指南"
backupCodesDescription: "如果无法使用认证应用,可以使用以下的备用代码来访问账户。请务必将这些代码保存在安全的地方。每个代码仅可使用一次。"
backupCodeUsedWarning: "已使用备用代码。如果无法使用认证应用,请尽快重新设定。"
backupCodesExhaustedWarning: "已使用完所有的备用代码。如果无法使用认证应用,将无法再访问您的账户。请再次设定认证应用。"
_permissions:
"read:account": "查看账户信息"
"write:account": "更改帐户信息"
@@ -2104,6 +2012,7 @@ _permissions:
"read:admin:server-info": "查看服务器信息"
"read:admin:show-moderation-log": "查看管理日志"
"read:admin:show-user": "查看用户的非公开信息"
"read:admin:show-users": "查看用户的非公开信息"
"write:admin:suspend-user": "冻结用户"
"write:admin:unset-user-avatar": "删除用户头像"
"write:admin:unset-user-banner": "删除用户横幅"
@@ -2257,9 +2166,6 @@ _profile:
changeBanner: "修改横幅"
verifiedLinkDescription: "如果将内容设置为 URL当链接所指向的网页内包含自己的个人资料链接时可以显示一个已验证图标。"
avatarDecorationMax: "最多可添加 {max} 个挂件"
followedMessage: "被关注时显示的消息"
followedMessageDescription: "可以设置被关注时向对方显示的短消息。"
followedMessageDescriptionForLockedAccount: "需要批准才能关注的情况下,消息是在被请求被批准后显示。"
_exportOrImport:
allNotes: "所有帖子"
favoritedNotes: "收藏的帖子"
@@ -2317,7 +2223,6 @@ _play:
title: "标题"
script: "脚本"
summary: "描述"
visibilityDescription: "设置为不公开后资料将不再显示,但知道 URL 的人仍可继续访问。"
_pages:
newPage: "创建页面"
editPage: "编辑页面"
@@ -2352,7 +2257,6 @@ _pages:
eyeCatchingImageSet: "设置封面图片"
eyeCatchingImageRemove: "删除封面图片"
chooseBlock: "添加块"
enterSectionTitle: "输入会话标题"
selectType: "选择类型"
contentBlocks: "内容"
inputBlocks: "输入"
@@ -2363,8 +2267,6 @@ _pages:
section: "章节"
image: "图片"
button: "按钮"
dynamic: "动态区块"
dynamicDescription: "这个区块已经废弃。以后请使用{play}。"
note: "嵌入的帖子"
_note:
id: "帖子 ID"
@@ -2394,12 +2296,9 @@ _notification:
sendTestNotification: "发送测试通知"
notificationWillBeDisplayedLikeThis: "通知将会这样表示"
reactedBySomeUsers: "{n} 人回应了"
likedBySomeUsers: "{n}人赞了你的帖子"
renotedBySomeUsers: "{n} 人转发了"
followedBySomeUsers: "被 {n} 人关注"
flushNotification: "重置通知历史"
exportOfXCompleted: "已完成 {x} 个导出"
login: "有新的登录"
_types:
all: "全部"
note: "用户的新帖子"
@@ -2414,9 +2313,6 @@ _notification:
followRequestAccepted: "关注请求已通过"
roleAssigned: "授予的角色"
achievementEarned: "取得的成就"
exportCompleted: "已完成导出"
login: "登录"
test: "测试通知"
app: "关联应用的通知"
_actions:
followBack: "回关"
@@ -2426,7 +2322,6 @@ _deck:
alwaysShowMainColumn: "总是显示主列"
columnAlign: "列对齐"
addColumn: "添加列"
newNoteNotificationSettings: "新帖子通知设定"
configureColumn: "列设置"
swapLeft: "向左移动"
swapRight: "向右移动"
@@ -2465,10 +2360,9 @@ _drivecleaner:
orderByCreatedAtAsc: "按添加日期降序排列"
_webhookSettings:
createWebhook: "创建 Webhook"
modifyWebhook: "编辑 webhook"
name: "名称"
secret: "密钥"
trigger: "触发器"
events: "何时运行 Webhook"
active: "已启用"
_events:
follow: "关注时"
@@ -2478,27 +2372,6 @@ _webhookSettings:
renote: "被转发时"
reaction: "被回应时"
mention: "被提及时"
_systemEvents:
abuseReport: "当收到举报时"
abuseReportResolved: "当举报被处理时"
userCreated: "当用户被创建时"
deleteConfirm: "要删除 webhook 吗?"
testRemarks: "点击开关右侧的按钮,可以发送使用假数据的测试 Webhook。"
_abuseReport:
_notificationRecipient:
createRecipient: "新建举报通知"
modifyRecipient: "编辑举报通知"
recipientType: "通知类型"
_recipientType:
mail: "邮箱"
webhook: "Webhook"
_captions:
mail: "当收到新举报时,向持有监察员权限的用户发送通知邮件"
webhook: "当收到新举报及举报被处理时,使用指定的 SystemWebhook 发送通知"
keywords: "关键字"
notifiedUser: "通知的用户"
notifiedWebhook: "使用的 webhook"
deleteConfirm: "要删除通知吗?"
_moderationLogTypes:
createRole: "创建角色"
deleteRole: "删除角色"
@@ -2527,8 +2400,6 @@ _moderationLogTypes:
markSensitiveDriveFile: "标记网盘文件为敏感媒体"
unmarkSensitiveDriveFile: "取消标记网盘文件为敏感媒体"
resolveAbuseReport: "处理举报"
forwardAbuseReport: "转发举报"
updateAbuseReportNote: "更新举报用管理笔记"
createInvitation: "生成邀请码"
createAd: "创建了广告"
deleteAd: "删除了广告"
@@ -2538,16 +2409,6 @@ _moderationLogTypes:
deleteAvatarDecoration: "删除头像挂件"
unsetUserAvatar: "清除用户头像"
unsetUserBanner: "清除用户横幅"
createSystemWebhook: "新建了 SystemWebhook"
updateSystemWebhook: "更新了 SystemWebhook"
deleteSystemWebhook: "删除了 SystemWebhook"
createAbuseReportNotificationRecipient: "新建了举报通知"
updateAbuseReportNotificationRecipient: "更新了举报通知"
deleteAbuseReportNotificationRecipient: "删除了举报通知"
deleteAccount: "删除了账户"
deletePage: "删除了页面"
deleteFlash: "删除了 Play"
deleteGalleryPost: "删除了图库稿件"
_fileViewer:
title: "文件信息"
type: "文件类型"
@@ -2617,7 +2478,6 @@ _hemisphere:
_reversi:
reversi: "黑白棋"
gameSettings: "对局设置"
chooseBoard: "选择棋盘"
blackOrWhite: "先手/后手"
blackIs: "{name}执黑(先手)"
rules: "规则"
@@ -2644,8 +2504,6 @@ _reversi:
allGames: "所有对局"
ended: "结束"
playing: "对局中"
isLlotheo: "落子少的一方获胜(又名奥赛罗)"
loopedMap: "循环棋盘"
canPutEverywhere: "无限制放置模式"
timeLimitForEachTurn: "1回合的时间限制"
freeMatch: "自由匹配"
@@ -2661,40 +2519,4 @@ _reversi:
_offlineScreen:
title: "离线——无法连接到服务器"
header: "无法连接到服务器"
_urlPreviewSetting:
title: "设置 URL 预览"
enable: "启用 URL 预览"
timeout: "超时阈值ms"
timeoutDescription: "如果获取预览所用时间超过这个值,则不生成预览。"
maximumContentLength: "Content-Length 的最大值byte"
maximumContentLengthDescription: "如果 Content-Length 超过这个值,则不生成预览。"
requireContentLength: "仅在能取得 Content-Length 时生成预览"
requireContentLengthDescription: "如果目标服务器不返回 Content-Length则不生成预览。"
userAgent: "User-Agent"
userAgentDescription: "设定获取预览时使用的 User-Agent。留空时将使用默认的 User-Agent。"
summaryProxy: "用来生成预览的代理的 endpoint。"
summaryProxyDescription: "不使用 Misskey 本体,而是通过 Summaly Proxy 生成预览。"
summaryProxyDescription2: "下面的参数将作为查询字符串发送至代理。代理侧如果不支持此设置,则忽略设定值。"
_mediaControls:
pip: "画中画"
playbackRate: "播放速度"
loop: "循环播放"
_contextMenu:
title: "上下文菜单"
app: "应用"
appWithShift: "Shift 键应用"
native: "浏览器的用户界面"
_embedCodeGen:
title: "自定义嵌入代码"
header: "显示标题"
autoload: "连续加载(不推荐)"
maxHeight: "最大高度"
maxHeightDescription: "若将最大值设为 0 则不限制最大高度。为防止小工具无限增高,建议设置一下。"
maxHeightWarn: "最大高度限制已禁用0。若这不是您想要的效果请将最大高度设一个值。"
previewIsNotActual: "由于超出了预览画面可显示的范围,因此显示内容会与实际嵌入时有所不同。"
rounded: "圆角"
border: "外边框"
applyToPreview: "应用预览"
generateCode: "生成嵌入代码"
codeGenerated: "已生成代码"
codeGeneratedDescription: "将生成的代码贴到网站上来使用。"

Some files were not shown because too many files have changed in this diff Show More