Compare commits
82 Commits
2024.2.0-b
...
oauth2oriz
Author | SHA1 | Date | |
---|---|---|---|
![]() |
8aa350ced4 | ||
![]() |
93364cb922 | ||
![]() |
1f38d624c0 | ||
![]() |
deb9ba146f | ||
![]() |
833df85457 | ||
![]() |
d340860b8b | ||
![]() |
d1534ec64e | ||
![]() |
16a73dea26 | ||
![]() |
d0d9b4b19c | ||
![]() |
ca7c3c6063 | ||
![]() |
cb2089981a | ||
![]() |
daa18efc99 | ||
![]() |
0b3fd09bb0 | ||
![]() |
1567a2ea3e | ||
![]() |
ecdd1c115a | ||
![]() |
d7e0e9feca | ||
![]() |
7ed8fbbba3 | ||
![]() |
5db1126db6 | ||
![]() |
628377187a | ||
![]() |
b57d40ed09 | ||
![]() |
1755c75647 | ||
![]() |
c55d9784fe | ||
![]() |
52e7bdd817 | ||
![]() |
260ac0ecfc | ||
![]() |
b81e6eeff9 | ||
![]() |
15f859d562 | ||
![]() |
b938bc7c52 | ||
![]() |
20efdc78e2 | ||
![]() |
aa87fb2f50 | ||
![]() |
95dd66a0ba | ||
![]() |
c83628e5d0 | ||
![]() |
d0245b59bc | ||
![]() |
4c12a9d882 | ||
![]() |
d245306d90 | ||
![]() |
0d2041f5aa | ||
![]() |
b5df8ca0fd | ||
![]() |
3b8b9a658a | ||
![]() |
413fa63093 | ||
![]() |
347a4a0b93 | ||
![]() |
bfe6e5abb8 | ||
![]() |
78c6bb1cc2 | ||
![]() |
9a5fa00f9a | ||
![]() |
967989c5f8 | ||
![]() |
c25836bc1a | ||
![]() |
9022971fb9 | ||
![]() |
cb5cfd4296 | ||
![]() |
cbaae2201f | ||
![]() |
2c6379649a | ||
![]() |
150a6f80d0 | ||
![]() |
c0f63234d7 | ||
![]() |
9c29880f8b | ||
![]() |
2b23120664 | ||
![]() |
b6f6819b76 | ||
![]() |
77ad8c0ac6 | ||
![]() |
92f3ae2d9c | ||
![]() |
94ea15d2d7 | ||
![]() |
8e7fc1ed98 | ||
![]() |
937e9be34e | ||
![]() |
027c5734a4 | ||
![]() |
a688bd1061 | ||
![]() |
87dbe5e9fb | ||
![]() |
f6d9cf1ef1 | ||
![]() |
333d6a9283 | ||
![]() |
deb4429e3a | ||
![]() |
6385ca9b0d | ||
![]() |
515af3176a | ||
![]() |
0cc9d5aa32 | ||
![]() |
401575a903 | ||
![]() |
88fd7f2758 | ||
![]() |
5034e6cd69 | ||
![]() |
2f566e4173 | ||
![]() |
179640af30 | ||
![]() |
098d0670a3 | ||
![]() |
71f62b9d89 | ||
![]() |
82c9820ac8 | ||
![]() |
39526d0225 | ||
![]() |
049dbfeb66 | ||
![]() |
8ea1288234 | ||
![]() |
a55d3f7382 | ||
![]() |
f5a6509663 | ||
![]() |
a4fb17620c | ||
![]() |
0621e94c7d |
@@ -2,4 +2,3 @@
|
||||
POSTGRES_PASSWORD=example-misskey-pass
|
||||
POSTGRES_USER=example-misskey-user
|
||||
POSTGRES_DB=misskey
|
||||
DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}"
|
||||
|
@@ -95,27 +95,15 @@ redis:
|
||||
# #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
|
||||
|
||||
# ┌───────────────────────────┐
|
||||
#───┘ MeiliSearch configuration └─────────────────────────────
|
||||
|
||||
# You can set scope to local (default value) or global
|
||||
# (include notes from remote).
|
||||
|
||||
#meilisearch:
|
||||
# host: meilisearch
|
||||
# port: 7700
|
||||
# apiKey: ''
|
||||
# ssl: true
|
||||
# index: ''
|
||||
# scope: local
|
||||
|
||||
# ┌───────────────┐
|
||||
#───┘ ID generation └───────────────────────────────────────────
|
||||
@@ -126,7 +114,6 @@ redis:
|
||||
|
||||
# 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
|
||||
@@ -134,7 +121,7 @@ redis:
|
||||
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
|
||||
# ID SETTINGS AFTER THAT!
|
||||
|
||||
id: 'aidx'
|
||||
id: 'aid'
|
||||
|
||||
# ┌─────────────────────┐
|
||||
#───┘ Other configuration └─────────────────────────────────────
|
||||
@@ -151,7 +138,7 @@ id: 'aidx'
|
||||
|
||||
# Job rate limiter
|
||||
# deliverJobPerSec: 128
|
||||
# inboxJobPerSec: 32
|
||||
# inboxJobPerSec: 16
|
||||
|
||||
# Job attempts
|
||||
# deliverJobMaxAttempts: 12
|
||||
@@ -178,15 +165,12 @@ proxyBypassHosts:
|
||||
# Media Proxy
|
||||
#mediaProxy: https://example.com/proxy
|
||||
|
||||
# Proxy remote files (default: true)
|
||||
proxyRemoteFiles: true
|
||||
# Proxy remote files (default: false)
|
||||
#proxyRemoteFiles: true
|
||||
|
||||
# Sign to ActivityPub GET request (default: 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".
|
||||
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
|
||||
#allowedPrivateNetworks: [
|
||||
# '127.0.0.1/32'
|
||||
#]
|
||||
|
@@ -30,10 +30,6 @@ url: https://example.tld/
|
||||
# The port that your Misskey server should listen on.
|
||||
port: 3000
|
||||
|
||||
# You can also use UNIX domain socket.
|
||||
# socket: /path/to/misskey.sock
|
||||
# chmodSocket: '777'
|
||||
|
||||
# ┌──────────────────────────┐
|
||||
#───┘ PostgreSQL configuration └────────────────────────────────
|
||||
|
||||
@@ -82,8 +78,6 @@ redis:
|
||||
#pass: example-pass
|
||||
#prefix: example-prefix
|
||||
#db: 1
|
||||
# You can specify more ioredis options...
|
||||
#username: example-username
|
||||
|
||||
#redisForPubsub:
|
||||
# host: localhost
|
||||
@@ -92,8 +86,6 @@ redis:
|
||||
# #pass: example-pass
|
||||
# #prefix: example-prefix
|
||||
# #db: 1
|
||||
# # You can specify more ioredis options...
|
||||
# #username: example-username
|
||||
|
||||
#redisForJobQueue:
|
||||
# host: localhost
|
||||
@@ -102,32 +94,16 @@ redis:
|
||||
# #pass: example-pass
|
||||
# #prefix: example-prefix
|
||||
# #db: 1
|
||||
# # You can specify more ioredis options...
|
||||
# #username: example-username
|
||||
|
||||
#redisForTimelines:
|
||||
# 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 └─────────────────────────────
|
||||
|
||||
# You can set scope to local (default value) or global
|
||||
# (include notes from remote).
|
||||
|
||||
#meilisearch:
|
||||
# host: localhost
|
||||
# port: 7700
|
||||
# apiKey: ''
|
||||
# ssl: true
|
||||
# index: ''
|
||||
# scope: local
|
||||
|
||||
# ┌───────────────┐
|
||||
#───┘ ID generation └───────────────────────────────────────────
|
||||
@@ -138,7 +114,6 @@ redis:
|
||||
|
||||
# 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
|
||||
@@ -146,7 +121,7 @@ redis:
|
||||
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
|
||||
# ID SETTINGS AFTER THAT!
|
||||
|
||||
id: 'aidx'
|
||||
id: 'aid'
|
||||
|
||||
# ┌─────────────────────┐
|
||||
#───┘ Other configuration └─────────────────────────────────────
|
||||
@@ -166,16 +141,13 @@ id: 'aidx'
|
||||
|
||||
# Job rate limiter
|
||||
#deliverJobPerSec: 128
|
||||
#inboxJobPerSec: 32
|
||||
#inboxJobPerSec: 16
|
||||
#relashionshipJobPerSec: 64
|
||||
|
||||
# Job attempts
|
||||
#deliverJobMaxAttempts: 12
|
||||
#inboxJobMaxAttempts: 8
|
||||
|
||||
# Local address used for outgoing requests
|
||||
#outgoingAddress: 127.0.0.1
|
||||
|
||||
# IP address family used for outgoing request (ipv4, ipv6 or dual)
|
||||
#outgoingAddressFamily: ipv4
|
||||
|
||||
@@ -200,9 +172,9 @@ proxyBypassHosts:
|
||||
# * Perform image compression (on a different server resource than the main process)
|
||||
#mediaProxy: https://example.com/proxy
|
||||
|
||||
# Proxy remote files (default: true)
|
||||
# Proxy remote files (default: false)
|
||||
# Proxy remote files by this instance or mediaProxy to prevent remote files from running in remote domains.
|
||||
proxyRemoteFiles: true
|
||||
#proxyRemoteFiles: true
|
||||
|
||||
# Movie Thumbnail Generation URL
|
||||
# There is no reference implementation.
|
||||
@@ -213,15 +185,9 @@ proxyRemoteFiles: true
|
||||
# Sign to ActivityPub GET request (default: 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".
|
||||
# Read changelog to learn more (Improvements of 12.90.0 (2021/09/04)).
|
||||
#allowedPrivateNetworks: [
|
||||
# '127.0.0.1/32'
|
||||
#]
|
||||
|
||||
# Upload or download file size limits (bytes)
|
||||
#maxFileSize: 262144000
|
||||
|
||||
# PID File of master process
|
||||
#pidFile: /tmp/misskey.pid
|
||||
|
@@ -4,11 +4,9 @@
|
||||
"service": "app",
|
||||
"workspaceFolder": "/workspace",
|
||||
"features": {
|
||||
"ghcr.io/devcontainers-contrib/features/pnpm:2": {
|
||||
"version": "8.9.2"
|
||||
},
|
||||
"ghcr.io/devcontainers-contrib/features/pnpm:2": {},
|
||||
"ghcr.io/devcontainers/features/node:1": {
|
||||
"version": "20.10.0"
|
||||
"version": "18.16.0"
|
||||
}
|
||||
},
|
||||
"forwardPorts": [3000],
|
||||
|
@@ -95,14 +95,6 @@ redis:
|
||||
# #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
|
||||
|
||||
# ┌───────────────────────────┐
|
||||
#───┘ MeiliSearch configuration └─────────────────────────────
|
||||
|
||||
@@ -122,7 +114,6 @@ redis:
|
||||
|
||||
# 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
|
||||
@@ -130,7 +121,7 @@ redis:
|
||||
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
|
||||
# ID SETTINGS AFTER THAT!
|
||||
|
||||
id: 'aidx'
|
||||
id: 'aid'
|
||||
|
||||
# ┌─────────────────────┐
|
||||
#───┘ Other configuration └─────────────────────────────────────
|
||||
@@ -147,7 +138,7 @@ id: 'aidx'
|
||||
|
||||
# Job rate limiter
|
||||
# deliverJobPerSec: 128
|
||||
# inboxJobPerSec: 32
|
||||
# inboxJobPerSec: 16
|
||||
|
||||
# Job attempts
|
||||
# deliverJobMaxAttempts: 12
|
||||
@@ -174,8 +165,8 @@ proxyBypassHosts:
|
||||
# Media Proxy
|
||||
#mediaProxy: https://example.com/proxy
|
||||
|
||||
# Proxy remote files (default: true)
|
||||
proxyRemoteFiles: true
|
||||
# Proxy remote files (default: false)
|
||||
#proxyRemoteFiles: true
|
||||
|
||||
# Sign to ActivityPub GET request (default: true)
|
||||
signToActivityPubGet: true
|
||||
|
@@ -6,10 +6,6 @@ indent_size = 2
|
||||
charset = utf-8
|
||||
insert_final_newline = true
|
||||
end_of_line = lf
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
||||
|
||||
[*.{yml,yaml}]
|
||||
indent_style = space
|
||||
|
60
.github/ISSUE_TEMPLATE/01_bug-report.md
vendored
Normal file
60
.github/ISSUE_TEMPLATE/01_bug-report.md
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
---
|
||||
name: 🐛 Bug Report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ⚠️bug?
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thanks for reporting!
|
||||
First, in order to avoid duplicate Issues, please search to see if the problem you found has already been reported.
|
||||
Also, If you are NOT owner/admin of server, PLEASE DONT REPORT SERVER SPECIFIC ISSUES TO HERE! (e.g. feature XXX is not working in misskey.example) Please try with another misskey servers, and if your issue is only reproducible with specific server, contact your server's owner/admin first.
|
||||
-->
|
||||
|
||||
## 💡 Summary
|
||||
|
||||
<!-- Tell us what the bug is -->
|
||||
|
||||
## 🥰 Expected Behavior
|
||||
|
||||
<!--- Tell us what should happen -->
|
||||
|
||||
## 🤬 Actual Behavior
|
||||
|
||||
<!--
|
||||
Tell us what happens instead of the expected behavior.
|
||||
Please include errors from the developer console and/or server log files if you have access to them.
|
||||
-->
|
||||
|
||||
## 📝 Steps to Reproduce
|
||||
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
|
||||
## 📌 Environment
|
||||
|
||||
<!-- Tell us where on the platform it happens -->
|
||||
<!-- DO NOT WRITE "latest". Please provide the specific version. -->
|
||||
|
||||
### 💻 Frontend
|
||||
* Model and OS of the device(s):
|
||||
<!-- Example: MacBook Pro (14inch, 2021), macOS Ventura 13.4 -->
|
||||
* Browser:
|
||||
<!-- Example: Chrome 113.0.5672.126 -->
|
||||
* Server URL:
|
||||
<!-- Example: misskey.io -->
|
||||
* Misskey:
|
||||
13.x.x
|
||||
|
||||
### 🛰 Backend (for server admin)
|
||||
<!-- If you are using a managed service, put that after the version. -->
|
||||
|
||||
* Installation Method or Hosting Service: <!-- Example: docker compose, k8s/docker, systemd, "Misskey install shell script", development environment -->
|
||||
* Misskey: 13.x.x
|
||||
* Node: 18.x.x
|
||||
* PostgreSQL: 15.x.x
|
||||
* Redis: 7.x.x
|
||||
* OS and Architecture: <!-- Example: Ubuntu 22.04.2 LTS aarch64 -->
|
97
.github/ISSUE_TEMPLATE/01_bug-report.yml
vendored
97
.github/ISSUE_TEMPLATE/01_bug-report.yml
vendored
@@ -1,97 +0,0 @@
|
||||
name: 🐛 Bug Report
|
||||
description: Create a report to help us improve
|
||||
labels: ["⚠️bug?"]
|
||||
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for reporting!
|
||||
First, in order to avoid duplicate Issues, please search to see if the problem you found has already been reported.
|
||||
Also, If you are NOT owner/admin of server, PLEASE DONT REPORT SERVER SPECIFIC ISSUES TO HERE! (e.g. feature XXX is not working in misskey.example) Please try with another misskey servers, and if your issue is only reproducible with specific server, contact your server's owner/admin first.
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: 💡 Summary
|
||||
description: Tell us what the bug is
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: 🥰 Expected Behavior
|
||||
description: Tell us what should happen
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: 🤬 Actual Behavior
|
||||
description: |
|
||||
Tell us what happens instead of the expected behavior.
|
||||
Please include errors from the developer console and/or server log files if you have access to them.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: 📝 Steps to Reproduce
|
||||
placeholder: |
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: 💻 Frontend Environment
|
||||
description: |
|
||||
Tell us where on the platform it happens
|
||||
DO NOT WRITE "latest". Please provide the specific version.
|
||||
|
||||
Examples:
|
||||
* Model and OS of the device(s): MacBook Pro (14inch, 2021), macOS Ventura 13.4
|
||||
* Browser: Chrome 113.0.5672.126
|
||||
* Server URL: misskey.io
|
||||
* Misskey: 13.x.x
|
||||
value: |
|
||||
* Model and OS of the device(s):
|
||||
* Browser:
|
||||
* Server URL:
|
||||
* Misskey:
|
||||
render: markdown
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: 🛰 Backend Environment (for server admin)
|
||||
description: |
|
||||
Tell us where on the platform it happens
|
||||
DO NOT WRITE "latest". Please provide the specific version.
|
||||
If you are using a managed service, put that after the version.
|
||||
|
||||
Examples:
|
||||
* Installation Method or Hosting Service: docker compose, k8s/docker, systemd, "Misskey install shell script", development environment
|
||||
* Misskey: 13.x.x
|
||||
* Node: 20.x.x
|
||||
* PostgreSQL: 15.x.x
|
||||
* Redis: 7.x.x
|
||||
* OS and Architecture: Ubuntu 22.04.2 LTS aarch64
|
||||
value: |
|
||||
* Installation Method or Hosting Service:
|
||||
* Misskey:
|
||||
* Node:
|
||||
* PostgreSQL:
|
||||
* Redis:
|
||||
* OS and Architecture:
|
||||
render: markdown
|
||||
validations:
|
||||
required: false
|
||||
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Do you want to address this bug yourself?
|
||||
options:
|
||||
- label: Yes, I will patch the bug myself and send a pull request
|
12
.github/ISSUE_TEMPLATE/02_feature-request.md
vendored
Normal file
12
.github/ISSUE_TEMPLATE/02_feature-request.md
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
name: ✨ Feature Request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: ✨Feature
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
## Summary
|
||||
|
||||
<!-- Tell us what the suggestion is -->
|
22
.github/ISSUE_TEMPLATE/02_feature-request.yml
vendored
22
.github/ISSUE_TEMPLATE/02_feature-request.yml
vendored
@@ -1,22 +0,0 @@
|
||||
name: ✨ Feature Request
|
||||
description: Suggest an idea for this project
|
||||
labels: ["✨Feature"]
|
||||
|
||||
body:
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Summary
|
||||
description: Tell us what the suggestion is
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Purpose
|
||||
description: Describe the specific problem or need you think this feature will solve, and who it will help.
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Do you want to implement this feature yourself?
|
||||
options:
|
||||
- label: Yes, I will implement this by myself and send a pull request
|
3
.github/ISSUE_TEMPLATE/config.yml
vendored
3
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,4 +1,7 @@
|
||||
contact_links:
|
||||
- name: 👪 Misskey Forum
|
||||
url: https://forum.misskey.io/
|
||||
about: Ask questions and share knowledge
|
||||
- name: 💬 Misskey official Discord
|
||||
url: https://discord.gg/Wp8gVStHW3
|
||||
about: Chat freely about Misskey
|
||||
|
50
.github/dependabot.yml
vendored
50
.github/dependabot.yml
vendored
@@ -9,40 +9,24 @@ updates:
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 100
|
||||
|
||||
# Add only the root, not each workspace item
|
||||
# https://github.com/dependabot/dependabot-core/issues/4993#issuecomment-1289133027
|
||||
open-pull-requests-limit: 0
|
||||
- package-ecosystem: npm
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 10
|
||||
# List dependencies required to be updated together, sharing the same version numbers.
|
||||
# Those who simply have the common owner (e.g. @fastify) don't need to be listed.
|
||||
groups:
|
||||
aws-sdk:
|
||||
patterns:
|
||||
- "@aws-sdk/*"
|
||||
bull-board:
|
||||
patterns:
|
||||
- "@bull-board/*"
|
||||
nestjs:
|
||||
patterns:
|
||||
- "@nestjs/*"
|
||||
slacc:
|
||||
patterns:
|
||||
- "slacc-*"
|
||||
storybook:
|
||||
patterns:
|
||||
- "storybook*"
|
||||
- "@storybook/*"
|
||||
swc-core:
|
||||
patterns:
|
||||
- "@swc/core*"
|
||||
typescript-eslint:
|
||||
patterns:
|
||||
- "@typescript-eslint/*"
|
||||
tensorflow:
|
||||
patterns:
|
||||
- "@tensorflow/*"
|
||||
open-pull-requests-limit: 0
|
||||
- package-ecosystem: npm
|
||||
directory: "/packages/backend"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 0
|
||||
- package-ecosystem: npm
|
||||
directory: "/packages/frontend"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 0
|
||||
- package-ecosystem: npm
|
||||
directory: "/packages/sw"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 0
|
||||
|
29
.github/labeler.yml
vendored
29
.github/labeler.yml
vendored
@@ -1,34 +1,21 @@
|
||||
'packages/backend':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['packages/backend/**/*']
|
||||
- packages/backend/**/*
|
||||
|
||||
'packages/backend:test':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['packages/backend/test/**/*']
|
||||
- packages/backend/test/**/*
|
||||
|
||||
'packages/frontend':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['packages/frontend/**/*']
|
||||
- packages/frontend/**/*
|
||||
|
||||
'packages/frontend:test':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['cypress/**/*']
|
||||
- cypress/**/*
|
||||
|
||||
'packages/sw':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['packages/sw/**/*']
|
||||
- packages/sw/**/*
|
||||
|
||||
'packages/misskey-js':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['packages/misskey-js/**/*']
|
||||
- packages/misskey-js/**/*
|
||||
|
||||
'packages/misskey-js:test':
|
||||
- any:
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: ['packages/misskey-js/test/**/*', 'packages/misskey-js/test-d/**/*']
|
||||
- packages/misskey-js/test/**/*
|
||||
- packages/misskey-js/test-d/**/*
|
||||
|
2
.github/misskey/test.yml
vendored
2
.github/misskey/test.yml
vendored
@@ -12,4 +12,4 @@ db:
|
||||
redis:
|
||||
host: 127.0.0.1
|
||||
port: 56312
|
||||
id: aidx
|
||||
id: aid
|
||||
|
9
.github/reviewer-lottery.yml
vendored
Normal file
9
.github/reviewer-lottery.yml
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
groups:
|
||||
- name: devs
|
||||
reviewers: 2
|
||||
internal_reviewers: 1
|
||||
usernames:
|
||||
- syuilo
|
||||
- acid-chicken
|
||||
- EbiseLutica
|
||||
- tamaina
|
12
.github/workflows/api-misskey-js.yml
vendored
12
.github/workflows/api-misskey-js.yml
vendored
@@ -1,12 +1,6 @@
|
||||
name: API report (misskey.js)
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- packages/misskey-js/**
|
||||
pull_request:
|
||||
paths:
|
||||
- packages/misskey-js/**
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
report:
|
||||
@@ -15,12 +9,12 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4.1.1
|
||||
uses: actions/checkout@v3.3.0
|
||||
|
||||
- run: corepack enable
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4.0.1
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version-file: '.node-version'
|
||||
cache: 'pnpm'
|
||||
|
43
.github/workflows/changelog-check.yml
vendored
43
.github/workflows/changelog-check.yml
vendored
@@ -1,43 +0,0 @@
|
||||
name: Check the description in CHANGELOG.md
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
|
||||
jobs:
|
||||
check-changelog:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout head
|
||||
uses: actions/checkout@v4.1.1
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4.0.1
|
||||
with:
|
||||
node-version-file: '.node-version'
|
||||
|
||||
- name: Checkout base
|
||||
run: |
|
||||
mkdir _base
|
||||
cp -r .git _base/.git
|
||||
cd _base
|
||||
git fetch --depth 1 origin ${{ github.base_ref }}
|
||||
git checkout origin/${{ github.base_ref }} CHANGELOG.md
|
||||
|
||||
- name: Copy to Checker directory for CHANGELOG-base.md
|
||||
run: cp _base/CHANGELOG.md scripts/changelog-checker/CHANGELOG-base.md
|
||||
- name: Copy to Checker directory for CHANGELOG-head.md
|
||||
run: cp CHANGELOG.md scripts/changelog-checker/CHANGELOG-head.md
|
||||
- name: diff
|
||||
continue-on-error: true
|
||||
run: diff -u CHANGELOG-base.md CHANGELOG-head.md
|
||||
working-directory: scripts/changelog-checker
|
||||
|
||||
- name: Setup Checker
|
||||
run: npm install
|
||||
working-directory: scripts/changelog-checker
|
||||
- name: Run Checker
|
||||
run: npm run run
|
||||
working-directory: scripts/changelog-checker
|
127
.github/workflows/check-misskey-js-autogen.yml
vendored
127
.github/workflows/check-misskey-js-autogen.yml
vendored
@@ -1,127 +0,0 @@
|
||||
name: Check Misskey JS autogen
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- packages/backend/**
|
||||
|
||||
jobs:
|
||||
check-misskey-js-autogen:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
pull-requests: write
|
||||
|
||||
env:
|
||||
api_json_names: "api-base.json api-head.json"
|
||||
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: setup pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
|
||||
- name: setup node
|
||||
id: setup-node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version-file: '.node-version'
|
||||
cache: pnpm
|
||||
|
||||
- name: install dependencies
|
||||
run: pnpm i --frozen-lockfile
|
||||
|
||||
- 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
|
||||
|
||||
- name: Download artifact
|
||||
uses: actions/github-script@v7
|
||||
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: |-
|
||||
find . -mindepth 1 -maxdepth 1 -type f -name '*.zip' -exec unzip {} -d . ';'
|
||||
ls -la
|
||||
|
||||
- name: build autogen
|
||||
run: |-
|
||||
for name in $(echo $api_json_names)
|
||||
do
|
||||
checksum=$(mktemp)
|
||||
mv $name packages/misskey-js/generator/api.json
|
||||
|
||||
cd packages/misskey-js/generator
|
||||
pnpm run generate
|
||||
find built -type f -exec sh -c 'echo $(sed -E "s/^\s+\*\s+generatedAt:.+$//" {} | sha256sum | cut -d" " -f 1) {}' \; > $checksum
|
||||
cd ../../..
|
||||
cp $checksum ${name}_checksum
|
||||
done
|
||||
|
||||
- name: check update for type definitions
|
||||
run: diff $(echo -n ${api_json_names} | awk -v RS=" " '{ printf "%s_checksum ", $0 }')
|
||||
|
||||
- name: send message
|
||||
if: failure()
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: check-misskey-js-autogen
|
||||
message: |-
|
||||
Thank you for sending us a great Pull Request! 👍
|
||||
Please regenerate misskey-js type definitions! 🙏
|
||||
|
||||
example:
|
||||
```sh
|
||||
pnpm run build-misskey-js-with-types
|
||||
```
|
||||
|
||||
- name: send message
|
||||
if: success()
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
with:
|
||||
comment_tag: check-misskey-js-autogen
|
||||
mode: delete
|
||||
message: "Thank you!"
|
2
.github/workflows/check_copyright_year.yml
vendored
2
.github/workflows/check_copyright_year.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
check_copyright_year:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.2.0
|
||||
- run: |
|
||||
if [ "$(grep Copyright COPYING | sed -e 's/.*2014-\([0-9]*\) .*/\1/g')" -ne "$(date +%Y)" ]; then
|
||||
echo "Please change copyright year!"
|
||||
|
10
.github/workflows/docker-develop.yml
vendored
10
.github/workflows/docker-develop.yml
vendored
@@ -13,24 +13,24 @@ jobs:
|
||||
if: github.repository == 'misskey-dev/misskey'
|
||||
steps:
|
||||
- name: Check out the repo
|
||||
uses: actions/checkout@v4.1.1
|
||||
uses: actions/checkout@v3.3.0
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@v3.0.0
|
||||
uses: docker/setup-buildx-action@v2.3.0
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64
|
||||
- name: Docker meta
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: misskey/misskey
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- name: Build and Push to Docker Hub
|
||||
uses: docker/build-push-action@v5
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: .
|
||||
|
10
.github/workflows/docker.yml
vendored
10
.github/workflows/docker.yml
vendored
@@ -12,15 +12,15 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Check out the repo
|
||||
uses: actions/checkout@v4.1.1
|
||||
uses: actions/checkout@v3.3.0
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@v3.0.0
|
||||
uses: docker/setup-buildx-action@v2.3.0
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64
|
||||
- name: Docker meta
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: misskey/misskey
|
||||
tags: |
|
||||
@@ -31,12 +31,12 @@ jobs:
|
||||
type=semver,pattern={{major}}.{{minor}}
|
||||
type=semver,pattern={{major}}
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- name: Build and Push to Docker Hub
|
||||
uses: docker/build-push-action@v5
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: .
|
||||
|
4
.github/workflows/dockle.yml
vendored
4
.github/workflows/dockle.yml
vendored
@@ -14,13 +14,13 @@ jobs:
|
||||
env:
|
||||
DOCKER_CONTENT_TRUST: 1
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.2.0
|
||||
- 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 ./docker-compose_example.yml ./docker-compose.yml
|
||||
cp ./docker-compose.yml.example ./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
|
||||
|
73
.github/workflows/get-api-diff.yml
vendored
73
.github/workflows/get-api-diff.yml
vendored
@@ -1,73 +0,0 @@
|
||||
# this name is used in report-api-diff.yml so be careful when change name
|
||||
name: Get api.json from Misskey
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- packages/backend/**
|
||||
- .github/workflows/get-api-diff.yml
|
||||
|
||||
jobs:
|
||||
get-from-misskey:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
api-json-name: [api-base.json, api-head.json]
|
||||
include:
|
||||
- api-json-name: api-base.json
|
||||
ref: ${{ github.base_ref }}
|
||||
- api-json-name: api-head.json
|
||||
ref: refs/pull/${{ github.event.number }}/merge
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
ref: ${{ matrix.ref }}
|
||||
submodules: true
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
- run: corepack enable
|
||||
- run: pnpm i --frozen-lockfile
|
||||
- name: Check pnpm-lock.yaml
|
||||
run: git diff --exit-code pnpm-lock.yaml
|
||||
- name: Copy Configure
|
||||
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: Copy API.json
|
||||
run: cp packages/backend/built/api.json ${{ matrix.api-json-name }}
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: api-artifact-${{ matrix.api-json-name }}
|
||||
path: ${{ matrix.api-json-name }}
|
||||
|
||||
save-pr-number:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Save PR number
|
||||
env:
|
||||
PR_NUMBER: ${{ github.event.number }}
|
||||
run: |
|
||||
echo "$PR_NUMBER" > ./pr_number
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: api-artifact-pr-number
|
||||
path: pr_number
|
2
.github/workflows/labeler.yml
vendored
2
.github/workflows/labeler.yml
vendored
@@ -11,6 +11,6 @@ jobs:
|
||||
pull-requests: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/labeler@v5
|
||||
- uses: actions/labeler@v4
|
||||
with:
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
|
26
.github/workflows/lint.yml
vendored
26
.github/workflows/lint.yml
vendored
@@ -5,25 +5,13 @@ on:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- packages/backend/**
|
||||
- packages/frontend/**
|
||||
- packages/sw/**
|
||||
- packages/misskey-js/**
|
||||
- packages/shared/.eslintrc.js
|
||||
pull_request:
|
||||
paths:
|
||||
- packages/backend/**
|
||||
- packages/frontend/**
|
||||
- packages/sw/**
|
||||
- packages/misskey-js/**
|
||||
- packages/shared/.eslintrc.js
|
||||
|
||||
jobs:
|
||||
pnpm_install:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
@@ -31,7 +19,7 @@ jobs:
|
||||
with:
|
||||
version: 8
|
||||
run_install: false
|
||||
- uses: actions/setup-node@v4.0.1
|
||||
- uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version-file: '.node-version'
|
||||
cache: 'pnpm'
|
||||
@@ -50,7 +38,7 @@ jobs:
|
||||
- sw
|
||||
- misskey-js
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
@@ -58,7 +46,7 @@ jobs:
|
||||
with:
|
||||
version: 7
|
||||
run_install: false
|
||||
- uses: actions/setup-node@v4.0.1
|
||||
- uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version-file: '.node-version'
|
||||
cache: 'pnpm'
|
||||
@@ -76,7 +64,7 @@ jobs:
|
||||
- backend
|
||||
- misskey-js
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
@@ -84,12 +72,10 @@ jobs:
|
||||
with:
|
||||
version: 7
|
||||
run_install: false
|
||||
- uses: actions/setup-node@v4.0.1
|
||||
- uses: actions/setup-node@v3.6.0
|
||||
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' }}
|
||||
- run: pnpm --filter ${{ matrix.workspace }} run typecheck
|
||||
|
4
.github/workflows/ok-to-test.yml
vendored
4
.github/workflows/ok-to-test.yml
vendored
@@ -17,13 +17,13 @@ jobs:
|
||||
# See app.yml for an example app manifest
|
||||
- name: Generate token
|
||||
id: generate_token
|
||||
uses: tibdex/github-app-token@v2
|
||||
uses: tibdex/github-app-token@v1
|
||||
with:
|
||||
app_id: ${{ secrets.DEPLOYBOT_APP_ID }}
|
||||
private_key: ${{ secrets.DEPLOYBOT_PRIVATE_KEY }}
|
||||
|
||||
- name: Slash Command Dispatch
|
||||
uses: peter-evans/slash-command-dispatch@v3
|
||||
uses: peter-evans/slash-command-dispatch@v1
|
||||
env:
|
||||
TOKEN: ${{ steps.generate_token.outputs.token }}
|
||||
with:
|
||||
|
8
.github/workflows/pr-preview-deploy.yml
vendored
8
.github/workflows/pr-preview-deploy.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
github.event.client_payload.slash_command.sha != '' &&
|
||||
contains(github.event.client_payload.pull_request.head.sha, github.event.client_payload.slash_command.sha)
|
||||
steps:
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v6.3.3
|
||||
id: check-id
|
||||
env:
|
||||
number: ${{ github.event.client_payload.pull_request.number }}
|
||||
@@ -37,7 +37,7 @@ jobs:
|
||||
|
||||
return check[0].id;
|
||||
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v6.3.3
|
||||
env:
|
||||
check_id: ${{ steps.check-id.outputs.result }}
|
||||
details_url: ${{ github.server_url }}/${{ github.repository }}/runs/${{ github.run_id }}
|
||||
@@ -53,7 +53,7 @@ jobs:
|
||||
|
||||
# Check out merge commit
|
||||
- name: Fork based /deploy checkout
|
||||
uses: actions/checkout@v4.1.1
|
||||
uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
ref: 'refs/pull/${{ github.event.client_payload.pull_request.number }}/merge'
|
||||
|
||||
@@ -72,7 +72,7 @@ jobs:
|
||||
timeout: 15m
|
||||
|
||||
# Update check run called "integration-fork"
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v6.3.3
|
||||
id: update-check-run
|
||||
if: ${{ always() }}
|
||||
env:
|
||||
|
2
.github/workflows/pr-preview-destroy.yml
vendored
2
.github/workflows/pr-preview-destroy.yml
vendored
@@ -10,7 +10,7 @@ jobs:
|
||||
destroy-preview-environment:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/github-script@v7
|
||||
- uses: actions/github-script@v6.3.3
|
||||
id: check-conclusion
|
||||
env:
|
||||
number: ${{ github.event.number }}
|
||||
|
97
.github/workflows/report-api-diff.yml
vendored
97
.github/workflows/report-api-diff.yml
vendored
@@ -1,97 +0,0 @@
|
||||
name: Report API Diff
|
||||
|
||||
on:
|
||||
workflow_run:
|
||||
types: [completed]
|
||||
workflows:
|
||||
- Get api.json from Misskey # get-api-diff.yml
|
||||
|
||||
jobs:
|
||||
compare-diff:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.event.workflow_run.conclusion == 'success' }}
|
||||
permissions:
|
||||
pull-requests: write
|
||||
|
||||
# api-artifact
|
||||
steps:
|
||||
- name: Download artifact
|
||||
uses: actions/github-script@v7
|
||||
with:
|
||||
script: |
|
||||
const fs = require('fs');
|
||||
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
run_id: context.payload.workflow_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: Extract all artifacts
|
||||
run: |
|
||||
find . -mindepth 1 -maxdepth 1 -type f -name '*.zip' -exec unzip {} -d artifacts ';'
|
||||
ls -la
|
||||
- name: Load PR Number
|
||||
id: load-pr-num
|
||||
run: echo "pr-number=$(cat artifacts/pr_number)" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Output base
|
||||
run: cat ./artifacts/api-base.json
|
||||
- name: Output head
|
||||
run: cat ./artifacts/api-head.json
|
||||
- name: Arrange json files
|
||||
run: |
|
||||
jq '.' ./artifacts/api-base.json > ./api-base.json
|
||||
jq '.' ./artifacts/api-head.json > ./api-head.json
|
||||
- name: Get diff of 2 files
|
||||
run: diff -u --label=base --label=head ./api-base.json ./api-head.json | cat > api.json.diff
|
||||
- name: Get full diff
|
||||
run: diff --label=base --label=head --new-line-format='+%L' --old-line-format='-%L' --unchanged-line-format=' %L' ./api-base.json ./api-head.json | cat > api-full.json.diff
|
||||
- name: Echo full diff
|
||||
run: cat ./api-full.json.diff
|
||||
- name: Upload full diff to Artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: api-artifact
|
||||
path: |
|
||||
api-full.json.diff
|
||||
api-base.json
|
||||
api-head.json
|
||||
- id: out-diff
|
||||
name: Build diff Comment
|
||||
run: |
|
||||
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 }}
|
||||
comment_tag: show_diff
|
||||
filePath: ./output.md
|
||||
- name: Tell error to PR
|
||||
uses: thollander/actions-comment-pull-request@v2
|
||||
if: failure() && steps.load-pr-num.outputs.pr-number
|
||||
with:
|
||||
pr_number: ${{ steps.load-pr-num.outputs.pr-number }}
|
||||
comment_tag: show_diff_error
|
||||
message: |
|
||||
api.jsonの差分作成中にエラーが発生しました。詳細は[Workflowのログ](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})を確認してください。
|
13
.github/workflows/reviewer_lottery.yml
vendored
Normal file
13
.github/workflows/reviewer_lottery.yml
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
name: "Reviewer lottery"
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, ready_for_review, reopened]
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: uesteibar/reviewer-lottery@v2
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
112
.github/workflows/storybook.yml
vendored
Normal file
112
.github/workflows/storybook.yml
vendored
Normal file
@@ -0,0 +1,112 @@
|
||||
name: Storybook
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
pull_request_target:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
env:
|
||||
NODE_OPTIONS: "--max_old_space_size=7168"
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3.3.0
|
||||
if: github.event_name != 'pull_request_target'
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
- uses: actions/checkout@v3.3.0
|
||||
if: github.event_name == 'pull_request_target'
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
ref: "refs/pull/${{ github.event.number }}/merge"
|
||||
- name: Checkout actual HEAD
|
||||
if: github.event_name == 'pull_request_target'
|
||||
id: rev
|
||||
run: |
|
||||
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@v2
|
||||
with:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js 18.x
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version-file: '.node-version'
|
||||
cache: 'pnpm'
|
||||
- run: corepack enable
|
||||
- run: pnpm i --frozen-lockfile
|
||||
- name: Check pnpm-lock.yaml
|
||||
run: git diff --exit-code pnpm-lock.yaml
|
||||
- name: Build misskey-js
|
||||
run: pnpm --filter misskey-js build
|
||||
- name: Build storybook
|
||||
run: pnpm --filter frontend build-storybook
|
||||
- name: Publish to Chromatic
|
||||
if: github.event_name != 'pull_request_target' && github.ref == 'refs/heads/master'
|
||||
run: pnpm --filter frontend chromatic --exit-once-uploaded -d storybook-static
|
||||
env:
|
||||
CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
|
||||
- name: Publish to Chromatic
|
||||
if: github.event_name != 'pull_request_target' && github.ref != 'refs/heads/master'
|
||||
id: chromatic_push
|
||||
run: |
|
||||
DIFF="${{ github.event.before }} HEAD"
|
||||
if [ "$DIFF" = "0000000000000000000000000000000000000000 HEAD" ]; then
|
||||
DIFF="HEAD"
|
||||
fi
|
||||
CHROMATIC_PARAMETER="$(node packages/frontend/.storybook/changes.js $(git diff-tree --no-commit-id --name-only -r $(echo "$DIFF") | xargs))"
|
||||
if [ "$CHROMATIC_PARAMETER" = " --skip" ]; then
|
||||
echo "skip=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
if pnpm --filter frontend chromatic -d storybook-static $(echo "$CHROMATIC_PARAMETER"); then
|
||||
echo "success=true" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "success=false" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
env:
|
||||
CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
|
||||
- name: Publish to Chromatic
|
||||
if: github.event_name == 'pull_request_target'
|
||||
id: chromatic_pull_request
|
||||
run: |
|
||||
DIFF="${{ steps.rev.outputs.base }} HEAD"
|
||||
if [ "$DIFF" = "0000000000000000000000000000000000000000 HEAD" ]; then
|
||||
DIFF="HEAD"
|
||||
fi
|
||||
CHROMATIC_PARAMETER="$(node packages/frontend/.storybook/changes.js $(git diff-tree --no-commit-id --name-only -r $(echo "$DIFF") | xargs))"
|
||||
if [ "$CHROMATIC_PARAMETER" = " --skip" ]; then
|
||||
echo "skip=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
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")
|
||||
env:
|
||||
CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
|
||||
- name: Notify that Chromatic detects changes
|
||||
uses: actions/github-script@v6.4.0
|
||||
if: github.event_name != 'pull_request_target' && steps.chromatic_push.outputs.success == 'false'
|
||||
with:
|
||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
script: |
|
||||
github.rest.repos.createCommitComment({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
commit_sha: context.sha,
|
||||
body: 'Chromatic detects changes. Please [review the changes on Chromatic](https://www.chromatic.com/builds?appId=6428f7d7b962f0b79f97d6e4).'
|
||||
})
|
||||
- name: Upload Artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: storybook
|
||||
path: packages/frontend/storybook-static
|
72
.github/workflows/test-backend.yml
vendored
72
.github/workflows/test-backend.yml
vendored
@@ -5,27 +5,19 @@ on:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- packages/backend/**
|
||||
# for permissions
|
||||
- packages/misskey-js/**
|
||||
pull_request:
|
||||
paths:
|
||||
- packages/backend/**
|
||||
# for permissions
|
||||
- packages/misskey-js/**
|
||||
|
||||
jobs:
|
||||
unit:
|
||||
jest:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
node-version: [18.x]
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:15
|
||||
image: postgres:13
|
||||
ports:
|
||||
- 54312:5432
|
||||
env:
|
||||
@@ -37,7 +29,7 @@ jobs:
|
||||
- 56312:6379
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
submodules: true
|
||||
- name: Install pnpm
|
||||
@@ -46,7 +38,7 @@ jobs:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
@@ -59,58 +51,8 @@ jobs:
|
||||
- name: Build
|
||||
run: pnpm build
|
||||
- name: Test
|
||||
run: pnpm --filter backend test-and-coverage
|
||||
- name: Upload to Codecov
|
||||
uses: codecov/codecov-action@v3
|
||||
with:
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
files: ./packages/backend/coverage/coverage-final.json
|
||||
|
||||
e2e:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:15
|
||||
ports:
|
||||
- 54312:5432
|
||||
env:
|
||||
POSTGRES_DB: test-misskey
|
||||
POSTGRES_HOST_AUTH_METHOD: trust
|
||||
redis:
|
||||
image: redis:7
|
||||
ports:
|
||||
- 56312:6379
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
submodules: true
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
- run: corepack enable
|
||||
- run: pnpm i --frozen-lockfile
|
||||
- name: Check pnpm-lock.yaml
|
||||
run: git diff --exit-code pnpm-lock.yaml
|
||||
- name: Copy Configure
|
||||
run: cp .github/misskey/test.yml .config
|
||||
- name: Build
|
||||
run: pnpm build
|
||||
- name: Test
|
||||
run: pnpm --filter backend test-and-coverage:e2e
|
||||
- name: Upload to Codecov
|
||||
run: pnpm jest-and-coverage
|
||||
- name: Upload Coverage
|
||||
uses: codecov/codecov-action@v3
|
||||
with:
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
33
.github/workflows/test-frontend.yml
vendored
33
.github/workflows/test-frontend.yml
vendored
@@ -5,20 +5,7 @@ on:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- packages/frontend/**
|
||||
# for permissions
|
||||
- packages/misskey-js/**
|
||||
# for e2e
|
||||
- packages/backend/**
|
||||
|
||||
pull_request:
|
||||
paths:
|
||||
- packages/frontend/**
|
||||
# for permissions
|
||||
- packages/misskey-js/**
|
||||
# for e2e
|
||||
- packages/backend/**
|
||||
|
||||
jobs:
|
||||
vitest:
|
||||
@@ -26,10 +13,10 @@ jobs:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
node-version: [18.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
submodules: true
|
||||
- name: Install pnpm
|
||||
@@ -38,7 +25,7 @@ jobs:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
@@ -64,12 +51,12 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
node-version: [18.x]
|
||||
browser: [chrome]
|
||||
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:15
|
||||
image: postgres:13
|
||||
ports:
|
||||
- 54312:5432
|
||||
env:
|
||||
@@ -81,7 +68,7 @@ jobs:
|
||||
- 56312:6379
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
submodules: true
|
||||
# https://github.com/cypress-io/cypress-docker-images/issues/150
|
||||
@@ -96,7 +83,7 @@ jobs:
|
||||
version: 7
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
@@ -114,19 +101,19 @@ jobs:
|
||||
- name: Cypress install
|
||||
run: pnpm exec cypress install
|
||||
- name: Cypress run
|
||||
uses: cypress-io/github-action@v6
|
||||
uses: cypress-io/github-action@v5
|
||||
with:
|
||||
install: false
|
||||
start: pnpm start:test
|
||||
wait-on: 'http://localhost:61812'
|
||||
headed: true
|
||||
browser: ${{ matrix.browser }}
|
||||
- uses: actions/upload-artifact@v4
|
||||
- uses: actions/upload-artifact@v2
|
||||
if: failure()
|
||||
with:
|
||||
name: ${{ matrix.browser }}-cypress-screenshots
|
||||
path: cypress/screenshots
|
||||
- uses: actions/upload-artifact@v4
|
||||
- uses: actions/upload-artifact@v2
|
||||
if: always()
|
||||
with:
|
||||
name: ${{ matrix.browser }}-cypress-videos
|
||||
|
10
.github/workflows/test-misskey-js.yml
vendored
10
.github/workflows/test-misskey-js.yml
vendored
@@ -6,12 +6,8 @@ name: Test (misskey.js)
|
||||
on:
|
||||
push:
|
||||
branches: [ develop ]
|
||||
paths:
|
||||
- packages/misskey-js/**
|
||||
pull_request:
|
||||
branches: [ develop ]
|
||||
paths:
|
||||
- packages/misskey-js/**
|
||||
|
||||
jobs:
|
||||
test:
|
||||
@@ -20,17 +16,17 @@ jobs:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
node-version: [18.x]
|
||||
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4.1.1
|
||||
uses: actions/checkout@v3.3.0
|
||||
|
||||
- run: corepack enable
|
||||
|
||||
- name: Setup Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
|
6
.github/workflows/test-production.yml
vendored
6
.github/workflows/test-production.yml
vendored
@@ -16,10 +16,10 @@ jobs:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
node-version: [18.x]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: actions/checkout@v3.3.0
|
||||
with:
|
||||
submodules: true
|
||||
- name: Install pnpm
|
||||
@@ -28,7 +28,7 @@ jobs:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
uses: actions/setup-node@v3.6.0
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
|
47
.github/workflows/validate-api-json.yml
vendored
47
.github/workflows/validate-api-json.yml
vendored
@@ -1,47 +0,0 @@
|
||||
name: Test (backend)
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
paths:
|
||||
- packages/backend/**
|
||||
pull_request:
|
||||
paths:
|
||||
- packages/backend/**
|
||||
|
||||
jobs:
|
||||
validate-api-json:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20.10.0]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
submodules: true
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 8
|
||||
run_install: false
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v4.0.1
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
- name: Install Redocly CLI
|
||||
run: npm i -g @redocly/cli
|
||||
- run: corepack enable
|
||||
- run: pnpm i --frozen-lockfile
|
||||
- name: Check pnpm-lock.yaml
|
||||
run: git diff --exit-code pnpm-lock.yaml
|
||||
- name: Copy Configure
|
||||
run: cp .config/example.yml .config/default.yml
|
||||
- name: Build and generate
|
||||
run: pnpm build && pnpm --filter backend generate-api-json
|
||||
- name: Validation
|
||||
run: npx @redocly/cli lint --extends=minimal ./packages/backend/built/api.json
|
5
.gitignore
vendored
5
.gitignore
vendored
@@ -41,7 +41,6 @@ docker-compose.yml
|
||||
# misskey
|
||||
/build
|
||||
built
|
||||
built-test
|
||||
/data
|
||||
/.cache-loader
|
||||
/db
|
||||
@@ -58,7 +57,6 @@ api-docs.json
|
||||
ormconfig.json
|
||||
temp
|
||||
/packages/frontend/src/**/*.stories.ts
|
||||
tsdoc-metadata.json
|
||||
|
||||
# blender backups
|
||||
*.blend1
|
||||
@@ -66,6 +64,3 @@ tsdoc-metadata.json
|
||||
*.blend3
|
||||
*.blend4
|
||||
*.blend5
|
||||
|
||||
# VSCode addon
|
||||
.favorites.json
|
||||
|
@@ -1 +1 @@
|
||||
20.10.0
|
||||
18.16.0
|
||||
|
6
.vscode/settings.json
vendored
6
.vscode/settings.json
vendored
@@ -7,9 +7,5 @@
|
||||
"*.test.ts": "typescript"
|
||||
},
|
||||
"jest.jestCommandLine": "pnpm run jest",
|
||||
"jest.autoRun": "off",
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll": "explicit"
|
||||
},
|
||||
"editor.formatOnSave": false
|
||||
"jest.autoRun": "off"
|
||||
}
|
608
CHANGELOG.md
608
CHANGELOG.md
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
## 202x.x.x (unreleased)
|
||||
## 13.x.x (unreleased)
|
||||
|
||||
### General
|
||||
-
|
||||
@@ -12,614 +12,10 @@
|
||||
|
||||
-->
|
||||
|
||||
## 202x.x.x (Unreleased)
|
||||
|
||||
### Note
|
||||
- 外部サイトからプラグインをインストールする場合のパスが`/install-extentions`から`/install-extensions`に変わります。現時点では以前のパスも利用できますが、非推奨です。
|
||||
|
||||
### General
|
||||
- Feat: [mCaptcha](https://github.com/mCaptcha/mCaptcha)のサポートを追加
|
||||
- Fix: リストライムラインの「リノートを表示」が正しく機能しない問題を修正
|
||||
- Feat: Add support for TrueMail
|
||||
## 13.x.x (unreleased)
|
||||
|
||||
### Client
|
||||
- Feat: 新しいゲームを追加
|
||||
- Feat: 音声・映像プレイヤーを追加
|
||||
- Feat: 絵文字の詳細ダイアログを追加
|
||||
- Feat: 枠線をつけるMFM`$[border.width=1,style=solid,color=fff,radius=0 ...]`を追加
|
||||
- デフォルトで枠線からはみ出る部分が隠されるようにしました。初期と同じ挙動にするには`$[border.noclip`が必要です
|
||||
- Feat: スワイプでタブを切り替えられるように
|
||||
- Enhance: MFM等のコードブロックに全文コピー用のボタンを追加
|
||||
- Enhance: ハッシュタグ入力時に、本文の末尾の行に何も書かれていない場合は新たにスペースを追加しないように
|
||||
- Enhance: チャンネルノートのピン留めをノートのメニューからできるように
|
||||
- Enhance: 管理者の場合はAPI tokenの発行画面で管理機能に関する権限を付与できるように
|
||||
- Enhance: AiScriptを0.17.0に更新 [CHANGELOG](https://github.com/aiscript-dev/aiscript/blob/bb89d132b633a622d3cb0eff0d0cc7e476c0cfdd/CHANGELOG.md)
|
||||
- 配列の範囲外・非整数のインデックスへの代入が完全禁止になるので注意
|
||||
- Enhance: 絵文字ピッカー・オートコンプリートで、完全一致した絵文字を優先的に表示するように
|
||||
- Enhance: Playの説明欄にMFMを使えるように
|
||||
- Enhance: チャンネルノートの場合は詳細ページからその前後のノートを見れるように
|
||||
- Enhance: 季節に応じた画面の演出を南半球でも利用できるように
|
||||
- Enhance: タイムラインフィルターの設定をすべて保持できるように
|
||||
- 今までの「TLに他の人への返信を含める」設定は一旦リセットされます
|
||||
- Enhance: タイムラインフィルターに「センシティブなファイルを含むノートを表示」を追加
|
||||
- Enhance: ノート作成画面のファイル添付メニューから直接ファイルを削除できるように
|
||||
- Enhance: MFMの属性でオートコンプリートが使用できるように #12735
|
||||
- Enhance: 絵文字編集ダイアログをモーダルではなくウィンドウで表示するように
|
||||
- Fix: ネイティブモードの絵文字がモノクロにならないように
|
||||
- Fix: v2023.12.0で追加された「モデレーターがユーザーのアイコンもしくはバナー画像を未設定状態にできる機能」が管理画面上で正しく表示されていない問題を修正
|
||||
- Fix: AiScriptの`readline`関数が不正な値を返すことがある問題のv2023.12.0時点での修正がPlay以外に適用されていないのを修正
|
||||
- Fix: v2023.12.1で追加された`$[clickable ...]`および`onClickEv`が正しく機能していないのを修正
|
||||
- Enhance: ページ遷移時にPlayerを閉じるように
|
||||
|
||||
### Server
|
||||
- Enhance: 連合先のレートリミットに引っかかった際にリトライするようになりました
|
||||
- Enhance: ActivityPub Deliver queueでBodyを事前処理するように (#12916)
|
||||
- Enhance: クリップをエクスポートできるように
|
||||
- Enhance: `/files`のファイルに対してHTTP Rangeリクエストを行えるように
|
||||
- Enhance: `api.json`のOpenAPI Specificationを3.1.0に更新
|
||||
- Fix: `drive/files/update`でファイル名のバリデーションが機能していない問題を修正
|
||||
- Fix: `notes/create`で、`text`が空白文字のみで構成されているか`null`であって、かつ`text`だけであるリクエストに対するレスポンスが400になるように変更
|
||||
- Fix: `notes/create`で、`text`が空白文字のみで構成されていてかつリノート、ファイルまたは投票を含んでいるリクエストに対するレスポンスの`text`が`""`から`null`になるように変更
|
||||
- Fix: ipv4とipv6の両方が利用可能な環境でallowedPrivateNetworksが設定されていた場合プライベートipの検証ができていなかった問題を修正
|
||||
- Fix: properly handle cc followers
|
||||
|
||||
### Service Worker
|
||||
- Enhance: オフライン表示のデザインを改善・多言語対応
|
||||
|
||||
## 2023.12.2
|
||||
|
||||
### General
|
||||
- v2023.12.1でDockerを利用してサーバーを起動できない問題を修正
|
||||
|
||||
### Client
|
||||
- Enhance: 検索画面においてEnterキー押下で検索できるように
|
||||
|
||||
## 2023.12.1
|
||||
|
||||
### Note
|
||||
- アクセストークンの権限が再整理されたため、一部のAPIが古いAPIトークンでは動作しなくなりました。\
|
||||
権限不足になる場合には権限を再設定して再生成してください。
|
||||
|
||||
### General
|
||||
- Enhance: ローカリゼーションの更新
|
||||
- Fix: 自分のdirect noteがuser list timelineに追加されない
|
||||
|
||||
### Client
|
||||
- Feat: AiScript専用のMFM構文`$[clickable.ev=EVENTNAME ...]`を追加。`Mk:C:mfm`のオプション`onClickEv`に関数を渡すと、クリック時に`EVENTNAME`を引数にして呼び出す
|
||||
- Enhance: MFM入力補助ボタンを投稿フォームに表示できるように #12787
|
||||
- Fix: 一部のモデログ(logYellowでの表示対象)について、表示の色が変わらない問題を修正
|
||||
- Fix: `fg`/`bg`MFMに長い単語を指定すると、オーバーフローされずはみ出る問題を修正
|
||||
|
||||
### Server
|
||||
- Enhance: センシティブワードの設定がハッシュタグトレンドにも適用されるようになりました
|
||||
- Enhance: `oauth/token`エンドポイントのCORS対応
|
||||
- Fix: 1702718871541-ffVisibility.jsのdownが壊れている
|
||||
- Fix:「非センシティブのみ(リモートはいいねのみ)」を設定していても、センシティブに設定されたカスタム絵文字をリアクションできる問題を修正
|
||||
- Fix: ロールアサイン時の通知で,ロールアイコンが縮小されずに表示される問題を修正
|
||||
- Fix: サードパーティアプリケーションがWebsocket APIに無条件にアクセスできる問題を修正
|
||||
- Fix: サードパーティアプリケーションがユーザーの許可なしに非公開の情報を見ることができる問題を修正
|
||||
|
||||
## 2023.12.0
|
||||
|
||||
### Note
|
||||
- 依存関係の更新に伴い、Node.js 20.10.0が最小要件になりました
|
||||
- 絵文字の追加辞書を既にインストールしている場合は、お手数ですが再インストールのほどお願いします
|
||||
- 絵文字ピッカーにピン留め表示する絵文字設定が「リアクション用」と「絵文字入力用」に分かれました。以前の設定は「リアクション用」として使用されます。
|
||||
|
||||
**影響:**
|
||||
それにより、投稿フォームから表示される絵文字ピッカーのピン留め絵文字がリセットされたように感じるかもしれません(新設された"ピン留め(全般)"の設定が使われるため)。
|
||||
投稿用のピン留め絵文字をアップデート前の状態にするには、以下の手順で操作します。
|
||||
|
||||
1. 「設定」メニューに移動し、「絵文字ピッカー」タブを選択します。
|
||||
2. 「ピン留 (全般)」のタブを選択します。
|
||||
3. 「リアクション設定から上書きする」ボタンを押すことで、アップデート前の状態に戻すことができます。
|
||||
|
||||
### General
|
||||
- Feat: メールアドレスの認証にverifymail.ioを使えるように (cherry-pick from https://github.com/TeamNijimiss/misskey/commit/971ba07a44550f68d2ba31c62066db2d43a0caed)
|
||||
- Feat: モデレーターがユーザーのアイコンもしくはバナー画像を未設定状態にできる機能を追加 (cherry-pick from https://github.com/TeamNijimiss/misskey/commit/e0eb5a752f6e5616d6312bb7c9790302f9dbff83)
|
||||
- Feat: TL上からノートが見えなくなるワードミュートであるハードミュートを追加
|
||||
- Enhance: 指定したドメインのメールアドレスの登録を弾くことができるように
|
||||
- Enhance: 公開ロールにアサインされたときに通知が作成されるように
|
||||
- Enhance: アイコンデコレーションを複数設定できるように
|
||||
- Enhance: アイコンデコレーションの位置を微調整できるように
|
||||
- Enhance: つながりの公開範囲をフォロー/フォロワーで個別に設定可能に #12072
|
||||
- Enhance: ローカリゼーションの更新
|
||||
- Enhance: 依存関係の更新
|
||||
- Fix: MFM `$[unixtime ]` に不正な値を入力した際に発生する各種エラーを修正
|
||||
|
||||
### Client
|
||||
- Feat: 今日誕生日のフォロー中のユーザーを一覧表示できるウィジェットを追加
|
||||
- Feat: 画面に雪を降らせられるように
|
||||
- Enhance: MFMのアニメーション要素(`tada`, `jelly`, `twitch`, `shake`, `spin`, `jump`, `bounce`, `rainbow`)に `delay` オプションを追加
|
||||
- Enhance: センシティブと判断されたウェブサイトのサムネイルを非表示に
|
||||
- ウェブサイトをセンシティブと判断する仕組みが動いていないため、summalyProxyを使用しないと機能しません。
|
||||
- Enhance: 投稿フォームの絵文字ピッカーをリアクション時に使用するものと同じのを使用するように #12336 #12560
|
||||
- Enhance: リアクション用ピン留め絵文字と投稿時の絵文字入力用ピン留め絵文字を分けて設定できるように #12560
|
||||
- Enhance: 絵文字のオートコンプリート機能強化 #12364
|
||||
- Enhance: ユーザーのRawデータを表示するページが復活
|
||||
- Enhance: リアクション選択時に音を鳴らせるように
|
||||
- Enhance: サウンドにドライブのファイルを使用できるように
|
||||
- Enhance: ナビゲーションバーに項目「キャッシュを削除」を追加
|
||||
- Enhance: Shareページで投稿を完了すると、親ウィンドウ(親フレーム)にpostMessageするように
|
||||
- Enhance: チャンネル、クリップ、ページ、Play、ギャラリーにURLのコピーボタンを設置 #11305
|
||||
- Enhance: ノートプレビューに「内容を隠す」が反映されるように
|
||||
- Enhance: データセーバーでコードハイライトの読み込みを削減できるように
|
||||
- Enhance: データセーバーの適用範囲を個別で設定できるように
|
||||
- 従来のデータセーバーの設定はリセットされます
|
||||
- Enhance: タイムライン上のタブからリスト、アンテナ、チャンネルの管理ページにジャンプできるように
|
||||
- Enhance: ユーザー名、プロフィール、お知らせ、ページの編集画面でMFMや絵文字のオートコンプリートが使用できるように
|
||||
- Enhance: プロフィール、お知らせの編集画面でMFMのプレビューを表示できるように
|
||||
- Enhance: 絵文字の詳細ページに記載される情報を追加
|
||||
- Enhance: リアクションの表示幅制限を設定可能に
|
||||
- Enhance: Unicode 15.0のサポート
|
||||
- Enhance: コードブロックのハイライト機能を利用するには言語を明示的に指定させるように
|
||||
- MFMでコードブロックを利用する際に意図しないハイライトが起こらないようになりました
|
||||
- 逆に、MFMでコードハイライトを利用したい際は言語を明示的に指定する必要があります
|
||||
(例: ` ```js ` → Javascript, ` ```ais ` → AiScript)
|
||||
- Enhance: 絵文字などのオートコンプリートでShift+Tabを押すと前の候補を選択できるように
|
||||
- Enhance: チャンネルに新規の投稿がある場合にバッジを表示させる
|
||||
- Enhance: サウンド設定に「サウンドを出力しない」と「Misskeyがアクティブな時のみサウンドを出力する」を追加
|
||||
- Enhance: 設定したタグをトレンドに表示させないようにする項目を管理画面で設定できるように
|
||||
- Enhance: 絵文字ピッカーのカテゴリに「/」を入れることでフォルダ分け表示できるように
|
||||
- Fix: 「設定のバックアップ」で一部の項目がバックアップに含まれていなかった問題を修正
|
||||
- Fix: ウィジェットのジョブキューにて音声の発音方法変更に追従できていなかったのを修正 #12367
|
||||
- Fix: コードエディタが正しく表示されない問題を修正
|
||||
- Fix: プロフィールの「ファイル」にセンシティブな画像がある際のデザインを修正
|
||||
- Fix: 一度に大量の通知が入った際に通知音が音割れする問題を修正
|
||||
- Fix: 共有機能をサポートしていないブラウザの場合は共有ボタンを非表示にする #11305
|
||||
- Fix: 通知のグルーピング設定を変更してもリロードされるまで表示が変わらない問題を修正 #12470
|
||||
- Fix: 長い名前のチャンネルにおける投稿フォームの表示が崩れる問題を修正
|
||||
- Fix: セキュリティ向上のためAiScriptの`Mk:apiExternal`を無効化
|
||||
- Fix: ノート中の絵文字をタップして「リアクションする」からリアクションした際にリアクションサウンドが鳴らない不具合を修正
|
||||
- Fix: ノート中のリアクションの表示を微調整 #12650
|
||||
- Fix: AiScriptの`readline`が不正な値を返すことがある問題を修正
|
||||
- Fix: 投票のみ/画像のみの引用RNが、通知欄でただのRNとして判定されるバグを修正
|
||||
- Fix: CWをつけて引用RNしても、普通のRNとして扱われてしまうバグを修正しました。
|
||||
- Fix: 「画像が1枚のみのメディアリストの高さ」を「デフォルト」以外に設定していると、CWの中などに添付された画像が見られないバグを修正
|
||||
- Fix: DeepL TranslationのPro accountトグルスイッチが表示されていなかったのを修正
|
||||
- Fix: twitterの埋め込みカード内リンクからリンク先を開けない問題を修正
|
||||
- Fix: WebKitブラウザー上でも「デバイスの画面を常にオンにする」機能が効くように
|
||||
- Fix: ページ一覧ページの表示がモバイル環境において崩れているのを修正
|
||||
- Fix: MFMでルビの中のテキストがnyaizeされない問題を修正
|
||||
|
||||
### Server
|
||||
- Enhance: MFM `$[ruby ]` が他ソフトウェアと連合されるように
|
||||
- Enhance: Meilisearchを有効にした検索で、ユーザーのミュートやブロックを考慮するように
|
||||
- Enhance: カスタム絵文字のインポート時の動作を改善
|
||||
- Enhance: json-schema(OpenAPIの戻り値として使用されるスキーマ定義)を出来る限り最新化 #12311
|
||||
- Fix: 時間経過により無効化されたアンテナを再有効化したとき、サーバ再起動までその状況が反映されないのを修正 #12303
|
||||
- Fix: ロールタイムラインが保存されない問題を修正
|
||||
- Fix: api.jsonの生成ロジックを改善 #12402
|
||||
- Fix: 招待コードが使い回せる問題を修正
|
||||
- Fix: 特定の条件下でチャンネルやユーザーのノート一覧に最新のノートが表示されなくなる問題を修正
|
||||
- Fix: 何もノートしていないユーザーのフィードにアクセスするとエラーになる問題を修正
|
||||
- Fix: リストタイムラインにてミュートが機能しないケースがある問題と、チャンネル投稿がストリーミングで流れてきてしまう問題を修正 #10443
|
||||
- Fix: 「みつける」のなかにミュートしたユーザが現れてしまう問題を修正 #12383
|
||||
- Fix: Social/Local/Home Timelineにてインスタンスミュートが効かない問題
|
||||
- Fix: ユーザのノート一覧にてインスタンスミュートが効かない問題
|
||||
- Fix: チャンネルのノート一覧にてインスタンスミュートが効かない問題
|
||||
- Fix: 「みつける」が年越し時に壊れる問題を修正
|
||||
- Fix: アカウントをブロックした際に、自身のユーザーのページでノートが相手に表示される問題を修正
|
||||
- Fix: モデレーションログがモデレーターは閲覧できないように修正
|
||||
- Fix: ハッシュタグのトレンド除外設定が即時に効果を持つように修正
|
||||
- Fix: HTTP Digestヘッダのアルゴリズム部分に大文字の"SHA-256"しか使えない
|
||||
|
||||
## 2023.11.1
|
||||
|
||||
### Note
|
||||
- 悪意のある第三者がリモートユーザーになりすました任意のアクティビティを受け取れてしまう問題を修正しました。詳しくは[GitHub security advisory](https://github.com/misskey-dev/misskey/security/advisories/GHSA-3f39-6537-3cgc)をご覧ください。
|
||||
|
||||
### General
|
||||
- Feat: 管理者がコントロールパネルからメールアドレスの照会を行えるようになりました
|
||||
- Enhance: ローカリゼーションの更新
|
||||
- Enhance: 依存関係の更新
|
||||
|
||||
### Client
|
||||
- Enhance: MFMでルビを振れるように
|
||||
- 例: `$[ruby 三須木 みすき]`
|
||||
- Enhance: MFMでUNIX時間を指定して日時を表示できるように
|
||||
- 例: `$[unixtime 1701356400]`
|
||||
- Enhance: プラグインでエラーが発生した場合のハンドリングを強化
|
||||
- Enhance: 細かなUIのブラッシュアップ
|
||||
- Fix: 効果音が再生されるとデバイスで再生している動画や音声が停止する問題を修正 #12339
|
||||
- Fix: デッキに表示されたチャンネルの表示先チャンネルを切り替えた際、即座に反映されない問題を修正 #12236
|
||||
- Fix: プラグインでノートの表示を書き換えられない問題を修正
|
||||
- Fix: アイコンデコレーションが見切れる場合がある問題を修正
|
||||
- Fix: 「フォロー中の人全員の返信を含める/含めないようにする」のボタンを押下した際の確認が機能していない問題を修正
|
||||
- Fix: 非ログイン時に「メモを追加」を表示しないように変更 #12309
|
||||
- Fix: 絵文字ピッカーでの検索が更新されない問題を修正
|
||||
- Fix: 特定の条件下でノートがnyaizeされない問題を修正
|
||||
|
||||
### Server
|
||||
- Enhance: FTTのデータベースへのフォールバック処理を行うかどうかを設定可能に
|
||||
- Fix: トークンのないプラグインをアンインストールするときにエラーが出ないように
|
||||
- Fix: 投稿通知がオンでもダイレクト投稿はユーザーに通知されないようにされました
|
||||
- Fix: ユーザタイムラインの「ノート」選択時にリノートが混ざり込んでしまうことがある問題の修正 #12306
|
||||
- Fix: LTLに特定条件下にてチャンネルへの投稿が混ざり込む現象を修正
|
||||
- Fix: ActivityPub: 追加情報のカスタム絵文字がユーザー情報のtagに含まれない問題を修正
|
||||
- Fix: ActivityPubに関するセキュリティの向上
|
||||
- Fix: 非公開の投稿に対して返信できないように
|
||||
|
||||
## 2023.11.0
|
||||
|
||||
### Note
|
||||
- iOS 16.4未満を使用している場合はiOS 16.4以上にアップデートをお願いします
|
||||
|
||||
### General
|
||||
- Feat: アイコンデコレーション機能
|
||||
- サーバーで用意された画像をアイコンに重ねることができます
|
||||
- 画像のテンプレートはこちらです: https://misskey-hub.net/brand-assets/
|
||||
- 最大でも黄色いエリア内にデコレーションを収めることを推奨します。
|
||||
- 画像は512x512pxを推奨します。
|
||||
- Feat: チャンネル設定にリノート/引用リノートの可否を設定できる項目を追加
|
||||
- Enhance: アカウント登録時のメールアドレス認証に30分の有効期限を設定
|
||||
- 有効期限が切れた後であれば、登録時に使用した招待コードを再度利用できるように変更しました。
|
||||
- ユーザーが誤ったメールアドレスを入力した場合に招待コードが失効してしまう問題が解消されます。
|
||||
- Enhance: すでにフォローしたすべての人の返信をTLに追加できるように
|
||||
- Enhance: 未読の通知数を表示できるように
|
||||
- Enhance: 通知されず、確認の必要もないお知らせ(silence)を作成可能になりました
|
||||
- Enhance: ローカリゼーションの更新
|
||||
- Enhance: 依存関係の更新
|
||||
- Change: CWを使用する場合、注釈を空にすることは許可されなくなりました
|
||||
|
||||
### Client
|
||||
- Feat: プラグイン・テーマを外部サイトから直接インストールできるようになりました
|
||||
- 外部サイトでの実装が必要です。詳細は Misskey Hub をご覧ください
|
||||
https://misskey-hub.net/docs/for-developers/publish-on-your-website/
|
||||
- Feat: 通知をグルーピングして表示するオプション(オプトアウト)
|
||||
- Feat: Misskeyの基本的なチュートリアルを実装
|
||||
- Feat: スワイプしてタイムラインを再読込できるように
|
||||
- PCの場合は右上のボタンからでも再読込できます
|
||||
- Enhance: タイムラインの自動更新を無効にできるように
|
||||
- Enhance: コードのシンタックスハイライトエンジンをShikiに変更
|
||||
- AiScriptのシンタックスハイライトに対応
|
||||
- MFMでAiScriptをハイライトする場合、コードブロックの開始部分を ` ```is ` もしくは ` ```aiscript ` としてください
|
||||
- Enhance: データセーバー有効時はアニメーション付きのアバター画像が停止するように
|
||||
- Enhance: プラグインを削除した際には、使用されていたアクセストークンも同時に削除されるようになりました
|
||||
- Enhance: プラグインで`Plugin:register_note_view_interruptor`を用いてnoteの代わりにnullを返却することでノートを非表示にできるようになりました
|
||||
- Enhance: AiScript関数`Mk:nyaize()`が追加されました
|
||||
- Enhance: 情報→ツール はナビゲーションバーにツールとして独立した項目になりました
|
||||
- Enhance: ノート内の絵文字をクリックすることで、コピーおよびリアクションができるように
|
||||
- Enhance: その他細かなブラッシュアップ
|
||||
- Fix: 投稿フォームでのユーザー変更がプレビューに反映されない問題を修正
|
||||
- Fix: ユーザーページの ノート > ファイル付き タブにリプライが表示されてしまう
|
||||
- Fix: 「検索」MFMにおいて一部の検索キーワードが正しく認識されない問題を修正
|
||||
- Fix: 一部の言語でMisskey Webがクラッシュする問題を修正
|
||||
- Fix: チャンネルの作成・更新時に失敗した場合何も表示されない問題を修正 #11983
|
||||
- Fix: 個人カードのemojiがバッテリーになっている問題を修正
|
||||
- Fix: 標準テーマと同じIDを使用してインストールできてしまう問題を修正
|
||||
- Fix: 絵文字ピッカーでバッテリーの絵文字が複数表示される問題を修正 #12197
|
||||
- Fix: 11以上されているリアクションにおいてツールチップで示されるリアクション数が本来よりも1多い問題を修正 #12174
|
||||
- Fix: サイレンス状態で公開範囲のパブリックを選択できてしまう問題を修正 #12224
|
||||
- Fix: In deck layout, replies option is not saved after refresh
|
||||
- Fix: アーカイブしたお知らせがコントロールパネルに表示される問題を修正
|
||||
- Note: アップデート後、サウンドに関する設定が初期化されます
|
||||
|
||||
### Server
|
||||
- Feat: Registry APIがサードパーティから利用可能になりました
|
||||
- Enhance: RedisへのTLのキャッシュ(FTT)をオフにできるように
|
||||
- Enhance: フォローしているチャンネルをフォロー解除した時(またはその逆)、タイムラインに反映される間隔を改善
|
||||
- Enhance: プロフィールの自己紹介欄のMFMが連合するようになりました
|
||||
- 相手がMisskey v2023.11.0以降である必要があります
|
||||
- Enhance: チャンネル取得時のパフォーマンスを向上
|
||||
- Enhance: AP: ApplicationタイプのアカウントをisBotとして扱うように
|
||||
- Fix: リストTLに自分のフォロワー限定投稿が含まれない問題を修正
|
||||
- Fix: ローカルタイムラインに投稿者自身の投稿への返信が含まれない問題を修正
|
||||
- Fix: 自分のフォローしているユーザーの自分のフォローしていないユーザーの visibility: followers な投稿への返信がストリーミングで流れてくる問題を修正
|
||||
- Fix: RedisへのTLキャッシュが有効の場合にHTL/LTL/STLが空になることがある問題を修正
|
||||
- Fix: STLでフォローしていないチャンネルが取得される問題を修正
|
||||
- Fix: `hashtags/trend`にてRedisからトレンドの情報が取得できない際にInternal Server Errorになる問題を修正
|
||||
- Fix: HTLをリロードまたは遡行したとき、フォローしているチャンネルのノートが含まれない問題を修正 #11765 #12181
|
||||
- Fix: リノートをリノートできるのを修正
|
||||
- Fix: アクセストークンを削除すると、通知が取得できなくなる場合がある問題を修正
|
||||
- Fix: 自身の宛先なしダイレクト投稿がストリーミングで流れてこない問題を修正
|
||||
- Fix: サーバーサイドからのテスト通知を正しく行えるように修正
|
||||
- Fix: GTLの「リノートを表示」オプションが機能しないのを修正 #12233
|
||||
|
||||
## 2023.10.2
|
||||
|
||||
### General
|
||||
- Feat: アンテナでローカルの投稿のみ収集できるようになりました
|
||||
- Feat: サーバーサイレンス機能が追加されました
|
||||
- Enhance: 新規にフォローした人の返信をデフォルトでTLに追加できるオプションを追加
|
||||
- Enhance: HTL/LTL/STLを2023.10.0アップデート以前まで遡れるように
|
||||
- Enhance: フォロー/フォロー解除したときに過去分のHTLにも含まれる投稿が反映されるように
|
||||
- Enhance: ローカリゼーションの更新
|
||||
- Enhance: 依存関係の更新
|
||||
|
||||
### Client
|
||||
- Enhance: TLの返信表示オプションを記憶するように
|
||||
- Enhance: 投稿されてから時間が経過しているノートであることを視覚的に分かりやすく
|
||||
|
||||
### Server
|
||||
- Enhance: タイムライン取得時のパフォーマンスを向上
|
||||
- Enhance: ストリーミングAPIのパフォーマンスを向上
|
||||
- Fix: users/notesでDBから参照した際にチャンネル投稿のみ取得される問題を修正
|
||||
- Fix: コントロールパネルの設定項目が正しく保存できない問題を修正
|
||||
- Fix: 管理者権限のロールを持っていても一部のAPIが使用できないことがある問題を修正
|
||||
- Change: ユーザーのisCatがtrueでも、サーバーではnyaizeが行われなくなりました
|
||||
- isCatな場合、クライアントでnyaize処理を行うことを推奨します
|
||||
|
||||
## 2023.10.1
|
||||
### General
|
||||
- Enhance: ローカルタイムライン、ソーシャルタイムラインで返信を含むかどうか設定可能に
|
||||
|
||||
### Client
|
||||
- Fix: 絵文字ピッカーで横に長いカスタム絵文字が見切れる問題を修正
|
||||
|
||||
### Server
|
||||
- Fix: フォローしているユーザーからの自分の投稿への返信がタイムラインに含まれない問題を修正
|
||||
- Fix: users/notesでセンシティブチャンネルの投稿が含まれる場合がある問題を修正
|
||||
|
||||
## 2023.10.0
|
||||
### NOTE
|
||||
- 2023.9.2で導入されたノート編集機能はクオリティの高い実装が困難であることが判明したため撤回されました
|
||||
- アップデートを行うと、タイムラインが一時的にリセットされます
|
||||
- アンテナ内のノートも含む
|
||||
- ソフトミュート設定はクライアントではなくサーバー側に保存されるようになったため、アップデートを行うとソフトミュートの設定がリセットされます
|
||||
|
||||
### Changes
|
||||
- API: users/notes, notes/local-timeline で fileType 指定はできなくなりました
|
||||
- API: notes/featured でページネーションは他APIと同様 untilId を使って行うようになりました
|
||||
|
||||
### General
|
||||
- Feat: ユーザーごとに他ユーザーへの返信をタイムラインに含めるか設定可能になりました
|
||||
- Feat: ユーザーリスト内のメンバーごとに他ユーザーへの返信をユーザーリストタイムラインに含めるか設定可能になりました
|
||||
- Feat: ユーザーごとのハイライト
|
||||
- Feat: プライバシーポリシー・運営者情報(Impressum)の指定が可能になりました
|
||||
- プライバシーポリシーはサーバー登録時に同意確認が入ります
|
||||
- Feat: タイムラインがリアルタイム更新中に広告を挿入できるようになりました
|
||||
- デフォルトは無効
|
||||
- 頻度はコントロールパネルから設定できます。運営中のサーバーのTLの流速を見て、最適な値を指定してください。
|
||||
- Enhance: ソフトワードミュートとハードワードミュートは統合されました
|
||||
- Enhance: モデレーションログ機能の強化
|
||||
- Enhance: ローカリゼーションの更新
|
||||
- Enhance: 依存関係の更新
|
||||
- Fix: ダイレクト投稿をリノートできてしまう問題を修正
|
||||
- Fix: ユーザーリストTLにチャンネル投稿が含まれる問題を修正
|
||||
|
||||
### Client
|
||||
- Feat: 「ファイルの詳細」ページを追加
|
||||
- ドライブのファイルの拡大プレビューができるように
|
||||
- ファイルが添付されたノートの一覧が表示できるように
|
||||
- Enhance: 二要素認証のバックアップコード一覧をテキストファイルでダウンロード可能に
|
||||
- Enhance: 動画再生時のデフォルトボリュームを30%に
|
||||
- Fix: リアクションしたユーザ一覧のUIが稀に左上に残ってしまう不具合を修正
|
||||
|
||||
### Server
|
||||
- Enhance: drive/files/attached-notes がページネーションに対応しました
|
||||
- Enhance: タイムライン取得時のパフォーマンスを大幅に向上
|
||||
- Enhance: ハイライト取得時のパフォーマンスを大幅に向上
|
||||
- Enhance: トレンドハッシュタグ取得時のパフォーマンスを大幅に向上
|
||||
- Enhance: WebSocket接続が多い場合のパフォーマンスを向上
|
||||
- Enhance: 不要なPostgreSQLのインデックスを削除しパフォーマンスを向上
|
||||
- Fix: 連合なしアンケートに投票をするとUpdateがリモートに配信されてしまうのを修正
|
||||
- Fix: nodeinfoにおいてCORS用のヘッダーが設定されていないのを修正
|
||||
- Fix: 同じ種類のTLのストリーミングを複数接続できない問題を修正
|
||||
- Fix: アンテナTLを途中までしかページネーションできなくなることがある問題を修正
|
||||
- Fix: 「ファイル付きのみ」のTLでファイル無しの新着ノートが流れる問題を修正
|
||||
- Fix: プロセスが終了しない、あるいは非常に時間がかかる問題を修正
|
||||
|
||||
## 2023.9.3
|
||||
### General
|
||||
- Enhance: ノートの翻訳機能の利用可否をロールで設定可能に
|
||||
|
||||
### Client
|
||||
- Enhance: AiScriptでホストのアドレスを参照する定数`SERVER_URL`を追加
|
||||
- Enhance: モデレーションログ機能の強化
|
||||
- Enhance: ローカリゼーションの更新
|
||||
|
||||
### Server
|
||||
- Fix: Redisに古いバージョンのキャッシュが残っている場合、キャッシュが消えるまでの間通知が届かなくなる問題を修正
|
||||
- Fix: 後方互換性の修正
|
||||
|
||||
## 2023.9.2
|
||||
|
||||
### General
|
||||
- Feat: ノートの編集をできるように
|
||||
- ロールで編集可否を設定可能
|
||||
- Feat: 通知を種類ごとに 全員から受け取る/フォロー中のユーザーのみ受け取る/フォロワーのみ受け取る/相互のみ受け取る/指定したリストのメンバーのみ受け取る/受け取らない から選べるように
|
||||
- Enhance: タイムラインからRenoteを除外するオプションを追加
|
||||
- Enhance: ユーザーページのノート一覧でRenoteを除外できるように
|
||||
- Enhance: タイムラインでファイルが添付されたノートのみ表示するオプションを追加
|
||||
- Enhance: モデレーションログ機能の強化
|
||||
- Enhance: 依存関係の更新
|
||||
- Enhance: ローカリゼーションの更新
|
||||
|
||||
### Client
|
||||
- Enhance: Plugin:register_post_form_actionを用いてCWを取得・変更できるように
|
||||
- Enhance: admin/ad/listにて掲載中の広告が絞り込めるように
|
||||
- Enhance: AiScriptにリモートサーバーのAPIを叩く用の関数を追加(`Mk:apiExternal`)
|
||||
|
||||
### Server
|
||||
- Enhance: MasterプロセスのPIDを書き出せるように
|
||||
- Enhance: admin/ad/createにてレスポンス200、設定した広告情報を返すように
|
||||
|
||||
## 2023.9.1
|
||||
|
||||
### General
|
||||
- Enhance: モデレーションログ機能の強化
|
||||
|
||||
### Client
|
||||
- Fix: ノートのメニューにある「詳細」ボタンの表示がログイン/ログアウト状態で統一されていない問題を修正
|
||||
|
||||
### Server
|
||||
- Fix: お知らせのページネーションが機能しない
|
||||
- Fix: 「ユーザーの新規投稿」の通知設定を切り替えるとサーバー内部エラーが出る
|
||||
|
||||
## 2023.9.0
|
||||
|
||||
### Note
|
||||
- meilisearchを使用する場合、v1.2以上が必要です
|
||||
|
||||
### General
|
||||
- Feat: OAuth 2.0のサポート
|
||||
- Feat: お知らせ機能の強化
|
||||
- ユーザー個別のお知らせを作成可能に
|
||||
- お知らせのバナー表示やダイアログ表示が可能に
|
||||
- お知らせのアイコンを設定可能に
|
||||
- Feat: チャンネルをセンシティブ指定できるようになりました
|
||||
- センシティブチャンネルのNoteのReNoteはデフォルトでHome TLに流れるようになりました
|
||||
- センシティブチャンネルのノートはユーザープロフィールに表示されません
|
||||
- Feat: 二要素認証のバックアップコードが生成されるようになりました
|
||||
- ref. https://github.com/MisskeyIO/misskey/pull/121
|
||||
- Feat: 二要素認証でパスキーをサポートするようになりました
|
||||
- Feat: 指定したユーザーが投稿したときに通知できるようになりました
|
||||
- Feat: プロフィールでのリンク検証
|
||||
- Feat: モデレーションログ機能
|
||||
- Feat: 通知をテストできるようになりました
|
||||
- Feat: PWAのアイコンが設定できるようになりました
|
||||
- Enhance: サーバー名の略称が設定できるようになりました
|
||||
- Enhance: アンテナの受信ソースに指定したユーザを除外するものを追加
|
||||
- Enhance: 二要素認証設定時のセキュリティを強化
|
||||
- パスワード入力が必要な操作を行う際、二要素認証が有効であれば確認コードの入力も必要になりました
|
||||
- Enhance: manifest.jsonをオーバーライド可能に
|
||||
- Enhance: 依存関係の更新
|
||||
- Enhance: ローカリゼーションの更新
|
||||
|
||||
### Client
|
||||
- Feat: 任意のユーザーリストをタイムラインページにピン留めできるように
|
||||
- 設定->クライアント設定->全般 から設定可能です
|
||||
- Feat: Playで直接投稿フォームを埋め込めるように(`Ui:C:postForm`)
|
||||
- Feat: クライアントを起動している間、デバイスの画面が自動でオフになるのを防ぐオプションを追加
|
||||
- Feat: 新しい実績を追加
|
||||
- Enhance: ノート詳細ページでリノート一覧、リアクション一覧タブを追加
|
||||
- ノートのメニューからは当該項目は消えました
|
||||
- Enhance: センシティブなメディアを目立たせる設定を追加
|
||||
- Enhance: プロフィールにその人が作ったPlayの一覧出せるように
|
||||
- Enhance: メニューのスイッチの動作を改善
|
||||
- Enhance: 絵文字ピッカーの検索の表示件数を100件に増加
|
||||
- Enhance: 投稿フォームのプレビューの表示状態を記憶するように
|
||||
- Enhance: ユーザーメニューでスイッチでユーザーリストに追加・削除できるように
|
||||
- Enhance: 自分が押したリアクションのデザインを改善
|
||||
- Enhance: ノート検索にローカルのみ検索可能なオプションの追加
|
||||
- Enhance: Renote自体を通報できるように
|
||||
- Enhance: データセーバーモードの強化
|
||||
- Enhance: Renoteを管理者権限で削除可能に
|
||||
- Enhance: `$[rainbow ]`記法が、動きのあるMFMが無効になっていても使用できるようになりました
|
||||
- Enhance: Playの操作を行うAPI TokenをAPIコンソールから発行できるように
|
||||
- Enhance: リアクションの表示サイズをより大きくできるように
|
||||
- Enhance: AiScriptを0.16.0に更新
|
||||
- Enhance: AiScriptからMisskeyサーバーAPIを呼び出す際の制限を撤廃
|
||||
- Enhance: AiScriptで`LOCALE`として現在の設定言語を取得できるように
|
||||
- Enhance: Mk:apiが失敗した時にエラー型の値(AiScript 0.16.0で追加)を返すように
|
||||
- Enhance: ScratchpadでAsync:系関数やボタンのコールバックなどのエラーにもダイアログを出すように(試験的なためPlayなどには未実装)
|
||||
- Enhance: ノート詳細ページ読み込み時のパフォーマンスが向上しました
|
||||
- Enhance: タイムラインでリスト/アンテナ選択時のパフォーマンスを改善
|
||||
- Enhance: 「Moderation note」、「Add moderation note」をローカライズできるように
|
||||
- Enhance: プラグインのソースコードを確認・コピーできるように
|
||||
- Enhance: 細かなデザインの調整
|
||||
- Fix: サーバー情報画面(`/instance-info/{domain}`)でブロックができないのを修正
|
||||
- Fix: 未読のお知らせの「わかった」をクリック・タップしてもその場で「わかった」が消えない問題を修正
|
||||
- Fix: iOSで画面を回転させるとテキストサイズが変わる問題を修正
|
||||
- Fix: word mute for sub note is not applied
|
||||
- Fix: タイムラインを下にスクロールしてノート画面に移動して再び戻ったら以前のスクロール位置を失う問題を修正
|
||||
- Fix: Misskeyプラグインをインストールする際のAiScriptバージョンのチェックが0.14.0以降に対応していない問題を修正
|
||||
- Fix: 他のサーバーのユーザーへ「メッセージを送信」した時の初期テキストのメンションが間違っている問題を修正
|
||||
- Fix: 環境によってはMisskey Webが開けない問題を修正
|
||||
- Fix: プラグインの権限リストが見れない問題を修正
|
||||
- Fix: 複数の階層があるメニューで、短くタップすると正常に動かない場合がある問題を修正
|
||||
- Fix: アニメーションがオフのとき、スマホで子メニューの選択ができない問題を修正
|
||||
- Fix: ドロワーメニューで、親メニュー項目をマウスでホバーすると子メニューが表示されてしまう問題を修正
|
||||
- Fix: AiScriptでMk:apiが外部と通信できる問題を修正
|
||||
|
||||
### Server
|
||||
- Change: cacheRemoteFilesの初期値はfalseになりました
|
||||
- Enhance: ファイルアップロード時等にファイル名の拡張子を修正する関数(correctFilename)の挙動を改善
|
||||
- Enhance: Webhookのペイロードにサーバーのurlが含まれるようになりました
|
||||
- Enhance: Webhook設定でsecretを空に出来るように
|
||||
- Enhance: 使われていないアンテナの自動停止を設定可能に
|
||||
- Enhance: nodeinfo 2.1対応
|
||||
- Enhance: 自分へのメンション一覧を取得する際のパフォーマンスを向上
|
||||
- Enhance: Docker環境でjemallocを使用することでメモリ使用量を削減
|
||||
- Enhance: ID生成方式としてaidxを追加、かつデフォルトに
|
||||
- Enhance: Add address bind config option (outgoingAddress)
|
||||
- Fix: MK_ONLY_SERVERオプションを指定した際にクラッシュする問題を修正
|
||||
- Fix: notes/reactionsのページネーションが機能しない問題を修正
|
||||
- Fix: ノート検索 `notes/search` にてhostを指定した際に検索結果に反映されるように
|
||||
- Fix: 一部のfeatured noteを照会できない問題を修正
|
||||
- Fix: muteがapiからのuser list timeline取得で機能しない問題を修正
|
||||
- Fix: ジョブキュー管理画面の認証を回避できる問題を修正
|
||||
- Fix: 一部のサーバー内部エラーがスタックトレースを返さないように修正
|
||||
- Fix: 一部のリモートユーザーをフォローすることができない問題を修正
|
||||
|
||||
## 13.14.2
|
||||
|
||||
### Client
|
||||
- リストTLで、ユーザーが追加・削除されてもTLを初期化しないように
|
||||
- URL取得変数を関数に変更 CURRENT_URL -> Mk:url()
|
||||
- Fix: モバイル表示のときページ下部がナビゲーションバーに隠れる問題を修正
|
||||
- Fix: 一部モーダルダイアログでスクロールできない問題を修正
|
||||
- Fix: Selecting all emojis in Custom emoji is impossible
|
||||
- Fix: PhotoSwipeによるメモリリークの修正
|
||||
|
||||
### Server
|
||||
- Fix: APIのオフセットが壊れていたせいで「もっと見る」でもっと見れない問題を修正
|
||||
- Fix: 外部サーバーの投稿がタイムラインに表示されないことがある問題を修正
|
||||
|
||||
## 13.14.1
|
||||
|
||||
### General
|
||||
- 招待機能を改善しました
|
||||
* 過去に発行した招待コードを確認できるようになりました
|
||||
* ロールごとに招待コードの発行数制限と制限対象期間、有効期限を設定できるようになりました
|
||||
* 招待コードを作成したユーザーと使用したユーザーを確認できるようになりました
|
||||
- ユーザーにロールが期限付きでアサインされている場合、その期限をユーザーのモデレーションページで確認できるようになりました
|
||||
- identicon生成を無効にしてパフォーマンスを向上させることができるようになりました
|
||||
- サーバーのマシン情報の公開を無効にしてパフォーマンスを向上させることができるようになりました
|
||||
|
||||
### Client
|
||||
- deck UIのカラムのメニューからアンテナとリストの編集画面を開けるように
|
||||
- ドライブファイルのメニューで画像をクロップできるように
|
||||
- 画像を動画と同様に簡単に隠せるように
|
||||
- Enhance: ノートの埋め込みが複数画像と動画を表示されるように
|
||||
- オリジナル画像を保持せずにアップロードする場合webpでアップロードされるように(Safari以外)
|
||||
- 見たことのあるRenoteを省略して表示をオンのときに自分のnoteのrenoteを省略するように
|
||||
- フォルダーやファイルに対しても開発者モード使用時、IDをコピーできるように
|
||||
- 引用対象を「もっと見る」で展開した場合、「閉じる」で畳めるように
|
||||
- プロフィールURLをコピーできるボタンを追加 #11190
|
||||
- `CURRENT_URL`で現在表示中のURLを取得できるように(AiScript)
|
||||
- ユーザーのContextMenuに「アンテナに追加」ボタンを追加
|
||||
- フォローやお気に入り登録をしていないチャンネルを開く時は概要ページを開くように
|
||||
- 画面ビューワをタップした場合、マウスクリックと同様に画像ビューワを閉じるように
|
||||
- オフライン時の画面にリロードボタンを追加
|
||||
- Renote時に公開範囲のデフォルト設定が適用されるように
|
||||
- Deckで非ルートページにアクセスした際に簡易UIで表示しない設定を追加
|
||||
- ロール設定画面でロールIDを確認できるように
|
||||
- コンテキストメニュー表示時のパフォーマンスを改善
|
||||
- フォロー/フォロワー非公開時の表示を改善
|
||||
- 本文にMFMが含まれている場合に自動でたたまれる機能が、返信先や引用RNにも適用されるように
|
||||
- position は対象外になりました
|
||||
- AiScriptを0.15.0に更新
|
||||
- Fix: サーバーメトリクスが90度傾いている
|
||||
- Fix: 非ログイン時にクレデンシャルが必要なページに行くとエラーが出る問題を修正
|
||||
- Fix: sparkle内にリンクを入れるとクリック不能になる問題の修正
|
||||
- Fix: ZenUIでポップアップの表示位置がおかしい問題を修正
|
||||
- Fix: ページ遷移でスクロール位置が保持されない問題を修正
|
||||
- Fix: フォルダーのページネーションが機能しない #11180
|
||||
- Fix: 長い文章を投稿する際、プレビューが画面からはみ出る問題を修正
|
||||
- Fix: システムフォント設定が正しく反映されない問題を修正
|
||||
- Fix: アンケート終了時のプッシュ通知が正しく表示されない問題を修正
|
||||
- Fix: MasterVolumeが0の時だけでなく各通知音の音量設定が0のときも、HTMLAudioElement.playが実行されないように変更
|
||||
|
||||
### Server
|
||||
- JSON.parse の回数を削減することで、ストリーミングのパフォーマンスを向上しました
|
||||
- nsfwjs のモデルロードを排他することで、重複ロードによってメモリ使用量が増加しないように
|
||||
- 連合の配送ジョブのパフォーマンスを向上(ロック機構の見直し、Redisキャッシュの活用)
|
||||
- featuredノートのsignedGet回数を減らしました
|
||||
- ActivityPubの署名用鍵長を2048bitに変更しパフォーマンスを向上(新規アカウントのみ)
|
||||
- リモートサーバーのセンシティブなファイルのキャッシュだけを無効化できるオプションを追加
|
||||
- MeilisearchにIndexするノートの範囲を設定できるように
|
||||
- Export notes with file detail
|
||||
- Add unix socket support
|
||||
- 設定ファイルでioredisの全てのオプションを指定可能に
|
||||
- Fix: エクスポートしたカスタム絵文字のzipが大きいと読み込めない問題を修正
|
||||
- Fix: リモートサーバーに無意味なActivityPubの配信を行うことがあるのを修正
|
||||
- Fix: Remove Meilisearch index when notes are deleted
|
||||
- Fix: 非英語環境でのPostgreSQLのエラーハンドリングを修正
|
||||
- Fix: インスタンスのアイコンがbase64の場合の挙動を修正
|
||||
- Fix: ローカルの `Person` を指す `acct` URI を解析するときのバグを修正しました
|
||||
- Fix: 無効化されたアンテナが再度有効化されないことがある問題を修正
|
||||
|
||||
## 13.13.2
|
||||
|
||||
|
@@ -2,131 +2,45 @@
|
||||
|
||||
## Our Pledge
|
||||
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, caste, color, religion, or sexual
|
||||
identity and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
Examples of behavior that contributes to creating a positive environment include:
|
||||
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the overall
|
||||
community
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior include:
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery, and sexual attention or advances of
|
||||
any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or email address,
|
||||
without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
* Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
|
||||
## Enforcement Responsibilities
|
||||
## Our Responsibilities
|
||||
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
|
||||
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
<syuilotan@yahoo.co.jp>.
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at syuilotan@yahoo.co.jp. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series of
|
||||
actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or permanent
|
||||
ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within the
|
||||
community.
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.1, available at
|
||||
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
Community Impact Guidelines were inspired by
|
||||
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
|
||||
[https://www.contributor-covenant.org/translations][translations].
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
|
||||
[Mozilla CoC]: https://github.com/mozilla/diversity
|
||||
[FAQ]: https://www.contributor-covenant.org/faq
|
||||
[translations]: https://www.contributor-covenant.org/translations
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
||||
|
@@ -15,7 +15,7 @@ Before creating an issue, please check the following:
|
||||
- To avoid duplication, please search for similar issues before creating a new issue.
|
||||
- Do not use Issues to ask questions or troubleshooting.
|
||||
- Issues should only be used to feature requests, suggestions, and bug tracking.
|
||||
- Please ask questions or troubleshooting in [GitHub Discussions](https://github.com/misskey-dev/misskey/discussions) or [Discord](https://discord.gg/Wp8gVStHW3).
|
||||
- Please ask questions or troubleshooting in ~~the [Misskey Forum](https://forum.misskey.io/)~~ [GitHub Discussions](https://github.com/misskey-dev/misskey/discussions) or [Discord](https://discord.gg/Wp8gVStHW3).
|
||||
|
||||
> **Warning**
|
||||
> Do not close issues that are about to be resolved. It should remain open until a commit that actually resolves it is merged.
|
||||
@@ -117,10 +117,6 @@ command.
|
||||
- Server-side source files and automatically builds them if they are modified. Automatically start the server process(es).
|
||||
- Vite HMR (just the `vite` command) is available. The behavior may be different from production.
|
||||
- Service Worker is watched by esbuild.
|
||||
- The front end can be viewed by accessing `http://localhost:5173`.
|
||||
- The backend listens on the port configured with `port` in .config/default.yml.
|
||||
If you have not changed it from the default, it will be "http://localhost:3000".
|
||||
If "port" in .config/default.yml is set to something other than 3000, you need to change the proxy settings in packages/frontend/vite.config.local-dev.ts.
|
||||
|
||||
### Dev Container
|
||||
Instead of running `pnpm` locally, you can use Dev Container to set up your development environment.
|
||||
@@ -218,13 +214,30 @@ Misskey uses [Storybook](https://storybook.js.org/) for UI development.
|
||||
|
||||
### Setup & Run
|
||||
|
||||
#### Setup
|
||||
#### Universal
|
||||
|
||||
##### Setup
|
||||
|
||||
```bash
|
||||
pnpm --filter misskey-js build
|
||||
pnpm --filter frontend tsc -p .storybook && (node packages/frontend/.storybook/preload-locale.js & node packages/frontend/.storybook/preload-theme.js)
|
||||
```
|
||||
|
||||
##### Run
|
||||
|
||||
```bash
|
||||
node packages/frontend/.storybook/generate.js && pnpm --filter frontend storybook dev
|
||||
```
|
||||
|
||||
#### macOS & Linux
|
||||
|
||||
##### Setup
|
||||
|
||||
```bash
|
||||
pnpm --filter misskey-js build
|
||||
```
|
||||
|
||||
#### Run
|
||||
##### Run
|
||||
|
||||
```bash
|
||||
pnpm --filter frontend storybook-dev
|
||||
@@ -305,12 +318,6 @@ export const handlers = [
|
||||
Don't forget to re-run the `.storybook/generate.js` script after adding, editing, or removing the above files.
|
||||
|
||||
## Notes
|
||||
|
||||
### Misskeyのドメイン固有の概念は`Mi`をprefixする
|
||||
例えばGoogleが自社サービスをMap、Earth、DriveではなくGoogle Map、Google Earth、Google Driveのように命名するのと同じ
|
||||
コード上でMisskeyのドメイン固有の概念には`Mi`をprefixすることで、他のドメインの同様の概念と区別できるほか、名前の衝突を防ぐ。
|
||||
ただし、文脈上Misskeyのものを指すことが明らかであり、名前の衝突の恐れがない場合は、一時的なローカル変数に限って`Mi`を省略してもよい。
|
||||
|
||||
### How to resolve conflictions occurred at pnpm-lock.yaml?
|
||||
|
||||
Just execute `pnpm` to fix it.
|
||||
@@ -440,6 +447,3 @@ marginはそのコンポーネントを使う側が設定する
|
||||
## その他
|
||||
### HTMLのクラス名で follow という単語は使わない
|
||||
広告ブロッカーで誤ってブロックされる
|
||||
|
||||
### indexというファイル名を使うな
|
||||
ESMではディレクトリインポートは廃止されているのと、ディレクトリインポートせずともファイル名が index だと何故か一部のライブラリ?でディレクトリインポートだと見做されてエラーになる
|
||||
|
2
COPYING
2
COPYING
@@ -1,5 +1,5 @@
|
||||
Unless otherwise stated this repository is
|
||||
Copyright © 2014-2024 syuilo and contributors
|
||||
Copyright © 2014-2023 syuilo and contributers
|
||||
|
||||
And is distributed under The GNU Affero General Public License Version 3, you should have received a copy of the license file as LICENSE.
|
||||
|
||||
|
21
Dockerfile
21
Dockerfile
@@ -1,6 +1,6 @@
|
||||
# syntax = docker/dockerfile:1.4
|
||||
|
||||
ARG NODE_VERSION=20.10.0-bullseye
|
||||
ARG NODE_VERSION=18.16.0-bullseye
|
||||
|
||||
# build assets & compile TypeScript
|
||||
|
||||
@@ -24,8 +24,6 @@ COPY --link ["packages/backend/package.json", "./packages/backend/"]
|
||||
COPY --link ["packages/frontend/package.json", "./packages/frontend/"]
|
||||
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/"]
|
||||
COPY --link ["packages/misskey-bubble-game/package.json", "./packages/misskey-bubble-game/"]
|
||||
|
||||
RUN --mount=type=cache,target=/root/.local/share/pnpm/store,sharing=locked \
|
||||
pnpm i --frozen-lockfile --aggregate-output
|
||||
@@ -53,9 +51,6 @@ 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/misskey-js/package.json", "./packages/misskey-js/"]
|
||||
COPY --link ["packages/misskey-reversi/package.json", "./packages/misskey-reversi/"]
|
||||
COPY --link ["packages/misskey-bubble-game/package.json", "./packages/misskey-bubble-game/"]
|
||||
|
||||
RUN --mount=type=cache,target=/root/.local/share/pnpm/store,sharing=locked \
|
||||
pnpm i --frozen-lockfile --aggregate-output
|
||||
@@ -67,13 +62,12 @@ ARG GID="991"
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
ffmpeg tini curl libjemalloc-dev libjemalloc2 \
|
||||
&& ln -s /usr/lib/$(uname -m)-linux-gnu/libjemalloc.so.2 /usr/local/lib/libjemalloc.so \
|
||||
ffmpeg tini curl \
|
||||
&& corepack enable \
|
||||
&& groupadd -g "${GID}" misskey \
|
||||
&& useradd -l -u "${UID}" -g "${GID}" -m -d /misskey misskey \
|
||||
&& find / -type d -path /sys -prune -o -type d -path /proc -prune -o -type f -perm /u+s -ignore_readdir_race -exec chmod u-s {} \; \
|
||||
&& find / -type d -path /sys -prune -o -type d -path /proc -prune -o -type f -perm /g+s -ignore_readdir_race -exec chmod g-s {} \; \
|
||||
&& find / -type d -path /proc -prune -o -type f -perm /u+s -ignore_readdir_race -exec chmod u-s {} \; \
|
||||
&& find / -type d -path /proc -prune -o -type f -perm /g+s -ignore_readdir_race -exec chmod g-s {} \; \
|
||||
&& apt-get clean \
|
||||
&& rm -rf /var/lib/apt/lists
|
||||
|
||||
@@ -82,18 +76,11 @@ WORKDIR /misskey
|
||||
|
||||
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
|
||||
COPY --chown=misskey:misskey --from=target-builder /misskey/packages/misskey-reversi/node_modules ./packages/misskey-reversi/node_modules
|
||||
COPY --chown=misskey:misskey --from=target-builder /misskey/packages/misskey-bubble-game/node_modules ./packages/misskey-bubble-game/node_modules
|
||||
COPY --chown=misskey:misskey --from=native-builder /misskey/built ./built
|
||||
COPY --chown=misskey:misskey --from=native-builder /misskey/packages/misskey-js/built ./packages/misskey-js/built
|
||||
COPY --chown=misskey:misskey --from=native-builder /misskey/packages/misskey-reversi/built ./packages/misskey-reversi/built
|
||||
COPY --chown=misskey:misskey --from=native-builder /misskey/packages/misskey-bubble-game/built ./packages/misskey-bubble-game/built
|
||||
COPY --chown=misskey:misskey --from=native-builder /misskey/packages/backend/built ./packages/backend/built
|
||||
COPY --chown=misskey:misskey --from=native-builder /misskey/fluent-emojis /misskey/fluent-emojis
|
||||
COPY --chown=misskey:misskey . ./
|
||||
|
||||
ENV LD_PRELOAD=/usr/local/lib/libjemalloc.so
|
||||
ENV NODE_ENV=production
|
||||
HEALTHCHECK --interval=5s --retries=20 CMD ["/bin/bash", "/misskey/healthcheck.sh"]
|
||||
ENTRYPOINT ["/usr/bin/tini", "--"]
|
||||
|
@@ -7,10 +7,10 @@
|
||||
|
||||
---
|
||||
|
||||
<a href="https://misskey-hub.net/servers/">
|
||||
<a href="https://misskey-hub.net/instances.html">
|
||||
<img src="https://custom-icon-badges.herokuapp.com/badge/find_an-instance-acea31?logoColor=acea31&style=for-the-badge&logo=misskey&labelColor=363B40" alt="find an instance"/></a>
|
||||
|
||||
<a href="https://misskey-hub.net/docs/for-admin/install/guides/">
|
||||
<a href="https://misskey-hub.net/docs/install.html">
|
||||
<img src="https://custom-icon-badges.herokuapp.com/badge/create_an-instance-FBD53C?logoColor=FBD53C&style=for-the-badge&logo=server&labelColor=363B40" alt="create an instance"/></a>
|
||||
|
||||
<a href="./CONTRIBUTING.md">
|
||||
@@ -51,7 +51,7 @@ With Misskey's built in drive, you get cloud storage right in your social media,
|
||||
|
||||
## Documentation
|
||||
|
||||
Misskey Documentation can be found at [Misskey Hub](https://misskey-hub.net/docs/), some of the links and graphics above also lead to specific portions of it.
|
||||
Misskey Documentation can be found at [Misskey Hub](https://misskey-hub.net/), some of the links and graphics above also lead to specific portions of it.
|
||||
|
||||
## Sponsors
|
||||
|
||||
|
@@ -6,7 +6,6 @@ Also, the later tasks are more indefinite and are subject to change as developme
|
||||
This is the phase we are at now. We need to make a high-maintenance environment that can withstand future development.
|
||||
|
||||
- ~~Make the number of type errors zero (backend)~~ → Done ✔️
|
||||
- Make the number of type errors zero (frontend)
|
||||
- Improve CI
|
||||
- ~~Fix tests~~ → Done ✔️
|
||||
- Fix random test failures - https://github.com/misskey-dev/misskey/issues/7985 and https://github.com/misskey-dev/misskey/issues/7986
|
||||
@@ -23,7 +22,7 @@ This is the phase we are at now. We need to make a high-maintenance environment
|
||||
Once Phase 1 is complete and an environment conducive to the development of a stable system is in place, the implementation of new functions can begin gradually.
|
||||
|
||||
- Improve features for moderation
|
||||
- ~~OAuth2 support https://github.com/misskey-dev/misskey/issues/8262~~ → Done ✔️
|
||||
- OAuth2 support https://github.com/misskey-dev/misskey/issues/8262
|
||||
- GraphQL support?
|
||||
|
||||
## (3) Improve scalability
|
||||
|
@@ -1,6 +1,7 @@
|
||||
# Reporting Security Issues
|
||||
|
||||
If you discover a security issue in Misskey, please report it by **[this form](https://github.com/misskey-dev/misskey/security/advisories/new)**.
|
||||
If you discover a security issue in Misskey, please report it by sending an
|
||||
email to [syuilotan@yahoo.co.jp](mailto:syuilotan@yahoo.co.jp).
|
||||
|
||||
This will allow us to assess the risk, and make a fix available before we add a
|
||||
bug report to the GitHub repository.
|
||||
|
@@ -116,14 +116,6 @@ redis:
|
||||
# #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
|
||||
|
||||
# ┌───────────────────────────┐
|
||||
#───┘ MeiliSearch configuration └─────────────────────────────
|
||||
|
||||
@@ -143,7 +135,6 @@ redis:
|
||||
|
||||
# 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
|
||||
@@ -151,7 +142,7 @@ redis:
|
||||
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
|
||||
# ID SETTINGS AFTER THAT!
|
||||
|
||||
id: "aidx"
|
||||
id: "aid"
|
||||
# ┌─────────────────────┐
|
||||
#───┘ Other configuration └─────────────────────────────────────
|
||||
|
||||
@@ -167,7 +158,7 @@ id: "aidx"
|
||||
|
||||
# Job rate limiter
|
||||
# deliverJobPerSec: 128
|
||||
# inboxJobPerSec: 32
|
||||
# inboxJobPerSec: 16
|
||||
|
||||
# Job attempts
|
||||
# deliverJobMaxAttempts: 12
|
||||
|
@@ -27,7 +27,7 @@ spec:
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
- name: postgres
|
||||
image: postgres:15-alpine
|
||||
image: postgres:14-alpine
|
||||
env:
|
||||
- name: POSTGRES_USER
|
||||
value: "example-misskey-user"
|
||||
@@ -38,7 +38,7 @@ spec:
|
||||
ports:
|
||||
- containerPort: 5432
|
||||
- name: redis
|
||||
image: redis:7-alpine
|
||||
image: redis:alpine
|
||||
ports:
|
||||
- containerPort: 6379
|
||||
volumes:
|
||||
|
@@ -54,7 +54,6 @@ describe('After setup instance', () => {
|
||||
cy.get('[data-cy-signup]').click();
|
||||
cy.get('[data-cy-signup-rules-continue]').should('be.disabled');
|
||||
cy.get('[data-cy-signup-rules-notes-agree] [data-cy-switch-toggle]').click();
|
||||
cy.get('[data-cy-modal-dialog-ok]').click();
|
||||
cy.get('[data-cy-signup-rules-continue]').should('not.be.disabled');
|
||||
cy.get('[data-cy-signup-rules-continue]').click();
|
||||
|
||||
@@ -79,7 +78,6 @@ describe('After setup instance', () => {
|
||||
cy.get('[data-cy-signup]').click();
|
||||
cy.get('[data-cy-signup-rules-continue]').should('be.disabled');
|
||||
cy.get('[data-cy-signup-rules-notes-agree] [data-cy-switch-toggle]').click();
|
||||
cy.get('[data-cy-modal-dialog-ok]').click();
|
||||
cy.get('[data-cy-signup-rules-continue]').should('not.be.disabled');
|
||||
cy.get('[data-cy-signup-rules-continue]').click();
|
||||
|
||||
|
@@ -1,4 +1,3 @@
|
||||
/* flaky
|
||||
describe('After user signed in', () => {
|
||||
beforeEach(() => {
|
||||
cy.resetState();
|
||||
@@ -68,4 +67,3 @@ describe('After user signed in', () => {
|
||||
buildWidgetTest('aiscript');
|
||||
buildWidgetTest('aichan');
|
||||
});
|
||||
*/
|
||||
|
@@ -1,42 +0,0 @@
|
||||
version: "3"
|
||||
|
||||
# このconfigは、 dockerでMisskey本体を起動せず、 redisとpostgresql などだけを起動します
|
||||
|
||||
services:
|
||||
redis:
|
||||
restart: always
|
||||
image: redis:7-alpine
|
||||
ports:
|
||||
- "6379:6379"
|
||||
volumes:
|
||||
- ./redis:/data
|
||||
healthcheck:
|
||||
test: "redis-cli ping"
|
||||
interval: 5s
|
||||
retries: 20
|
||||
|
||||
db:
|
||||
restart: always
|
||||
image: postgres:15-alpine
|
||||
ports:
|
||||
- "5432:5432"
|
||||
env_file:
|
||||
- .config/docker.env
|
||||
volumes:
|
||||
- ./db:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"
|
||||
interval: 5s
|
||||
retries: 20
|
||||
|
||||
# meilisearch:
|
||||
# restart: always
|
||||
# image: getmeili/meilisearch:v1.3.4
|
||||
# environment:
|
||||
# - MEILI_NO_ANALYTICS=true
|
||||
# - MEILI_ENV=production
|
||||
# env_file:
|
||||
# - .config/meilisearch.env
|
||||
# volumes:
|
||||
# - ./meili_data:/meili_data
|
||||
|
@@ -7,7 +7,6 @@ services:
|
||||
links:
|
||||
- db
|
||||
- redis
|
||||
# - mcaptcha
|
||||
# - meilisearch
|
||||
depends_on:
|
||||
db:
|
||||
@@ -49,39 +48,9 @@ services:
|
||||
interval: 5s
|
||||
retries: 20
|
||||
|
||||
# mcaptcha:
|
||||
# restart: always
|
||||
# image: mcaptcha/mcaptcha:latest
|
||||
# networks:
|
||||
# internal_network:
|
||||
# external_network:
|
||||
# aliases:
|
||||
# - localhost
|
||||
# ports:
|
||||
# - 7493:7493
|
||||
# env_file:
|
||||
# - .config/docker.env
|
||||
# environment:
|
||||
# PORT: 7493
|
||||
# MCAPTCHA_redis_URL: "redis://mcaptcha_redis/"
|
||||
# depends_on:
|
||||
# db:
|
||||
# condition: service_healthy
|
||||
# mcaptcha_redis:
|
||||
# condition: service_healthy
|
||||
#
|
||||
# mcaptcha_redis:
|
||||
# image: mcaptcha/cache:latest
|
||||
# networks:
|
||||
# - internal_network
|
||||
# healthcheck:
|
||||
# test: "redis-cli ping"
|
||||
# interval: 5s
|
||||
# retries: 20
|
||||
|
||||
# meilisearch:
|
||||
# restart: always
|
||||
# image: getmeili/meilisearch:v1.3.4
|
||||
# image: getmeili/meilisearch:v1.1.1
|
||||
# environment:
|
||||
# - MEILI_NO_ANALYTICS=true
|
||||
# - MEILI_ENV=production
|
65
gulpfile.js
Normal file
65
gulpfile.js
Normal file
@@ -0,0 +1,65 @@
|
||||
/**
|
||||
* Gulp tasks
|
||||
*/
|
||||
|
||||
const fs = require('fs');
|
||||
const gulp = require('gulp');
|
||||
const replace = require('gulp-replace');
|
||||
const terser = require('gulp-terser');
|
||||
const cssnano = require('gulp-cssnano');
|
||||
|
||||
const locales = require('./locales');
|
||||
const meta = require('./package.json');
|
||||
|
||||
gulp.task('copy:backend:views', () =>
|
||||
gulp.src('./packages/backend/src/server/web/views/**/*').pipe(gulp.dest('./packages/backend/built/server/web/views'))
|
||||
);
|
||||
|
||||
gulp.task('copy:frontend:fonts', () =>
|
||||
gulp.src('./packages/frontend/node_modules/three/examples/fonts/**/*').pipe(gulp.dest('./built/_frontend_dist_/fonts/'))
|
||||
);
|
||||
|
||||
gulp.task('copy:frontend:tabler-icons', () =>
|
||||
gulp.src('./packages/frontend/node_modules/@tabler/icons-webfont/**/*').pipe(gulp.dest('./built/_frontend_dist_/tabler-icons/'))
|
||||
);
|
||||
|
||||
gulp.task('copy:frontend:locales', cb => {
|
||||
fs.mkdirSync('./built/_frontend_dist_/locales', { recursive: true });
|
||||
|
||||
const v = { '_version_': meta.version };
|
||||
|
||||
for (const [lang, locale] of Object.entries(locales)) {
|
||||
fs.writeFileSync(`./built/_frontend_dist_/locales/${lang}.${meta.version}.json`, JSON.stringify({ ...locale, ...v }), 'utf-8');
|
||||
}
|
||||
|
||||
cb();
|
||||
});
|
||||
|
||||
gulp.task('build:backend:script', () => {
|
||||
return gulp.src(['./packages/backend/src/server/web/boot.js', './packages/backend/src/server/web/bios.js', './packages/backend/src/server/web/cli.js'])
|
||||
.pipe(replace('LANGS', JSON.stringify(Object.keys(locales))))
|
||||
.pipe(terser({
|
||||
toplevel: true
|
||||
}))
|
||||
.pipe(gulp.dest('./packages/backend/built/server/web/'));
|
||||
});
|
||||
|
||||
gulp.task('build:backend:style', () => {
|
||||
return gulp.src(['./packages/backend/src/server/web/style.css', './packages/backend/src/server/web/bios.css', './packages/backend/src/server/web/cli.css', './packages/backend/src/server/web/error.css'])
|
||||
.pipe(cssnano({
|
||||
zindex: false
|
||||
}))
|
||||
.pipe(gulp.dest('./packages/backend/built/server/web/'));
|
||||
});
|
||||
|
||||
gulp.task('build', gulp.parallel(
|
||||
'copy:frontend:locales', 'copy:backend:views', 'build:backend:script', 'build:backend:style', 'copy:frontend:fonts', 'copy:frontend:tabler-icons'
|
||||
));
|
||||
|
||||
gulp.task('default', gulp.task('build'));
|
||||
|
||||
gulp.task('watch', () => {
|
||||
gulp.watch([
|
||||
'./packages/*/src/**/*',
|
||||
], { ignoreInitial: false }, gulp.task('build'));
|
||||
});
|
@@ -1,7 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SPDX-FileCopyrightText: syuilo and other misskey contributors
|
||||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
PORT=$(grep '^port:' /misskey/.config/default.yml | awk 'NR==1{print $2; exit}')
|
||||
curl -s -S -o /dev/null "http://localhost:${PORT}"
|
||||
|
@@ -41,23 +41,17 @@ unfavorite: "إزالة من المفضلة"
|
||||
favorited: "أُضيف إلى المفضلة."
|
||||
alreadyFavorited: "تمت إضافته بالفعل إلى المفضلة."
|
||||
cantFavorite: "تعذرت الإضافة إلى المفضلة."
|
||||
pin: "ثبتها على الصفحة الشخصية"
|
||||
unpin: "فكها من ملفك الشخصي"
|
||||
pin: "دبّسها على الصفحة الشخصية"
|
||||
unpin: "ألغ تدبيسها من ملفك الشخصي"
|
||||
copyContent: "انسخ المحتوى"
|
||||
copyLink: "انسخ الرابط"
|
||||
delete: "حذف"
|
||||
deleteAndEdit: "إزالة وإعادة الصياغة"
|
||||
deleteAndEditConfirm: "أمتأكد من حذف الملاحظة؟ ستفقد كل مشاركاتها، والتفاعلات، والردود عليها."
|
||||
addToList: "أضفه إلى قائمة"
|
||||
addToAntenna: "أضف إلى هوائي"
|
||||
sendMessage: "أرسل رسالة"
|
||||
copyRSS: "انسخ رابط RSS"
|
||||
copyUsername: "انسخ اسم المستخدم"
|
||||
copyUserId: "انسخ معرف المستخدم"
|
||||
copyNoteId: "انسخ معرف الملاحظة"
|
||||
copyFileId: "انسخ معرّف الملف"
|
||||
copyFolderId: "انسخ معرّف المجلد"
|
||||
copyProfileUrl: "انسخ رابط الملف الشخصي"
|
||||
searchUser: "ابحث عن مستخدمين"
|
||||
reply: "رد"
|
||||
loadMore: "عرض المزيد"
|
||||
@@ -112,14 +106,15 @@ cantReRenote: "لا يمكنك إعادة نشر ملاحظة معاد نشره
|
||||
quote: "اقتبس"
|
||||
inChannelRenote: "إعادة نشر في قناة"
|
||||
inChannelQuote: "اقتباس في قناة"
|
||||
pinnedNote: "ملاحظة مثبتة"
|
||||
pinned: "ثبتها على الصفحة الشخصية"
|
||||
pinnedNote: "ملاحظة مدبسة"
|
||||
pinned: "دبّسها على الصفحة الشخصية"
|
||||
you: "أنت"
|
||||
clickToShow: "اضغط للعرض"
|
||||
sensitive: "محتوى حساس"
|
||||
add: "إضافة"
|
||||
reaction: "التفاعلات"
|
||||
reactions: "التفاعلات"
|
||||
reactionSetting: "التفاعلات المراد عرضها في منتقي التفاعلات."
|
||||
reactionSettingDescription2: "اسحب لترتيب ، انقر للحذف ، استخدم \"+\" للإضافة."
|
||||
rememberNoteVisibility: "تذكر إعدادت مدى رؤية الملاحظات"
|
||||
attachCancel: "أزل المرفق"
|
||||
@@ -139,10 +134,8 @@ unblockConfirm: "أمتأكد من إلغاء حجب هذا الحساب؟"
|
||||
suspendConfirm: "أمتأكد من تعليق الحساب؟"
|
||||
unsuspendConfirm: "أمتأكد من إلغاء تعليق؟"
|
||||
selectList: "اختر قائمة"
|
||||
editList: "عدّل القائمة"
|
||||
selectChannel: "اختر قناة"
|
||||
selectAntenna: "اختر هوائيًا"
|
||||
editAntenna: "عدّل الهوائي"
|
||||
selectWidget: "اختر ودجة"
|
||||
editWidgets: "عدّل الودجات"
|
||||
editWidgetsExit: "تم"
|
||||
@@ -213,7 +206,7 @@ blockedUsers: "الحسابات المحجوبة"
|
||||
noUsers: "ليس هناك مستخدمون"
|
||||
editProfile: "تعديل الملف التعريفي"
|
||||
noteDeleteConfirm: "هل تريد حذف هذه الملاحظة؟"
|
||||
pinLimitExceeded: "لا يمكنك تثبيت الملاحظات بعد الآن."
|
||||
pinLimitExceeded: "لا يمكنك تدبيس الملاحظات بعد الآن."
|
||||
intro: "لقد انتهت عملية تنصيب Misskey. الرجاء إنشاء حساب إداري."
|
||||
done: "تمّ"
|
||||
processing: "المعالجة جارية"
|
||||
@@ -312,7 +305,7 @@ copyUrl: "انسخ الرابط"
|
||||
rename: "إعادة التسمية"
|
||||
avatar: "الصورة الرمزية"
|
||||
banner: "الصورة الرأسية"
|
||||
displayOfSensitiveMedia: "عرض المحتوى الحساس"
|
||||
nsfw: "محتوى حساس"
|
||||
whenServerDisconnected: "عند فقدان الاتصال بالخادم"
|
||||
disconnectedFromServer: "قُطِع الإتصال بالخادم"
|
||||
reload: "انعش"
|
||||
@@ -347,21 +340,20 @@ invite: "دعوة"
|
||||
driveCapacityPerLocalAccount: "حصة التخزين لكل مستخدم محلي"
|
||||
driveCapacityPerRemoteAccount: "حصة التخزين لكل مستخدم بعيد"
|
||||
inMb: "بالميغابايت"
|
||||
iconUrl: "رابط الأيقونة"
|
||||
bannerUrl: "رابط صورة اللافتة"
|
||||
backgroundImageUrl: "رابط صورة الخلفية"
|
||||
basicInfo: "المعلومات الأساسية "
|
||||
pinnedUsers: "المستخدمون المثبتون"
|
||||
pinnedUsersDescription: "قائمة المستخدمين المثبتين في لسان \"استكشف\" ، اجعل كل اسم مستخدم في سطر لوحده."
|
||||
pinnedPages: "الصفحات المثبتة"
|
||||
pinnedPagesDescription: "أدخل مسار الصفحات التي تريد تثبيتها في أعلى هذا الموقع، اجعل كل مسار في سطر لوحده."
|
||||
pinnedClipId: "معرّف المشبك المثبت"
|
||||
pinnedNotes: "ملاحظة مثبتة"
|
||||
pinnedUsers: "المستخدمون المدبسون"
|
||||
pinnedUsersDescription: "قائمة المستخدمين المدبسين في لسان \"استكشف\" ، اجعل كل اسم مستخدم في سطر لوحده."
|
||||
pinnedPages: "الصفحات المدبسة"
|
||||
pinnedPagesDescription: "أدخل مسار الصفحات التي تريد تدبيسها في أعلى هذا الموقع، اجعل كل مسار في سطر لوحده."
|
||||
pinnedClipId: "معرّف المشبك المدبس"
|
||||
pinnedNotes: "ملاحظة مدبسة"
|
||||
hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "فعّل hCaptcha"
|
||||
hcaptchaSiteKey: "مفتاح الموقع"
|
||||
hcaptchaSecretKey: "المفتاح السري"
|
||||
mcaptchaSiteKey: "مفتاح الموقع"
|
||||
mcaptchaSecretKey: "المفتاح السري"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "تمكين reCAPTCHA"
|
||||
recaptchaSiteKey: "مفتاح الموقع"
|
||||
@@ -406,7 +398,6 @@ totp: "تطبيق استيثاق"
|
||||
moderator: "مشرِف"
|
||||
moderation: "الإشراف"
|
||||
nUsersMentioned: "{n} مستخدمين أُشير إليهم"
|
||||
securityKeyAndPasskey: "الأمن ومفاتيح الأمان"
|
||||
securityKey: "مفتاح الأمان"
|
||||
lastUsed: "آخر استخدام"
|
||||
lastUsedAt: "آخر استخدام: {t}"
|
||||
@@ -419,6 +410,7 @@ share: "شارِك"
|
||||
notFound: "غير موجود"
|
||||
notFoundDescription: "تعذر العثور على صفحة يقود إليها هذا الرابط."
|
||||
uploadFolder: "المجلد الافتراضي للرفع"
|
||||
cacheClear: "مسح ذاكرة التخزين المؤقت"
|
||||
markAsReadAllNotifications: "وضع جميع الإشعارات كأنها مقروءة"
|
||||
markAsReadAllUnreadNotes: "علّم جميع الملاحظات كمقروءة"
|
||||
markAsReadAllTalkMessages: "علّم جميع الرسائل كمقروءة"
|
||||
@@ -460,7 +452,6 @@ language: "اللغة"
|
||||
uiLanguage: "لغة واجهة المستخدم"
|
||||
aboutX: "عن {x}"
|
||||
emojiStyle: "نمط الوجوه التعبيرية"
|
||||
showNoteActionsOnlyHover: "أظهر الإجراءات عند التمرير فوق الملاحظة"
|
||||
noHistory: "السجل فارغ"
|
||||
signinHistory: "تاريخ تسجيل الدخول"
|
||||
doing: "انتظر لحظة"
|
||||
@@ -493,12 +484,10 @@ objectStoragePrefix: "البادئة"
|
||||
objectStoragePrefixDesc: "ستُحفظ الملفات في مجلدات تحوي اسماءها هذه البادئة."
|
||||
objectStorageEndpoint: "نقطة النهاية"
|
||||
objectStorageRegion: "المنطقة"
|
||||
objectStorageRegionDesc: "حدد منطقة مثل \"xx-east-1\". إذا كانت خدمتك لا تميز بين المناطق استخدم \"us-east-1\" أو اتركها فارغة إذا كنت تستخدم متغيرات البيئة أو ملفات ضبط AWS."
|
||||
objectStorageUseSSL: "استخدم SSL"
|
||||
objectStorageUseSSLDesc: "عطل هذا الخيار إذا لم ترد استخدام API عبر HTTPS"
|
||||
objectStorageUseProxy: "اتصل عبر وكيل"
|
||||
objectStorageUseProxyDesc: "عطل هذا الخيار إذا لم ترد استخدام API عبر وكيل"
|
||||
objectStorageSetPublicRead: "عينها ك\"علنية\" عند الرفع"
|
||||
serverLogs: "سجلات الخادم"
|
||||
deleteAll: "حذف الكل"
|
||||
showFixedPostForm: "أظهر نموذج الكتابة في أعلى الصفحة"
|
||||
@@ -542,7 +531,6 @@ accountDeletedDescription: "حُذف هذا الحساب."
|
||||
menu: "القائمة"
|
||||
divider: "فاصل"
|
||||
addItem: "إضافة عنصر"
|
||||
rearrange: "أعد الترتيب"
|
||||
relays: "المُرَحلات"
|
||||
addRelay: "إضافة مُرحّل"
|
||||
inboxUrl: "رابط صندوق الوارد"
|
||||
@@ -566,7 +554,6 @@ leaveConfirm: "لديك تغييرات غير محفوظة. أتريد المت
|
||||
manage: "إدارة "
|
||||
plugins: "الإضافات"
|
||||
preferencesBackups: "النُسخ الاحتياطية للإعدادات"
|
||||
useBlurEffectForModal: "استخدم تأثير الطمس في المشروط"
|
||||
useFullReactionPicker: "استخدم الحجم الكامل لمنتقي التفاعلات"
|
||||
width: "العرض"
|
||||
height: "الإرتفاع"
|
||||
@@ -642,9 +629,7 @@ clip: "مِشبك"
|
||||
createNew: "أنشِئ جديد"
|
||||
optional: "اختياري"
|
||||
createNewClip: "أنشئ مِشبكَا جديدًا"
|
||||
confirmToUnclipAlreadyClippedNote: "هذه الملاحظة تنتمي للمشبك {name} سلفًا، أتريد حذفها منه⸮"
|
||||
public: "علني"
|
||||
private: "خاص"
|
||||
i18nInfo: "يترجم متطوعون ميسكي إلى عدة لغات، يمكنك المساعدة عبر {link}"
|
||||
manageAccessTokens: "إدارة رموز الوصول"
|
||||
accountInfo: "معلومات الحساب"
|
||||
@@ -665,7 +650,6 @@ driveFilesCount: "عدد الملفات في قرص التخزين"
|
||||
driveUsage: "المستغل من قرص التخزين"
|
||||
noCrawle: "ارفض فهرسة زاحف الويب"
|
||||
noCrawleDescription: "يطلب من محركات البحث ألّا يُفهرسوا ملفك الشخصي وملاحظات وصفحاتك وما شابه."
|
||||
lockedAccountInfo: "ستكون هذه الملاحظة مرئية للجميع مالم تحدد مرئتيها إلى \"للمتابعين فقط\""
|
||||
alwaysMarkSensitive: "علّم افتراضيًا جميع ملاحظاتي كذات محتوى حساس"
|
||||
loadRawImages: "حمّل الصور الأصلية بدلًا من المصغرات"
|
||||
disableShowingAnimatedImages: "لا تشغّل الصور المتحركة"
|
||||
@@ -684,8 +668,6 @@ developer: "المطور"
|
||||
makeExplorable: "أظهر الحساب في صفحة \"استكشاف\""
|
||||
makeExplorableDescription: "بتعطيل هذا الخيار لن يظهر حسابك في صفحة \"استكشاف\""
|
||||
showGapBetweenNotesInTimeline: "أظهر فجوات بين المشاركات في الخيط الزمني"
|
||||
left: "يسار"
|
||||
center: "وسط"
|
||||
wide: "عريض"
|
||||
narrow: "رفيع"
|
||||
reloadToApplySetting: "سيُطبق هذا الإعداد بعد إعادة تحميل الصفحة، أتريد إعادة تحميلها الآن؟"
|
||||
@@ -723,7 +705,6 @@ editCode: "حرر الشفرة"
|
||||
apply: "تطبيق"
|
||||
receiveAnnouncementFromInstance: "استلم إشعارات من هذا المثيل"
|
||||
emailNotification: "إشعارات البريد الكتروني"
|
||||
publish: "علني"
|
||||
inChannelSearch: "ابحث عن قناة"
|
||||
useReactionPickerForContextMenu: "افتح منتقي التفاعلات عند النقر بالزر الأيمن"
|
||||
typingUsers: "{users} يكتب(ون)..."
|
||||
@@ -736,7 +717,7 @@ unlikeConfirm: "أتريد إلغاء إعجابك؟"
|
||||
fullView: "ملء الشاشة"
|
||||
quitFullView: "اخرج من وضع ملء للشاشة"
|
||||
addDescription: "أضف وصفًا"
|
||||
userPagePinTip: "لعرض ملاحظة هنا اختر \"ثبتها على الصفحة الشخصية\" من قائمة تلك الملاحظة."
|
||||
userPagePinTip: "لعرض ملاحظة هنا اختر \"دبسها على الصفحة الشخصية\" من قائمة تلك الملاحظة."
|
||||
notSpecifiedMentionWarning: "في الملاحظة ذكر لمستخدمين لن يستلموها."
|
||||
info: "عن"
|
||||
userInfo: "معلومات المستخدم"
|
||||
@@ -763,7 +744,6 @@ noMaintainerInformationWarning: "لم تُضبط معلومات المدير"
|
||||
noBotProtectionWarning: "لم تضبط الحماية من الحسابات الآلية"
|
||||
configure: "اضبط"
|
||||
postToGallery: "انشر في المعرض"
|
||||
postToHashtag: "انشر بهذا الوسم"
|
||||
gallery: "المعرض"
|
||||
recentPosts: "المشاركات الحديثة"
|
||||
popularPosts: "المشاركات المتداولة"
|
||||
@@ -796,9 +776,7 @@ translate: "ترجم"
|
||||
translatedFrom: "تُرجم من {x}"
|
||||
accountDeletionInProgress: "حذف الحساب جارٍ"
|
||||
usernameInfo: "الاسم الذي يميزك عن بافي مستخدمي هذا الخادم، يمكنك استخدام الحروف اللاتينية (a~z, A~Z) والأرقام (0~9) والشرطة السفلية (_). لا يمكنك تغييره بعد تسجيله."
|
||||
devMode: "وضع المُطوّر"
|
||||
keepCw: "أبقِ على تحذيرات المحتوى"
|
||||
pubSub: "حسابات Pub/Sub"
|
||||
lastCommunication: "آخر تواصل"
|
||||
resolved: "عولج"
|
||||
unresolved: "لم يعالج"
|
||||
@@ -806,8 +784,6 @@ breakFollow: "إلغاء الاشتراك"
|
||||
breakFollowConfirm: "أمتأكد من إزالة المتابِع ؟"
|
||||
itsOn: "مفعّل"
|
||||
itsOff: "معطّل"
|
||||
on: "مفعل"
|
||||
off: "معطل"
|
||||
emailRequiredForSignup: "عنوان البريد الإلكتروني إلزامي للتسجيل"
|
||||
unread: "غير مقروءة"
|
||||
filter: "رشّح"
|
||||
@@ -818,6 +794,8 @@ makeReactionsPublicDescription: "هذا سيجعل قائمة تفاعلاتك
|
||||
classic: "تقليدي"
|
||||
muteThread: "اكتم النقاش"
|
||||
unmuteThread: "ارفع الكتم عن النقاش"
|
||||
ffVisibility: "مرئية المتابِعين/المتابَعين"
|
||||
ffVisibilityDescription: "يسمح لك بتحديد من يمكنهم رؤية متابِعيك ومتابَعيك."
|
||||
continueThread: "اعرض بقية النقاش"
|
||||
deleteAccountConfirm: "سيحذف حسابك نهائيًا، أتريد المتابعة؟"
|
||||
incorrectPassword: "كلمة السر خاطئة."
|
||||
@@ -842,9 +820,6 @@ oneDay: "يوم"
|
||||
oneWeek: "أسبوع"
|
||||
oneMonth: "شهر"
|
||||
failedToFetchAccountInformation: "تعذر جلب معلومات الحساب"
|
||||
cropImage: "اقتصاص الصورة"
|
||||
cropImageAsk: "أتريد اقتصاص هذه الصورة"
|
||||
cropYes: "اقتص"
|
||||
cropNo: "استخدمها كما هي"
|
||||
file: "الملفات"
|
||||
recentNHours: "آخر {n} ساعة"
|
||||
@@ -852,23 +827,19 @@ recentNDays: "آخر {n} أيام"
|
||||
noEmailServerWarning: "خادم البريد غير مضبوط."
|
||||
thereIsUnresolvedAbuseReportWarning: "توجد بلاغات غير معالجة."
|
||||
recommended: "مقترح"
|
||||
check: "التحقق"
|
||||
driveCapOverrideLabel: "غيّر حجم قرص التخزين لهذا المستخدم"
|
||||
driveCapOverrideCaption: "أعد الحجم إلى القيمة الافتراضية بإدخال 0 أو أقل."
|
||||
requireAdminForView: "لاستعراض هذه الصفحة وجب عليك الولوج كمدير."
|
||||
isSystemAccount: "حساب أنشأه النظام ويُدار من قِبله."
|
||||
typeToConfirm: "أدخل {x} للتأكيد"
|
||||
deleteAccount: "احذف الحساب"
|
||||
document: "التوثيق"
|
||||
numberOfPageCache: "عدد الصفحات المخزنة مؤقتًا"
|
||||
numberOfPageCacheDescription: "رفع الرقم سيسحن تجربة المستخدم لكن سيرفع استهلاك الذاكرة."
|
||||
logoutConfirm: "أتريد الخروج؟"
|
||||
lastActiveDate: "آخر استخدام"
|
||||
statusbar: "شريط الحالة"
|
||||
pleaseSelect: "حدد خيارًا"
|
||||
reverse: "اقلب"
|
||||
colored: "ملوّن"
|
||||
refreshInterval: "مهلة التحديث"
|
||||
label: "التسمية"
|
||||
type: "نوع"
|
||||
speed: "سرعة"
|
||||
@@ -876,15 +847,11 @@ slow: "بطيء"
|
||||
fast: "سريع"
|
||||
sensitiveMediaDetection: "التعرف على المحتوى الحساس"
|
||||
localOnly: "المحلي فقط"
|
||||
remoteOnly: "بُعدي فقط"
|
||||
failedToUpload: "فشل الرفع"
|
||||
cannotUploadBecauseInappropriate: "تعذر رفع الملف لوجود محتوى حساس فيه."
|
||||
cannotUploadBecauseNoFreeSpace: "تعذر رفع الملف لنقص مساحة التخزين."
|
||||
cannotUploadBecauseExceedsFileSizeLimit: "تعذر رفع الملف بسبب تجاوز حجمه للحد المسموح"
|
||||
beta: "بيتا"
|
||||
enableAutoSensitive: "تعيين تلقائي كمحتوى حساس NSFW"
|
||||
enableAutoSensitiveDescription: "عند الاستطاعة يسمح باكتشاف المحتوى حساس NSFW تلقائيًا في الوسائط باستخدام تعلم الآلة ووسمها تبعًا لذلك. قد يكون هذا الخيار مفعلا من جهة الخادم وسيعمل حتى وان عُطل."
|
||||
activeEmailValidationDescription: "يتحقق من صحة عنوان البريد الإلكتروني بشكل أكثر حزمًا وذلك عبر تحديد ما إذا كان عنوان بريد إلكتروني مؤقت وإمكانية التواصل معه. إذا لم يحدد هذا الخيار فسيتحقق من نسق عنوان البريد الإلكتروني."
|
||||
navbar: "شريط التنقل"
|
||||
shuffle: "خلط"
|
||||
account: "الحسابات"
|
||||
@@ -896,33 +863,22 @@ pushNotificationAlreadySubscribed: "إرسال الإشعارات مفعل سل
|
||||
pushNotificationNotSupported: "متصفحك لا يدعم إرسال الإشعارات أو المثيل لا يدعمها."
|
||||
sendPushNotificationReadMessage: "احذف الإشعارات فور قراءتها"
|
||||
sendPushNotificationReadMessageCaption: "هذا قد يزيد من معدل استهلاك الطاقة لجهازك."
|
||||
windowMaximize: "املأ الشاشة"
|
||||
windowRestore: "استرجاع"
|
||||
caption: "التعليق التوضيحي"
|
||||
loggedInAsBot: "والج كآلي"
|
||||
tools: "أدوات"
|
||||
cannotLoad: "تعذر التحميل"
|
||||
numberOfProfileView: "مشاهدات الملف الشخصي"
|
||||
like: "أعجبني"
|
||||
unlike: "ألغِ الإعجاب"
|
||||
numberOfLikes: "الإعجابات"
|
||||
show: "المظهر"
|
||||
neverShow: "لا تظهره مجددًا"
|
||||
remindMeLater: "ربما لاحقا"
|
||||
didYouLikeMisskey: "هل أعجبك ميسكي؟"
|
||||
pleaseDonate: "يستخدم {host} البرمجية الحرة ميسكي. نتمنى أن تتبرعوا للمشروع مما سيسمح لنا متابعة تطويره!"
|
||||
roles: "الأدوار"
|
||||
role: "الدور"
|
||||
noRole: "لم يُعثر على دور"
|
||||
normalUser: "مستخدم عادي"
|
||||
undefined: "غير معرّف"
|
||||
assign: "أسند"
|
||||
unassign: "ألغ الإسناد"
|
||||
color: "اللون"
|
||||
manageCustomEmojis: "إدارة الإيموجي المخصصة"
|
||||
youCannotCreateAnymore: "وصلت لسقف الإنشاء."
|
||||
cannotPerformTemporary: "غير متاح مؤقتاً"
|
||||
invalidParamError: "معاملات غير صالحة"
|
||||
permissionDeniedError: "رُفضة العملية"
|
||||
preset: "إعدادات مسبقة"
|
||||
selectFromPresets: "اختر من الإعدادات المسبقة"
|
||||
@@ -944,27 +900,14 @@ cannotBeChangedLater: "لا يمكن تغييره لاحقًا."
|
||||
reactionAcceptance: "قبول التفاعلات"
|
||||
rolesAssignedToMe: "الأدوار المسندة إلي"
|
||||
resetPasswordConfirm: "هل تريد إعادة تعيين كلمة السر؟"
|
||||
license: "الرخصة"
|
||||
unfavoriteConfirm: "أتريد إزالتها من المفضلة؟"
|
||||
reactionsDisplaySize: "حجم التفاعلات"
|
||||
limitWidthOfReaction: "تصغير حجم التفاعلات"
|
||||
noteIdOrUrl: "معرف الملاحظة أو رابطها"
|
||||
video: "فيديو"
|
||||
videos: "فيديوهات"
|
||||
dataSaver: "موفر البيانات"
|
||||
accountMigration: "ترحيل الحساب"
|
||||
accountMoved: "نقل هذا المستخدم حسابه:"
|
||||
accountMovedShort: "رُحل هذا الحساب."
|
||||
operationForbidden: "عملية ممنوعة"
|
||||
forceShowAds: "أظهر الإعلانات التجارية دائما"
|
||||
reactionsList: "التفاعلات"
|
||||
renotesList: "إعادات النشر"
|
||||
notificationDisplay: "إشعارات"
|
||||
leftTop: "أعلى اليسار"
|
||||
rightTop: "أعلى اليمين"
|
||||
leftBottom: "أسفل اليسار"
|
||||
rightBottom: "أسفل اليمين"
|
||||
stackAxis: "اتجاه التكديس"
|
||||
vertical: "عمودي"
|
||||
horizontal: "جانبي"
|
||||
position: "الموضع"
|
||||
@@ -974,123 +917,9 @@ pleaseAgreeAllToContinue: "للمتابعة وافق على الحقول أعل
|
||||
continue: "متابعة"
|
||||
preservedUsernames: "أسماء المستخدمين المحجوزة"
|
||||
preservedUsernamesDescription: "قائمة بأسماء المستخدمين المحجوزة كلٌ في سطر. لن يُقبل التسجيل بهذه الأسماء وستبقى محصورة على التسجيل اليدوي بواسطة المديرين. لن يتأثر المستخدمون الذين يملكون هذه الأسماء سلفًا."
|
||||
createNoteFromTheFile: "أنشئ ملاحظة من هذا الملف"
|
||||
archive: "الأرشيف"
|
||||
channelArchiveConfirmTitle: "أتريد أرشفت {name}؟"
|
||||
channelArchiveConfirmDescription: "لن يمكنك نشر ملاحظات في القناة المأرشفة ولن تظهر في قائمة القنوات ولا في نتائج البحث."
|
||||
thisChannelArchived: "أُرشفت هذه القناة."
|
||||
displayOfNote: "عرض الملاحظة"
|
||||
initialAccountSetting: "إعداد الملف الشخصي"
|
||||
youFollowing: "متابَع"
|
||||
preventAiLearning: "منع استخدام البيانات في تعليم الآلة"
|
||||
options: "خيارات"
|
||||
specifyUser: "مستخدم محدد"
|
||||
failedToPreviewUrl: "تتعذر المعاينة"
|
||||
update: "حدِّث"
|
||||
rolesThatCanBeUsedThisEmojiAsReaction: "الأدوار التي يُسمح لأصحابها استخدام هذا اإيموجي في اللتفاعل"
|
||||
rolesThatCanBeUsedThisEmojiAsReactionEmptyDescription: "إذا لم تحدد دورًا يمكن للجميع استخدام هذا الإيموجي في التفاعل."
|
||||
rolesThatCanBeUsedThisEmojiAsReactionPublicRoleWarn: "يجب أن تكون الأدوار علنية."
|
||||
cancelReactionConfirm: "أتريد حذف تفاعلك؟"
|
||||
changeReactionConfirm: "أتريد تعديل تفاعلك؟"
|
||||
later: "لاحقاً"
|
||||
goToMisskey: "لميسكي"
|
||||
additionalEmojiDictionary: "قواميس إيموجي إضافية"
|
||||
installed: "مُثبت"
|
||||
enableServerMachineStats: "نشر إحصائيات عتاد الخادم"
|
||||
turnOffToImprovePerformance: "تفعيله قد يزيد الأداء."
|
||||
createInviteCode: "ولِّد دعوة"
|
||||
inviteCodeCreated: "ولِّدت دعوة"
|
||||
inviteLimitExceeded: "وصلتَ لحد عدد الدعوات المسموح لك توليدها."
|
||||
createLimitRemaining: "حد عدد الدعوات: {limit} دعوة"
|
||||
expirationDate: "تاريخ انتهاء الصلاحية"
|
||||
noExpirationDate: "لا نهاية لصلاحيتها"
|
||||
inviteCodeUsedAt: "اُستخدم رمز الدعوة في"
|
||||
registeredUserUsingInviteCode: "اِستخدم رمز الدعوة"
|
||||
unused: "غير مستعمَل"
|
||||
expired: "منتهية صلاحيته"
|
||||
icon: "الصورة الرمزية"
|
||||
replies: "رد"
|
||||
renotes: "أعد النشر"
|
||||
flip: "اقلب"
|
||||
lastNDays: "آخر {n} أيام"
|
||||
_initialAccountSetting:
|
||||
accountCreated: "نجح إنشاء حسابك!"
|
||||
letsStartAccountSetup: "إذا كنت جديدًا لنعدّ حسابك الشخصي."
|
||||
letsFillYourProfile: "أولًا لنعد ملفك الشخصي."
|
||||
profileSetting: "إعدادات الملف الشخصي"
|
||||
privacySetting: "إعدادات الخصوصية"
|
||||
theseSettingsCanEditLater: "يمكنك تغيير هذه الإعدادات لاحقًا."
|
||||
skipAreYouSure: "أتريد تخطي إعداد الملف الشخصي؟"
|
||||
laterAreYouSure: "أتريد إعداد الملف الشخصي لاحقًا؟"
|
||||
_serverRules:
|
||||
description: "مجموعة من القواعد لعرضها عند التسجيل، من المستحسن كتابة ملخصٍ للشروط الخدمة."
|
||||
_accountMigration:
|
||||
moveFrom: "انقل حسابًا آخر لهذا الحساب"
|
||||
moveFromLabel: "الحساب الأصلي #{n}"
|
||||
moveTo: "انقل هذا الحساب لحساب آخر"
|
||||
moveToLabel: "الحساب الوجهة:"
|
||||
moveCannotBeUndone: "لا يمكن التراجع عن نقل الحساب."
|
||||
movedTo: "الحساب الوجهة:"
|
||||
_achievements:
|
||||
_types:
|
||||
_notes1:
|
||||
description: "انشر ملاحظتك الأولى"
|
||||
flavor: "تمتع باستخدام ميسكي!"
|
||||
_notes10:
|
||||
title: "بعض الملاحظات"
|
||||
description: "انشر 10 ملاحظات"
|
||||
_notes100:
|
||||
title: "كثير من الملاحظات"
|
||||
description: "انشر 100 ملاحظة"
|
||||
_notes500:
|
||||
description: "انشر 500 ملاحظة"
|
||||
_notes1000:
|
||||
title: "جبل ملاحظات"
|
||||
description: "انشر 1000 ملاحظة"
|
||||
_notes5000:
|
||||
description: "انشر 5000 ملاحظة"
|
||||
_notes10000:
|
||||
description: "انشر 10000 ملاحظة"
|
||||
_notes20000:
|
||||
title: "أريد...ملاحظات...أكثر"
|
||||
description: "انشر 20000 ملاحظة"
|
||||
_notes30000:
|
||||
title: "ملاحظات وملاحظات وملاحظات"
|
||||
description: "انشر 30000 ملاحظة"
|
||||
_notes40000:
|
||||
title: "مصنع ملاحظات"
|
||||
description: "انشر 40000 ملاحظة"
|
||||
_notes50000:
|
||||
title: "كوكب ملاحظات"
|
||||
description: "انشر 50000 ملاحظة"
|
||||
_notes60000:
|
||||
title: "نجم ملاحظات"
|
||||
description: "انشر 60000 ملاحظة"
|
||||
_notes70000:
|
||||
title: "ثقب أسود للملاحظات"
|
||||
description: "انشر 70000 ملاحظة"
|
||||
_notes80000:
|
||||
title: "مجرة ملاحظات"
|
||||
description: "انشر 80000 ملاحظة"
|
||||
_notes90000:
|
||||
title: "كوْن ملاحظات"
|
||||
description: "انشر 90000 ملاحظة"
|
||||
_notes100000:
|
||||
title: "كل ملاحظاتك لنا"
|
||||
description: "انشر 100000 ملاحظة"
|
||||
flavor: "حقًا لديك الكثير من القصص"
|
||||
_login3:
|
||||
title: "مبتدأ I"
|
||||
_noteFavorited1:
|
||||
description: "فضًِل ملاحظتك الأولى"
|
||||
_myNoteFavorited1:
|
||||
title: "ساعٍ للنجوم"
|
||||
description: "أعجب شخص آخر بإحدى ملاحظاتك"
|
||||
_profileFilled:
|
||||
title: "مستعد"
|
||||
description: "أعدّ حسابك"
|
||||
_markedAsCat:
|
||||
title: "أنا قط"
|
||||
_role:
|
||||
new: "دور جديد"
|
||||
edit: "حرر الأدوار"
|
||||
@@ -1098,7 +927,6 @@ _role:
|
||||
description: "وصف الدور"
|
||||
permission: "أذونات الدور"
|
||||
assignTarget: "نوع الإسناد"
|
||||
condition: "الشرط"
|
||||
options: "خيارات"
|
||||
policies: "السياسة العامة"
|
||||
priority: "الأولوية"
|
||||
@@ -1108,7 +936,6 @@ _role:
|
||||
high: "عالية"
|
||||
_options:
|
||||
canManageCustomEmojis: "إدارة الإيموجي المخصصة"
|
||||
pinMax: "حد عدد الملاحظات المثبتة"
|
||||
_condition:
|
||||
isLocal: "مستخدم محلي"
|
||||
isRemote: "مستخدم بعيد"
|
||||
@@ -1154,10 +981,6 @@ _plugin:
|
||||
install: "ثبّت إضافات"
|
||||
installWarn: "رجاءً لا تثبت إضافات غير موثوقة."
|
||||
manage: "إدارة الإضافات"
|
||||
viewSource: "اظهر المصدر"
|
||||
_preferencesBackups:
|
||||
createdAt: "تم إنشاؤه: {date} {time}"
|
||||
updatedAt: "آخر تحديث: {date} {time}"
|
||||
_registry:
|
||||
scope: "الحيّز"
|
||||
key: "مفتاح"
|
||||
@@ -1173,6 +996,10 @@ _aboutMisskey:
|
||||
donate: "تبرع لميسكي"
|
||||
morePatrons: "نحن نقدر الدعم الذي قدمه العديد من الأشخاص الذين لم نذكرهم. شكرًا لكم 🥰"
|
||||
patrons: "الداعمون"
|
||||
_nsfw:
|
||||
respect: "اخف الوسائط ذات المحتوى الحساس"
|
||||
ignore: "اعرض الوسائط ذات المحتوى الحساس"
|
||||
force: "اخف كل الوسائط"
|
||||
_instanceTicker:
|
||||
none: "لا تظهره بتاتًا"
|
||||
remote: "أظهر للمستخدمين البِعاد"
|
||||
@@ -1198,6 +1025,11 @@ _wordMute:
|
||||
muteWords: "الكلمات المحظورة"
|
||||
muteWordsDescription: "افصل بينهم بمسافة لاستخدام معامل \"و\" أو بسطر لاستخدام معامل \"أو\"."
|
||||
muteWordsDescription2: "احصر الكلمات المفتاحية بين بين شرطتين مائلتين لاستخدامها كتعابير نمطية"
|
||||
softDescription: "اخف الملاحظات التي تستوف الشروط من الخيط الزمني."
|
||||
hardDescription: "اخف الملاحظات التي تستوف الشروط من الخيط الزمني.بالإضافة إلى أن هذه الملاحظات ستبقى مخفية حتى وإن تغيرت الشروط."
|
||||
soft: "لينة"
|
||||
hard: "قاسية"
|
||||
mutedNotes: "الملاحظات المكتومة"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "هذه سيحجب كل ملاحظات الخوادم المحجوبة ومشاركاتها والردود على تلك الملاحظات حتى وإن كانت من خادم غير محجوب."
|
||||
instanceMuteDescription2: "مدخلة لكل سطر"
|
||||
@@ -1257,6 +1089,8 @@ _sfx:
|
||||
note: "الملاحظات"
|
||||
noteMy: "ملاحظتي"
|
||||
notification: "الإشعارات"
|
||||
chat: "المحادثة"
|
||||
chatBg: "المحادثة (الخلفية)"
|
||||
antenna: "الهوائيات"
|
||||
channel: "إشعارات القنات"
|
||||
_ago:
|
||||
@@ -1417,7 +1251,6 @@ _profile:
|
||||
_exportOrImport:
|
||||
allNotes: "كل الملاحظات"
|
||||
favoritedNotes: " الملاحظات المفضلة"
|
||||
clips: "مِشبك"
|
||||
followingList: "المتابَعون"
|
||||
muteList: "المستخدمون المكتومون"
|
||||
blockingList: "المستخدمون المحجوبون"
|
||||
@@ -1483,7 +1316,7 @@ _pages:
|
||||
url: "رابط الصفحة"
|
||||
summary: "ملخص الصفحة"
|
||||
alignCenter: "توسيط العناصر"
|
||||
hideTitleWhenPinned: "اخف عنوان الصفحة عند تثبيتها في ملف الشخصي"
|
||||
hideTitleWhenPinned: "اخف عنوان الصفحة عند تدبيسها في ملف الشخصي"
|
||||
font: "الخط"
|
||||
fontSerif: "Serif"
|
||||
fontSansSerif: "Sans Serif"
|
||||
@@ -1513,22 +1346,22 @@ _notification:
|
||||
fileUploaded: "نجح رفع الملف"
|
||||
youGotMention: "{name} أشار إليك"
|
||||
youGotReply: "ردّ عليك {name}"
|
||||
youGotQuote: "اقتبس {name} منشورك"
|
||||
youRenoted: "أعاد {name} نشر منشورك"
|
||||
youGotQuote: "اقتبس منك {name}"
|
||||
youRenoted: "إعادت نشر من {name}"
|
||||
youWereFollowed: "يتابعك"
|
||||
youReceivedFollowRequest: "تلقيتَ طلب متابعة"
|
||||
yourFollowRequestAccepted: "قُبل طلب المتابعة"
|
||||
pollEnded: "انتهى الاستطلاع"
|
||||
pollEnded: "ظهرت نتائج الاستطلاع"
|
||||
unreadAntennaNote: "هوائي {name}"
|
||||
_types:
|
||||
all: "الكل"
|
||||
follow: "متابِعون جدد"
|
||||
mention: "الإشارات"
|
||||
reply: "الردود"
|
||||
renote: "أعاد النشر"
|
||||
renote: "أعد النشر"
|
||||
quote: "الاقتباسات"
|
||||
reaction: "التفاعل"
|
||||
receiveFollowRequest: "طلبات المتابعة"
|
||||
reaction: "التفاعلات"
|
||||
receiveFollowRequest: "طلبات المتابعة المتلقاة"
|
||||
followRequestAccepted: "طلبات المتابعة المقبولة"
|
||||
app: "إشعارات التطبيقات المرتبطة"
|
||||
_actions:
|
||||
@@ -1536,35 +1369,26 @@ _notification:
|
||||
reply: "رد"
|
||||
renote: "أعد النشر"
|
||||
_deck:
|
||||
alwaysShowMainColumn: "أظهر العمود الأساسي دائمًا"
|
||||
columnAlign: "محاذاة الأعمدة"
|
||||
addColumn: "إضافة عمود"
|
||||
swapLeft: "التحريك إلى اليسار"
|
||||
swapRight: "التحريك إلى اليمين"
|
||||
swapUp: "التحريك إلى الأعلى"
|
||||
swapDown: "التحريك إلى الأسفل"
|
||||
profile: "حسابي الشخصي"
|
||||
newProfile: "ملف تعريفي جديد"
|
||||
deleteProfile: "حذف الملف التعريفي"
|
||||
alwaysShowMainColumn: "أظهر العمود الرئيسي دائمًا"
|
||||
columnAlign: "حاذِ الأعمدة"
|
||||
addColumn: "أضف عمودًا"
|
||||
swapLeft: "حرّك لليسار"
|
||||
swapRight: "حرّك لليمين"
|
||||
swapUp: "حرّك لأعلى"
|
||||
swapDown: "حرّك لأسفل"
|
||||
profile: "الملف الشخصي"
|
||||
_columns:
|
||||
main: "الرئيسية"
|
||||
widgets: "التطبيقات المُصغّرة"
|
||||
main: "الرئيسي"
|
||||
widgets: "الودجات"
|
||||
notifications: "الإشعارات"
|
||||
tl: "الخط الزمني"
|
||||
tl: "الخيط الزمني"
|
||||
antenna: "الهوائيات"
|
||||
list: "القوائم"
|
||||
channel: "القنوات"
|
||||
mentions: "الإشارات"
|
||||
direct: "مباشرة"
|
||||
_webhookSettings:
|
||||
name: "الاسم"
|
||||
active: "مُفعّل"
|
||||
name: "الإسم"
|
||||
active: "مفعّل"
|
||||
_events:
|
||||
reaction: "عند التفاعل"
|
||||
_moderationLogTypes:
|
||||
suspend: "علِق"
|
||||
resetPassword: "أعد تعيين كلمتك السرية"
|
||||
createInvitation: "ولِّد دعوة"
|
||||
_reversi:
|
||||
total: "المجموع"
|
||||
|
||||
reaction: "عند تلقي تفاعل"
|
||||
|
@@ -2,7 +2,6 @@
|
||||
_lang_: "বাংলা"
|
||||
headlineMisskey: "নোট ব্যাবহার করে সংযুক্ত নেটওয়ার্ক"
|
||||
introMisskey: "স্বাগতম! মিসকি একটি ওপেন সোর্স, ডিসেন্ট্রালাইজড মাইক্রোব্লগিং পরিষেবা। \n\"নোট\" তৈরির মাধ্যমে যা ঘটছে তা সবার সাথে শেয়ার করুন 📡\n\"রিঅ্যাকশন\" গুলির মাধ্যমে যেকোনো নোট সম্পর্কে আপনার অনুভূতি ব্যাক্ত করতে পারেন 👍\nএকটি নতুন দুনিয়া ঘুরে দেখুন 🚀\n"
|
||||
poweredByMisskeyDescription: "{name} হল ওপেন সোর্স প্ল্যাটফর্ম <b>Misskey</b>-এর সার্ভারগুলির একটি৷"
|
||||
monthAndDay: "{day}/{month}"
|
||||
search: "খুঁজুন"
|
||||
notifications: "বিজ্ঞপ্তি"
|
||||
@@ -13,14 +12,12 @@ fetchingAsApObject: "ফেডিভার্স থেকে খবর আন
|
||||
ok: "ঠিক"
|
||||
gotIt: "বুঝেছি"
|
||||
cancel: "বাতিল"
|
||||
noThankYou: "না, ধন্যবাদ"
|
||||
enterUsername: "ইউজারনেম লিখুন"
|
||||
renotedBy: "{user} রিনোট করেছেন"
|
||||
noNotes: "কোন নোট নেই"
|
||||
noNotifications: "কোনো বিজ্ঞপ্তি নেই"
|
||||
instance: "ইন্সট্যান্স"
|
||||
settings: "সেটিংস"
|
||||
notificationSettings: "বিজ্ঞপ্তির সেটিংস"
|
||||
basicSettings: "সাধারণ সেটিংস"
|
||||
otherSettings: "অন্যান্য সেটিংস"
|
||||
openInWindow: "নতুন উইন্ডোতে খুলা"
|
||||
@@ -45,20 +42,12 @@ pin: "পিন করা"
|
||||
unpin: "পিন সরান"
|
||||
copyContent: "বিষয়বস্তু কপি করুন"
|
||||
copyLink: "লিঙ্ক কপি করুন"
|
||||
copyLinkRenote: "রিনোট লিঙ্ক কপি করুন"
|
||||
delete: "মুছুন"
|
||||
deleteAndEdit: "মুছুন এবং সম্পাদনা করুন"
|
||||
deleteAndEditConfirm: "আপনি কি এই নোটটি মুছে এটি সম্পাদনা করার বিষয়ে নিশ্চিত? আপনি এটির সমস্ত রিঅ্যাকশন, রিনোট এবং জবাব হারাবেন।"
|
||||
addToList: "লিস্ট এ যোগ করুন"
|
||||
addToAntenna: "অ্যান্টেনা এ যোগ করুন"
|
||||
sendMessage: "একটি বার্তা পাঠান"
|
||||
copyRSS: "RSS কপি করুন"
|
||||
copyUsername: "ব্যবহারকারীর নাম কপি করুন"
|
||||
copyUserId: "ব্যবহারকারীর ID কপি করুন"
|
||||
copyNoteId: "নোটের ID কপি করুন"
|
||||
copyFileId: "ফাইল ID কপি করুন"
|
||||
copyFolderId: "ফোল্ডার ID কপি করুন"
|
||||
copyProfileUrl: "প্রোফাইল URL কপি করুন"
|
||||
searchUser: "ব্যবহারকারী খুঁজুন..."
|
||||
reply: "জবাব"
|
||||
loadMore: "আরও দেখুন"
|
||||
@@ -111,8 +100,6 @@ renoted: "রিনোট করা হয়েছে"
|
||||
cantRenote: "এই নোটটি রিনোট করা যাবে না।"
|
||||
cantReRenote: "রিনোটকে রিনোট করা যাবে না।"
|
||||
quote: "উদ্ধৃতি"
|
||||
inChannelRenote: "চ্যানেলে রিনোট"
|
||||
inChannelQuote: "চ্যানেলে উদ্ধৃতি"
|
||||
pinnedNote: "পিন করা নোট"
|
||||
pinned: "পিন করা"
|
||||
you: "আপনি"
|
||||
@@ -121,10 +108,7 @@ sensitive: "সংবেদনশীল বিষয়বস্তু"
|
||||
add: "যুক্ত করুন"
|
||||
reaction: "প্রতিক্রিয়া"
|
||||
reactions: "প্রতিক্রিয়া"
|
||||
emojiPicker: "ইমোজি পিকার"
|
||||
pinnedEmojisForReactionSettingDescription: "রিঅ্যাকশন দেয়ার সময় আপনি ইমোজিটিকে পিন করা এবং প্রদর্শিত হওয়ার জন্য সেট করতে পারেন।"
|
||||
pinnedEmojisSettingDescription: "ইমোজি ইনপুট দেয়ার সময় আপনি ইমোজিটিকে পিন করা এবং প্রদর্শিত হওয়ার জন্য সেট করতে পারেন।"
|
||||
emojiPickerDisplay: "পিকার ডিসপ্লে"
|
||||
reactionSetting: "রিঅ্যাকশন পিকারে যেসকল প্রতিক্রিয়া দেখানো হবে"
|
||||
reactionSettingDescription2: "পুনরায় সাজাতে টেনে আনুন, মুছতে ক্লিক করুন, যোগ করতে + টিপুন।"
|
||||
rememberNoteVisibility: "নোটের দৃশ্যমান্যতার সেটিংস মনে রাখুন"
|
||||
attachCancel: "অ্যাটাচমেন্ট সরান "
|
||||
@@ -310,6 +294,7 @@ copyUrl: "URL কপি করুন"
|
||||
rename: "পুনঃনামকরণ"
|
||||
avatar: "প্রোফাইল ছবি"
|
||||
banner: "ব্যানার"
|
||||
nsfw: "সংবেদনশীল বিষয়বস্তু"
|
||||
whenServerDisconnected: "সার্ভারের সাথে সংযোগ বিচ্ছিন্ন হয়ে গেলে"
|
||||
disconnectedFromServer: "সার্ভার থেকে সংযোগ বিচ্ছিন্ন হয়েছে"
|
||||
reload: "আবার লোড করুন"
|
||||
@@ -344,6 +329,7 @@ invite: "আমন্ত্রণ"
|
||||
driveCapacityPerLocalAccount: "প্রত্যেক স্থানীয় ব্যাবহারকারীর জন্য ড্রাইভের জায়গা"
|
||||
driveCapacityPerRemoteAccount: "প্রত্যেক রিমোট ব্যাবহারকারীর জন্য ড্রাইভের জায়গা"
|
||||
inMb: "মেগাবাইটে লিখুন"
|
||||
iconUrl: "আইকনের URL (ফ্যাভিকন, ইত্যাদি)"
|
||||
bannerUrl: "ব্যানার ছবির URL"
|
||||
backgroundImageUrl: "পটভূমির চিত্রের URL"
|
||||
basicInfo: "আপনার ব্যক্তিগত তথ্য"
|
||||
@@ -357,8 +343,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "hCaptcha চালু করুন"
|
||||
hcaptchaSiteKey: "সাইট কী"
|
||||
hcaptchaSecretKey: "সিক্রেট কী"
|
||||
mcaptchaSiteKey: "সাইট কী"
|
||||
mcaptchaSecretKey: "সিক্রেট কী"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "reCAPTCHA চালু করুন"
|
||||
recaptchaSiteKey: "সাইট কী"
|
||||
@@ -411,6 +395,7 @@ share: "শেয়ার"
|
||||
notFound: "পাওয়া যায়নি"
|
||||
notFoundDescription: "এই URL-এর সাথে সম্পর্কিত কোনো পৃষ্ঠা নেই।"
|
||||
uploadFolder: "আপলোডের জন্য ডিফল্ট ফোল্ডার"
|
||||
cacheClear: "ক্যাশ পরিষ্কার করুন"
|
||||
markAsReadAllNotifications: "সমস্ত বিজ্ঞপ্তিগুলি পঠিত হিসাবে চিহ্নিত করুন"
|
||||
markAsReadAllUnreadNotes: "সমস্ত নোটগুলি পঠিত হিসাবে চিহ্নিত করুন"
|
||||
markAsReadAllTalkMessages: "সমস্ত মেসেজ পঠিত হিসাবে চিহ্নিত করুন"
|
||||
@@ -644,7 +629,6 @@ createNew: "নতুন"
|
||||
optional: "প্রয়োজনীয় নয়"
|
||||
createNewClip: "নতুন ক্লিপ তৈরি করুন"
|
||||
public: "সর্বজনীন"
|
||||
private: "ব্যাক্তিগত"
|
||||
i18nInfo: "Misskey স্বেচ্ছাসেবকদের দ্বারা বিভিন্ন ভাষায় অনুবাদ করা হচ্ছে। আপনি {link} এ গিয়ে অনুবাদে সহযোগিতা করতে পারেন।"
|
||||
manageAccessTokens: "অ্যাক্সেস টোকেন পরিচালনা করুন"
|
||||
accountInfo: "অ্যাকাউন্টের তথ্য"
|
||||
@@ -812,6 +796,8 @@ makeReactionsPublicDescription: "আপনার পূর্ববর্তী
|
||||
classic: "ক্লাসিক"
|
||||
muteThread: "থ্রেড মিউট করুন"
|
||||
unmuteThread: "থ্রেড আনমিউট করুন"
|
||||
ffVisibility: "অনুসরণ/অনুসরণকারীদের দৃশ্যমান্যতা"
|
||||
ffVisibilityDescription: "আপনি কাকে অনুসরণ করেন এবং কে আপনাকে অনুসরণ করে, সেটা কারা দেখতে পাবে তা নির্ধারণ করে।"
|
||||
continueThread: "আরো থ্রেড দেখুন"
|
||||
deleteAccountConfirm: "আপনার অ্যাকাউন্ট মুছে ফেলা হবে। ঠিক আছে?"
|
||||
incorrectPassword: "আপনার দেওয়া পাসওয়ার্ডটি ভুল।"
|
||||
@@ -852,10 +838,6 @@ show: "প্রদর্শন"
|
||||
color: "রং"
|
||||
horizontal: "পাশে"
|
||||
youFollowing: "অনুসরণ করা হচ্ছে"
|
||||
icon: "প্রোফাইল ছবি"
|
||||
replies: "জবাব"
|
||||
renotes: "রিনোট"
|
||||
flip: "উল্টান"
|
||||
_role:
|
||||
priority: "অগ্রাধিকার"
|
||||
_priority:
|
||||
@@ -905,7 +887,6 @@ _plugin:
|
||||
install: "প্লাগইন ইন্সটল করুন"
|
||||
installWarn: "অবিশ্বস্ত প্লাগইন ইনস্টল করবেন না।"
|
||||
manage: "প্লাগইন ম্যানেজ করুন"
|
||||
viewSource: "উৎস দেখুন"
|
||||
_registry:
|
||||
scope: "স্কোপ"
|
||||
key: "কী"
|
||||
@@ -921,6 +902,10 @@ _aboutMisskey:
|
||||
donate: "Misskey তে দান করুন"
|
||||
morePatrons: "আরও অনেকে আমাদের সাহায্য করছেন। তাদের সবাইকে ধন্যবাদ 🥰"
|
||||
patrons: "সমর্থনকারী"
|
||||
_nsfw:
|
||||
respect: "স্পর্শকাতর মিডিয়া লুকান"
|
||||
ignore: "স্পর্শকাতর মিডিয়া লুকাবেন না"
|
||||
force: "সকল মিডিয়া লুকান"
|
||||
_instanceTicker:
|
||||
none: "দেখাবেন না"
|
||||
remote: "রিমোট ব্যাবহারকারীদের জন্য দেখান"
|
||||
@@ -948,6 +933,11 @@ _wordMute:
|
||||
muteWords: "নিঃশব্দ করা শব্দগুলি"
|
||||
muteWordsDescription: "স্পেস দিয়ে আলাদা করলে AND শর্ত তৈরি হবে এবং আলাদা লাইনে লিখলে OR শর্ত তৈরি হবে।"
|
||||
muteWordsDescription2: "রেগুলার এক্সপ্রেশন ব্যবহার করতে স্ল্যাশ দিয়ে কীওয়ার্ডকে ঘিরে রাখুন।"
|
||||
softDescription: "টাইমলাইন থেকে নির্দিষ্ট শর্তানুযায়ী নোট লুকিয়ে রাখে।"
|
||||
hardDescription: "নির্দিষ্ট শর্তানুযায়ী নোটগুলিকে টাইমলাইন থেকে বাদ দেয়। আপনি শর্ত পরিবর্তন করলেও যে নোটগুলি যোগ করা হয়নি সেগুলি বাদ দেওয়া হবে।"
|
||||
soft: "নমনীয়"
|
||||
hard: "কঠোর"
|
||||
mutedNotes: "মিউট করা নোটগুলি"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "কনফিগার করা ইন্সট্যান্সের সব নোট এবং রিনোট মিউট করুন, মিউট করা ইন্সট্যান্সের ব্যবহারকারীদের উত্তর সহ।"
|
||||
instanceMuteDescription2: "প্রতিটিকে আলাদা লাইনে লিখুন"
|
||||
@@ -1011,6 +1001,9 @@ _theme:
|
||||
infoFg: "তথ্যের পাঠ্য"
|
||||
infoWarnBg: "ওয়ার্নিং এর পটভূমি"
|
||||
infoWarnFg: "ওয়ার্নিং এর পাঠ্য"
|
||||
cwBg: "CW বাটনের পটভূমি"
|
||||
cwFg: "CW বাটনের পাঠ্য"
|
||||
cwHoverBg: "CW বাটনের পটভূমি (হভার)"
|
||||
toastBg: "বিজ্ঞপ্তির পটভূমি"
|
||||
toastFg: "বিজ্ঞপ্তির পাঠ্য"
|
||||
buttonBg: "বাটনের পটভূমি"
|
||||
@@ -1028,6 +1021,8 @@ _sfx:
|
||||
note: "নোটগুলি"
|
||||
noteMy: "নোট (আপনার)"
|
||||
notification: "বিজ্ঞপ্তি"
|
||||
chat: "চ্যাট"
|
||||
chatBg: "চ্যাট (ব্যাকগ্রাউন্ড)"
|
||||
antenna: "অ্যান্টেনাগুলি"
|
||||
channel: "চ্যানেলের বিজ্ঞপ্তি"
|
||||
_ago:
|
||||
@@ -1050,10 +1045,10 @@ _2fa:
|
||||
alreadyRegistered: "আপনি ইতিমধ্যে একটি 2-ফ্যাক্টর অথেনটিকেশন ডিভাইস নিবন্ধন করেছেন৷"
|
||||
step1: "প্রথমে, আপনার ডিভাইসে {a} বা {b} এর মতো একটি অথেনটিকেশন অ্যাপ ইনস্টল করুন৷"
|
||||
step2: "এরপরে, অ্যাপের সাহায্যে প্রদর্শিত QR কোডটি স্ক্যান করুন।"
|
||||
step2Url: "ডেস্কটপ অ্যাপে, নিম্নলিখিত URL লিখুন:"
|
||||
step3: "অ্যাপে প্রদর্শিত টোকেনটি লিখুন এবং আপনার কাজ শেষ।"
|
||||
step4: "আপনাকে এখন থেকে লগ ইন করার সময়, এইভাবে টোকেন লিখতে হবে।"
|
||||
securityKeyInfo: "আপনি একটি হার্ডওয়্যার সিকিউরিটি কী ব্যবহার করে লগ ইন করতে পারেন যা FIDO2 বা ডিভাইসের ফিঙ্গারপ্রিন্ট সেন্সর বা পিন সমর্থন করে৷"
|
||||
renewTOTPCancel: "না, ধন্যবাদ"
|
||||
_permissions:
|
||||
"read:account": "অ্যাকাউন্টের তথ্য দেখুন"
|
||||
"write:account": "অ্যাকাউন্টের তথ্য সম্পাদন করুন"
|
||||
@@ -1192,7 +1187,6 @@ _profile:
|
||||
changeBanner: "ব্যানার পরিবর্তন করুন"
|
||||
_exportOrImport:
|
||||
allNotes: "সকল নোট"
|
||||
clips: "ক্লিপ"
|
||||
followingList: "অনুসরণ করা হচ্ছে"
|
||||
muteList: "মিউট"
|
||||
blockingList: "ব্লক"
|
||||
@@ -1341,9 +1335,3 @@ _deck:
|
||||
_webhookSettings:
|
||||
name: "নাম"
|
||||
active: "চালু"
|
||||
_moderationLogTypes:
|
||||
suspend: "স্থগিত করা"
|
||||
resetPassword: "পাসওয়ার্ড রিসেট করুন"
|
||||
_reversi:
|
||||
total: "মোট"
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
1248
locales/cs-CZ.yml
1248
locales/cs-CZ.yml
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,2 @@
|
||||
---
|
||||
_lang_: "Dansk"
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
_lang_: "Deutsch"
|
||||
headlineMisskey: "Ein durch Notizen verbundenes Netzwerk"
|
||||
introMisskey: "Willkommen! Misskey ist eine dezentralisierte Open-Source Microblogging-Platform.\nVerfasse „Notizen“ um mitzuteilen, was gerade passiert oder um Ereignisse mit anderen zu teilen. 📡\nMit „Reaktionen“ kannst du außerdem schnell deine Gefühle über Notizen anderer Benutzer zum Ausdruck bringen. 👍\nEine neue Welt wartet auf dich! 🚀"
|
||||
poweredByMisskeyDescription: "{name} ist einer der durch die Open-Source-Plattform <b>Misskey</b> betriebenen Dienste."
|
||||
poweredByMisskeyDescription: "{name} ist einer der durch die Open-Source-Plattform <b>Misskey</b> betriebenen Dienste (meist als \"Misskey-Instanz\" bezeichnet)."
|
||||
monthAndDay: "{day}.{month}."
|
||||
search: "Suchen"
|
||||
notifications: "Benachrichtigungen"
|
||||
@@ -45,20 +45,15 @@ pin: "An dein Profil anheften"
|
||||
unpin: "Von deinem Profil lösen"
|
||||
copyContent: "Inhalt kopieren"
|
||||
copyLink: "Link kopieren"
|
||||
copyLinkRenote: "Renote-Link kopieren"
|
||||
delete: "Löschen"
|
||||
deleteAndEdit: "Löschen und Bearbeiten"
|
||||
deleteAndEditConfirm: "Möchtest du diese Notiz wirklich löschen und bearbeiten? Alle Reaktionen, Renotes und Antworten dieser Notiz werden verloren gehen."
|
||||
addToList: "Zu Liste hinzufügen"
|
||||
addToAntenna: "Zu Antenne hinzufügen"
|
||||
sendMessage: "Nachricht senden"
|
||||
copyRSS: "RSS kopieren"
|
||||
copyUsername: "Benutzernamen kopieren"
|
||||
copyUserId: "Benutzer-ID kopieren"
|
||||
copyNoteId: "Notiz-ID kopieren"
|
||||
copyFileId: "Datei-ID kopieren"
|
||||
copyFolderId: "Ordner-ID kopieren"
|
||||
copyProfileUrl: "Profil-URL kopieren"
|
||||
searchUser: "Nach einem Benutzer suchen"
|
||||
reply: "Antworten"
|
||||
loadMore: "Mehr laden"
|
||||
@@ -75,7 +70,7 @@ import: "Import"
|
||||
export: "Export"
|
||||
files: "Dateien"
|
||||
download: "Herunterladen"
|
||||
driveFileDeleteConfirm: "Möchtest du die Datei „{name}“ wirklich löschen? Einige Inhalte, die diese Datei verwenden, werden auch verschwinden."
|
||||
driveFileDeleteConfirm: "Möchtest du die Datei „{name}“ wirklich löschen? Sie wird in allen Inhalten, die sie verwenden, auch verschwinden."
|
||||
unfollowConfirm: "Möchtest du {name} wirklich nicht mehr folgen?"
|
||||
exportRequested: "Du hast einen Export angefragt. Dies kann etwas Zeit in Anspruch nehmen. Sobald der Export abgeschlossen ist, wird er deiner Drive hinzugefügt."
|
||||
importRequested: "Du hast einen Import angefragt. Dies kann etwas Zeit in Anspruch nehmen."
|
||||
@@ -117,18 +112,16 @@ pinnedNote: "Angeheftete Notiz"
|
||||
pinned: "Angeheftet"
|
||||
you: "Du"
|
||||
clickToShow: "Zum Anzeigen anklicken"
|
||||
sensitive: "Sensibel"
|
||||
sensitive: "NSFW"
|
||||
add: "Hinzufügen"
|
||||
reaction: "Reaktionen"
|
||||
reactions: "Reaktionen"
|
||||
emojiPicker: "Emoji auswählen"
|
||||
pinnedEmojisForReactionSettingDescription: "Wähle die Emojis aus, um sie an zu pinnen"
|
||||
reactionSetting: "In der Reaktionsauswahl anzuzeigende Reaktionen"
|
||||
reactionSettingDescription2: "Ziehe um Anzuordnen, klicke um zu löschen, drücke „+“ um hinzuzufügen"
|
||||
rememberNoteVisibility: "Notizsichtbarkeit merken"
|
||||
attachCancel: "Anhang entfernen"
|
||||
deleteFile: "Datei gelöscht"
|
||||
markAsSensitive: "Als sensibel markieren"
|
||||
unmarkAsSensitive: "Als nicht sensibel markieren"
|
||||
markAsSensitive: "Als NSFW markieren"
|
||||
unmarkAsSensitive: "Als nicht NSFW markieren"
|
||||
enterFileName: "Dateinamen eingeben"
|
||||
mute: "Stummschalten"
|
||||
unmute: "Stummschaltung aufheben"
|
||||
@@ -143,10 +136,8 @@ unblockConfirm: "Möchtest du diese Blockierung wirklich aufheben?"
|
||||
suspendConfirm: "Möchtest du diesen Benutzer wirklich sperren?"
|
||||
unsuspendConfirm: "Möchtest du diesen Benutzer wirklich entsperren?"
|
||||
selectList: "Liste auswählen"
|
||||
editList: "Liste bearbeiten"
|
||||
selectChannel: "Kanal auswählen"
|
||||
selectAntenna: "Antenne auswählen"
|
||||
editAntenna: "Antenne bearbeiten"
|
||||
selectWidget: "Widget auswählen"
|
||||
editWidgets: "Widgets bearbeiten"
|
||||
editWidgetsExit: "Fertig"
|
||||
@@ -159,9 +150,6 @@ addEmoji: "Emoji hinzufügen"
|
||||
settingGuide: "Empfohlene Einstellung"
|
||||
cacheRemoteFiles: "Dateien von fremden Instanzen im Cache speichern"
|
||||
cacheRemoteFilesDescription: "Ist diese Einstellung deaktiviert, so werden Dateien fremder Instanzen direkt von dort geladen. Hierdurch wird Speicherplatz auf diesem Server gespart, aber durch fehlende Generierung von Vorschaubildern mehr Bandbreite verwendet."
|
||||
youCanCleanRemoteFilesCache: "Klicke auf den 🗑️-Knopf der Dateiverwaltungsansicht, um den Cache zu leeren."
|
||||
cacheRemoteSensitiveFiles: "Sensitive Dateien von fremden Instanzen im Cache speichern"
|
||||
cacheRemoteSensitiveFilesDescription: "Ist diese Einstellung deaktiviert, so werden sensitive Dateien fremder Instanzen direkt von dort ohne Zwischenspeicherung geladen."
|
||||
flagAsBot: "Als Bot markieren"
|
||||
flagAsBotDescription: "Aktiviere diese Option, falls dieses Benutzerkonto durch ein Programm gesteuert wird. Falls aktiviert, agiert es als Flag für andere Entwickler zur Verhinderung von endlosen Kettenreaktionen mit anderen Bots und lässt Misskeys interne Systeme dieses Benutzerkonto als Bot behandeln."
|
||||
flagAsCat: "Als Katze markieren"
|
||||
@@ -197,7 +185,6 @@ perHour: "Pro Stunde"
|
||||
perDay: "Pro Tag"
|
||||
stopActivityDelivery: "Senden von Aktivitäten einstellen"
|
||||
blockThisInstance: "Diese Instanz blockieren"
|
||||
silenceThisInstance: "Instanz stummschalten"
|
||||
operations: "Aktionen"
|
||||
software: "Software"
|
||||
version: "Version"
|
||||
@@ -217,8 +204,6 @@ clearCachedFiles: "Cache leeren"
|
||||
clearCachedFilesConfirm: "Sollen alle im Cache gespeicherten Dateien von anderen Instanzen wirklich gelöscht werden?"
|
||||
blockedInstances: "Blockierte Instanzen"
|
||||
blockedInstancesDescription: "Gib die Hostnamen der Instanzen, welche blockiert werden sollen, durch Zeilenumbrüche getrennt an. Blockierte Instanzen können mit dieser instanz nicht mehr kommunizieren."
|
||||
silencedInstances: "Stummgeschaltete Instanzen"
|
||||
silencedInstancesDescription: "Gib die Hostnamen der Instanzen, welche stummgeschaltet werden sollen, durch Zeilenumbrüche getrennt an. Alle Konten dieser Instanzen werden als stummgeschaltet behandelt, können nur noch Follow-Anfragen stellen und wenn nicht gefolgt keine lokalen Konten erwähnen. Blockierte Instanzen sind davon nicht betroffen."
|
||||
muteAndBlock: "Stummschaltungen und Blockierungen"
|
||||
mutedUsers: "Stummgeschaltete Benutzer"
|
||||
blockedUsers: "Blockierte Benutzer"
|
||||
@@ -237,7 +222,7 @@ noJobs: "Keine Jobs vorhanden"
|
||||
federating: "Wird föderiert"
|
||||
blocked: "Blockiert"
|
||||
suspended: "Gesperrt"
|
||||
all: "Alle"
|
||||
all: "Alles"
|
||||
subscribing: "Wird abonniert"
|
||||
publishing: "Wird veröffentlicht"
|
||||
notResponding: "Antwortet nicht"
|
||||
@@ -313,7 +298,6 @@ folderName: "Ordnername"
|
||||
createFolder: "Ordner erstellen"
|
||||
renameFolder: "Ordner umbenennen"
|
||||
deleteFolder: "Ordner löschen"
|
||||
folder: "Ordner"
|
||||
addFile: "Datei hinzufügen"
|
||||
emptyDrive: "Deine Drive ist leer"
|
||||
emptyFolder: "Dieser Ordner ist leer"
|
||||
@@ -327,7 +311,7 @@ copyUrl: "URL kopieren"
|
||||
rename: "Umbenennen"
|
||||
avatar: "Profilbild"
|
||||
banner: "Banner"
|
||||
displayOfSensitiveMedia: "Darstellung sensibler Medien"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "Bei Verbindungsverlust zum Server"
|
||||
disconnectedFromServer: "Die Verbindung zum Server wurde getrennt"
|
||||
reload: "Aktualisieren"
|
||||
@@ -362,6 +346,7 @@ invite: "Einladen"
|
||||
driveCapacityPerLocalAccount: "Drive-Kapazität pro lokalem Benutzerkonto"
|
||||
driveCapacityPerRemoteAccount: "Drive-Kapazität pro Benutzer fremder Instanzen"
|
||||
inMb: "In Megabytes"
|
||||
iconUrl: "Icon-URL (favicon etc)"
|
||||
bannerUrl: "Banner-URL"
|
||||
backgroundImageUrl: "Hintergrundbild-URL"
|
||||
basicInfo: "Grundlegende Informationen"
|
||||
@@ -375,8 +360,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "hCaptcha aktivieren"
|
||||
hcaptchaSiteKey: "Site key"
|
||||
hcaptchaSecretKey: "Secret key"
|
||||
mcaptchaSiteKey: "Site key"
|
||||
mcaptchaSecretKey: "Secret key"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "reCAPTCHA aktivieren"
|
||||
recaptchaSiteKey: "Site key"
|
||||
@@ -419,17 +402,13 @@ aboutMisskey: "Über Misskey"
|
||||
administrator: "Administrator"
|
||||
token: "Token"
|
||||
2fa: "Zwei-Faktor-Authentifizierung"
|
||||
setupOf2fa: "Zweifaktorauthentifizierung einrichten"
|
||||
totp: "Authentifizierungs-App"
|
||||
totpDescription: "Logge dich via Authentifizierungs-App mit Einmalpasswort ein"
|
||||
moderator: "Moderator"
|
||||
moderation: "Moderation"
|
||||
moderationNote: "Moderationsnotiz"
|
||||
addModerationNote: "Moderationsnotiz hinzufügen"
|
||||
moderationLogs: "Moderationsprotokolle"
|
||||
nUsersMentioned: "Von {n} Benutzern erwähnt"
|
||||
securityKeyAndPasskey: "Hardware-Sicherheitsschlüssel und Passkeys"
|
||||
securityKey: "Hardware-Sicherheitsschlüssel"
|
||||
securityKeyAndPasskey: "Security-Tokens und Passkeys"
|
||||
securityKey: "Sicherheitsschlüssel"
|
||||
lastUsed: "Zuletzt benutzt"
|
||||
lastUsedAt: "Zuletzt verwendet: {t}"
|
||||
unregister: "Deaktivieren"
|
||||
@@ -442,6 +421,7 @@ share: "Teilen"
|
||||
notFound: "Nicht gefunden"
|
||||
notFoundDescription: "Es konnte keine Seite unter dieser URL gefunden werden."
|
||||
uploadFolder: "Standardordner für Uploads"
|
||||
cacheClear: "Cache leeren"
|
||||
markAsReadAllNotifications: "Alle Benachrichtigungen als gelesen markieren"
|
||||
markAsReadAllUnreadNotes: "Alle Notizen als gelesen markieren"
|
||||
markAsReadAllTalkMessages: "Alle Chats als gelesen markieren"
|
||||
@@ -538,7 +518,6 @@ serverLogs: "Serverprotokolle"
|
||||
deleteAll: "Alle löschen"
|
||||
showFixedPostForm: "Bereich zum Schreiben neuer Notizen am Anfang der Chronik anzeigen"
|
||||
showFixedPostFormInChannel: "Bereich zum Schreiben neuer Notizen am Anfang der Chronik anzeigen (Kanäle)"
|
||||
withRepliesByDefaultForNewlyFollowed: "Standardmäßig Antworten von neu gefolgten Benutzern in der Chronik anzeigen"
|
||||
newNoteRecived: "Es gibt neue Notizen"
|
||||
sounds: "Töne"
|
||||
sound: "Töne"
|
||||
@@ -548,14 +527,12 @@ showInPage: "In einer Seite anzeigen"
|
||||
popout: "Pop-Up"
|
||||
volume: "Lautstärke"
|
||||
masterVolume: "Gesamtlautstärke"
|
||||
notUseSound: "Gebe kein Ton aus"
|
||||
useSoundOnlyWhenActive: "Gebe nur Ton aus, wenn Misskey aktiv ist"
|
||||
details: "Details"
|
||||
chooseEmoji: "Emoji auswählen"
|
||||
unableToProcess: "Der Vorgang konnte nicht abgeschlossen werden"
|
||||
recentUsed: "Vor kurzem verwendet"
|
||||
install: "Installieren"
|
||||
uninstall: "Deinstallieren"
|
||||
uninstall: "Uninstallieren"
|
||||
installedApps: "Authorisierte Anwendungen"
|
||||
nothing: "Hier gibt es nichts zu sehen"
|
||||
installedDate: "Authorisiert am"
|
||||
@@ -570,10 +547,6 @@ output: "Ausgabe"
|
||||
script: "Skript"
|
||||
disablePagesScript: "AiScript auf Seiten deaktivieren"
|
||||
updateRemoteUser: "Benutzerinformationen aktualisieren"
|
||||
unsetUserAvatar: "Entferne Profilbild"
|
||||
unsetUserAvatarConfirm: "Möchtest du dein Profilbild entfernen?"
|
||||
unsetUserBanner: "Entferne Profilbanner"
|
||||
unsetUserBannerConfirm: "Möchtest du dein Profilbanner entfernen?"
|
||||
deleteAllFiles: "Alle Dateien löschen"
|
||||
deleteAllFilesConfirm: "Möchtest du wirklich alle Dateien löschen?"
|
||||
removeAllFollowing: "Allen gefolgten Benutzern entfolgen"
|
||||
@@ -624,7 +597,6 @@ medium: "Mittel"
|
||||
small: "Klein"
|
||||
generateAccessToken: "Zugriffstoken generieren"
|
||||
permission: "Berechtigungen"
|
||||
adminPermission: "Administratorberechtigung"
|
||||
enableAll: "Alle aktivieren"
|
||||
disableAll: "Alle deaktivieren"
|
||||
tokenRequested: "Zugriff zum Benutzerkonto gewähren"
|
||||
@@ -651,11 +623,11 @@ regexpErrorDescription: "Im regulären Ausdruck deiner {tab}en Wortstummschaltun
|
||||
instanceMute: "Instanzstummschaltungen"
|
||||
userSaysSomething: "{name} hat etwas gesagt"
|
||||
makeActive: "Aktivieren"
|
||||
display: "Anzeigeart"
|
||||
display: "Anzeigen"
|
||||
copy: "Kopieren"
|
||||
metrics: "Metriken"
|
||||
overview: "Übersicht"
|
||||
logs: "Protokolle"
|
||||
logs: "Logs"
|
||||
delayed: "Verzögert"
|
||||
database: "Datenbank"
|
||||
channel: "Kanäle"
|
||||
@@ -673,7 +645,6 @@ behavior: "Verhalten"
|
||||
sample: "Beispiel"
|
||||
abuseReports: "Meldungen"
|
||||
reportAbuse: "Melden"
|
||||
reportAbuseRenote: "Renote melden"
|
||||
reportAbuseOf: "{name} melden"
|
||||
fillAbuseReportDescription: "Bitte gib zusätzliche Informationen zu dieser Meldung an. Falls es sich um eine spezielle Notiz handelt, bitte gib dessen URL an."
|
||||
abuseReported: "Deine Meldung wurde versendet. Vielen Dank."
|
||||
@@ -701,7 +672,6 @@ createNewClip: "Neuen Clip erstellen"
|
||||
unclip: "Aus Clip entfernen"
|
||||
confirmToUnclipAlreadyClippedNote: "Diese Notiz ist bereits im \"{name}\" Clip enthalten. Möchtest du sie aus diesem Clip entfernen?"
|
||||
public: "Öffentlich"
|
||||
private: "Privat"
|
||||
i18nInfo: "Misskey wird durch freiwillige Helfer in viele verschiedene Sprachen übersetzt. Auf {link} kannst du mithelfen."
|
||||
manageAccessTokens: "Zugriffstokens verwalten"
|
||||
accountInfo: "Benutzerkonto-Informationen"
|
||||
@@ -723,10 +693,9 @@ driveUsage: "Drive-Auslastung"
|
||||
noCrawle: "Crawler-Indexierung ablehnen"
|
||||
noCrawleDescription: "Suchmaschinen bitten, die eigene Profilseite, Notizen, Seiten usw. nicht zu indexieren."
|
||||
lockedAccountInfo: "Auch wenn du Follow-Anfragen auf manuelle Bestätigung setzt, wird jede deiner Notizen öffentlich sichtbar sein, sofern du ihre Notizsichtbarkeit nicht auf \"Nur Follower\" setzt."
|
||||
alwaysMarkSensitive: "Medien standardmäßig als sensibel markieren"
|
||||
alwaysMarkSensitive: "Medien standardmäßig als NSFW markieren"
|
||||
loadRawImages: "Anstatt Vorschaubilder immer Originalbilder anzeigen"
|
||||
disableShowingAnimatedImages: "Animierte Bilder nicht abspielen"
|
||||
highlightSensitiveMedia: "Sensitive Medien markieren"
|
||||
verificationEmailSent: "Eine Bestätigungsmail wurde an deine Email-Adresse versendet. Besuche den dort enthaltenen Link, um die Verifizierung abzuschließen."
|
||||
notSet: "Nicht konfiguriert"
|
||||
emailVerified: "Email-Adresse bestätigt"
|
||||
@@ -809,7 +778,7 @@ active: "Aktiv"
|
||||
offline: "Offline"
|
||||
notRecommended: "Nicht empfohlen"
|
||||
botProtection: "Schutz vor Bots"
|
||||
instanceBlocking: "Blockierte/Stummgeschaltete Instanzen"
|
||||
instanceBlocking: "Blockierte Instanzen"
|
||||
selectAccount: "Benutzerkonto auswählen"
|
||||
switchAccount: "Konto wechseln"
|
||||
enabled: "Aktiviert"
|
||||
@@ -879,6 +848,8 @@ makeReactionsPublicDescription: "Jeder wird die Liste deiner gesendeten Reaktion
|
||||
classic: "Classic"
|
||||
muteThread: "Thread stummschalten"
|
||||
unmuteThread: "Threadstummschaltung aufheben"
|
||||
ffVisibility: "Sichtbarkeit von Gefolgten/Followern"
|
||||
ffVisibilityDescription: "Konfiguriere wer sehen kann, wem du folgst sowie wer dir folgt."
|
||||
continueThread: "Weiteren Threadverlauf anzeigen"
|
||||
deleteAccountConfirm: "Dein Benutzerkonto wird unwiderruflich gelöscht. Trotzdem fortfahren?"
|
||||
incorrectPassword: "Falsches Passwort."
|
||||
@@ -928,7 +899,7 @@ typeToConfirm: "Bitte gib zur Bestätigung {x} ein"
|
||||
deleteAccount: "Benutzerkonto löschen"
|
||||
document: "Dokumentation"
|
||||
numberOfPageCache: "Seitencachegröße"
|
||||
numberOfPageCacheDescription: "Das Erhöhen dieses Caches führt zu einer angenehmerern Benutzererfahrung, aber erhöht Last und Arbeitsspeicherauslastung auf dem Nutzergerät."
|
||||
numberOfPageCacheDescription: "Das Erhöhen dieses Caches führt zu einer angenehmerern Benutzererfahrung, erhöht aber Serverlast und Arbeitsspeicherauslastung."
|
||||
logoutConfirm: "Wirklich abmelden?"
|
||||
lastActiveDate: "Zuletzt verwendet am"
|
||||
statusbar: "Statusleiste"
|
||||
@@ -941,16 +912,16 @@ type: "Art"
|
||||
speed: "Geschwindigkeit"
|
||||
slow: "Langsam"
|
||||
fast: "Schnell"
|
||||
sensitiveMediaDetection: "Erkennung von sensiblen Medien"
|
||||
sensitiveMediaDetection: "Erkennung von NSFW-Medien"
|
||||
localOnly: "Nur Lokal"
|
||||
remoteOnly: "Nur für fremde Instanzen"
|
||||
failedToUpload: "Hochladen fehlgeschlagen"
|
||||
cannotUploadBecauseInappropriate: "Diese Datei kann nicht hochgeladen werden, da Anteile der Datei als möglicherweise unangebracht festgestellt wurden."
|
||||
cannotUploadBecauseInappropriate: "Diese Datei kann nicht hochgeladen werden, da Anteile der Datei als möglicherweise NSFW festgestellt wurden."
|
||||
cannotUploadBecauseNoFreeSpace: "Die Datei konnte nicht hochgeladen werden, da dein Drive-Speicherplatz aufgebraucht ist."
|
||||
cannotUploadBecauseExceedsFileSizeLimit: "Diese Datei kann wegen Überschreitung der Maximalgröße nicht hochgeladen werden."
|
||||
beta: "Beta"
|
||||
enableAutoSensitive: "Automarkierung sensibler Medien"
|
||||
enableAutoSensitiveDescription: "Setzt soweit möglich durch Verwendung von Machine Learning automatisch Markierungen für sensible Medien. Auch wenn du diese Option deaktiviert hast, ist sie möglicherweise auf Instanzebene aktiviert."
|
||||
enableAutoSensitive: "NSFW-Automarkierung"
|
||||
enableAutoSensitiveDescription: "Setzt soweit möglich durch Verwendung von Machine Learning automatisch NSFW-Markierungen für Medien, die NSFW-Anteile beinhalten. Auch wenn du diese Option deaktiviert hast, ist sie möglicherweise auf Instanzebene aktiviert."
|
||||
activeEmailValidationDescription: "Aktivert strengere Überprüfung von E-Mail-Adressen, d.h. Testen auf Wegwerfadressen und darauf, ob mit der Adresse tatsächlich kommuniziert werden kann. Ist dies deaktiviert, so wird nur das Format der E-Mail überprüft."
|
||||
navbar: "Navigationsleiste"
|
||||
shuffle: "Mischen"
|
||||
@@ -988,7 +959,6 @@ assign: "Zuweisen"
|
||||
unassign: "Entfernen"
|
||||
color: "Farbe"
|
||||
manageCustomEmojis: "Kann benutzerdefinierte Emojis verwalten"
|
||||
manageAvatarDecorations: "Profilbilddekorationen verwalten"
|
||||
youCannotCreateAnymore: "Du hast das Erstellungslimit erreicht."
|
||||
cannotPerformTemporary: "Vorübergehend nicht verfügbar"
|
||||
cannotPerformTemporaryDescription: "Diese Aktion ist wegen des Überschreitenes des Ausführungslimits temporär nicht verfügbar. Bitte versuche es nach einiger Zeit erneut."
|
||||
@@ -1029,8 +999,6 @@ resetPasswordConfirm: "Wirklich Passwort zurücksetzen?"
|
||||
sensitiveWords: "Sensible Wörter"
|
||||
sensitiveWordsDescription: "Die Notizsichtbarkeit aller Notizen, die diese Wörter enthalten, wird automatisch auf \"Startseite\" gesetzt. Durch Zeilenumbrüche können mehrere konfiguriert werden."
|
||||
sensitiveWordsDescription2: "Durch die Verwendung von Leerzeichen können AND-Verknüpfungen angegeben werden und durch das Umgeben von Schrägstrichen können reguläre Ausdrücke verwendet werden."
|
||||
hiddenTags: "Ausgeblendete Hashtags"
|
||||
hiddenTagsDescription: "Die hier eingestellten Tags werden nicht mehr in den Trends angezeigt. Mit der Umschalttaste können mehrere ausgewählt werden."
|
||||
notesSearchNotAvailable: "Die Notizsuche ist nicht verfügbar."
|
||||
license: "Lizenz"
|
||||
unfavoriteConfirm: "Wirklich aus Favoriten entfernen?"
|
||||
@@ -1042,8 +1010,7 @@ retryAllQueuesConfirmText: "Dies wird zu einer temporären Erhöhung der Serverl
|
||||
enableChartsForRemoteUser: "Diagramme für Nutzer fremder Instanzen erstellen"
|
||||
enableChartsForFederatedInstances: "Diagramme für fremde Instanzen erstellen"
|
||||
showClipButtonInNoteFooter: "\"Clip\" zum Notizmenu hinzufügen"
|
||||
reactionsDisplaySize: "Reaktionsanzeigegröße"
|
||||
limitWidthOfReaction: "Begrenze die Breite der Reaktion und zeige sie verkleinert an"
|
||||
largeNoteReactions: "Reaktionen vergrößert anzeigen"
|
||||
noteIdOrUrl: "Notiz-ID oder URL"
|
||||
video: "Video"
|
||||
videos: "Videos"
|
||||
@@ -1067,7 +1034,7 @@ vertical: "Vertikal"
|
||||
horizontal: "Horizontal"
|
||||
position: "Position"
|
||||
serverRules: "Serverregeln"
|
||||
pleaseConfirmBelowBeforeSignup: "Lies bitte diese Informationen und stimme ihnen vor der Registration zu."
|
||||
pleaseConfirmBelowBeforeSignup: "Lies bitte Untenstehendes vor der Registration."
|
||||
pleaseAgreeAllToContinue: "Zum Fortfahren muss allen obigen Feldern zugestimmt werden."
|
||||
continue: "Fortfahren"
|
||||
preservedUsernames: "Reservierte Benutzernamen"
|
||||
@@ -1077,7 +1044,7 @@ archive: "Archivieren"
|
||||
channelArchiveConfirmTitle: "{name} wirklich archivieren?"
|
||||
channelArchiveConfirmDescription: "Ein archivierter Kanal taucht nicht mehr in der Kanalliste oder in Suchergebnissen auf. Zudem können ihm keine Beiträge mehr hinzugefügt werden."
|
||||
thisChannelArchived: "Dieser Kanal wurde archiviert."
|
||||
displayOfNote: "Darstellung von Notizen"
|
||||
displayOfNote: "Anzeige von Notizen"
|
||||
initialAccountSetting: "Kontoeinrichtung"
|
||||
youFollowing: "Gefolgt"
|
||||
preventAiLearning: "Verwendung in machinellem Lernen (Generative bzw. Prediktive AI/KI) ablehnen"
|
||||
@@ -1096,94 +1063,6 @@ goToMisskey: "Zu Misskey"
|
||||
additionalEmojiDictionary: "Zusätzliche Emoji-Wörterbücher"
|
||||
installed: "Installiert"
|
||||
branding: "Branding"
|
||||
enableServerMachineStats: "Hardwareinformationen des Servers veröffentlichen"
|
||||
enableIdenticonGeneration: "Generierung von Benutzer-Identicons aktivieren"
|
||||
turnOffToImprovePerformance: "Deaktivierung kann zu höherer Leistung führen."
|
||||
createInviteCode: "Einladung erstellen"
|
||||
createWithOptions: "Einladung mit Optionen erstellen"
|
||||
createCount: "Einladungsanzahl"
|
||||
inviteCodeCreated: "Einladung erstellt"
|
||||
inviteLimitExceeded: "Du hast das Maximum an erstellbaren Einladungen erreicht."
|
||||
createLimitRemaining: "Erstellbare Einladungen: Noch {limit}"
|
||||
inviteLimitResetCycle: "Am {time} wird dies auf {limit} zurückgesetzt."
|
||||
expirationDate: "Ablaufdatum"
|
||||
noExpirationDate: "Keins"
|
||||
inviteCodeUsedAt: "Einladung verwendet am"
|
||||
registeredUserUsingInviteCode: "Einladung verwendet von"
|
||||
waitingForMailAuth: "Bestätigungsemail ausstehend"
|
||||
inviteCodeCreator: "Einladung erstellt von"
|
||||
usedAt: "Benutzt am"
|
||||
unused: "Unbenutzt"
|
||||
used: "Benutzt"
|
||||
expired: "Abgelaufen"
|
||||
doYouAgree: "Zustimmen?"
|
||||
beSureToReadThisAsItIsImportant: "Lies bitte diese wichtige Informationen."
|
||||
iHaveReadXCarefullyAndAgree: "Ich habe den Text \"{x}\" gelesen und stimme zu."
|
||||
dialog: "Dialogfeld"
|
||||
icon: "Symbol"
|
||||
forYou: "Für dich"
|
||||
currentAnnouncements: "Aktuelle Ankündigungen"
|
||||
pastAnnouncements: "Alte Ankündigungen"
|
||||
youHaveUnreadAnnouncements: "Es gibt neue Ankündigungen."
|
||||
useSecurityKey: "Folge bitten den Anweisungen deines Browsers bzw. Gerätes und verwende deinen Hardware-Sicherheitsschlüssel oder Passkey."
|
||||
replies: "Antworten"
|
||||
renotes: "Renotes"
|
||||
loadReplies: "Antworten anzeigen"
|
||||
loadConversation: "Unterhaltung anzeigen"
|
||||
pinnedList: "Angeheftete Liste"
|
||||
keepScreenOn: "Bildschirm angeschaltet lassen"
|
||||
verifiedLink: "Link-Besitz wurde verifiziert"
|
||||
notifyNotes: "Über neue Notizen benachrichtigen"
|
||||
unnotifyNotes: "Nicht über neue Notizen benachrichtigen"
|
||||
authentication: "Authentifikation"
|
||||
authenticationRequiredToContinue: "Bitte authentifiziere dich, um fortzufahren"
|
||||
dateAndTime: "Zeit"
|
||||
showRenotes: "Renotes anzeigen"
|
||||
edited: "Bearbeitet"
|
||||
notificationRecieveConfig: "Benachrichtigungseinstellungen"
|
||||
mutualFollow: "Gegenseitig gefolgt"
|
||||
fileAttachedOnly: "Nur Notizen mit Dateien"
|
||||
showRepliesToOthersInTimeline: "Antworten in Chronik anzeigen"
|
||||
hideRepliesToOthersInTimeline: "Antworten nicht in Chronik anzeigen"
|
||||
showRepliesToOthersInTimelineAll: "Antworten von allen momentan gefolgten Benutzern in Chronik anzeigen"
|
||||
hideRepliesToOthersInTimelineAll: "Antworten von allen momentan gefolgten Benutzern nicht in Chronik anzeigen"
|
||||
confirmShowRepliesAll: "Dies ist eine unwiderrufliche Aktion. Wirklich Antworten von allen momentan gefolgten Benutzern in der Chronik anzeigen?"
|
||||
confirmHideRepliesAll: "Dies ist eine unwiderrufliche Aktion. Wirklich Antworten von allen momentan gefolgten Benutzern nicht in der Chronik anzeigen?"
|
||||
externalServices: "Externe Dienste"
|
||||
impressum: "Impressum"
|
||||
impressumUrl: "Impressums-URL"
|
||||
impressumDescription: "In manchen Ländern, wie Deutschland und dessen Umgebung, ist die Angabe von Betreiberinformationen (ein Impressum) bei kommerziellem Betrieb zwingend."
|
||||
privacyPolicy: "Datenschutzerklärung"
|
||||
privacyPolicyUrl: "Datenschutzerklärungs-URL"
|
||||
tosAndPrivacyPolicy: "Nutzungsbedingungen und Datenschutzerklärung"
|
||||
avatarDecorations: "Profilbilddekoration"
|
||||
attach: "Anbringen"
|
||||
detach: "Entfernen"
|
||||
angle: "Winkel"
|
||||
flip: "Umdrehen"
|
||||
showAvatarDecorations: "Profilbilddekoration anzeigen"
|
||||
releaseToRefresh: "Zum Aktualisieren loslassen"
|
||||
refreshing: "Wird aktualisiert..."
|
||||
pullDownToRefresh: "Zum Aktualisieren ziehen"
|
||||
disableStreamingTimeline: "Echtzeitaktualisierung der Chronik deaktivieren"
|
||||
useGroupedNotifications: "Benachrichtigungen gruppieren"
|
||||
signupPendingError: "Beim Überprüfen der Mailadresse ist etwas schiefgelaufen. Der Link könnte abgelaufen sein."
|
||||
cwNotationRequired: "Ist \"Inhaltswarnung verwenden\" aktiviert, muss eine Beschreibung gegeben werden."
|
||||
doReaction: "Reagieren"
|
||||
code: "Code"
|
||||
lastNDays: "Letzten {n} Tage"
|
||||
_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."
|
||||
needConfirmationToRead: "Separate Lesebestätigung erfordern"
|
||||
needConfirmationToReadDescription: "Ist dies aktiviert, so wird beim Markieren dieser Ankündigung als gelesen ein separates Bestätigungsfenster angezeigt. Auch wird sie von der \"Alle als gelesen markieren\"-Funktion ausgenommen."
|
||||
end: "Ankündigung archivieren"
|
||||
tooManyActiveAnnouncementDescription: "Zu viele aktive Ankündigungen können die Benutzerfreundlichkeit verschlechtern. Es wird empfohlen, veraltete Ankündigungen zu archivieren."
|
||||
readConfirmTitle: "Als gelesen markieren?"
|
||||
readConfirmText: "Dies markiert den Inhalt von \"{title}\" als gelesen."
|
||||
dialogAnnouncementUxWarn: "Bei der Verwendung von mehr als zwei Meldungen im Dialog-Format wird um Vorsicht geboten, da dies negative Auswirkungen auf die UX haben kann."
|
||||
silence: "Keine Benachrichtigung"
|
||||
silenceDescription: "Wenn aktiviert, gibt diese Meldung keine Nachricht aus und muss nicht als \"gelesen\" markiert werden."
|
||||
_initialAccountSetting:
|
||||
accountCreated: "Dein Konto wurde erfolgreich erstellt!"
|
||||
letsStartAccountSetup: "Lass uns nun dein Konto einrichten."
|
||||
@@ -1196,32 +1075,11 @@ _initialAccountSetting:
|
||||
pushNotificationDescription: "Durch die Aktivierung von Push-Benachrichtigungen kannst du von {name} Benachrichtigungen direkt auf dein Gerät erhalten."
|
||||
initialAccountSettingCompleted: "Kontoeinrichtung abgeschlossen!"
|
||||
haveFun: "Viel Spaß mit {name}!"
|
||||
youCanContinueTutorial: "Du kannst mit dem Tutorial von {name}(Misskey) fortfahren, oder auch abbrechen und gleich anfangen Misskey zu benutzen."
|
||||
startTutorial: "Fange mit dem Tutorial an"
|
||||
ifYouNeedLearnMore: "Besuche {link}, falls du mehr über {name} (Misskey) lernen möchtest."
|
||||
skipAreYouSure: "Die Kontoeinrichtung wirklich überspringen?"
|
||||
laterAreYouSure: "Die Kontoeinrichtung wirklich später erledigen?"
|
||||
_initialTutorial:
|
||||
launchTutorial: "Tutorial ansehen"
|
||||
title: "Tutorial"
|
||||
wellDone: "Gut gemacht!"
|
||||
skipAreYouSure: "Möchtest du das Tutorial verlassen?"
|
||||
_landing:
|
||||
title: "Willkommen zum Tutorial"
|
||||
description: "Hier kannst du sehen, wie Misskey funktioniert"
|
||||
_note:
|
||||
title: "Was sind Notizen?"
|
||||
_serverRules:
|
||||
description: "Eine Reihe von Regeln, die vor der Registrierung angezeigt werden. Eine Zusammenfassung der Nutzungsbedingungen anzuzeigen ist empfohlen."
|
||||
_serverSettings:
|
||||
iconUrl: "Icon-URL"
|
||||
appIconDescription: "Gibt das zu verwendende Icon bei der Anzeige von {host} als App an."
|
||||
appIconUsageExample: "Beispielsweise als PWA, oder bei Lesezeichen auf dem Startbildschirm von Smartphones"
|
||||
appIconStyleRecommendation: "Da das Icon zu einem Kreis oder Quadrat zugeschnitten wird, wird ein Icon mit gefülltem Margin um den Inhalt herum empfohlen."
|
||||
appIconResolutionMustBe: "Die Mindestauflösung ist {resolution}."
|
||||
manifestJsonOverride: "Überschreiben von manifest.json"
|
||||
shortName: "Abkürzung"
|
||||
shortNameDescription: "Ein Kürzel für den Namen der Instanz, der angezeigt werden kann, falls der volle Instanzname lang ist."
|
||||
fanoutTimelineDescription: "Ist diese Option aktiviert, kann eine erhebliche Verbesserung im Abrufen von Chroniken und eine Reduzierung der Datenbankbelastung erzielt werden, im Gegenzug zu einer Steigerung in der Speichernutzung von Redis. Bei geringem Serverspeicher oder Serverinstabilität kann diese Option deaktiviert werden."
|
||||
_accountMigration:
|
||||
moveFrom: "Von einem anderen Konto zu diesem migrieren"
|
||||
moveFromSub: "Alias für ein anderes Konto erstellen"
|
||||
@@ -1476,9 +1334,6 @@ _achievements:
|
||||
title: "Brain Diver"
|
||||
description: "Sende den Link zu Brain Diver"
|
||||
flavor: "Misskey-Misskey La-Tu-Ma"
|
||||
_smashTestNotificationButton:
|
||||
title: "Testüberfluss"
|
||||
description: "Betätige den Benachrichtigungstest mehrfach innerhalb einer extrem kurzen Zeitspanne"
|
||||
_role:
|
||||
new: "Rolle erstellen"
|
||||
edit: "Rolle bearbeiten"
|
||||
@@ -1518,11 +1373,7 @@ _role:
|
||||
ltlAvailable: "Kann auf die lokale Chronik zugreifen"
|
||||
canPublicNote: "Kann öffentliche Notizen erstellen"
|
||||
canInvite: "Erstellung von Einladungscodes für diese Instanz"
|
||||
inviteLimit: "Maximalanzahl an Einladungen"
|
||||
inviteLimitCycle: "Zyklus des Einladungslimits"
|
||||
inviteExpirationTime: "Gültigkeitsdauer von Einladungen"
|
||||
canManageCustomEmojis: "Benutzerdefinierte Emojis verwalten"
|
||||
canManageAvatarDecorations: "Profilbilddekorationen verwalten"
|
||||
driveCapacity: "Drive-Kapazität"
|
||||
alwaysMarkNsfw: "Dateien immer als NSFW markieren"
|
||||
pinMax: "Maximale Anzahl an angehefteten Notizen"
|
||||
@@ -1537,7 +1388,6 @@ _role:
|
||||
descriptionOfRateLimitFactor: "Je niedriger desto weniger restriktiv, je höher destro restriktiver."
|
||||
canHideAds: "Kann Werbung ausblenden"
|
||||
canSearchNotes: "Nutzung der Notizsuchfunktion"
|
||||
canUseTranslator: "Verwendung des Übersetzers"
|
||||
_condition:
|
||||
isLocal: "Lokaler Benutzer"
|
||||
isRemote: "Benutzer fremder Instanz"
|
||||
@@ -1553,10 +1403,10 @@ _role:
|
||||
or: "ODER-Bedingung"
|
||||
not: "NICHT-Bedingung"
|
||||
_sensitiveMediaDetection:
|
||||
description: "Ermöglicht eine Erleichterung der Servermoderation durch die automatische Erkennungen von sensiblen Medien unter Verwendung von Machine Learning. Hierdurch wird die Serverlast etwas erhöht."
|
||||
description: "Ermöglicht eine Erleichterung der Servermoderation durch die automatische Erkennungen von NSFW-Medien unter Verwendung von Machine Learning. Hierdurch wird die Serverlast etwas erhöht."
|
||||
sensitivity: "Erkennungssensitivität"
|
||||
sensitivityDescription: "Durch das Senken der Sensitivität kann die Anzahl an Fehlerkennungen (sog. false positives) reduziert werden. Durch ein Erhöhen dieser kann die Anzahl an verpassten Erkennungen (sog. false negatives) reduziert werden."
|
||||
setSensitiveFlagAutomatically: "Als sensibel markieren"
|
||||
setSensitiveFlagAutomatically: "Als NSFW markieren"
|
||||
setSensitiveFlagAutomaticallyDescription: "Die Resultate der internen Erkennung werden beibehalten, auch wenn diese Option deaktiviert ist."
|
||||
analyzeVideos: "Videoanalyse aktivieren"
|
||||
analyzeVideosDescription: "Analysiert zusätzlich zu Bildern auch Videos. Die Last des Servers wird hierdurch etwas erhöht."
|
||||
@@ -1585,11 +1435,6 @@ _ad:
|
||||
back: "Zurück"
|
||||
reduceFrequencyOfThisAd: "Diese Werbung weniger anzeigen"
|
||||
hide: "Ausblenden"
|
||||
timezoneinfo: "Der Wochentag wird durch die Serverzeitzone bestimmt."
|
||||
adsSettings: "Werbeeinstellungen"
|
||||
notesPerOneAd: "Werbeintervall während Echtzeitaktualisierung (Notizen pro Werbung)"
|
||||
setZeroToDisable: "Setze dies auf 0, um Werbung während Echtzeitaktualisierung zu deaktivieren"
|
||||
adsTooClose: "Durch den momentan sehr niedrigen Werbeintervall kann es zu einer starken Verschlechterung der Benutzererfahrung kommen."
|
||||
_forgotPassword:
|
||||
enterEmail: "Gib die Email-Adresse ein, mit der du dich registriert hast. An diese wird ein Link gesendet, mit dem du dein Passwort zurücksetzen kannst."
|
||||
ifNoEmail: "Solltest du bei der Registrierung keine Email-Adresse angegeben haben, wende dich bitte an den Administrator."
|
||||
@@ -1608,7 +1453,6 @@ _plugin:
|
||||
install: "Plugins installieren"
|
||||
installWarn: "Installiere bitte nur vertrauenswürdige Plugins."
|
||||
manage: "Plugins verwalten"
|
||||
viewSource: "Quelltext anzeigen"
|
||||
_preferencesBackups:
|
||||
list: "Erstellte Backups"
|
||||
saveNew: "Neu erstellen"
|
||||
@@ -1642,10 +1486,9 @@ _aboutMisskey:
|
||||
donate: "An Misskey spenden"
|
||||
morePatrons: "Wir schätzen ebenso die Unterstützung vieler anderer hier nicht gelisteter Personen sehr. Danke! 🥰"
|
||||
patrons: "UnterstützerInnen"
|
||||
projectMembers: "Projektmitglieder"
|
||||
_displayOfSensitiveMedia:
|
||||
respect: "Sensible Medien verbergen"
|
||||
ignore: "Sensible Medien anzeigen"
|
||||
_nsfw:
|
||||
respect: "Als NSFW markierte Bilder verbergen"
|
||||
ignore: "Als NSFW markierte Bilder nicht verbergen"
|
||||
force: "Alle Medien verbergen"
|
||||
_instanceTicker:
|
||||
none: "Nie anzeigen"
|
||||
@@ -1676,6 +1519,11 @@ _wordMute:
|
||||
muteWords: "Stummgeschaltete Wörter"
|
||||
muteWordsDescription: "Zum Nutzen einer \"UND\"-Verknüpfung Einträge mit Leerzeichen trennen, zum Nutzen einer \"ODER\"-Verknüpfung Einträge mit einem Zeilenumbruch trennen."
|
||||
muteWordsDescription2: "Umgib Schlüsselworter mit Schrägstrichen, um Reguläre Ausdrücke zu verwenden."
|
||||
softDescription: "Notizen, die die angegebenen Konditionen erfüllen, in der Chronik ausblenden."
|
||||
hardDescription: "Verhindern, dass Notizen, die die angegebenen Konditionen erfüllen, der Chronik hinzugefügt werden. Zudem werden diese Notizen auch nicht der Chronik hinzugefügt, falls die Konditionen geändert werden."
|
||||
soft: "Leicht"
|
||||
hard: "Schwer"
|
||||
mutedNotes: "Stummgeschaltete Notizen"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "Schaltet alle Notizen/Renotes stumm, die von den gelisteten Instanzen stammen, inklusive Antworten von Benutzern an einen Benutzer einer stummgeschalteten Instanz."
|
||||
instanceMuteDescription2: "Instanzen getrennt durch Zeilenumbrüchen angeben"
|
||||
@@ -1739,6 +1587,9 @@ _theme:
|
||||
infoFg: "Text von Informationen"
|
||||
infoWarnBg: "Hintergrund von Warnungen"
|
||||
infoWarnFg: "Text von Warnungen"
|
||||
cwBg: "Hintergrund des Inhaltswarnungsknopfs"
|
||||
cwFg: "Text des Inhaltswarnungsknopfs"
|
||||
cwHoverBg: "Hintergrund des Inhaltswarnungsknopfs (Mouseover)"
|
||||
toastBg: "Hintergrund von Benachrichtigungen"
|
||||
toastFg: "Text von Benachrichtigungen"
|
||||
buttonBg: "Hintergrund von Schaltflächen"
|
||||
@@ -1756,6 +1607,8 @@ _sfx:
|
||||
note: "Notizen"
|
||||
noteMy: "Meine Notizen"
|
||||
notification: "Benachrichtigungen"
|
||||
chat: "Chat"
|
||||
chatBg: "Chat (Hintergrund)"
|
||||
antenna: "Antennen"
|
||||
channel: "Kanalbenachrichtigung"
|
||||
_ago:
|
||||
@@ -1774,21 +1627,32 @@ _time:
|
||||
minute: "Minute(n)"
|
||||
hour: "Stunde(n)"
|
||||
day: "Tag(en)"
|
||||
_timelineTutorial:
|
||||
title: "Wie du Misskey verwendest"
|
||||
step1_1: "Dieser Bildschirm ist die \"Chronik\". Hier werden alle \"Notizen\" von {name} angezeigt."
|
||||
step1_2: "Es gibt einige verschiedene Chroniken. Beispielsweise werden in der \"Startseite\" alle Notizen von Nutzern, denen du folgst, angezeigt, und in der \"Lokalen Chronik\" werden Notizen aller Nutzer auf {name} angezeigt."
|
||||
step2_1: "Lass uns als nächstes versuchen, eine Notiz zu schreiben. Dies kannst du tun, indem du auf den Knopf mit dem Stift-Icon drückst."
|
||||
step2_2: "Stell dich den anderen vor oder schreibe einfach \"Hallo {name}!\", wenn du darauf keine Lust hast oder dir nichts einfällt."
|
||||
step3_1: "Fertig mit dem Senden deiner ersten Notiz?"
|
||||
step3_2: "Falls deine Notiz nun in deiner Chronik auftaucht, hast du alles richtig gemacht."
|
||||
step4_1: "Notizen können zusätzlich mit \"Reaktionen\" ausgestattet werden."
|
||||
step4_2: "Um eine Reaktion anzufügen, klicke auf das „+“-Symbol einer Notiz und wähle ein Emoji aus, mit dem du reagieren möchtest."
|
||||
_2fa:
|
||||
alreadyRegistered: "Du hast bereits ein Gerät für Zwei-Faktor-Authentifizierung registriert."
|
||||
registerTOTP: "Authentifizierungs-App registrieren"
|
||||
passwordToTOTP: "Bitte Passwort eingeben"
|
||||
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"
|
||||
step2Url: "Nutzt du ein Desktopprogramm kannst du alternativ diese URL eingeben:"
|
||||
step3Title: "Authentifizierungsscode eingeben"
|
||||
step3: "Gib zum Abschluss den Code (Token) ein, der von deiner App angezeigt wird."
|
||||
setupCompleted: "Einrichtung abgeschlossen"
|
||||
step3: "Gib zum Abschluss den Token ein, der von deiner App angezeigt wird."
|
||||
step4: "Alle folgenden Anmeldeversuche werden ab sofort die Eingabe eines solchen Tokens benötigen."
|
||||
securityKeyNotSupported: "Dein Browser unterstützt keine Hardware-Sicherheitsschlüssel."
|
||||
securityKeyNotSupported: "Dein Browser unterstützt keine Security-Tokens."
|
||||
registerTOTPBeforeKey: "Um einen Security-Token oder einen Passkey zu registrieren, musst du zuerst eine Authentifizierungs-App registrieren."
|
||||
securityKeyInfo: "Du kannst neben Fingerabdruck- oder PIN-Authentifizierung auf deinem Gerät auch Anmeldung mit Hilfe eines FIDO2-kompatiblen Hardware-Sicherheitsschlüssels einrichten."
|
||||
registerSecurityKey: "Hardware-Sicherheitsschlüssel oder Passkey registrieren"
|
||||
chromePasskeyNotSupported: "Chrome-Passkeys werden zur Zeit nicht unterstützt."
|
||||
registerSecurityKey: "Security-Token oder Passkey registrieren"
|
||||
securityKeyName: "Schlüsselname eingeben"
|
||||
tapSecurityKey: "Bitten folge den Anweisungen deines Browsers zur Registrierung"
|
||||
removeKey: "Sicherheitsschlüssel entfernen"
|
||||
@@ -1798,11 +1662,6 @@ _2fa:
|
||||
renewTOTPConfirm: "Codes der bisherigen App werden hierdurch nutzlos"
|
||||
renewTOTPOk: "Neu einrichten"
|
||||
renewTOTPCancel: "Abbrechen"
|
||||
checkBackupCodesBeforeCloseThisWizard: "Notiere bitte deine Backup-Codes, bevor du dieses Fenster schließt."
|
||||
backupCodes: "Backup-Codes"
|
||||
backupCodesDescription: "Verwende diese Codes, falls du nicht mehr auf deine App zur Zweifaktorauthentifizierung zugreifen kannst. Jeder Code kann nur einmal verwendet werden. Bewahre sie an einem sicheren Ort auf."
|
||||
backupCodeUsedWarning: "Ein Backup-Code wurde verwendet. Falls du den Zugriff zu deiner Zweifaktorauthentifizierungsapp verloren hast, konfiguriere diese bitte möglichst bald erneut."
|
||||
backupCodesExhaustedWarning: "Alle Backup-Codes wurden verwendet. Falls du den Zugang zu deiner Zweifaktorauthentifizierungsapp verlierst, wirst du dich nicht mehr in dieses Konto einloggen können. Bitte konfiguriere diese App erneut."
|
||||
_permissions:
|
||||
"read:account": "Deine Benutzerkontoinformationen lesen"
|
||||
"write:account": "Deine Benutzerkontoinformationen bearbeiten"
|
||||
@@ -1836,10 +1695,6 @@ _permissions:
|
||||
"write:gallery": "Deine Galerie bearbeiten"
|
||||
"read:gallery-likes": "Liste deiner mit \"Gefällt mir\" markierten Galerie-Beiträge lesen"
|
||||
"write:gallery-likes": "Liste deiner mit \"Gefällt mir\" markierten Galerie-Beiträge bearbeiten"
|
||||
"read:flash": "Deine Plays lesen"
|
||||
"write:flash": "Deine Plays bearbeiten oder löschen"
|
||||
"read:flash-likes": "Liste der Plays, die mir gefallen, lesen"
|
||||
"write:flash-likes": "Liste der Plays, die mir gefallen, bearbeiten"
|
||||
_auth:
|
||||
shareAccessTitle: "Verteilung von App-Berechtigungen"
|
||||
shareAccess: "Möchtest du „{name}“ authorisieren, auf dieses Benutzerkonto zugreifen zu können?"
|
||||
@@ -1855,7 +1710,6 @@ _antennaSources:
|
||||
homeTimeline: "Notizen von Benutzern, denen gefolgt wird"
|
||||
users: "Notizen von einem oder mehreren angegebenen Benutzern"
|
||||
userList: "Notizen von allen Benutzern einer Liste"
|
||||
userBlacklist: "Alle Notizen abgesehen derer angegebener Benutzer"
|
||||
_weekday:
|
||||
sunday: "Sonntag"
|
||||
monday: "Montag"
|
||||
@@ -1955,18 +1809,15 @@ _profile:
|
||||
metadataContent: "Inhalt"
|
||||
changeAvatar: "Profilbild ändern"
|
||||
changeBanner: "Banner ändern"
|
||||
verifiedLinkDescription: "Gibst du hier eine URL ein, die einen Link zu deinem Profile enthält, wird neben diesem Feld ein Icon zur Besitzbestätigung angezeigt."
|
||||
_exportOrImport:
|
||||
allNotes: "Alle Notizen"
|
||||
favoritedNotes: "Als Favorit markierte Notizen"
|
||||
clips: "Clip erstellen"
|
||||
followingList: "Gefolgte Benutzer"
|
||||
muteList: "Stummschaltungen"
|
||||
blockingList: "Blockierungen"
|
||||
userLists: "Listen"
|
||||
excludeMutingUsers: "Stummgeschaltete Benutzer aussortieren"
|
||||
excludeInactiveUsers: "Inaktive Benutzer aussortieren"
|
||||
withReplies: "Antworten von importierten Benutzern in der Chronik beinhalten"
|
||||
_charts:
|
||||
federation: "Föderation"
|
||||
apRequest: "Anfragen"
|
||||
@@ -2076,20 +1927,11 @@ _notification:
|
||||
youReceivedFollowRequest: "Du hast eine Follow-Anfrage erhalten"
|
||||
yourFollowRequestAccepted: "Deine Follow-Anfrage wurde akzeptiert"
|
||||
pollEnded: "Umfrageergebnisse sind verfügbar"
|
||||
newNote: "Neue Notiz"
|
||||
unreadAntennaNote: "Antenne {name}"
|
||||
emptyPushNotificationMessage: "Push-Benachrichtigungen wurden aktualisiert"
|
||||
achievementEarned: "Errungenschaft freigeschaltet"
|
||||
testNotification: "Testbenachrichtigung"
|
||||
checkNotificationBehavior: "Aussehen von Benachrichtigungen überprüfen"
|
||||
sendTestNotification: "Testbenachrichtigung senden"
|
||||
notificationWillBeDisplayedLikeThis: "Benachrichtigungen sehen so aus"
|
||||
reactedBySomeUsers: "{n} Benutzer haben eine Reaktion geschickt"
|
||||
renotedBySomeUsers: "Renote von {n} Benutzern"
|
||||
followedBySomeUsers: "Von {n} Benutzern gefolgt"
|
||||
_types:
|
||||
all: "Alle"
|
||||
note: "Neue Notizen"
|
||||
follow: "Neue Follower"
|
||||
mention: "Erwähnungen"
|
||||
reply: "Antworten"
|
||||
@@ -2122,9 +1964,6 @@ _deck:
|
||||
introduction: "Erstelle eine auf dich zugeschneiderte Benutzeroberfläche durch das Aneinanderreihen von Spalten!"
|
||||
introduction2: "Klicke auf das + rechts um wann immer du möchtest neue Spalten hinzuzufügen."
|
||||
widgetsIntroduction: "Drücke bitte \"Widgets bearbeiten\" im Spaltenmenü und füge ein Widget hinzu."
|
||||
useSimpleUiForNonRootPages: "Simple Benutzeroberfläche für navigierte Seiten verwenden"
|
||||
usedAsMinWidthWhenFlexible: "Ist \"Automatische Breitenanpassung\" aktiviert, wird hierfür die minimale Breite verwendet"
|
||||
flexible: "Automatische Breitenanpassung"
|
||||
_columns:
|
||||
main: "Hauptspalte"
|
||||
widgets: "Widgets"
|
||||
@@ -2159,89 +1998,3 @@ _webhookSettings:
|
||||
renote: "Wenn du ein Renote erhältst"
|
||||
reaction: "Wenn du eine Reaktion erhältst"
|
||||
mention: "Wenn du erwähnt wirst"
|
||||
_moderationLogTypes:
|
||||
createRole: "Rolle erstellt"
|
||||
deleteRole: "Rolle gelöscht"
|
||||
updateRole: "Rolle aktualisiert"
|
||||
assignRole: "Zu Rolle zugewiesen"
|
||||
unassignRole: "Aus Rolle entfernt"
|
||||
suspend: "Gesperrt"
|
||||
unsuspend: "Entsperrt"
|
||||
addCustomEmoji: "Benutzerdefiniertes Emoji hinzugefügt"
|
||||
updateCustomEmoji: "Benutzerdefiniertes Emoji aktualisiert"
|
||||
deleteCustomEmoji: "Benutzerdefiniertes Emoji gelöscht"
|
||||
updateServerSettings: "Servereinstellungen aktualisiert"
|
||||
updateUserNote: "Moderationsnotiz aktualisiert"
|
||||
deleteDriveFile: "Datei gelöscht"
|
||||
deleteNote: "Notiz gelöscht"
|
||||
createGlobalAnnouncement: "Globale Ankündigung erstellt"
|
||||
createUserAnnouncement: "Benutzerspezifische Ankündigung erstellt"
|
||||
updateGlobalAnnouncement: "Globale Ankündigung aktualisiert"
|
||||
updateUserAnnouncement: "Benutzerspezifische Ankündigung aktualisiert"
|
||||
deleteGlobalAnnouncement: "Globale Ankündigung gelöscht"
|
||||
deleteUserAnnouncement: "Benutzerspezifische Ankündigung gelöscht"
|
||||
resetPassword: "Passwort zurückgesetzt"
|
||||
suspendRemoteInstance: "Fremde Instanz gesperrt"
|
||||
unsuspendRemoteInstance: "Fremde Instanz entsperrt"
|
||||
markSensitiveDriveFile: "Datei als sensitiv markiert"
|
||||
unmarkSensitiveDriveFile: "Datei als nicht sensitiv markiert"
|
||||
resolveAbuseReport: "Meldung bearbeitet"
|
||||
createInvitation: "Einladung erstellt"
|
||||
createAd: "Werbung erstellt"
|
||||
deleteAd: "Werbung gelöscht"
|
||||
updateAd: "Werbung aktualisiert"
|
||||
createAvatarDecoration: "Profilbilddekoration erstellt"
|
||||
updateAvatarDecoration: "Profilbilddekoration aktualisiert"
|
||||
deleteAvatarDecoration: "Profilbilddekoration gelöscht"
|
||||
_fileViewer:
|
||||
title: "Dateiinformationen"
|
||||
type: "Dateityp"
|
||||
size: "Dateigröße"
|
||||
url: "URL"
|
||||
uploadedAt: "Hochgeladen am"
|
||||
attachedNotes: "Zugehörige Notizen"
|
||||
thisPageCanBeSeenFromTheAuthor: "Nur der Benutzer, der diese Datei hochgeladen hat, kann diese Seite sehen."
|
||||
_externalResourceInstaller:
|
||||
title: "Von externer Seite installieren"
|
||||
checkVendorBeforeInstall: "Überprüfe vor Installation die Vertrauenswürdigkeit des Vertreibers."
|
||||
_plugin:
|
||||
title: "Möchtest du dieses Plugin installieren?"
|
||||
metaTitle: "Plugininformation"
|
||||
_theme:
|
||||
title: "Möchten du dieses Farbschema installieren?"
|
||||
metaTitle: "Farbschemainfo"
|
||||
_meta:
|
||||
base: "Farbschemavorlage"
|
||||
_vendorInfo:
|
||||
title: "Vertreiber"
|
||||
endpoint: "Referenzierter Endpunkt"
|
||||
hashVerify: "Hash-Verifikation"
|
||||
_errors:
|
||||
_invalidParams:
|
||||
title: "Ungültige Parameter"
|
||||
description: "Es fehlen Informationen zum Laden der externen Ressource. Überprüfe die übergebene URL."
|
||||
_resourceTypeNotSupported:
|
||||
title: "Diese Ressource wird nicht unterstützt"
|
||||
description: "Dieser Ressourcentyp wird nicht unterstützt. Bitte kontaktiere den Seitenbesitzer."
|
||||
_failedToFetch:
|
||||
title: "Fehler beim Abrufen der Daten"
|
||||
fetchErrorDescription: "Während der Kommunikation mit der externen Seite ist ein Fehler aufgetreten. Kontaktiere den Seitenbesitzer, falls ein erneutes Probieren dieses Problem nicht löst."
|
||||
parseErrorDescription: "Während dem Auslesen der externen Daten ist ein Fehler aufgetreten. Kontaktiere den Seitenbesitzer."
|
||||
_hashUnmatched:
|
||||
title: "Datenverifizierung fehlgeschlagen"
|
||||
description: "Die Integritätsprüfung der geladenen Daten ist fehlgeschlagen. Aus Sicherheitsgründen kann die Installation nicht fortgesetzt werden. Kontaktiere den Seitenbesitzer."
|
||||
_pluginParseFailed:
|
||||
title: "AiScript-Fehler"
|
||||
description: "Die angeforderten Daten wurden erfolgreich abgerufen, jedoch trat während des AiScript-Parsings ein Fehler auf. Kontaktiere den Autor des Plugins. Detaillierte Fehlerinformationen können über die Javascript-Konsole abgerufen werden."
|
||||
_pluginInstallFailed:
|
||||
title: "Das Plugin konnte nicht installiert werden"
|
||||
description: "Während der Installation des Plugin ist ein Problem aufgetreten. Bitte versuche es erneut. Detaillierte Fehlerinformationen können über die Javascript-Konsole abgerufen werden."
|
||||
_themeParseFailed:
|
||||
title: "Parsing des Farbschemas fehlgeschlagen"
|
||||
description: "Die angeforderten Daten wurden erfolgreich abgerufen, jedoch trat während des Farbschema-Parsings ein Fehler auf. Kontaktiere den Autor des Farbschemas. Detaillierte Fehlerinformationen können über die Javascript-Konsole abgerufen werden."
|
||||
_themeInstallFailed:
|
||||
title: "Das Farbschema konnte nicht installiert werden"
|
||||
description: "Während der Installation des Farbschemas ist ein Problem aufgetreten. Bitte versuche es erneut. Detaillierte Fehlerinformationen können über die Javascript-Konsole abgerufen werden."
|
||||
_reversi:
|
||||
total: "Gesamt"
|
||||
|
||||
|
@@ -104,6 +104,7 @@ clickToShow: "Κάντε κλικ για εμφάνιση"
|
||||
add: "Προσθέστε"
|
||||
reaction: "Αντιδράσεις"
|
||||
reactions: "Αντιδράσεις"
|
||||
reactionSetting: "Αντιδράσεις για εμφάνιση στην επιλογή αντίδρασης"
|
||||
reactionSettingDescription2: "Σύρετε για να αλλάξετε τη σειρά, κάντε κλικ για να διαγράψετε, πατήστε \"+\" για να προσθέσετε."
|
||||
rememberNoteVisibility: "Θυμήσου τις ρυθμίσεις ορατότητας σημειώματος"
|
||||
attachCancel: "Διαγραφή αρχείου"
|
||||
@@ -227,6 +228,7 @@ userList: "Λίστες"
|
||||
about: "Πληροφορίες"
|
||||
moderator: "Συντονιστής"
|
||||
moderation: "Συντονισμός"
|
||||
cacheClear: "Εκκαθάριση προσωρινής μνήμης"
|
||||
markAsReadAllNotifications: "Όλες οι ειδοποιήσεις διαβάστηκαν"
|
||||
members: "Μέλη"
|
||||
transfer: "Μεταφορά"
|
||||
@@ -285,9 +287,6 @@ searchByGoogle: "Αναζήτηση"
|
||||
file: "Αρχεία"
|
||||
recommended: "Προτεινόμενα"
|
||||
cannotUploadBecauseNoFreeSpace: "Το ανέβασμα απέτυχε λόγω ανεπαρκούς Αποθηκευτικού Χώρου"
|
||||
icon: "Εικονίδιο"
|
||||
replies: "Απάντηση"
|
||||
renotes: "Κοινοποίηση σημειώματος"
|
||||
_email:
|
||||
_follow:
|
||||
title: "Έχετε ένα νέο ακόλουθο"
|
||||
@@ -301,6 +300,8 @@ _theme:
|
||||
_sfx:
|
||||
note: "Σημειώματα"
|
||||
notification: "Ειδοποιήσεις"
|
||||
chat: "Συνομιλία"
|
||||
chatBg: "Συνομιλία (Παρασκήνιο)"
|
||||
antenna: "Αντένες"
|
||||
channel: "Ειδοποιήσεις καναλιών"
|
||||
_ago:
|
||||
@@ -356,7 +357,6 @@ _profile:
|
||||
username: "Όνομα μέλους"
|
||||
_exportOrImport:
|
||||
allNotes: "Όλα τα σημειώματα"
|
||||
clips: "Κλιπ"
|
||||
followingList: "Ακολουθεί"
|
||||
muteList: "Μέλη σε σίγαση"
|
||||
blockingList: "Μπλοκαρισμένα μέλη"
|
||||
@@ -394,8 +394,3 @@ _deck:
|
||||
mentions: "Επισημάνσεις"
|
||||
_webhookSettings:
|
||||
name: "Όνομα"
|
||||
_moderationLogTypes:
|
||||
suspend: "Αποβολή"
|
||||
_reversi:
|
||||
total: "Σύνολο"
|
||||
|
||||
|
@@ -45,20 +45,15 @@ pin: "Pin to profile"
|
||||
unpin: "Unpin from profile"
|
||||
copyContent: "Copy contents"
|
||||
copyLink: "Copy link"
|
||||
copyLinkRenote: "Copy renote link"
|
||||
delete: "Delete"
|
||||
deleteAndEdit: "Delete and edit"
|
||||
deleteAndEditConfirm: "Are you sure you want to redraft this note? This means you will lose all reactions, renotes, and replies to it."
|
||||
deleteAndEditConfirm: "Are you sure you want to delete this note and edit it? You will lose all reactions, renotes and replies to it."
|
||||
addToList: "Add to list"
|
||||
addToAntenna: "Add to antenna"
|
||||
sendMessage: "Send a message"
|
||||
copyRSS: "Copy RSS"
|
||||
copyUsername: "Copy username"
|
||||
copyUserId: "Copy user ID"
|
||||
copyNoteId: "Copy note ID"
|
||||
copyFileId: "Copy file ID"
|
||||
copyFolderId: "Copy folder ID"
|
||||
copyProfileUrl: "Copy profile URL"
|
||||
searchUser: "Search for a user"
|
||||
reply: "Reply"
|
||||
loadMore: "Load more"
|
||||
@@ -75,7 +70,7 @@ import: "Import"
|
||||
export: "Export"
|
||||
files: "Files"
|
||||
download: "Download"
|
||||
driveFileDeleteConfirm: "Do you want to remove the file \"{name}\"? Some content using this file will also be removed."
|
||||
driveFileDeleteConfirm: "Are you sure you want to delete \"{name}\"? It will also vanish from all contents that use it."
|
||||
unfollowConfirm: "Are you sure you want to unfollow {name}?"
|
||||
exportRequested: "You've requested an export. This may take a while. It will be added to your Drive once completed."
|
||||
importRequested: "You've requested an import. This may take a while."
|
||||
@@ -106,7 +101,7 @@ unfollow: "Unfollow"
|
||||
followRequestPending: "Follow request pending"
|
||||
enterEmoji: "Enter an emoji"
|
||||
renote: "Renote"
|
||||
unrenote: "Remove renote"
|
||||
unrenote: "Take back renote"
|
||||
renoted: "Renoted."
|
||||
cantRenote: "This post can't be renoted."
|
||||
cantReRenote: "A renote can't be renoted."
|
||||
@@ -117,18 +112,16 @@ pinnedNote: "Pinned note"
|
||||
pinned: "Pin to profile"
|
||||
you: "You"
|
||||
clickToShow: "Click to show"
|
||||
sensitive: "Sensitive"
|
||||
sensitive: "NSFW"
|
||||
add: "Add"
|
||||
reaction: "Reactions"
|
||||
reactions: "Reactions"
|
||||
emojiPicker: "Emoji picker"
|
||||
emojiPickerDisplay: "Emoji picker display"
|
||||
reactionSetting: "Reactions to show in the reaction picker"
|
||||
reactionSettingDescription2: "Drag to reorder, click to delete, press \"+\" to add."
|
||||
rememberNoteVisibility: "Remember note visibility settings"
|
||||
attachCancel: "Remove attachment"
|
||||
deleteFile: "File deleted"
|
||||
markAsSensitive: "Mark as sensitive"
|
||||
unmarkAsSensitive: "Unmark as sensitive"
|
||||
markAsSensitive: "Mark as NSFW"
|
||||
unmarkAsSensitive: "Unmark as NSFW"
|
||||
enterFileName: "Enter filename"
|
||||
mute: "Mute"
|
||||
unmute: "Unmute"
|
||||
@@ -143,10 +136,8 @@ unblockConfirm: "Are you sure that you want to unblock this account?"
|
||||
suspendConfirm: "Are you sure that you want to suspend this account?"
|
||||
unsuspendConfirm: "Are you sure that you want to unsuspend this account?"
|
||||
selectList: "Select a list"
|
||||
editList: "Edit list"
|
||||
selectChannel: "Select a channel"
|
||||
selectAntenna: "Select an antenna"
|
||||
editAntenna: "Edit antenna"
|
||||
selectWidget: "Select a widget"
|
||||
editWidgets: "Edit widgets"
|
||||
editWidgetsExit: "Done"
|
||||
@@ -159,9 +150,6 @@ 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 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."
|
||||
flagAsBot: "Mark this account as a bot"
|
||||
flagAsBotDescription: "Enable this option if this account is controlled by a program. If enabled, it will act as a flag for other developers to prevent endless interaction chains with other bots and adjust Misskey's internal systems to treat this account as a bot."
|
||||
flagAsCat: "Mark this account as a cat"
|
||||
@@ -197,7 +185,6 @@ perHour: "Per Hour"
|
||||
perDay: "Per Day"
|
||||
stopActivityDelivery: "Stop sending activities"
|
||||
blockThisInstance: "Block this instance"
|
||||
silenceThisInstance: "Silence this instance"
|
||||
operations: "Operations"
|
||||
software: "Software"
|
||||
version: "Version"
|
||||
@@ -216,9 +203,7 @@ clearQueueConfirmText: "Any undelivered notes remaining in the queue will not be
|
||||
clearCachedFiles: "Clear cache"
|
||||
clearCachedFilesConfirm: "Are you sure that you want to delete all cached remote files?"
|
||||
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 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."
|
||||
blockedInstancesDescription: "List the hostnames of the instances that you want to block separated by linebreaks. Listed instances will no longer be able to communicate with this instance."
|
||||
muteAndBlock: "Mutes and Blocks"
|
||||
mutedUsers: "Muted users"
|
||||
blockedUsers: "Blocked users"
|
||||
@@ -263,7 +248,6 @@ removed: "Successfully deleted"
|
||||
removeAreYouSure: "Are you sure that you want to remove \"{x}\"?"
|
||||
deleteAreYouSure: "Are you sure that you want to delete \"{x}\"?"
|
||||
resetAreYouSure: "Really reset?"
|
||||
areYouSure: "Are you sure?"
|
||||
saved: "Saved"
|
||||
messaging: "Chat"
|
||||
upload: "Upload"
|
||||
@@ -314,7 +298,6 @@ folderName: "Folder name"
|
||||
createFolder: "Create a folder"
|
||||
renameFolder: "Rename this folder"
|
||||
deleteFolder: "Delete this folder"
|
||||
folder: "Folder"
|
||||
addFile: "Add a file"
|
||||
emptyDrive: "Your Drive is empty"
|
||||
emptyFolder: "This folder is empty"
|
||||
@@ -328,7 +311,7 @@ copyUrl: "Copy URL"
|
||||
rename: "Rename"
|
||||
avatar: "Avatar"
|
||||
banner: "Banner"
|
||||
displayOfSensitiveMedia: "Display of sensitive media"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "When losing connection to the server"
|
||||
disconnectedFromServer: "Connection to server has been lost"
|
||||
reload: "Refresh"
|
||||
@@ -363,6 +346,7 @@ invite: "Invite"
|
||||
driveCapacityPerLocalAccount: "Drive capacity per local user"
|
||||
driveCapacityPerRemoteAccount: "Drive capacity per remote user"
|
||||
inMb: "In megabytes"
|
||||
iconUrl: "Icon URL"
|
||||
bannerUrl: "Banner image URL"
|
||||
backgroundImageUrl: "Background image URL"
|
||||
basicInfo: "Basic info"
|
||||
@@ -376,8 +360,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Enable hCaptcha"
|
||||
hcaptchaSiteKey: "Site key"
|
||||
hcaptchaSecretKey: "Secret key"
|
||||
mcaptchaSiteKey: "Site key"
|
||||
mcaptchaSecretKey: "Secret key"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Enable reCAPTCHA"
|
||||
recaptchaSiteKey: "Site key"
|
||||
@@ -420,14 +402,10 @@ aboutMisskey: "About Misskey"
|
||||
administrator: "Administrator"
|
||||
token: "Token"
|
||||
2fa: "Two-factor authentication"
|
||||
setupOf2fa: "Setup two-factor authentification"
|
||||
totp: "Authenticator App"
|
||||
totpDescription: "Use an authenticator app to enter one-time passwords"
|
||||
moderator: "Moderator"
|
||||
moderation: "Moderation"
|
||||
moderationNote: "Moderation note"
|
||||
addModerationNote: "Add moderation note"
|
||||
moderationLogs: "Moderation logs"
|
||||
nUsersMentioned: "Mentioned by {n} users"
|
||||
securityKeyAndPasskey: "Security- and passkeys"
|
||||
securityKey: "Security key"
|
||||
@@ -443,6 +421,7 @@ share: "Share"
|
||||
notFound: "Not found"
|
||||
notFoundDescription: "No page corresponding to this URL could be found."
|
||||
uploadFolder: "Default folder for uploads"
|
||||
cacheClear: "Clear cache"
|
||||
markAsReadAllNotifications: "Mark all notifications as read"
|
||||
markAsReadAllUnreadNotes: "Mark all notes as read"
|
||||
markAsReadAllTalkMessages: "Mark all messages as read"
|
||||
@@ -539,7 +518,6 @@ serverLogs: "Server logs"
|
||||
deleteAll: "Delete all"
|
||||
showFixedPostForm: "Display the posting form at the top of the timeline"
|
||||
showFixedPostFormInChannel: "Display the posting form at the top of the timeline (Channels)"
|
||||
withRepliesByDefaultForNewlyFollowed: "Include replies by newly followed users in the timeline by default"
|
||||
newNoteRecived: "There are new notes"
|
||||
sounds: "Sounds"
|
||||
sound: "Sounds"
|
||||
@@ -549,8 +527,6 @@ showInPage: "Show in page"
|
||||
popout: "Pop-out"
|
||||
volume: "Volume"
|
||||
masterVolume: "Master volume"
|
||||
notUseSound: "Disable sound"
|
||||
useSoundOnlyWhenActive: "Output sounds only if Misskey is active."
|
||||
details: "Details"
|
||||
chooseEmoji: "Select an emoji"
|
||||
unableToProcess: "The operation could not be completed"
|
||||
@@ -571,10 +547,6 @@ output: "Output"
|
||||
script: "Script"
|
||||
disablePagesScript: "Disable AiScript on Pages"
|
||||
updateRemoteUser: "Update remote user information"
|
||||
unsetUserAvatar: "Unset avatar"
|
||||
unsetUserAvatarConfirm: "Are you sure you want to unset the avatar?"
|
||||
unsetUserBanner: "Unset banner"
|
||||
unsetUserBannerConfirm: "Are you sure you want to unset the banner?"
|
||||
deleteAllFiles: "Delete all files"
|
||||
deleteAllFilesConfirm: "Are you sure that you want to delete all files?"
|
||||
removeAllFollowing: "Unfollow all followed users"
|
||||
@@ -599,12 +571,12 @@ serviceworkerInfo: "Must be enabled for push notifications."
|
||||
deletedNote: "Deleted note"
|
||||
invisibleNote: "Invisible note"
|
||||
enableInfiniteScroll: "Automatically load more"
|
||||
visibility: "Visibility"
|
||||
visibility: "Visiblility"
|
||||
poll: "Poll"
|
||||
useCw: "Hide content"
|
||||
enablePlayer: "Open video player"
|
||||
disablePlayer: "Close video player"
|
||||
expandTweet: "Expand post"
|
||||
expandTweet: "Expand tweet"
|
||||
themeEditor: "Theme editor"
|
||||
description: "Description"
|
||||
describeFile: "Add caption"
|
||||
@@ -646,7 +618,6 @@ smtpSecure: "Use implicit SSL/TLS for SMTP connections"
|
||||
smtpSecureInfo: "Turn this off when using STARTTLS"
|
||||
testEmail: "Test email delivery"
|
||||
wordMute: "Word mute"
|
||||
hardWordMute: "Hard word mute"
|
||||
regexpError: "Regular Expression error"
|
||||
regexpErrorDescription: "An error occurred in the regular expression on line {line} of your {tab} word mutes:"
|
||||
instanceMute: "Instance Mutes"
|
||||
@@ -674,7 +645,6 @@ behavior: "Behavior"
|
||||
sample: "Sample"
|
||||
abuseReports: "Reports"
|
||||
reportAbuse: "Report"
|
||||
reportAbuseRenote: "Report renote"
|
||||
reportAbuseOf: "Report {name}"
|
||||
fillAbuseReportDescription: "Please fill in details regarding this report. If it is about a specific note, please include its URL."
|
||||
abuseReported: "Your report has been sent. Thank you very much."
|
||||
@@ -702,7 +672,6 @@ createNewClip: "Create new clip"
|
||||
unclip: "Unclip"
|
||||
confirmToUnclipAlreadyClippedNote: "This note is already part of the \"{name}\" clip. Do you want to remove it from this clip instead?"
|
||||
public: "Public"
|
||||
private: "Private"
|
||||
i18nInfo: "Misskey is being translated into various languages by volunteers. You can help at {link}."
|
||||
manageAccessTokens: "Manage access tokens"
|
||||
accountInfo: "Account Info"
|
||||
@@ -724,10 +693,9 @@ driveUsage: "Drive space usage"
|
||||
noCrawle: "Reject crawler indexing"
|
||||
noCrawleDescription: "Ask search engines to not index your profile page, notes, Pages, etc."
|
||||
lockedAccountInfo: "Unless you set your note visiblity to \"Followers only\", your notes will be visible to anyone, even if you require followers to be manually approved."
|
||||
alwaysMarkSensitive: "Mark as sensitive by default"
|
||||
alwaysMarkSensitive: "Mark as NSFW by default"
|
||||
loadRawImages: "Load original images instead of showing thumbnails"
|
||||
disableShowingAnimatedImages: "Don't play animated images"
|
||||
highlightSensitiveMedia: "Highlight sensitive media"
|
||||
verificationEmailSent: "A verification email has been sent. Please follow the included link to complete verification."
|
||||
notSet: "Not set"
|
||||
emailVerified: "Email has been verified"
|
||||
@@ -810,7 +778,7 @@ active: "Active"
|
||||
offline: "Offline"
|
||||
notRecommended: "Not recommended"
|
||||
botProtection: "Bot Protection"
|
||||
instanceBlocking: "Blocked/Silenced Instances"
|
||||
instanceBlocking: "Blocked Instances"
|
||||
selectAccount: "Select account"
|
||||
switchAccount: "Switch account"
|
||||
enabled: "Enabled"
|
||||
@@ -880,8 +848,8 @@ makeReactionsPublicDescription: "This will make the list of all your past reacti
|
||||
classic: "Classic"
|
||||
muteThread: "Mute thread"
|
||||
unmuteThread: "Unmute thread"
|
||||
followingVisibility: "Visibility of follows"
|
||||
followersVisibility: "Visibility of followers"
|
||||
ffVisibility: "Follows/Followers Visibility"
|
||||
ffVisibilityDescription: "Allows you to configure who can see who you follow and who follows you."
|
||||
continueThread: "View thread continuation"
|
||||
deleteAccountConfirm: "This will irreversibly delete your account. Proceed?"
|
||||
incorrectPassword: "Incorrect password."
|
||||
@@ -931,7 +899,7 @@ typeToConfirm: "Please enter {x} to confirm"
|
||||
deleteAccount: "Delete account"
|
||||
document: "Documentation"
|
||||
numberOfPageCache: "Number of cached pages"
|
||||
numberOfPageCacheDescription: "Increasing this number will improve convenience for but cause more load as more memory usage on the user's device."
|
||||
numberOfPageCacheDescription: "Increasing this number will improve convenience for users but cause more server load as well as more memory to be used."
|
||||
logoutConfirm: "Really log out?"
|
||||
lastActiveDate: "Last used at"
|
||||
statusbar: "Status bar"
|
||||
@@ -944,16 +912,16 @@ type: "Type"
|
||||
speed: "Speed"
|
||||
slow: "Slow"
|
||||
fast: "Fast"
|
||||
sensitiveMediaDetection: "Detection of sensitive media"
|
||||
sensitiveMediaDetection: "Detection of NSFW media"
|
||||
localOnly: "Local only"
|
||||
remoteOnly: "Remote only"
|
||||
failedToUpload: "Upload failed"
|
||||
cannotUploadBecauseInappropriate: "This file could not be uploaded because parts of it have been detected as potentially inappropriate."
|
||||
cannotUploadBecauseInappropriate: "This file could not be uploaded because parts of it have been detected as potentially NSFW."
|
||||
cannotUploadBecauseNoFreeSpace: "Upload failed due to lack of Drive capacity."
|
||||
cannotUploadBecauseExceedsFileSizeLimit: "This file cannot be uploaded as it exceeds the file size limit."
|
||||
beta: "Beta"
|
||||
enableAutoSensitive: "Automatic marking as sensitive"
|
||||
enableAutoSensitiveDescription: "Allows automatic detection and marking of sensitive media through Machine Learning where possible. Even if this option is disabled, it may be enabled instance-wide."
|
||||
enableAutoSensitive: "Automatic NSFW-Marking"
|
||||
enableAutoSensitiveDescription: "Allows automatic detection and marking of NSFW media through Machine Learning where possible. Even if this option is disabled, it may be enabled instance-wide."
|
||||
activeEmailValidationDescription: "Enables stricter validation of email addresses, which includes checking for disposable addresses and by whether it can actually be communicated with. When unchecked, only the format of the email is validated."
|
||||
navbar: "Navigation bar"
|
||||
shuffle: "Shuffle"
|
||||
@@ -991,7 +959,6 @@ assign: "Assign"
|
||||
unassign: "Unassign"
|
||||
color: "Color"
|
||||
manageCustomEmojis: "Manage Custom Emojis"
|
||||
manageAvatarDecorations: "Manage avatar decorations"
|
||||
youCannotCreateAnymore: "You've hit the creation limit."
|
||||
cannotPerformTemporary: "Temporarily unavailable"
|
||||
cannotPerformTemporaryDescription: "This action cannot be performed temporarily due to exceeding the execution limit. Please wait for a while and then try again."
|
||||
@@ -1032,8 +999,6 @@ resetPasswordConfirm: "Really reset your password?"
|
||||
sensitiveWords: "Sensitive words"
|
||||
sensitiveWordsDescription: "The visibility of all notes containing any of the configured words will be set to \"Home\" automatically. You can list multiple by separating them via line breaks."
|
||||
sensitiveWordsDescription2: "Using spaces will create AND expressions and surrounding keywords with slashes will turn them into a regular expression."
|
||||
hiddenTags: "Hidden hashtags"
|
||||
hiddenTagsDescription: "Select tags which will not shown on trend list.\nMultiple tags could be registered by lines."
|
||||
notesSearchNotAvailable: "Note search is unavailable."
|
||||
license: "License"
|
||||
unfavoriteConfirm: "Really remove from favorites?"
|
||||
@@ -1045,8 +1010,7 @@ retryAllQueuesConfirmText: "This will temporarily increase the server load."
|
||||
enableChartsForRemoteUser: "Generate remote user data charts"
|
||||
enableChartsForFederatedInstances: "Generate remote instance data charts"
|
||||
showClipButtonInNoteFooter: "Add \"Clip\" to note action menu"
|
||||
reactionsDisplaySize: "Reaction display size"
|
||||
limitWidthOfReaction: "Limits the maximum width of reactions and display them in reduced size."
|
||||
largeNoteReactions: "Enlargen displayed reactions"
|
||||
noteIdOrUrl: "Note ID or URL"
|
||||
video: "Video"
|
||||
videos: "Videos"
|
||||
@@ -1070,7 +1034,7 @@ vertical: "Vertical"
|
||||
horizontal: "Horizontal"
|
||||
position: "Position"
|
||||
serverRules: "Server rules"
|
||||
pleaseConfirmBelowBeforeSignup: "To register on this server, you must review and agree to the following:"
|
||||
pleaseConfirmBelowBeforeSignup: "Please confirm the below before signing up."
|
||||
pleaseAgreeAllToContinue: "You must agree to all above fields to continue."
|
||||
continue: "Continue"
|
||||
preservedUsernames: "Reserved usernames"
|
||||
@@ -1099,100 +1063,6 @@ goToMisskey: "To Misskey"
|
||||
additionalEmojiDictionary: "Additional emoji dictionaries"
|
||||
installed: "Installed"
|
||||
branding: "Branding"
|
||||
enableServerMachineStats: "Publish server hardware stats"
|
||||
enableIdenticonGeneration: "Enable user identicon generation"
|
||||
turnOffToImprovePerformance: "Turning this off can increase performance."
|
||||
createInviteCode: "Generate invite"
|
||||
createWithOptions: "Generate with options"
|
||||
createCount: "Invite count"
|
||||
inviteCodeCreated: "Invite generated"
|
||||
inviteLimitExceeded: "You've exceeded the limit of invites you can generate."
|
||||
createLimitRemaining: "Invite limit: {limit} remaining"
|
||||
inviteLimitResetCycle: "This limit will reset to {limit} at {time}."
|
||||
expirationDate: "Expiration date"
|
||||
noExpirationDate: "No expiration"
|
||||
inviteCodeUsedAt: "Invite code used at"
|
||||
registeredUserUsingInviteCode: "Invite used by"
|
||||
waitingForMailAuth: "Email verification pending"
|
||||
inviteCodeCreator: "Invite created by"
|
||||
usedAt: "Used at"
|
||||
unused: "Unused"
|
||||
used: "Used"
|
||||
expired: "Expired"
|
||||
doYouAgree: "Agree?"
|
||||
beSureToReadThisAsItIsImportant: "Please read this important information."
|
||||
iHaveReadXCarefullyAndAgree: "I have read the text \"{x}\" and agree."
|
||||
dialog: "Dialog"
|
||||
icon: "Icon"
|
||||
forYou: "For you"
|
||||
currentAnnouncements: "Current announcements"
|
||||
pastAnnouncements: "Past announcements"
|
||||
youHaveUnreadAnnouncements: "There are unread announcements."
|
||||
useSecurityKey: "Please follow your browser's or device's instructions to use your security- or passkey."
|
||||
replies: "Reply"
|
||||
renotes: "Renotes"
|
||||
loadReplies: "Show replies"
|
||||
loadConversation: "Show conversation"
|
||||
pinnedList: "Pinned list"
|
||||
keepScreenOn: "Keep screen on"
|
||||
verifiedLink: "Link ownership has been verified"
|
||||
notifyNotes: "Notify about new notes"
|
||||
unnotifyNotes: "Stop notifying about new notes"
|
||||
authentication: "Authentication"
|
||||
authenticationRequiredToContinue: "Please authenticate to continue"
|
||||
dateAndTime: "Timestamp"
|
||||
showRenotes: "Show renotes"
|
||||
edited: "Edited"
|
||||
notificationRecieveConfig: "Notification Settings"
|
||||
mutualFollow: "Mutual follow"
|
||||
fileAttachedOnly: "Only notes with files"
|
||||
showRepliesToOthersInTimeline: "Show replies to others in timeline"
|
||||
hideRepliesToOthersInTimeline: "Hide replies to others from timeline"
|
||||
showRepliesToOthersInTimelineAll: "Show replies to others from everyone you follow in timeline"
|
||||
hideRepliesToOthersInTimelineAll: "Hide replies to others from everyone you follow in timeline"
|
||||
confirmShowRepliesAll: "This operation is irreversible. Would you really like to show replies to others from everyone you follow in your timeline?"
|
||||
confirmHideRepliesAll: "This operation is irreversible. Would you really like to hide replies to others from everyone you follow in your timeline?"
|
||||
externalServices: "External Services"
|
||||
impressum: "Impressum"
|
||||
impressumUrl: "Impressum URL"
|
||||
impressumDescription: "In some countries, like germany, the inclusion of operator contact information (an Impressum) is legally required for commercial websites."
|
||||
privacyPolicy: "Privacy Policy"
|
||||
privacyPolicyUrl: "Privacy Policy URL"
|
||||
tosAndPrivacyPolicy: "Terms of Service and Privacy Policy"
|
||||
avatarDecorations: "Avatar decorations"
|
||||
attach: "Attach"
|
||||
detach: "Remove"
|
||||
angle: "Angle"
|
||||
flip: "Flip"
|
||||
showAvatarDecorations: "Show avatar decorations"
|
||||
releaseToRefresh: "Release to refresh"
|
||||
refreshing: "Refreshing..."
|
||||
pullDownToRefresh: "Pull down to refresh"
|
||||
disableStreamingTimeline: "Disable real-time timeline updates"
|
||||
useGroupedNotifications: "Display grouped notifications"
|
||||
signupPendingError: "There was a problem verifying the email address. The link may have expired."
|
||||
cwNotationRequired: "If \"Hide content\" is enabled, a description must be provided."
|
||||
doReaction: "Add reaction"
|
||||
code: "Code"
|
||||
reloadRequiredToApplySettings: "Reloading is required to apply the settings."
|
||||
decorate: "Decorate"
|
||||
bubbleGame: "Bubble Game"
|
||||
sfx: "Sound Effects"
|
||||
replay: "Replay"
|
||||
lastNDays: "Last {n} days"
|
||||
_announcement:
|
||||
forExistingUsers: "Existing users only"
|
||||
forExistingUsersDescription: "This announcement will only be shown to users existing at the point of publishment if enabled. If disabled, those newly signing up after it has been posted will also see it."
|
||||
needConfirmationToRead: "Require separate read confirmation"
|
||||
needConfirmationToReadDescription: "A separate prompt to confirm marking this announcement as read will be displayed if enabled. This announcement will also be excluded from any \"Mark all as read\" functionality."
|
||||
end: "Archive announcement"
|
||||
tooManyActiveAnnouncementDescription: "Having too many active announcements may worsen the user experience. Please consider archiving announcements that have become obsolete."
|
||||
readConfirmTitle: "Mark as read?"
|
||||
readConfirmText: "This will mark the contents of \"{title}\" as read."
|
||||
shouldNotBeUsedToPresentPermanentInfo: "As it may significantly impact the user experience for new users, it is recommended to use notifications in the flow information rather than stock information."
|
||||
dialogAnnouncementUxWarn: "Having two or more dialog-style notifications simultaneously can significantly impact the user experience, so please use them carefully."
|
||||
silence: "No notification"
|
||||
silenceDescription: "Turning this on will skip the notification of this announcement and the user won't need to read it."
|
||||
_initialAccountSetting:
|
||||
accountCreated: "Your account was successfully created!"
|
||||
letsStartAccountSetup: "For starters, let's set up your profile."
|
||||
@@ -1205,91 +1075,11 @@ _initialAccountSetting:
|
||||
pushNotificationDescription: "Enabling push notifications will allow you to receive notifications from {name} directly on your device."
|
||||
initialAccountSettingCompleted: "Profile setup complete!"
|
||||
haveFun: "Enjoy {name}!"
|
||||
youCanContinueTutorial: "You can proceed to a tutorial on how to use {name} (Misskey) or you can exit the setup here and start using it immediately."
|
||||
startTutorial: "Start Tutorial"
|
||||
ifYouNeedLearnMore: "If you'd like to learn more about how to use {name} (Misskey), please visit {link}."
|
||||
skipAreYouSure: "Really skip profile setup?"
|
||||
laterAreYouSure: "Really do profile setup later?"
|
||||
_initialTutorial:
|
||||
launchTutorial: "Start Tutorial"
|
||||
title: "Tutorial"
|
||||
wellDone: "Well done!"
|
||||
skipAreYouSure: "Quit Tutorial?"
|
||||
_landing:
|
||||
title: "Welcome to the Tutorial"
|
||||
description: "Here, you can learn the basics of using Misskey and its features."
|
||||
_note:
|
||||
title: "What is a Note?"
|
||||
description: "Posts on Misskey are called 'Notes.' Notes are arranged chronologically on the timeline and are updated in real-time."
|
||||
reply: "Click on this button to reply to a message. It's also possible to reply to replies, continuing the conversation like a thread."
|
||||
renote: "You can share that note to your own timeline. You can also quote them with your comments."
|
||||
reaction: "You can add reactions to the Note. More details will be explained on the next page."
|
||||
menu: "You can view Note details, copy links, and perform various other actions."
|
||||
_reaction:
|
||||
title: "What are Reactions?"
|
||||
description: "Notes can be reacted to with various emojis. Reactions allow you to express nuances that may not be conveyed with just a 'like.'"
|
||||
letsTryReacting: "Reactions can be added by clicking the '+' button on the note. Try reacting to this sample note!"
|
||||
reactToContinue: "Add a reaction to proceed."
|
||||
reactNotification: "You'll receive real-time notifications when someone reacts to your note."
|
||||
reactDone: "You can undo a reaction by pressing the '-' button."
|
||||
_timeline:
|
||||
title: "The Concept of Timelines"
|
||||
description1: "Misskey provides multiple timelines based on usage (some may not be available depending on the server's policies)."
|
||||
home: "You can view notes from accounts you follow."
|
||||
local: "You can view notes from all users on this server."
|
||||
social: "Notes from the Home and Local timelines will be displayed."
|
||||
global: "You can view notes from all connected servers."
|
||||
description2: "You can switch between timelines at the top of the screen at any time."
|
||||
description3: "Additionally, there are list timelines and channel timelines. For more details, please refer to {link}."
|
||||
_postNote:
|
||||
title: "Note Posting Settings"
|
||||
description1: "When posting a note on Misskey, various options are available. The posting form looks like this."
|
||||
_visibility:
|
||||
description: "You can limit who can view your note."
|
||||
public: "Your note will be visible for all users."
|
||||
home: "Public only on the Home timeline. People visiting your profile, via followers, and through renotes can see it."
|
||||
followers: "Visible to followers only. Only followers can see it and no one else, and it cannot be renoted by others."
|
||||
direct: "Visible only to specified users, and the recipient will be notified. It can be used as an alternative to direct messaging."
|
||||
doNotSendConfidencialOnDirect1: "Be careful when sending sensitive information!"
|
||||
doNotSendConfidencialOnDirect2: "Administrators of the server can see what you write. Be careful with sensitive information when sending direct notes to users on untrusted servers."
|
||||
localOnly: "Posting with this flag will not federate the note to other servers. Users on other servers will not be able to view these notes directly, regardless of the display settings above."
|
||||
_cw:
|
||||
title: "Content Warning"
|
||||
description: "Instead of the body, the content written in 'comments' field will be displayed. Pressing \"read more\" will reveal the body."
|
||||
_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."
|
||||
_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."
|
||||
tryThisFile: "Try marking the image attached in this form as sensitive!"
|
||||
_exampleNote:
|
||||
note: "Oops, messed up opening the natto lid..."
|
||||
method: "To mark an attachment as sensitive, click the file thumbnail, open the menu, and click \"Mark as Sensitive.\""
|
||||
sensitiveSucceeded: "When attaching files, please set sensitivities in accordance with the server guidelines."
|
||||
doItToContinue: "Mark the attachment file as sensitive to proceed."
|
||||
_done:
|
||||
title: "You've completed the tutorial! 🎉"
|
||||
description: "The functions introduced here are just a small part. For a more detailed understanding of using Misskey, please refer to {link}."
|
||||
_timelineDescription:
|
||||
home: "In the Home timeline, you can see notes from accounts you follow."
|
||||
local: "In the Local timeline, you can see notes from all users on this server."
|
||||
social: "The Social timeline displays notes from both the Home and Local timelines."
|
||||
global: "In the Global timeline, you can see notes from all connected servers."
|
||||
_serverRules:
|
||||
description: "A set of rules to be displayed before registration. Setting a summary of the Terms of Service is recommended."
|
||||
_serverSettings:
|
||||
iconUrl: "Icon URL"
|
||||
appIconDescription: "Specifies the icon to use when {host} is displayed as an app."
|
||||
appIconUsageExample: "E.g. As PWA, or when displayed as a home screen bookmark on a phone"
|
||||
appIconStyleRecommendation: "As the icon may be cropped to a square or circle, an icon with colored margin around the content is recommended."
|
||||
appIconResolutionMustBe: "The minimum resolution is {resolution}."
|
||||
manifestJsonOverride: "manifest.json Override"
|
||||
shortName: "Short name"
|
||||
shortNameDescription: "A shorthand for the instance's name that can be displayed if the full official name is long."
|
||||
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."
|
||||
_accountMigration:
|
||||
moveFrom: "Migrate another account to this one"
|
||||
moveFromSub: "Create alias to another account"
|
||||
@@ -1544,16 +1334,6 @@ _achievements:
|
||||
title: "Brain Diver"
|
||||
description: "Post the link to Brain Diver"
|
||||
flavor: "Misskey-Misskey La-Tu-Ma"
|
||||
_smashTestNotificationButton:
|
||||
title: "Test overflow"
|
||||
description: "Trigger the notification test repeatedly within an extremely short time"
|
||||
_tutorialCompleted:
|
||||
title: "Misskey Elementary Course Diploma"
|
||||
description: "Tutorial completed"
|
||||
_bubbleGameExplodingHead:
|
||||
title: "🤯"
|
||||
_bubbleGameDoubleExplodingHead:
|
||||
title: "Double🤯"
|
||||
_role:
|
||||
new: "New role"
|
||||
edit: "Edit role"
|
||||
@@ -1564,9 +1344,7 @@ _role:
|
||||
assignTarget: "Assignment type"
|
||||
descriptionOfAssignTarget: "<b>Manual</b> to manually change who is part of this role and who is not.\n<b>Conditional</b> to have users be automatically assigned and removed from this role based on a condition."
|
||||
manual: "Manual"
|
||||
manualRoles: "Manual roles"
|
||||
conditional: "Conditional"
|
||||
conditionalRoles: "Conditional roles"
|
||||
condition: "Condition"
|
||||
isConditionalRole: "This is a conditional role."
|
||||
isPublic: "Public role"
|
||||
@@ -1595,11 +1373,7 @@ _role:
|
||||
ltlAvailable: "Can view the local timeline"
|
||||
canPublicNote: "Can send public notes"
|
||||
canInvite: "Can create instance invite codes"
|
||||
inviteLimit: "Invite limit"
|
||||
inviteLimitCycle: "Invite limit cooldown"
|
||||
inviteExpirationTime: "Invite expiration interval"
|
||||
canManageCustomEmojis: "Can manage custom emojis"
|
||||
canManageAvatarDecorations: "Manage avatar decorations"
|
||||
driveCapacity: "Drive capacity"
|
||||
alwaysMarkNsfw: "Always mark files as NSFW"
|
||||
pinMax: "Maximum number of pinned notes"
|
||||
@@ -1614,7 +1388,6 @@ _role:
|
||||
descriptionOfRateLimitFactor: "Lower rate limits are less restrictive, higher ones more restrictive. "
|
||||
canHideAds: "Can hide ads"
|
||||
canSearchNotes: "Usage of note search"
|
||||
canUseTranslator: "Translator usage"
|
||||
_condition:
|
||||
isLocal: "Local user"
|
||||
isRemote: "Remote user"
|
||||
@@ -1630,10 +1403,10 @@ _role:
|
||||
or: "OR-Condition"
|
||||
not: "NOT-Condition"
|
||||
_sensitiveMediaDetection:
|
||||
description: "Reduces the effort of server moderation through automatically recognizing sensitive media via Machine Learning. This will slightly increase the load on the server."
|
||||
description: "Reduces the effort of server moderation through automatically recognizing NSFW media via Machine Learning. This will slightly increase the load on the server."
|
||||
sensitivity: "Detection sensitivity"
|
||||
sensitivityDescription: "Reducing the sensitivity will lead to fewer misdetections (false positives) whereas increasing it will lead to fewer missed detections (false negatives)."
|
||||
setSensitiveFlagAutomatically: "Mark as sensitive"
|
||||
setSensitiveFlagAutomatically: "Mark as NSFW"
|
||||
setSensitiveFlagAutomaticallyDescription: "The results of the internal detection will be retained even if this option is turned off."
|
||||
analyzeVideos: "Enable analysis of videos"
|
||||
analyzeVideosDescription: "Analyzes videos in addition to images. This will slightly increase the load on the server."
|
||||
@@ -1662,11 +1435,6 @@ _ad:
|
||||
back: "Back"
|
||||
reduceFrequencyOfThisAd: "Show this ad less"
|
||||
hide: "Hide"
|
||||
timezoneinfo: "The day of the week is determined from the server's timezone."
|
||||
adsSettings: "Ad settings"
|
||||
notesPerOneAd: "Real-time update ad placement interval (Notes per ad)"
|
||||
setZeroToDisable: "Set this value to 0 to disable real-time update ads"
|
||||
adsTooClose: "The current ad interval may significantly worsen the user experience due to being too low."
|
||||
_forgotPassword:
|
||||
enterEmail: "Enter the email address you used to register. A link with which you can reset your password will then be sent to it."
|
||||
ifNoEmail: "If you did not use an email during registration, please contact the instance administrator instead."
|
||||
@@ -1685,7 +1453,6 @@ _plugin:
|
||||
install: "Install plugins"
|
||||
installWarn: "Please do not install untrustworthy plugins."
|
||||
manage: "Manage plugins"
|
||||
viewSource: "View source"
|
||||
_preferencesBackups:
|
||||
list: "Created backups"
|
||||
saveNew: "Save new backup"
|
||||
@@ -1719,10 +1486,9 @@ _aboutMisskey:
|
||||
donate: "Donate to Misskey"
|
||||
morePatrons: "We also appreciate the support of many other helpers not listed here. Thank you! 🥰"
|
||||
patrons: "Patrons"
|
||||
projectMembers: "Project members"
|
||||
_displayOfSensitiveMedia:
|
||||
respect: "Hide media marked as sensitive"
|
||||
ignore: "Display media marked as sensitive"
|
||||
_nsfw:
|
||||
respect: "Hide NSFW media"
|
||||
ignore: "Don't hide NSFW media"
|
||||
force: "Hide all media"
|
||||
_instanceTicker:
|
||||
none: "Never show"
|
||||
@@ -1744,7 +1510,6 @@ _channel:
|
||||
notesCount: "{n} Notes"
|
||||
nameAndDescription: "Name and description"
|
||||
nameOnly: "Name only"
|
||||
allowRenoteToExternal: "Allow renote and quote outside the channel"
|
||||
_menuDisplay:
|
||||
sideFull: "Side"
|
||||
sideIcon: "Side (Icons)"
|
||||
@@ -1754,6 +1519,11 @@ _wordMute:
|
||||
muteWords: "Muted words"
|
||||
muteWordsDescription: "Separate with spaces for an AND condition or with line breaks for an OR condition."
|
||||
muteWordsDescription2: "Surround keywords with slashes to use regular expressions."
|
||||
softDescription: "Hide notes that fulfil the set conditions from the timeline."
|
||||
hardDescription: "Prevents notes fulfilling the set conditions from being added to the timeline. In addition, these notes will not be added to the timeline even if the conditions are changed."
|
||||
soft: "Soft"
|
||||
hard: "Hard"
|
||||
mutedNotes: "Muted notes"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "This will mute any notes/renotes from the listed instances, including those of users replying to a user from a muted instance."
|
||||
instanceMuteDescription2: "Separate with newlines"
|
||||
@@ -1817,6 +1587,9 @@ _theme:
|
||||
infoFg: "Information text"
|
||||
infoWarnBg: "Warning background"
|
||||
infoWarnFg: "Warning text"
|
||||
cwBg: "CW button background"
|
||||
cwFg: "CW button text"
|
||||
cwHoverBg: "CW button background (Hover)"
|
||||
toastBg: "Notification background"
|
||||
toastFg: "Notification text"
|
||||
buttonBg: "Button background"
|
||||
@@ -1834,16 +1607,10 @@ _sfx:
|
||||
note: "New note"
|
||||
noteMy: "Own note"
|
||||
notification: "Notifications"
|
||||
chat: "Chat"
|
||||
chatBg: "Chat (Background)"
|
||||
antenna: "Antennas"
|
||||
channel: "Channel notifications"
|
||||
reaction: "On choosing a reaction"
|
||||
_soundSettings:
|
||||
driveFile: "Use an audio file in Drive."
|
||||
driveFileWarn: "Select an audio file from Drive."
|
||||
driveFileTypeWarn: "This file is not supported"
|
||||
driveFileTypeWarnDescription: "Select an audio file"
|
||||
driveFileDurationWarn: "The audio is too long."
|
||||
driveFileDurationWarnDescription: "Long audio may disrupt using Misskey. Still continue?"
|
||||
_ago:
|
||||
future: "Future"
|
||||
justNow: "Just now"
|
||||
@@ -1855,33 +1622,36 @@ _ago:
|
||||
monthsAgo: "{n}mo ago"
|
||||
yearsAgo: "{n}y ago"
|
||||
invalid: "None"
|
||||
_timeIn:
|
||||
seconds: "In {n}s"
|
||||
minutes: "In {n}m"
|
||||
hours: "In {n}h"
|
||||
days: "In {n}d"
|
||||
weeks: "In {n}w"
|
||||
months: "In {n}mo"
|
||||
years: "In {n}y"
|
||||
_time:
|
||||
second: "Second(s)"
|
||||
minute: "Minute(s)"
|
||||
hour: "Hour(s)"
|
||||
day: "Day(s)"
|
||||
_timelineTutorial:
|
||||
title: "How to use Misskey"
|
||||
step1_1: "This is the \"timeline\". All \"notes\" submitted on {name} will be chronologically displayed here."
|
||||
step1_2: "There are a few different timelines. For example, the \"Home timeline\" will contain notes of users you follow, and the \"Local timeline\" will contain notes from all users of {name}."
|
||||
step2_1: "Let's try posting a note next. You can do so by pressing the button with a pencil icon."
|
||||
step2_2: "How about writing a self-introduction, or just \"Hello {name}!\" if you don't feel like it?"
|
||||
step3_1: "Finished posting your first note?"
|
||||
step3_2: "Your first note should now be displayed on your timeline."
|
||||
step4_1: "You can also attach \"Reactions\" to notes."
|
||||
step4_2: "To attach a reaction, press the \"+\" mark on a note and choose an emoji you'd like to react with."
|
||||
_2fa:
|
||||
alreadyRegistered: "You have already registered a 2-factor authentication device."
|
||||
registerTOTP: "Register authenticator app"
|
||||
passwordToTOTP: "Enter your password"
|
||||
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"
|
||||
step2Url: "You can also enter this URL if you're using a desktop program:"
|
||||
step3Title: "Enter an authentication code"
|
||||
step3: "Enter the authentication code (token) provided by your app to finish setup."
|
||||
setupCompleted: "Setup complete"
|
||||
step3: "Enter the token provided by your app to finish setup."
|
||||
step4: "From now on, any future login attempts will ask for such a login token."
|
||||
securityKeyNotSupported: "Your browser does not support security keys."
|
||||
registerTOTPBeforeKey: "Please set up an authenticator app to register a security or pass key."
|
||||
securityKeyInfo: "Besides fingerprint or PIN authentication, you can also setup authentication via hardware security keys that support FIDO2 to further secure your account."
|
||||
chromePasskeyNotSupported: "Chrome passkeys are currently not supported."
|
||||
registerSecurityKey: "Register a security or pass key"
|
||||
securityKeyName: "Enter a key name"
|
||||
tapSecurityKey: "Please follow your browser to register the security or pass key"
|
||||
@@ -1892,11 +1662,6 @@ _2fa:
|
||||
renewTOTPConfirm: "This will cause verification codes from your previous app to stop working"
|
||||
renewTOTPOk: "Reconfigure"
|
||||
renewTOTPCancel: "Cancel"
|
||||
checkBackupCodesBeforeCloseThisWizard: "Before you close this window, please note the following backup codes."
|
||||
backupCodes: "Backup codes"
|
||||
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."
|
||||
_permissions:
|
||||
"read:account": "View your account information"
|
||||
"write:account": "Edit your account information"
|
||||
@@ -1918,10 +1683,10 @@ _permissions:
|
||||
"read:reactions": "View your reactions"
|
||||
"write:reactions": "Edit your reactions"
|
||||
"write:votes": "Vote on a poll"
|
||||
"read:pages": "View your Pages"
|
||||
"write:pages": "Edit or delete your Pages"
|
||||
"read:page-likes": "View list of liked Pages"
|
||||
"write:page-likes": "Edit list of liked Pages"
|
||||
"read:pages": "View your pages"
|
||||
"write:pages": "Edit or delete your pages"
|
||||
"read:page-likes": "View your likes on pages"
|
||||
"write:page-likes": "Edit your likes on pages"
|
||||
"read:user-groups": "View your user groups"
|
||||
"write:user-groups": "Edit or delete your user groups"
|
||||
"read:channels": "View your channels"
|
||||
@@ -1930,10 +1695,6 @@ _permissions:
|
||||
"write:gallery": "Edit your gallery"
|
||||
"read:gallery-likes": "View your list of liked gallery posts"
|
||||
"write:gallery-likes": "Edit your list of liked gallery posts"
|
||||
"read:flash": "View Play"
|
||||
"write:flash": "Edit Plays"
|
||||
"read:flash-likes": "View list of liked Plays"
|
||||
"write:flash-likes": "Edit list of liked Plays"
|
||||
_auth:
|
||||
shareAccessTitle: "Granting application permissions"
|
||||
shareAccess: "Would you like to authorize \"{name}\" to access this account?"
|
||||
@@ -1949,7 +1710,6 @@ _antennaSources:
|
||||
homeTimeline: "Notes from followed users"
|
||||
users: "Notes from specific users"
|
||||
userList: "Notes from a specified list of users"
|
||||
userBlacklist: "All notes except for those of one or more specified users"
|
||||
_weekday:
|
||||
sunday: "Sunday"
|
||||
monday: "Monday"
|
||||
@@ -1988,7 +1748,6 @@ _widgets:
|
||||
_userList:
|
||||
chooseList: "Select a list"
|
||||
clicker: "Clicker"
|
||||
birthdayFollowings: "Users who celebrate their birthday today"
|
||||
_cw:
|
||||
hide: "Hide"
|
||||
show: "Show content"
|
||||
@@ -2050,18 +1809,15 @@ _profile:
|
||||
metadataContent: "Content"
|
||||
changeAvatar: "Change avatar"
|
||||
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."
|
||||
_exportOrImport:
|
||||
allNotes: "All notes"
|
||||
favoritedNotes: "Favorite notes"
|
||||
clips: "Clip"
|
||||
followingList: "Followed users"
|
||||
muteList: "Muted users"
|
||||
blockingList: "Blocked users"
|
||||
userLists: "User lists"
|
||||
excludeMutingUsers: "Exclude muted users"
|
||||
excludeInactiveUsers: "Exclude inactive users"
|
||||
withReplies: "Include replies from imported users in the timeline"
|
||||
_charts:
|
||||
federation: "Federation"
|
||||
apRequest: "Requests"
|
||||
@@ -2171,21 +1927,11 @@ _notification:
|
||||
youReceivedFollowRequest: "You've received a follow request"
|
||||
yourFollowRequestAccepted: "Your follow request was accepted"
|
||||
pollEnded: "Poll results have become available"
|
||||
newNote: "New note"
|
||||
unreadAntennaNote: "Antenna {name}"
|
||||
roleAssigned: "Role given"
|
||||
emptyPushNotificationMessage: "Push notifications have been updated"
|
||||
achievementEarned: "Achievement unlocked"
|
||||
testNotification: "Test notification"
|
||||
checkNotificationBehavior: "Check notification appearance"
|
||||
sendTestNotification: "Send test notification"
|
||||
notificationWillBeDisplayedLikeThis: "Notifications look like this"
|
||||
reactedBySomeUsers: "{n} users reacted"
|
||||
renotedBySomeUsers: "Renote from {n} users"
|
||||
followedBySomeUsers: "Followed by {n} users"
|
||||
_types:
|
||||
all: "All"
|
||||
note: "New notes"
|
||||
follow: "New followers"
|
||||
mention: "Mentions"
|
||||
reply: "Replies"
|
||||
@@ -2195,7 +1941,6 @@ _notification:
|
||||
pollEnded: "Polls ending"
|
||||
receiveFollowRequest: "Received follow requests"
|
||||
followRequestAccepted: "Accepted follow requests"
|
||||
roleAssigned: "Role given"
|
||||
achievementEarned: "Achievement unlocked"
|
||||
app: "Notifications from linked apps"
|
||||
_actions:
|
||||
@@ -2219,9 +1964,6 @@ _deck:
|
||||
introduction: "Create the perfect interface for you by arranging columns freely!"
|
||||
introduction2: "Click on the + on the right of the screen to add new colums whenever you want."
|
||||
widgetsIntroduction: "Please select \"Edit widgets\" in the column menu and add a widget."
|
||||
useSimpleUiForNonRootPages: "Use simple UI for navigated pages"
|
||||
usedAsMinWidthWhenFlexible: "Minimum width will be used for this when the \"Auto-adjust width\" option is enabled"
|
||||
flexible: "Auto-adjust width"
|
||||
_columns:
|
||||
main: "Main"
|
||||
widgets: "Widgets"
|
||||
@@ -2256,102 +1998,3 @@ _webhookSettings:
|
||||
renote: "When renoted"
|
||||
reaction: "When receiving a reaction"
|
||||
mention: "When being mentioned"
|
||||
_moderationLogTypes:
|
||||
createRole: "Role created"
|
||||
deleteRole: "Role deleted"
|
||||
updateRole: "Role updated"
|
||||
assignRole: "Assigned to role"
|
||||
unassignRole: "Removed from role"
|
||||
suspend: "Suspended"
|
||||
unsuspend: "Unsuspended"
|
||||
addCustomEmoji: "Custom emoji added"
|
||||
updateCustomEmoji: "Custom emoji updated"
|
||||
deleteCustomEmoji: "Custom emoji deleted"
|
||||
updateServerSettings: "Server settings updated"
|
||||
updateUserNote: "Moderation note updated"
|
||||
deleteDriveFile: "File deleted"
|
||||
deleteNote: "Note deleted"
|
||||
createGlobalAnnouncement: "Global announcement created"
|
||||
createUserAnnouncement: "User announcement created"
|
||||
updateGlobalAnnouncement: "Global announcement updated"
|
||||
updateUserAnnouncement: "User announcement updated"
|
||||
deleteGlobalAnnouncement: "Global announcement deleted"
|
||||
deleteUserAnnouncement: "User announcement deleted"
|
||||
resetPassword: "Password reset"
|
||||
suspendRemoteInstance: "Remote instance suspended"
|
||||
unsuspendRemoteInstance: "Remote instance unsuspended"
|
||||
markSensitiveDriveFile: "File marked as sensitive"
|
||||
unmarkSensitiveDriveFile: "File unmarked as sensitive"
|
||||
resolveAbuseReport: "Report resolved"
|
||||
createInvitation: "Invite generated"
|
||||
createAd: "Ad created"
|
||||
deleteAd: "Ad deleted"
|
||||
updateAd: "Ad updated"
|
||||
createAvatarDecoration: "Avatar decoration created"
|
||||
updateAvatarDecoration: "Avatar decoration updated"
|
||||
deleteAvatarDecoration: "Avatar decoration deleted"
|
||||
unsetUserAvatar: "Unset this user's avatar"
|
||||
unsetUserBanner: "Unset this user's banner"
|
||||
_fileViewer:
|
||||
title: "File details"
|
||||
type: "File type"
|
||||
size: "Filesize"
|
||||
url: "URL"
|
||||
uploadedAt: "Uploaded at"
|
||||
attachedNotes: "Attached notes"
|
||||
thisPageCanBeSeenFromTheAuthor: "This page can only be seen by the user who uploaded this file."
|
||||
_externalResourceInstaller:
|
||||
title: "Install from external site"
|
||||
checkVendorBeforeInstall: "Make sure the distributor of this resource is trustworthy before installation."
|
||||
_plugin:
|
||||
title: "Do you want to install this plugin?"
|
||||
metaTitle: "Plugin information"
|
||||
_theme:
|
||||
title: "Do you want to install this theme?"
|
||||
metaTitle: "Theme information"
|
||||
_meta:
|
||||
base: "Base color scheme"
|
||||
_vendorInfo:
|
||||
title: "Distributor information"
|
||||
endpoint: "Referenced endpoint"
|
||||
hashVerify: "Hash verification"
|
||||
_errors:
|
||||
_invalidParams:
|
||||
title: "Invalid parameters"
|
||||
description: "There is not enough information to load data from an external site. Please confirm the entered URL."
|
||||
_resourceTypeNotSupported:
|
||||
title: "This external resource is not supported"
|
||||
description: "The type of this external resource is not supported. Please contact the site administrator."
|
||||
_failedToFetch:
|
||||
title: "Failed to fetch data"
|
||||
fetchErrorDescription: "An error occurred communicating with the external site. If trying again does not fix this issue, please contact the site administrator."
|
||||
parseErrorDescription: "An error occurred processing the data loaded from the external site. Please contact the site administrator."
|
||||
_hashUnmatched:
|
||||
title: "Data verification failed"
|
||||
description: "An error occurred verifying the integrity of the fetched data. As a security measure, installation cannot continue. Please contact the site administrator."
|
||||
_pluginParseFailed:
|
||||
title: "AiScript Error"
|
||||
description: "The requested data was fetched successfully, but an error occurred during AiScript parsing. Please contact the plugin author. Error details can be viewed in the Javascript console."
|
||||
_pluginInstallFailed:
|
||||
title: "Plugin installation failed"
|
||||
description: "A problem occurred during plugin installation. Please try again. Error details can be viewed in the Javascript console."
|
||||
_themeParseFailed:
|
||||
title: "Theme parsing failed"
|
||||
description: "The requested data was fetched successfully, but an error occurred during theme parsing. Please contact the theme author. Error details can be viewed in the Javascript console."
|
||||
_themeInstallFailed:
|
||||
title: "Failed to install theme"
|
||||
description: "A problem occurred during theme installation. Please try again. Error details can be viewed in the Javascript console."
|
||||
_dataSaver:
|
||||
_media:
|
||||
title: "Loading Media"
|
||||
_avatar:
|
||||
title: "Avatar image"
|
||||
description: "Stop avatar image animation. Animated images can be larger in file size than normal images, potentially leading to further reductions in data traffic."
|
||||
_urlPreview:
|
||||
title: "URL preview thumbnails"
|
||||
_code:
|
||||
title: "Code highlighting"
|
||||
description: "If code highlighting notations are used in MFM, etc., they will not load until tapped. Syntax highlighting requires downloading the highlight definition files for each programming language. Therefore, disabling the automatic loading of these files is expected to reduce the amount of communication data."
|
||||
_reversi:
|
||||
total: "Total"
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,230 +1,72 @@
|
||||
import * as fs from 'node:fs';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
import { dirname } from 'node:path';
|
||||
import * as yaml from 'js-yaml';
|
||||
import ts from 'typescript';
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
const parameterRegExp = /\{(\w+)\}/g;
|
||||
|
||||
function createMemberType(item) {
|
||||
if (typeof item !== 'string') {
|
||||
return ts.factory.createTypeLiteralNode(createMembers(item));
|
||||
}
|
||||
const parameters = Array.from(
|
||||
item.matchAll(parameterRegExp),
|
||||
([, parameter]) => parameter,
|
||||
);
|
||||
return parameters.length
|
||||
? ts.factory.createTypeReferenceNode(
|
||||
ts.factory.createIdentifier('ParameterizedString'),
|
||||
[
|
||||
ts.factory.createUnionTypeNode(
|
||||
parameters.map((parameter) =>
|
||||
ts.factory.createStringLiteral(parameter),
|
||||
),
|
||||
),
|
||||
],
|
||||
)
|
||||
: ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword);
|
||||
}
|
||||
const fs = require('fs');
|
||||
const yaml = require('js-yaml');
|
||||
const ts = require('typescript');
|
||||
|
||||
function createMembers(record) {
|
||||
return Object.entries(record).map(([k, v]) => {
|
||||
const node = ts.factory.createPropertySignature(
|
||||
return Object.entries(record)
|
||||
.map(([k, v]) => ts.factory.createPropertySignature(
|
||||
undefined,
|
||||
ts.factory.createStringLiteral(k),
|
||||
undefined,
|
||||
createMemberType(v),
|
||||
);
|
||||
if (typeof v === 'string') {
|
||||
ts.addSyntheticLeadingComment(
|
||||
node,
|
||||
ts.SyntaxKind.MultiLineCommentTrivia,
|
||||
`*
|
||||
* ${v.replace(/\n/g, '\n * ')}
|
||||
`,
|
||||
true,
|
||||
);
|
||||
}
|
||||
return node;
|
||||
});
|
||||
typeof v === 'string'
|
||||
? ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword)
|
||||
: ts.factory.createTypeLiteralNode(createMembers(v)),
|
||||
));
|
||||
}
|
||||
|
||||
export default function generateDTS() {
|
||||
module.exports = function generateDTS() {
|
||||
const locale = yaml.load(fs.readFileSync(`${__dirname}/ja-JP.yml`, 'utf-8'));
|
||||
const members = createMembers(locale);
|
||||
const elements = [
|
||||
ts.factory.createVariableStatement(
|
||||
[ts.factory.createToken(ts.SyntaxKind.DeclareKeyword)],
|
||||
ts.factory.createVariableDeclarationList(
|
||||
[
|
||||
ts.factory.createVariableDeclaration(
|
||||
ts.factory.createIdentifier('kParameters'),
|
||||
undefined,
|
||||
ts.factory.createTypeOperatorNode(
|
||||
ts.SyntaxKind.UniqueKeyword,
|
||||
ts.factory.createKeywordTypeNode(ts.SyntaxKind.SymbolKeyword),
|
||||
),
|
||||
undefined,
|
||||
),
|
||||
],
|
||||
ts.NodeFlags.Const,
|
||||
),
|
||||
),
|
||||
ts.factory.createInterfaceDeclaration(
|
||||
[ts.factory.createToken(ts.SyntaxKind.ExportKeyword)],
|
||||
ts.factory.createIdentifier('ParameterizedString'),
|
||||
[
|
||||
ts.factory.createTypeParameterDeclaration(
|
||||
undefined,
|
||||
ts.factory.createIdentifier('T'),
|
||||
ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
|
||||
ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
|
||||
),
|
||||
],
|
||||
undefined,
|
||||
[
|
||||
ts.factory.createPropertySignature(
|
||||
undefined,
|
||||
ts.factory.createComputedPropertyName(
|
||||
ts.factory.createIdentifier('kParameters'),
|
||||
),
|
||||
undefined,
|
||||
ts.factory.createTypeReferenceNode(
|
||||
ts.factory.createIdentifier('T'),
|
||||
undefined,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
ts.factory.createInterfaceDeclaration(
|
||||
[ts.factory.createToken(ts.SyntaxKind.ExportKeyword)],
|
||||
ts.factory.createIdentifier('ILocale'),
|
||||
undefined,
|
||||
undefined,
|
||||
[
|
||||
ts.factory.createIndexSignature(
|
||||
undefined,
|
||||
[
|
||||
ts.factory.createParameterDeclaration(
|
||||
undefined,
|
||||
undefined,
|
||||
ts.factory.createIdentifier('_'),
|
||||
undefined,
|
||||
ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
|
||||
undefined,
|
||||
),
|
||||
],
|
||||
ts.factory.createUnionTypeNode([
|
||||
ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
|
||||
ts.factory.createTypeReferenceNode(
|
||||
ts.factory.createIdentifier('ParameterizedString'),
|
||||
),
|
||||
ts.factory.createTypeReferenceNode(
|
||||
ts.factory.createIdentifier('ILocale'),
|
||||
undefined,
|
||||
),
|
||||
]),
|
||||
),
|
||||
],
|
||||
),
|
||||
ts.factory.createInterfaceDeclaration(
|
||||
[ts.factory.createToken(ts.SyntaxKind.ExportKeyword)],
|
||||
ts.factory.createIdentifier('Locale'),
|
||||
undefined,
|
||||
[
|
||||
ts.factory.createHeritageClause(ts.SyntaxKind.ExtendsKeyword, [
|
||||
ts.factory.createExpressionWithTypeArguments(
|
||||
ts.factory.createIdentifier('ILocale'),
|
||||
undefined,
|
||||
),
|
||||
]),
|
||||
],
|
||||
members,
|
||||
),
|
||||
ts.factory.createVariableStatement(
|
||||
[ts.factory.createToken(ts.SyntaxKind.DeclareKeyword)],
|
||||
ts.factory.createVariableDeclarationList(
|
||||
[
|
||||
ts.factory.createVariableDeclaration(
|
||||
[ts.factory.createVariableDeclaration(
|
||||
ts.factory.createIdentifier('locales'),
|
||||
undefined,
|
||||
ts.factory.createTypeLiteralNode([
|
||||
ts.factory.createIndexSignature(
|
||||
ts.factory.createTypeLiteralNode([ts.factory.createIndexSignature(
|
||||
undefined,
|
||||
[
|
||||
ts.factory.createParameterDeclaration(
|
||||
[ts.factory.createParameterDeclaration(
|
||||
undefined,
|
||||
undefined,
|
||||
ts.factory.createIdentifier('lang'),
|
||||
undefined,
|
||||
ts.factory.createKeywordTypeNode(
|
||||
ts.SyntaxKind.StringKeyword,
|
||||
),
|
||||
ts.factory.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
|
||||
undefined,
|
||||
),
|
||||
],
|
||||
)],
|
||||
ts.factory.createTypeReferenceNode(
|
||||
ts.factory.createIdentifier('Locale'),
|
||||
undefined,
|
||||
),
|
||||
),
|
||||
]),
|
||||
)]),
|
||||
undefined,
|
||||
),
|
||||
],
|
||||
ts.NodeFlags.Const,
|
||||
)],
|
||||
ts.NodeFlags.Const | ts.NodeFlags.Ambient | ts.NodeFlags.ContextFlags,
|
||||
),
|
||||
),
|
||||
ts.factory.createFunctionDeclaration(
|
||||
[ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)],
|
||||
undefined,
|
||||
ts.factory.createIdentifier('build'),
|
||||
undefined,
|
||||
[],
|
||||
ts.factory.createTypeReferenceNode(
|
||||
ts.factory.createIdentifier('Locale'),
|
||||
ts.factory.createExportAssignment(
|
||||
undefined,
|
||||
true,
|
||||
ts.factory.createIdentifier('locales'),
|
||||
),
|
||||
undefined,
|
||||
),
|
||||
ts.factory.createExportDefault(ts.factory.createIdentifier('locales')),
|
||||
];
|
||||
ts.addSyntheticLeadingComment(
|
||||
elements[0],
|
||||
ts.SyntaxKind.MultiLineCommentTrivia,
|
||||
' eslint-disable ',
|
||||
true,
|
||||
);
|
||||
ts.addSyntheticLeadingComment(
|
||||
elements[0],
|
||||
ts.SyntaxKind.SingleLineCommentTrivia,
|
||||
' This file is generated by locales/generateDTS.js',
|
||||
true,
|
||||
);
|
||||
ts.addSyntheticLeadingComment(
|
||||
elements[0],
|
||||
ts.SyntaxKind.SingleLineCommentTrivia,
|
||||
' Do not edit this file directly.',
|
||||
true,
|
||||
);
|
||||
const printed = ts
|
||||
.createPrinter({
|
||||
const printed = ts.createPrinter({
|
||||
newLine: ts.NewLineKind.LineFeed,
|
||||
})
|
||||
.printList(
|
||||
}).printList(
|
||||
ts.ListFormat.MultiLine,
|
||||
ts.factory.createNodeArray(elements),
|
||||
ts.createSourceFile(
|
||||
'index.d.ts',
|
||||
'',
|
||||
ts.ScriptTarget.ESNext,
|
||||
true,
|
||||
ts.ScriptKind.TS,
|
||||
),
|
||||
ts.createSourceFile('index.d.ts', '', ts.ScriptTarget.ESNext, true, ts.ScriptKind.TS),
|
||||
);
|
||||
|
||||
fs.writeFileSync(`${__dirname}/index.d.ts`, printed, 'utf-8');
|
||||
fs.writeFileSync(`${__dirname}/index.d.ts`, `/* eslint-disable */
|
||||
// This file is generated by locales/generateDTS.js
|
||||
// Do not edit this file directly.
|
||||
${printed}`, 'utf-8');
|
||||
}
|
||||
|
@@ -1,6 +1 @@
|
||||
---
|
||||
_lang_: "japanski"
|
||||
ok: "OK"
|
||||
gotIt: "Razumijem"
|
||||
cancel: "otkazati"
|
||||
|
||||
|
@@ -1,19 +1 @@
|
||||
---
|
||||
_lang_: "Japonè"
|
||||
password: "modpas"
|
||||
ok: "OK"
|
||||
gotIt: "Konprann"
|
||||
cancel: "anile"
|
||||
noThankYou: "Sispann"
|
||||
instance: "sèvè"
|
||||
profile: "pwofil"
|
||||
save: "kenbe"
|
||||
delete: "efase"
|
||||
instances: "sèvè"
|
||||
remove: "efase"
|
||||
smtpPass: "modpas"
|
||||
_2fa:
|
||||
renewTOTPCancel: "Sispann"
|
||||
_widgets:
|
||||
profile: "pwofil"
|
||||
|
||||
|
@@ -1,105 +0,0 @@
|
||||
---
|
||||
_lang_: "Japán"
|
||||
monthAndDay: "{month}.{day}."
|
||||
search: "Keresés"
|
||||
notifications: "Értesítések"
|
||||
username: "Felhasználónév"
|
||||
password: "Jelszó"
|
||||
forgotPassword: "Elfelejtett jelszó"
|
||||
ok: "OK"
|
||||
gotIt: "Rendben"
|
||||
cancel: "Mégse"
|
||||
noThankYou: "Nem, köszönöm"
|
||||
enterUsername: "Felhasználónév megadása"
|
||||
renotedBy: "{user} Renotolta"
|
||||
noNotes: "Nincs Note"
|
||||
noNotifications: "Nincs értesítés"
|
||||
instance: "Szerver"
|
||||
settings: "Beállítások"
|
||||
notificationSettings: "Értesítés beállításai"
|
||||
basicSettings: "Alapbeállítás"
|
||||
otherSettings: "Egyéb beállítások"
|
||||
openInWindow: "Megnyitás ablakban"
|
||||
profile: "Saját profil"
|
||||
timeline: "Idővonal"
|
||||
noAccountDescription: "Nincs leírás"
|
||||
login: "Bejelentkezés"
|
||||
loggingIn: "Belépés"
|
||||
logout: "Kijelentkezés"
|
||||
signup: "Regisztráció"
|
||||
uploading: "Feltöltés"
|
||||
save: "Mentés"
|
||||
users: "Felhasználók"
|
||||
addUser: "Felhasználó hozzáadása"
|
||||
favorite: "Kedvencek"
|
||||
favorites: "Kedvencek"
|
||||
unfavorite: "Törlés a kedvencek közül."
|
||||
favorited: "Kedvencek közé rakva."
|
||||
alreadyFavorited: "Már a kedvencek között van."
|
||||
cantFavorite: "Nem sikerült a kedvencek közé rakni."
|
||||
pin: "Rögzítés"
|
||||
unpin: "Rögzítés feloldása"
|
||||
copyContent: "Tartalom másolása"
|
||||
copyLink: "Hivatkozás Másolása"
|
||||
delete: "Törlés"
|
||||
deleteAndEdit: "Törlés és szerkesztés"
|
||||
deleteAndEditConfirm: "Biztosan törlöd ezt a jegyzetet és újrafogalmazza? Így eveszíted az összes reakciót, renote-ot és választ."
|
||||
addToList: "Hozzáadás a listákhoz"
|
||||
privacy: "Adatvédelem"
|
||||
makeFollowManuallyApprove: "Csak jóváhagyással követhetnek"
|
||||
defaultNoteVisibility: "Alapértelmezett láthatóság"
|
||||
follow: "Követés"
|
||||
followRequest: "Követés kérése"
|
||||
followRequests: "Követési kérések"
|
||||
unfollow: "Követés visszavonása"
|
||||
followRequestPending: "Függőben levő követési kérés"
|
||||
enterEmoji: "Írj egy emoji-t"
|
||||
renote: "Renote"
|
||||
unrenote: "Renote visszavonása"
|
||||
renoted: "Renotolva"
|
||||
cantRenote: "Nem lehet Renotolni"
|
||||
cantReRenote: "A Renote nem renotálható"
|
||||
quote: "Idézet"
|
||||
inChannelRenote: "Csak csatornán bellüli Renote"
|
||||
inChannelQuote: "Csak csatornán bellüli idézet"
|
||||
pinnedNote: "Csatolt jegyzet"
|
||||
pinned: "Rögzítés"
|
||||
you: "Te"
|
||||
clickToShow: "Kattints ide"
|
||||
sensitive: "Érzékeny"
|
||||
add: "Hozzáad"
|
||||
reaction: "Reakciók"
|
||||
reactions: "Reakciók"
|
||||
instances: "Szerver"
|
||||
remove: "Törlés"
|
||||
pinnedNotes: "Csatolt jegyzet"
|
||||
smtpUser: "Felhasználónév"
|
||||
smtpPass: "Jelszó"
|
||||
user: "Felhasználók"
|
||||
searchByGoogle: "Keresés"
|
||||
renotes: "Renote"
|
||||
_theme:
|
||||
keys:
|
||||
renote: "Renote"
|
||||
_sfx:
|
||||
notification: "Értesítések"
|
||||
_2fa:
|
||||
renewTOTPCancel: "Nem, köszönöm"
|
||||
_widgets:
|
||||
profile: "Saját profil"
|
||||
notifications: "Értesítések"
|
||||
timeline: "Idővonal"
|
||||
_profile:
|
||||
username: "Felhasználónév"
|
||||
_notification:
|
||||
_types:
|
||||
renote: "Renote"
|
||||
quote: "Idézet"
|
||||
reaction: "Reakciók"
|
||||
_actions:
|
||||
renote: "Renote"
|
||||
_deck:
|
||||
_columns:
|
||||
notifications: "Értesítések"
|
||||
tl: "Idővonal"
|
||||
|
File diff suppressed because it is too large
Load Diff
7697
locales/index.d.ts
vendored
7697
locales/index.d.ts
vendored
File diff suppressed because it is too large
Load Diff
@@ -2,8 +2,8 @@
|
||||
* Languages Loader
|
||||
*/
|
||||
|
||||
import * as fs from 'node:fs';
|
||||
import * as yaml from 'js-yaml';
|
||||
const fs = require('fs');
|
||||
const yaml = require('js-yaml');
|
||||
|
||||
const merge = (...args) => args.reduce((a, c) => ({
|
||||
...a,
|
||||
@@ -51,24 +51,10 @@ const primaries = {
|
||||
// 何故か文字列にバックスペース文字が混入することがあり、YAMLが壊れるので取り除く
|
||||
const clean = (text) => text.replace(new RegExp(String.fromCodePoint(0x08), 'g'), '');
|
||||
|
||||
export function build() {
|
||||
const locales = languages.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(new URL(`${c}.yml`, import.meta.url), 'utf-8'))) || {}, a), {});
|
||||
const locales = languages.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(`${__dirname}/${c}.yml`, 'utf-8'))) || {}, a), {});
|
||||
|
||||
// 空文字列が入ることがあり、フォールバックが動作しなくなるのでプロパティごと消す
|
||||
const removeEmpty = (obj) => {
|
||||
for (const [k, v] of Object.entries(obj)) {
|
||||
if (v === '') {
|
||||
delete obj[k];
|
||||
} else if (typeof v === 'object') {
|
||||
removeEmpty(v);
|
||||
}
|
||||
}
|
||||
return obj;
|
||||
};
|
||||
removeEmpty(locales);
|
||||
|
||||
return Object.entries(locales)
|
||||
.reduce((a, [k, v]) => (a[k] = (() => {
|
||||
module.exports = Object.entries(locales)
|
||||
.reduce((a, [k ,v]) => (a[k] = (() => {
|
||||
const [lang] = k.split('-');
|
||||
switch (k) {
|
||||
case 'ja-JP': return v;
|
||||
@@ -77,11 +63,8 @@ export function build() {
|
||||
default: return merge(
|
||||
locales['ja-JP'],
|
||||
locales['en-US'],
|
||||
locales[`${lang}-${primaries[lang]}`] ?? {},
|
||||
locales[`${lang}-${primaries[lang]}`] || {},
|
||||
v
|
||||
);
|
||||
}
|
||||
})(), a), {});
|
||||
}
|
||||
|
||||
export default build();
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1 @@
|
||||
---
|
||||
_lang_: "la .lojban."
|
||||
headlineMisskey: "lo se tcana noi jorne fi loi notci"
|
||||
|
||||
|
@@ -56,7 +56,6 @@ accounts: "Imiḍan"
|
||||
searchByGoogle: "Nadi"
|
||||
file: "Ifuyla"
|
||||
account: "Imiḍan"
|
||||
replies: "Err"
|
||||
_email:
|
||||
_follow:
|
||||
title: "Yeṭṭafaṛ-ik·em-id"
|
||||
@@ -104,4 +103,3 @@ _deck:
|
||||
_columns:
|
||||
notifications: "Ilɣuyen"
|
||||
list: "Tibdarin"
|
||||
|
||||
|
@@ -61,7 +61,6 @@ smtpPass: "ಗುಪ್ತಪದ"
|
||||
user: "ಬಳಕೆದಾರ"
|
||||
searchByGoogle: "ಹುಡುಕು"
|
||||
file: "ಕಡತಗಳು"
|
||||
replies: "ಉತ್ತರಿಸು"
|
||||
_email:
|
||||
_follow:
|
||||
title: "ಹಿಂಬಾಲಿಸಿದರು"
|
||||
@@ -84,4 +83,3 @@ _deck:
|
||||
notifications: "ಅಧಿಸೂಚನೆಗಳು"
|
||||
tl: "ಸಮಯಸಾಲು"
|
||||
mentions: "ಹೆಸರಿಸಿದ"
|
||||
|
||||
|
@@ -1,729 +0,0 @@
|
||||
---
|
||||
_lang_: "한국어(경상)"
|
||||
headlineMisskey: "노트로 이언 네트워크"
|
||||
introMisskey: "어서 오이소! Misskey넌 오픈소스 분산헹 마이크로 블로그 서비스입니다.\n‘노트’럴 맨걸어서 지검 일나넌 일얼 노누던가 내 이바구럴 남한데 서 보이소.📡\n‘리액션’ 기넝서 남으 노트에 억수로 빠리게 답할 수 잇십니다.👍\n새롭운 세게럴 탐험해 보입시다.🚀"
|
||||
poweredByMisskeyDescription: "{name} 서버넌 오픈소스 플랫폼 <b>Misskey</b>으 서버 가운데 하나입니다."
|
||||
monthAndDay: "{month}월 {day}일"
|
||||
search: "찾기"
|
||||
notifications: "알림"
|
||||
username: "사용자 이럼"
|
||||
password: "비밀번호"
|
||||
forgotPassword: "비밀번호럴 잊엇뿟십니꺼?"
|
||||
fetchingAsApObject: "연합서 찾아보고 잇어예"
|
||||
ok: "예"
|
||||
gotIt: "알것어예"
|
||||
cancel: "아이예"
|
||||
noThankYou: "뎃어예"
|
||||
enterUsername: "사용자 이럼 서기"
|
||||
renotedBy: "{user}님이 리노트햇어예"
|
||||
noNotes: "노트가 없십니다"
|
||||
noNotifications: "알림이 없십니다"
|
||||
instance: "서버"
|
||||
settings: "설정"
|
||||
notificationSettings: "알림 설정"
|
||||
basicSettings: "기본 설정"
|
||||
otherSettings: "다린 설정"
|
||||
openInWindow: "창서 옐기"
|
||||
profile: "프로필"
|
||||
timeline: "타임라인"
|
||||
noAccountDescription: "자기소개가 없십니다"
|
||||
login: "로그인"
|
||||
loggingIn: "로그인하고 잇어예"
|
||||
logout: "로그아웃"
|
||||
signup: "가입하기"
|
||||
uploading: "올리고 잇어예"
|
||||
save: "저장하기"
|
||||
users: "사용자"
|
||||
addUser: "사용자 옇기"
|
||||
favorite: "질겨찾기"
|
||||
favorites: "질겨찾기"
|
||||
unfavorite: "질겨찾기서 어ᇝ애기"
|
||||
favorited: "질겨찾기에 담앗십니다."
|
||||
alreadyFavorited: "벌시로 질겨찾기에 담기 잇십니다."
|
||||
cantFavorite: "질겨찾기에 몬 담았십니다."
|
||||
pin: "프로필에 붙이기"
|
||||
unpin: "프로필서 띠기"
|
||||
copyContent: "내용 복사하기"
|
||||
copyLink: "링크 복사하기"
|
||||
copyLinkRenote: "리노트 링크 복사"
|
||||
delete: "내삐리기"
|
||||
deleteAndEdit: "내삐리고 새로 적기"
|
||||
deleteAndEditConfirm: "요 노트럴 뭉캐고 새로 적십니꺼? 요 노트서 리액션하고 리노트, 답하기도 말캉 뭉캐집니다."
|
||||
addToList: "리스트에 옇기"
|
||||
addToAntenna: "안테나에 옇기"
|
||||
sendMessage: "메시지 보내기"
|
||||
copyRSS: "알에스에스 복사하기"
|
||||
copyUsername: "사용자 이럼 복사하기"
|
||||
copyUserId: "사용자 아이디 복사하기"
|
||||
copyNoteId: "노트 아이디 복사하기"
|
||||
copyFileId: "파일 아이디 복사하기"
|
||||
copyFolderId: "폴더 아이디 복사하기"
|
||||
copyProfileUrl: "프로필 주소 복사하기"
|
||||
searchUser: "사용자 찾기"
|
||||
reply: "답하기"
|
||||
loadMore: "더 볼래예"
|
||||
showMore: "더 볼래예"
|
||||
showLess: "꺼기"
|
||||
youGotNewFollower: "새 팔로워가 잇십니다"
|
||||
receiveFollowRequest: "팔로잉 요청이 잇십니다"
|
||||
followRequestAccepted: "팔로잉이 받아딜이젓십니다"
|
||||
mention: "멘션"
|
||||
mentions: "받언 멘션"
|
||||
directNotes: "쪽지 서기"
|
||||
importAndExport: "가오기하고 내가기"
|
||||
import: "가오기"
|
||||
export: "내가기"
|
||||
files: "파일"
|
||||
download: "내리받기"
|
||||
driveFileDeleteConfirm: "‘{name}’ 파일얼 뭉캡니꺼? 요 파일얼 서넌 콘텐츠도 뭉캐집니다."
|
||||
unfollowConfirm: "{name}님얼 고마 팔로잉합니꺼?"
|
||||
exportRequested: "내가기 요청얼 햇십니다. 시간이 쪼매 걸릴 깁니다. 요청이 껕나모 ‘드라이브’에 옇십니다."
|
||||
importRequested: "가오기 요청얼 햇십니다. 시간이 쪼매 걸릴 깁니다."
|
||||
lists: "리스트"
|
||||
noLists: "리스트가 없십니다"
|
||||
note: "노트"
|
||||
notes: "노트"
|
||||
following: "팔로잉"
|
||||
followers: "팔로워"
|
||||
followsYou: "내럴 팔로잉합니다"
|
||||
createList: "리스트 맨걸기"
|
||||
manageLists: "리스트 간리하기"
|
||||
error: "우짭니꺼"
|
||||
somethingHappened: "먼가 일낫십니다"
|
||||
retry: "다시 하기"
|
||||
pageLoadError: "하멘 부리오기가 아이뎁니다."
|
||||
pageLoadErrorDescription: "네트워크나 브라우저 캐시 때문일 깁니다. 캐시럴 뭉캐던가 쪼매 잇다 새로 해 주이소."
|
||||
serverIsDead: "서버가 대답얼 아이합니다. 쪼매 잇다 새로 해 주이소."
|
||||
youShouldUpgradeClient: "요 하멘얼 볼라먼 새로 곤치던가 새 버전으 클라이언트럴 받아 서 보이소."
|
||||
enterListName: "리스트 이럼 서기"
|
||||
privacy: "개인 정보"
|
||||
makeFollowManuallyApprove: "팔로잉얼 하나석 받아딜이기"
|
||||
defaultNoteVisibility: "기본 공개 범위"
|
||||
follow: "팔로우"
|
||||
followRequest: "팔로우 요청하기"
|
||||
followRequests: "팔로우 요청"
|
||||
unfollow: "팔로우 무루기"
|
||||
followRequestPending: "팔로우 수락 지둘림"
|
||||
enterEmoji: "이모지 서기"
|
||||
renote: "리노트"
|
||||
unrenote: "리노트 무루기"
|
||||
renoted: "리노트럴 햇십니다."
|
||||
cantRenote: "요 걸언 리노트럴 몬 합니다."
|
||||
cantReRenote: "리노트넌 지럴 리노트 몬 합니다."
|
||||
quote: "따오기"
|
||||
inChannelRenote: "채널 안 리노트"
|
||||
inChannelQuote: "채널 안 따오기"
|
||||
pinnedNote: "붙인 노트"
|
||||
pinned: "프로필에 붙이기"
|
||||
you: "나"
|
||||
clickToShow: "누질라서 보기"
|
||||
sensitive: "수ᇚ힛섭니다"
|
||||
add: "옇기"
|
||||
reaction: "반엉"
|
||||
reactions: "반엉"
|
||||
reactionSettingDescription2: "꺼시서 두고, 누질라서 뭉캐고, ‘+’럴 누질라서 옇십니다."
|
||||
rememberNoteVisibility: "공개 범위럴 기억하기"
|
||||
attachCancel: "붙임 빼기"
|
||||
markAsSensitive: "수ᇚ힘 설정"
|
||||
unmarkAsSensitive: "수ᇚ힘 무루기"
|
||||
enterFileName: "파일 이럼 서기"
|
||||
mute: "수ᇚ후기"
|
||||
unmute: "수ᇚ훈 거 무루기"
|
||||
renoteMute: "리노트 수ᇚ후기"
|
||||
renoteUnmute: "리노트 수ᇚ훈 거 무루기"
|
||||
block: "차단하기"
|
||||
unblock: "차단 무루기"
|
||||
suspend: "얼우기"
|
||||
unsuspend: "얼우기 풀기"
|
||||
blockConfirm: "차단합니꺼?"
|
||||
unblockConfirm: "차단얼 무룹니꺼?"
|
||||
suspendConfirm: "얼웁니꺼?"
|
||||
unsuspendConfirm: "얼운 거 풉니꺼?"
|
||||
selectList: "리스트 개리기"
|
||||
editList: "리스트 적기"
|
||||
selectChannel: "채널 개리기"
|
||||
selectAntenna: "안테나 개리기"
|
||||
editAntenna: "안테나 적기"
|
||||
selectWidget: "위젯 개리기"
|
||||
editWidgets: "위젯 적기"
|
||||
editWidgetsExit: "고마 적기"
|
||||
customEmojis: "사용자 지정 이모지"
|
||||
emoji: "이모지"
|
||||
emojis: "이모지"
|
||||
emojiName: "이모지 이럼"
|
||||
emojiUrl: "이모지 주소"
|
||||
addEmoji: "이모지 옇기"
|
||||
settingGuide: "개않언 설정"
|
||||
cacheRemoteFiles: "웬겍 파일 캐시하기"
|
||||
cacheRemoteFilesDescription: "요 설정얼 키모 웬겍 파일얼 요 서버으 스토리지에 캐시합니다. 미디어가 사게 비이지먼 서버으 스토리지럴 마이 섭니다. 웬겍 사용자가 얼매나 캐시럴 둘 긴가넌 고 옉할으 드라이브 크기 제한마중 다립니다. 요 제한얼 넘구모 엣날 파일버터 캐시서 뭉캐지서 링크가 뎁니다. 요 설정얼 꺼모 웬겍 파일언 첨버터 링크가 뎁니다. 이미지으 섬네일얼 맨걸던 사용자으 개인 정보럴 징키던 할라먼 default.yml서 proxyRemoteFiles럴 ture로 하입시다."
|
||||
youCanCleanRemoteFilesCache: "파일 간리으 🗑️ 모냥얼 누질리모 캐시럴 말캉 뭉캘 수 잇십니다."
|
||||
cacheRemoteSensitiveFiles: "웬겍으 수ᇚ힌 파일얼 캐시하기"
|
||||
cacheRemoteSensitiveFilesDescription: "요 설정얼 꺼모 웬겍 수ᇚ힌 파일이 캐시하지 아이하고 바리 링크합니다."
|
||||
flagAsBot: "자동 게정입니다"
|
||||
flagAsBotDescription: "요 게정얼 프로그램서 설라먼 키야 합니다. 키모 다런 개발자가 반엉얼 끋없이 데풀이하지 몬 하게 도아 줄 수 잇고 Misskey으 시스템서 자동 게정이 뎁니다."
|
||||
flagAsCat: "애웅애웅애웅애웅!"
|
||||
flagAsCatDescription: "애옹?"
|
||||
flagShowTimelineReplies: "타임라인서 노트으 답하기 보기"
|
||||
flagShowTimelineRepliesDescription: "키모 타임라인서 다런 사용자덜으 답하기도 봅니다."
|
||||
autoAcceptFollowed: "팔로잉하넌 사용자으 팔로잉 요청 바리 받아딜이기"
|
||||
addAccount: "게정 옇기"
|
||||
reloadAccountsList: "게정 리스트으 정보 새로 바꾸기"
|
||||
loginFailed: "로그인이 아이뎁니다."
|
||||
showOnRemote: "웬겍서 보기"
|
||||
general: "일반"
|
||||
wallpaper: "벡지"
|
||||
setWallpaper: "벡지 설정"
|
||||
removeWallpaper: "벡지 뭉캐기"
|
||||
searchWith: "찾기: {q}"
|
||||
youHaveNoLists: "리스트가 없십니다"
|
||||
followConfirm: "{name}님얼 팔로잉합니꺼?"
|
||||
proxyAccount: "프락시 게정"
|
||||
proxyAccountDescription: "프락시 게정언 턱벨한 조겐서 웬겍 팔로잉얼 하넌 게정입니다. 사용자가 웬겍 사용자럴 리스트에 옇얼 때 리스트에 옇언 사용자럴 누도 팔로잉 아이하모 할동이 서버로 아이 오니께 요 게정이 아인 프락시 게정얼 팔로잉하게 합니다."
|
||||
host: "호스트 이럼"
|
||||
selectUser: "사용자 개리기"
|
||||
recipient: "받넌 사람"
|
||||
annotation: "주석"
|
||||
federation: "옌합"
|
||||
instances: "서버"
|
||||
registeredAt: "첫 발겐"
|
||||
latestRequestReceivedAt: "막죽에 받언 요청"
|
||||
latestStatus: "막죽 상태"
|
||||
storageUsage: "스토리지 사용량"
|
||||
charts: "차트"
|
||||
perHour: "한 시간마중"
|
||||
perDay: "하리마중"
|
||||
stopActivityDelivery: "할동 고마 보내기"
|
||||
blockThisInstance: "요 서버 차단하기"
|
||||
silenceThisInstance: "서버 수ᇚ후기"
|
||||
operations: "동작"
|
||||
software: "소프트웨어"
|
||||
version: "버전"
|
||||
metadata: "메타데이터"
|
||||
withNFiles: "파일 {n}개"
|
||||
monitor: "모니터"
|
||||
jobQueue: "작업 대기옐"
|
||||
cpuAndMemory: "시피유하고 메모리"
|
||||
network: "네트워크"
|
||||
disk: "디스크"
|
||||
instanceInfo: "서버 정보"
|
||||
statistics: "통게"
|
||||
clearQueue: "대기옐 비우기"
|
||||
clearQueueConfirmTitle: "대기옐얼 비웁니꺼?"
|
||||
clearQueueConfirmText: "대기옐에 잇넌 걸얼 아이 보냅니다. 흐이 요 동작언 할 필요가 없십니다."
|
||||
clearCachedFiles: "캐시 비우기"
|
||||
clearCachedFilesConfirm: "캐시한 웬겍 파일얼 말캉 뭉캡니꺼?"
|
||||
blockedInstances: "차단한 서버"
|
||||
blockedInstancesDescription: "차단할라넌 서버으 호스트럴 줄 바꿈해서로 비이 줍니다. 차단한 서버넌 요 서버하고 교류 몬 합니다."
|
||||
silencedInstances: "수ᇚ훈 서버"
|
||||
silencedInstancesDescription: "수ᇚ훌라넌 서버으 호스트럴 줄 바꿈해서로 비이 줍니다. 수ᇚ훈 서버으 게정언 말캉 ‘수ᇚ후기’가 데서 팔로잉 요청만 데고 팔로워가 아인 로컬 게정서 멘션얼 몬 합니다. 차단한 서버넌 상간 없십니다."
|
||||
muteAndBlock: "수ᇚ훔하고 차단"
|
||||
mutedUsers: "수ᇚ훈 사용자"
|
||||
blockedUsers: "차단한 사용자"
|
||||
noUsers: "사용자가 없십니다"
|
||||
editProfile: "프로필 적기"
|
||||
noteDeleteConfirm: "요 노트럴 뭉캡니꺼?"
|
||||
pinLimitExceeded: "더 몬 붙입니다"
|
||||
intro: "Misskey럴 다 깔앗십니다! 간리자 게정얼 맨걸어 보입시다."
|
||||
done: "햇어예"
|
||||
processing: "처리하고 잇어예"
|
||||
preview: "미리보기"
|
||||
default: "기본값"
|
||||
defaultValueIs: "기본값: {value}"
|
||||
noCustomEmojis: "이모지가 없십니다"
|
||||
noJobs: "작업이 없십니다"
|
||||
federating: "옌합하고 잇어예"
|
||||
blocked: "차단햇어예"
|
||||
suspended: "고만 보내예"
|
||||
all: "말캉"
|
||||
subscribing: "구독하고 잇어예"
|
||||
publishing: "보내고 잇어예"
|
||||
notResponding: "답이 없어예"
|
||||
instanceFollowing: "서버으 팔로잉"
|
||||
instanceFollowers: "서버으 팔로워"
|
||||
instanceUsers: "서버으 사용자"
|
||||
changePassword: "비밀번호 바꾸기"
|
||||
security: "보안"
|
||||
retypedNotMatch: "선 거가 안 맞십니다."
|
||||
currentPassword: "지검 비밀번호"
|
||||
newPassword: "새 비밀번호"
|
||||
newPasswordRetype: "새 비밀번호 다시 서기"
|
||||
attachFile: "파일 붙이기"
|
||||
more: "더 볼래예!"
|
||||
featured: "인기"
|
||||
usernameOrUserId: "사용자 이럼이나 사용자 아이디"
|
||||
noSuchUser: "사용자럴 몬 찾앗십니다"
|
||||
lookup: "찾아보기"
|
||||
announcements: "공지 걸"
|
||||
imageUrl: "이미지 주소"
|
||||
remove: "내삐리기"
|
||||
removed: "뭉캣십니다"
|
||||
removeAreYouSure: "‘{x}’(얼)럴 뭉캡니꺼?"
|
||||
deleteAreYouSure: "‘{x}’(얼)럴 뭉캡니꺼?"
|
||||
resetAreYouSure: "아시로 데돌립니꺼?"
|
||||
areYouSure: "갠찮십니꺼?"
|
||||
saved: "저장햇십니다"
|
||||
messaging: "대화"
|
||||
upload: "올리기"
|
||||
keepOriginalUploading: "온본 두기"
|
||||
keepOriginalUploadingDescription: "이미지럴 올릴 때 온본얼 고대로 둡니다. 꺼모 올릴 때 브라우저서 웹 공개 이미지럴 맨겁니다."
|
||||
fromDrive: "드라이브서"
|
||||
fromUrl: "주소서"
|
||||
uploadFromUrl: "주소 올리기"
|
||||
uploadFromUrlDescription: "올리기할라넌 파일으 주소"
|
||||
uploadFromUrlRequested: "올리기럴 요청햇십니다"
|
||||
uploadFromUrlMayTakeTime: "올리기가 껕날라먼 시간이 쪼매 걸릴 깁니다."
|
||||
explore: "살펴보기"
|
||||
messageRead: "이럿어예"
|
||||
noMoreHistory: "요카마 엣날 기록이 없십니다"
|
||||
startMessaging: "대화하기"
|
||||
nUsersRead: "{n}멩이 이럿십니다"
|
||||
agreeTo: "{0}에 동이하기"
|
||||
agree: "동이합니다"
|
||||
agreeBelow: "밑으 내용에 동이합니다"
|
||||
basicNotesBeforeCreateAccount: "주이할 내용"
|
||||
termsOfService: "이용 약간"
|
||||
start: "시작하기"
|
||||
home: "덜머리"
|
||||
remoteUserCaution: "웬겍 사용자넌 정보가 학실하지 아이할 수 잇십니다."
|
||||
activity: "할동"
|
||||
images: "이미지"
|
||||
image: "이미지"
|
||||
birthday: "생일"
|
||||
yearsOld: "{age}살"
|
||||
registeredDate: "맨건 날"
|
||||
location: "장소"
|
||||
theme: "테마"
|
||||
themeForLightMode: "볽엄 모드서 설 테마"
|
||||
themeForDarkMode: "어덥엄 모드서 설 테마"
|
||||
light: "볽엄"
|
||||
dark: "어덥엄"
|
||||
lightThemes: "볽언 테마"
|
||||
darkThemes: "어덥언 테마"
|
||||
syncDeviceDarkMode: "디바이스 쪽 어덥엄 모드하고 같구로 마추기"
|
||||
drive: "드라이브"
|
||||
fileName: "파일 이럼"
|
||||
selectFile: "파일 개리기"
|
||||
selectFiles: "파일 개리기"
|
||||
selectFolder: "폴더 개리기"
|
||||
selectFolders: "폴더 개리기"
|
||||
renameFile: "파일 이럼 바꾸기"
|
||||
folderName: "폴더 이럼"
|
||||
createFolder: "폴더 맨걸기"
|
||||
renameFolder: "폴더 이럼 바꾸기"
|
||||
deleteFolder: "폴더 뭉캐기"
|
||||
folder: "폴더"
|
||||
addFile: "파일 옇기"
|
||||
emptyDrive: "드라이브가 비잇십니다"
|
||||
emptyFolder: "폴더가 비잇십니다"
|
||||
unableToDelete: "몬 뭉캡니다"
|
||||
inputNewFileName: "새 파일 이럼얼 서 보이소"
|
||||
inputNewDescription: "새 설멩얼 서 보이소"
|
||||
inputNewFolderName: "새 폴더 이럼얼 서 보이소"
|
||||
circularReferenceFolder: "엚길 폴더으 아래 폴더입니다."
|
||||
hasChildFilesOrFolders: "요 폴더넌 아이 비잇어니께 몬 뭉캡니다."
|
||||
copyUrl: "주소 복사하기"
|
||||
rename: "이럼 바꾸기"
|
||||
avatar: "아바타"
|
||||
banner: "배너"
|
||||
displayOfSensitiveMedia: "수ᇚ힌 옝상물 보기"
|
||||
whenServerDisconnected: "서버하고 옌겔이 껂기모"
|
||||
disconnectedFromServer: "서버하고 옌겔이 껂깃십니다"
|
||||
reload: "새로곤침"
|
||||
doNothing: "무시하기"
|
||||
reloadConfirm: "새로곤침합니꺼?"
|
||||
watch: "간심 갖기"
|
||||
unwatch: "간심 고마 갖기"
|
||||
accept: "받기"
|
||||
reject: "아이 받기"
|
||||
normal: "일반"
|
||||
instanceName: "서버 이럼"
|
||||
instanceDescription: "서버 소개"
|
||||
maintainerName: "간리자 이럼"
|
||||
maintainerEmail: "간리자 전자우펜"
|
||||
tosUrl: "이용 약간 주소"
|
||||
thisYear: "올개"
|
||||
thisMonth: "요달"
|
||||
today: "오올"
|
||||
dayX: "{day}일"
|
||||
monthX: "{month}월"
|
||||
yearX: "{year}년"
|
||||
pages: "바닥"
|
||||
integration: "옌겔"
|
||||
connectService: "옌겔하기"
|
||||
disconnectService: "껂기"
|
||||
enableLocalTimeline: "로컬 타임라인 키기"
|
||||
enableGlobalTimeline: "글로벌 타임라인 키기"
|
||||
disablingTimelinesInfo: "요 타임라인얼 꺼도 간리자하고 중재자넌 고대로 설 수 잇십니다."
|
||||
registration: "맨걸기"
|
||||
enableRegistration: "누라도 새로 맨걸 수 잇거로 하기"
|
||||
invite: "초대하기"
|
||||
driveCapacityPerLocalAccount: "로컬 사용자 하나마중 드라이브 커기"
|
||||
driveCapacityPerRemoteAccount: "웬겍 사용자 하나마중 드라이브 커기"
|
||||
inMb: "메가바이트 단이"
|
||||
bannerUrl: "배너 이미지 주소"
|
||||
backgroundImageUrl: "배겡 이미지 주소"
|
||||
basicInfo: "기본 정보"
|
||||
pinnedUsers: "붙인 사용자"
|
||||
pinnedUsersDescription: "‘살펴보기’서 붙일라넌 사용자럴 줄 바꿈해서로 적십니다."
|
||||
pinnedPages: "붙인 바닥"
|
||||
pinnedPagesDescription: "서버으 대문서 붙일라넌 바닥으 겡로럴 줄 바꿈해서로 적십니다."
|
||||
pinnedClipId: "붙일 클립으 아이디"
|
||||
pinnedNotes: "붙인 노트"
|
||||
hcaptcha: "에이치캡차"
|
||||
enableHcaptcha: "에이치캡차 키기"
|
||||
hcaptchaSiteKey: "사이트키"
|
||||
hcaptchaSecretKey: "시크릿키"
|
||||
mcaptchaSiteKey: "사이트키"
|
||||
mcaptchaSecretKey: "시크릿키"
|
||||
recaptcha: "리캡차"
|
||||
enableRecaptcha: "리캡차 키기"
|
||||
recaptchaSiteKey: "사이트키"
|
||||
recaptchaSecretKey: "시크릿키"
|
||||
turnstile: "턴스타일"
|
||||
enableTurnstile: "턴스타일 키기"
|
||||
turnstileSiteKey: "사이트키"
|
||||
turnstileSecretKey: "시크릿키"
|
||||
avoidMultiCaptchaConfirm: "오만 캡차럴 서모 간섭이 잇얼 깁니다. 다린 캡차를 껍니꺼? ‘아이예’럴 누질리모 오만 캡차럴 키 둘 수도 잇십니다."
|
||||
antennas: "안테나"
|
||||
manageAntennas: "안테나 간리"
|
||||
name: "이럼"
|
||||
antennaSource: "받얼 소스"
|
||||
antennaKeywords: "받얼 검색어"
|
||||
antennaExcludeKeywords: "수ᇚ훌 검색어"
|
||||
antennaKeywordsDescription: "띠어서기럴 하모 ‘거라고’가 데고 줄 바꿈얼 하모 ‘아이먼’이 뎁니다"
|
||||
notifyAntenna: "새 노트럴 알리기"
|
||||
withFileAntenna: "파일이 붙언 노트마"
|
||||
enableServiceworker: "브라우저서 알림 포시럴 키기"
|
||||
antennaUsersDescription: "사용자 이럼얼 줄 바꿈해서로 섭니다"
|
||||
caseSensitive: "대소문자럴 구벨하기"
|
||||
withReplies: "답하기도 옇기"
|
||||
connectedTo: "요 게정하고 옌겔데어 잇십니다"
|
||||
notesAndReplies: "걸하고 답걸"
|
||||
withFiles: "파일에 붙이기"
|
||||
silence: "수ᇚ후기"
|
||||
silenceConfirm: "수ᇚ훕니꺼?"
|
||||
unsilence: "수ᇚ후기 어ᇝ애기"
|
||||
unsilenceConfirm: "수ᇚ후기럴 어ᇝ앱니꺼?"
|
||||
popularUsers: "소문난 사용자"
|
||||
recentlyUpdatedUsers: "얼마 전에 걸 선 사용자"
|
||||
recentlyRegisteredUsers: "얼마 전에 맨건 사용자"
|
||||
recentlyDiscoveredUsers: "얼마 전에 찾언 사용자"
|
||||
exploreUsersCount: "사용자 {count}멩이 잇십니다."
|
||||
exploreFediverse: "옌합우주 탐험하기"
|
||||
popularTags: "소문난 태그"
|
||||
userList: "리스트"
|
||||
about: "정보"
|
||||
aboutMisskey: "Misskey넌예"
|
||||
administrator: "간리자"
|
||||
token: "학인 기호"
|
||||
2fa: "두 단게 정멩"
|
||||
setupOf2fa: "두 단게 정멩 설정"
|
||||
totp: "정멩 앱"
|
||||
totpDescription: "정멩 앱서 단헤용 비밀번호 서기"
|
||||
moderator: "중재자"
|
||||
moderation: "중재"
|
||||
moderationNote: "중재 노트"
|
||||
addModerationNote: "중재 노트 옇기"
|
||||
moderationLogs: "중재 일지"
|
||||
nUsersMentioned: "{n}멩이 이바구하고 잇어예"
|
||||
securityKeyAndPasskey: "보안키·패스키"
|
||||
securityKey: "보안키"
|
||||
lastUsed: "마지막 쓰임"
|
||||
lastUsedAt: "마지막 쓰임: {t}"
|
||||
unregister: "맨걸기 무루기"
|
||||
passwordLessLogin: "비밀번호 없시 로그인"
|
||||
passwordLessLoginDescription: "비밀번호 말고 보안키나 패스키 같은 것만 써 가 로그인합니다."
|
||||
resetPassword: "비밀번호 재설정"
|
||||
newPasswordIs: "새 비밀번호는 \"{password}\" 입니다"
|
||||
reduceUiAnimation: "화면 움직임 효과들을 수ᇚ후기"
|
||||
share: "노누기"
|
||||
notFound: "몬 찾앗십니다"
|
||||
notFoundDescription: "고런 주소로 들어가는 하멘은 없십니다."
|
||||
uploadFolder: "기본 업로드 위치"
|
||||
markAsReadAllNotifications: "모든 알림 이럿다고 표시"
|
||||
markAsReadAllUnreadNotes: "모든 글 이럿다고 표시"
|
||||
markAsReadAllTalkMessages: "모든 대화 이럿다고 표시"
|
||||
help: "도움말"
|
||||
inputMessageHere: "여따가 메시지를 입력해주이소"
|
||||
close: "닫기"
|
||||
invites: "초대하기"
|
||||
members: "멤버"
|
||||
transfer: "양도"
|
||||
title: "제목"
|
||||
text: "글"
|
||||
enable: "키기"
|
||||
next: "다음"
|
||||
retype: "다시 서기"
|
||||
noteOf: "{user}님으 노트"
|
||||
quoteAttached: "따옴"
|
||||
quoteQuestion: "따와가 작성하겠십니까?"
|
||||
noMessagesYet: "아직 대화가 없십니다"
|
||||
newMessageExists: "새 메시지가 있십니다"
|
||||
onlyOneFileCanBeAttached: "메시지엔 파일 하나까제밖에 몬 넣십니다"
|
||||
invitations: "초대하기"
|
||||
invitationCode: "초대장"
|
||||
checking: "학인하고 잇십니다"
|
||||
passwordMatched: "맞십니다"
|
||||
passwordNotMatched: "안 맞십니다"
|
||||
signinFailed: "로그인 몬 했십니다. 고 이름이랑 비밀번호 제대로 썼는가 확인해 주이소."
|
||||
or: "아니면"
|
||||
language: "언어"
|
||||
uiLanguage: "UI 표시 언어"
|
||||
aboutX: "{x}에 대해서"
|
||||
emojiStyle: "이모지 모양"
|
||||
native: "기본"
|
||||
disableDrawer: "드로어 메뉴 쓰지 않기"
|
||||
showNoteActionsOnlyHover: "마우스 올맀을 때만 노트 액션 버턴 보이기"
|
||||
noHistory: "기록이 없십니다"
|
||||
signinHistory: "로그인 기록"
|
||||
enableAdvancedMfm: "복잡한 MFM 키기"
|
||||
enableAnimatedMfm: "정신사나운 MFM 키기"
|
||||
doing: "잠만예"
|
||||
category: "카테고리"
|
||||
tags: "태그"
|
||||
docSource: "요 문서의 원본"
|
||||
createAccount: "게정 맨걸기"
|
||||
existingAccount: "원래 게정"
|
||||
regenerate: "엎고 다시 맨걸기"
|
||||
fontSize: "글자 크기"
|
||||
mediaListWithOneImageAppearance: "사진 하나짜리 미디어 목록의 높이"
|
||||
limitTo: "{x}로 제한"
|
||||
noFollowRequests: "지둘리는 팔로우 요청이 없십니다"
|
||||
openImageInNewTab: "새 탭서 사진 열기"
|
||||
dashboard: "대시보드"
|
||||
local: "로컬"
|
||||
remote: "웬겍"
|
||||
total: "합계"
|
||||
weekOverWeekChanges: "저번주보다"
|
||||
dayOverDayChanges: "어제보다"
|
||||
appearance: "모냥"
|
||||
clientSettings: "클라이언트 설정"
|
||||
accountSettings: "게정 설정"
|
||||
promotion: "선전"
|
||||
promote: "선전하기"
|
||||
numberOfDays: "며칠동안"
|
||||
hideThisNote: "요 노트를 수ᇚ후기"
|
||||
showFeaturedNotesInTimeline: "타임라인에다 추천 노트 보이기"
|
||||
objectStorage: "오브젝트 스토리지"
|
||||
useObjectStorage: "오브젝트 스토리지 키기"
|
||||
objectStorageBaseUrl: "Base URL"
|
||||
objectStorageBaseUrlDesc: "오브젝트 (미디어) 참조 링크 만들 때 쓰는 URL임다. CDN 내지 프락시를 쓴다 카멘은 그 URL을 갖다 늫고, 아이면 써먹을 서비스네 가이드를 봐봐가 공개적으로 접근할 수 있는 주소를 여 넣어 주이소. 그니께, 내가 AWS S3을 쓴다 카면은 'https://<bucket>.s3.amazonaws.com', GCS를 쓴다 카면 'https://storage.googleapis.com/<bucket>' 처럼 쓰믄 되입니더."
|
||||
objectStorageBucket: "Bucket"
|
||||
objectStorageBucketDesc: "써먹을 서비스의 바께쓰 이름을 여 써 주이소."
|
||||
objectStoragePrefix: "Prefix"
|
||||
objectStoragePrefixDesc: "요 Prefix 디렉토리 안에다가 파일이 들어감다."
|
||||
objectStorageEndpoint: "Endpoint"
|
||||
objectStorageEndpointDesc: "AWS S3을 쓸라멘 요는 비워두고, 아이멘은 그 서비스 가이드에 맞게 endpoint를 넣어 주이소. '<host>' 내지 '<host>:<port>'처럼 넣십니다."
|
||||
objectStorageRegion: "Region"
|
||||
objectStorageRegionDesc: "'xx-east-1' 같은 region 이름을 옇어 주이소. 써먹을 서비스에 region 개념 같은 게 읎다! 카면은 대신에 'us-east-1'을 옇어 놓으이소. AWS 설정 파일이나 환경 변수를 갖다 끌어다 쓸 거면은 요는 비워 두이소."
|
||||
objectStorageUseSSL: "SSL 쓰기"
|
||||
objectStorageUseSSLDesc: "API 호출할 때 HTTPS 안 쓸거면은 꺼 두이소"
|
||||
objectStorageUseProxy: "연결에 프락시 사용"
|
||||
objectStorageUseProxyDesc: "오브젝트 스토리지 API 호출에 프락시 안 쓸 거면 꺼 두이소"
|
||||
objectStorageSetPublicRead: "업로드할 때 'public-read' 설정하기"
|
||||
s3ForcePathStyleDesc: "s3ForcePathStyle을 키면, 바께쓰 이름을 URL의 호스트명 말고 경로의 일부로써 취급합니다. 셀프 호스트 Minio 같은 걸 굴릴라믄 켜놔야 될 수도 있십니다."
|
||||
serverLogs: "서버 로그"
|
||||
deleteAll: "말캉 뭉캐기"
|
||||
showFixedPostForm: "타임라인 우에 글 작성 칸 박기"
|
||||
showFixedPostFormInChannel: "채널 타임라인 우에 글 작성 칸 박기"
|
||||
withRepliesByDefaultForNewlyFollowed: "팔로우 할 때 기본적으로 답걸도 타임라인에 나오게 하기"
|
||||
newNoteRecived: "새 노트 있어예"
|
||||
sounds: "소리"
|
||||
sound: "소리"
|
||||
listen: "듣기"
|
||||
none: "없음"
|
||||
showInPage: "바닥서 보기"
|
||||
popout: "새 창 열기"
|
||||
volume: "음량"
|
||||
masterVolume: "대빵 음량"
|
||||
notUseSound: "음소거하기"
|
||||
useSoundOnlyWhenActive: "Misskey가 활성화되어 있을 때만 소리 내기"
|
||||
details: "좀 더"
|
||||
chooseEmoji: "이모지 선택"
|
||||
unableToProcess: "작업 다 몬 했십니다"
|
||||
recentUsed: "최근 쓴 놈"
|
||||
install: "설치"
|
||||
uninstall: "삭제"
|
||||
installedApps: "설치된 애플리케이션"
|
||||
nothing: "뭣도 없어예"
|
||||
installedDate: "설치한 날"
|
||||
lastUsedDate: "마지막 사용"
|
||||
state: "상태"
|
||||
sort: "정렬하기"
|
||||
ascendingOrder: "작은 순"
|
||||
descendingOrder: "큰 순"
|
||||
scratchpad: "스크래치 패드"
|
||||
scratchpadDescription: "스크래치 패드는 AiScript를 끼적거리는 창입니더. Misskey랑 갖다 이리저리 상호작용하는 코드를 서가 굴리멘은 그 결과도 바로 확인할 수 있십니다."
|
||||
output: "출력"
|
||||
script: "스크립트"
|
||||
disablePagesScript: "온갖 바닥서 AiScript를 쓰지 않음"
|
||||
updateRemoteUser: "원겍 사용자 근황 알아오기"
|
||||
unsetUserAvatar: "아바타 치우기"
|
||||
unsetUserAvatarConfirm: "아바타 갖다 치울까예?"
|
||||
unsetUserBanner: "배너 치우기"
|
||||
unsetUserBannerConfirm: "배너 갖다 치울까예?"
|
||||
deleteAllFiles: "파일 말캉 뭉캐기"
|
||||
deleteAllFilesConfirm: "파일을 싸그리 다 뭉캐삐릴까예?"
|
||||
removeAllFollowing: "팔로잉 말캉 무루기"
|
||||
removeAllFollowingDescription: "{host} 서버랑 걸어놓은 모든 팔로잉을 무룹니다. 고 서버가 아예 없어지삐맀든가, 그런 경우에 하이소."
|
||||
userSuspended: "요 게정은... 얼어 있십니다."
|
||||
userSilenced: "요 게정은... 수ᇚ혀 있십니다."
|
||||
relays: "릴레이"
|
||||
addRelay: "릴레이 옇기"
|
||||
addedRelays: "옇은 릴레이"
|
||||
enableInfiniteScroll: "알아서 더 보기"
|
||||
author: "맨던 사람"
|
||||
manage: "간리"
|
||||
emailServer: "전자우펜 서버"
|
||||
email: "전자우펜"
|
||||
emailAddress: "전자우펜 주소"
|
||||
smtpHost: "호스트 이럼"
|
||||
smtpPort: "포트"
|
||||
smtpUser: "사용자 이럼"
|
||||
smtpPass: "비밀번호"
|
||||
display: "보기"
|
||||
create: "맨걸기"
|
||||
abuseReports: "신고하기"
|
||||
reportAbuse: "신고하기"
|
||||
reportAbuseRenote: "리노트 신고하기"
|
||||
reportAbuseOf: "{name}님얼 신고하기"
|
||||
reporter: "신고한 사람"
|
||||
reporteeOrigin: "신고덴 사람"
|
||||
reporterOrigin: "신고한 곳"
|
||||
forwardReport: "웬겍 서버에 신고 보내기"
|
||||
random: "무작이"
|
||||
system: "시스템"
|
||||
clip: "클립 맨걸기"
|
||||
createNew: "새로 맨걸기"
|
||||
notesCount: "노트 수"
|
||||
renotesCount: "리노트한 수"
|
||||
renotedCount: "리노트덴 수"
|
||||
followingCount: "팔로우 수"
|
||||
followersCount: "팔로워 수"
|
||||
clips: "클립 맨걸기"
|
||||
clearCache: "캐시 비우기"
|
||||
unlikeConfirm: "좋네예럴 무룹니꺼?"
|
||||
info: "정보"
|
||||
user: "사용자"
|
||||
administration: "간리"
|
||||
on: "킴"
|
||||
off: "껌"
|
||||
clickToFinishEmailVerification: "[{ok}]럴 누질라서 전자우펜 정멩얼 껕내이소."
|
||||
searchByGoogle: "찾기"
|
||||
tenMinutes: "십 분"
|
||||
oneHour: "한 시간"
|
||||
oneDay: "하리"
|
||||
oneWeek: "한 주"
|
||||
oneMonth: "한 달"
|
||||
file: "파일"
|
||||
tools: "도구"
|
||||
like: "좋네예!"
|
||||
unlike: "좋네예 무루기"
|
||||
numberOfLikes: "좋네예 수"
|
||||
show: "보기"
|
||||
roles: "옉할"
|
||||
role: "옉할"
|
||||
noRole: "옉할이 없십니다"
|
||||
thisPostMayBeAnnoyingCancel: "아이예"
|
||||
likeOnly: "좋네예마"
|
||||
icon: "아바타"
|
||||
replies: "답하기"
|
||||
renotes: "리노트"
|
||||
_initialAccountSetting:
|
||||
startTutorial: "길라잡이 하기"
|
||||
_initialTutorial:
|
||||
launchTutorial: "길라잡이 보기"
|
||||
title: "길라잡이"
|
||||
skipAreYouSure: "길라잡이럴 껕냅니까?"
|
||||
_landing:
|
||||
title: "길라잡이에 어서 오이소"
|
||||
_done:
|
||||
title: "길라잡이가 껕낫십니다!🎉"
|
||||
_achievements:
|
||||
_types:
|
||||
_tutorialCompleted:
|
||||
description: "길라잡이럴 껕냇십니다"
|
||||
_gallery:
|
||||
liked: "좋네예한 걸"
|
||||
like: "좋네예!"
|
||||
unlike: "좋네예 무루기"
|
||||
_email:
|
||||
_follow:
|
||||
title: "새 팔로워가 잇십니다"
|
||||
_serverDisconnectedBehavior:
|
||||
reload: "알아서 새로곤침"
|
||||
_channel:
|
||||
removeBanner: "배너 뭉캐기"
|
||||
_theme:
|
||||
keys:
|
||||
mention: "멘션"
|
||||
_sfx:
|
||||
note: "새 노트"
|
||||
notification: "알림"
|
||||
_2fa:
|
||||
step3Title: "학인 기호럴 서기"
|
||||
renewTOTPCancel: "뎃어예"
|
||||
_widgets:
|
||||
profile: "프로필"
|
||||
instanceInfo: "서버 정보"
|
||||
notifications: "알림"
|
||||
timeline: "타임라인"
|
||||
activity: "할동"
|
||||
federation: "옌합"
|
||||
jobQueue: "작업 대기옐"
|
||||
_userList:
|
||||
chooseList: "리스트 개리기"
|
||||
_cw:
|
||||
show: "더 볼래예"
|
||||
_visibility:
|
||||
home: "덜머리"
|
||||
followers: "팔로워"
|
||||
_profile:
|
||||
name: "이럼"
|
||||
username: "사용자 이럼"
|
||||
_exportOrImport:
|
||||
clips: "클립 맨걸기"
|
||||
followingList: "팔로잉"
|
||||
muteList: "수ᇚ후기"
|
||||
blockingList: "차단하기"
|
||||
userLists: "리스트"
|
||||
_charts:
|
||||
federation: "옌합"
|
||||
_timelines:
|
||||
home: "덜머리"
|
||||
_play:
|
||||
script: "스크립트"
|
||||
_pages:
|
||||
like: "좋네예"
|
||||
unlike: "좋네예 무루기"
|
||||
blocks:
|
||||
image: "이미지"
|
||||
_note:
|
||||
id: "노트 아이디"
|
||||
_notification:
|
||||
youWereFollowed: "새 팔로워가 잇십니다"
|
||||
_types:
|
||||
follow: "팔로잉"
|
||||
mention: "멘션"
|
||||
quote: "따오기"
|
||||
reaction: "반엉"
|
||||
_actions:
|
||||
reply: "답하기"
|
||||
_deck:
|
||||
_columns:
|
||||
notifications: "알림"
|
||||
tl: "타임라인"
|
||||
antenna: "안테나"
|
||||
list: "리스트"
|
||||
mentions: "받언 멘션"
|
||||
_webhookSettings:
|
||||
name: "이럼"
|
||||
_moderationLogTypes:
|
||||
suspend: "얼우기"
|
||||
deleteNote: "노트 뭉캐기"
|
||||
deleteUserAnnouncement: "사용자 공지 걸 뭉캐기"
|
||||
resetPassword: "비밀번호 재설정"
|
||||
resolveAbuseReport: "신고 해겔하기"
|
||||
_reversi:
|
||||
total: "합계"
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,9 @@
|
||||
---
|
||||
_lang_: "ພາສາລາວ"
|
||||
headlineMisskey: "ເຊື່ອມຕໍ່ເຄືອຂ່າຍໂດຍ note"
|
||||
introMisskey: "ຍິນດີຕ້ອນຮັບ! Misskey ເປັນຊອຟແວopensource, ສຳລັບບໍລິການ microblogging ແບບ decentralized\nສ້າງ “note” ເພື່ອແບ່ງປັນຄວາມຄິດຂອງທ່ານກັບທຸກໆ ຄົນທີ່ຢູ່ອ້ອມຮອບທ່ານ 📡\nຢ່າລືມ “reaction” ໂນຕຂອງລາວເພື່ອສະແດງຄວາມຮູ້ສຶກ 👍\nມາສຳຫຼວດໂລກໃໝ່ແນ! 🚀"
|
||||
headlineMisskey: "ເຊື່ອມຕໍ່ເຄືອຂ່າຍໂດຍຫມາຍເຫດ"
|
||||
introMisskey: "ຍິນດີຕ້ອນຮັບ! Misskey ເປັນແຫຼ່ງເປີດ, ການບໍລິການ microblogging ກະຈາຍ\nສ້າງ \"ບັນທຶກ\" ເພື່ອແບ່ງປັນຄວາມຄິດຂອງທ່ານກັບທຸກໆຄົນທີ່ຢູ່ອ້ອມຮອບທ່ານ 📡\nດ້ວຍ \"ປະຕິກິລິຍາ\", ທ່ານຍັງສາມາດສະແດງຄວາມຮູ້ສຶກຂອງທ່ານຢ່າງໄວວາກ່ຽວກັບບັນທຶກຂອງທຸກໆຄົນ 👍\nມາສຳຫຼວດໂລກໃໝ່! 🚀"
|
||||
poweredByMisskeyDescription: "{name} ແມ່ນສ່ວນໜຶ່ງຂອງການບໍລິການທີ່ຂັບເຄື່ອນໂດຍແພລດຟອມ open source. <b>Misskey</b> (ເອີ້ນວ່າ \"Misskey instance\")"
|
||||
monthAndDay: "ເດືອນ{month} / ວັນ{day}"
|
||||
monthAndDay: "{ເດືອນ}/{ມື້}"
|
||||
search: "ຄົ້ນຫາ"
|
||||
notifications: "ການແຈ້ງເຕືອນ"
|
||||
username: "ຊື່ຜູ້ໃຊ້"
|
||||
@@ -15,25 +15,24 @@ gotIt: "ເຂົ້າໃຈແລ້ວ!"
|
||||
cancel: "ຍົກເລີກ"
|
||||
noThankYou: "ບໍ່ແມ່ນຕອນນີ້"
|
||||
enterUsername: "ປ້ອນຊື່ຜູ້ໃຊ້"
|
||||
renotedBy: "Renoted ໂດຍ {user}"
|
||||
noNotes: "ບໍ່ມີ note"
|
||||
renotedBy: "Renoted ໂດຍ {ຜູ້ໃຊ້}"
|
||||
noNotes: "ບໍ່ມີຫມາຍເຫດ"
|
||||
noNotifications: "ບໍ່ມີການແຈ້ງເຕືອນ"
|
||||
instance: "ອີນສະແຕນ"
|
||||
settings: "ກຳນົດຄ່າ"
|
||||
notificationSettings: "ຕັ້ງຄ່າການແຈ້ງເຕືອນ"
|
||||
basicSettings: "ການຕັ້ງຄ່າພື້ນຖານ"
|
||||
otherSettings: "ການຕັ້ງຄ່າອື່ນໆ"
|
||||
openInWindow: "ເປີດໃນປ່ອງຢ້ຽມ"
|
||||
openInWindow: "ເປີດຢູ່ໃນປ່ອງຢ້ຽມ"
|
||||
profile: "ໂພຼຟາຍ"
|
||||
timeline: "ໄທມ໌ໄລນ໌"
|
||||
timeline: "ເສັ້ນກຳນົດເວລາ"
|
||||
noAccountDescription: "ຜູ້ໃຊ້ນີ້ຍັງບໍ່ໄດ້ຂຽນໃນຊີວະປະຫວັດຂອງເຂົາເຈົ້າເທື່ອ"
|
||||
login: "ເຂົ້າສູ່ລະບົບ"
|
||||
loggingIn: "ກຳລັງເຂົ້າສູ່ລະບົບ..."
|
||||
logout: "ອອກຈາກລະບົບ"
|
||||
signup: "ລົງທະບຽນ"
|
||||
uploading: "ກຳລັງອັບໂຫຼດ..."
|
||||
uploading: "ການອັບໂຫຼດ..."
|
||||
save: "ບັນທຶກ"
|
||||
users: "ຜູ້ໃຊ້"
|
||||
users: "ຜູ້ໃຊ້ຕ່າງໆ"
|
||||
addUser: "ເພີ່ມຜູ້ໃຊ້"
|
||||
favorite: "ເພີ່ມໃສ່ລາຍການທີ່ມັກ"
|
||||
favorites: "ລາຍການທີ່ມັກ"
|
||||
@@ -41,24 +40,17 @@ unfavorite: "ລຶບອອກຈາກລາຍການທີ່ມັກ"
|
||||
favorited: "ເພີ່ມໃສ່ລາຍການທີ່ມັກແລ້ວ"
|
||||
alreadyFavorited: "ເພີ່ມເຂົ້າໃນລາຍການທີ່ມັກແລ້ວ."
|
||||
cantFavorite: "ບໍ່ສາມາດເພີ່ມໃສ່ລາຍການທີ່ມັກໄດ້."
|
||||
pin: "ປັກໝຸດ"
|
||||
unpin: "ຖອດປັກໝຸດອອກ"
|
||||
pin: "ປັກໝຸດໄປຫາໂປຣໄຟລ໌"
|
||||
unpin: "ຖອດປັກໝຸດອອກຈາກໂປຣໄຟລ໌"
|
||||
copyContent: "ຄັດລອກເນື້ອຫາ"
|
||||
copyLink: "ຄັດລອກລິ້ງ"
|
||||
copyLinkRenote: "ຄັດລອກລິ້ງຂອງ renote"
|
||||
copyLink: "ສຳເນົາລິ້ງ"
|
||||
delete: "ລຶບ"
|
||||
deleteAndEdit: "ລຶບແລະແກ້ໄຂ"
|
||||
deleteAndEditConfirm: "ເຈົ້າແນ່ໃຈບໍ່? ທີ່ທ່ານຕ້ອງການທີ່ຈະລຶບ note ນີ້ ແລະແກ້ໄຂມັນ ທ່ານອາດຈະສູນເສຍ reaction, renote, ແລະການຕອບກັບທັງໝົດ"
|
||||
deleteAndEdit: "ລົບແລະແກ້ໄຂ"
|
||||
deleteAndEditConfirm: "ເຈົ້າແນ່ໃຈບໍ່? ທີ່ທ່ານຕ້ອງການທີ່ຈະລຶບບັນທຶກນີ້ແລະແກ້ໄຂມັນ ທ່ານອາດຈະສູນເສຍການໂຕ້ຕອບ, ບັນທຶກ, ແລະການຕອບກັບທັງໝົດ"
|
||||
addToList: "ເພີ່ມໃສ່ລາຍຊື່"
|
||||
addToAntenna: "ເພີ່ມໃສ່ເສົາອາກາດ"
|
||||
sendMessage: "ສົ່ງຂໍ້ຄວາມ"
|
||||
copyRSS: "ສຳເນົາ RSS"
|
||||
copyUsername: "ສຳເນົາຊື່ຜູ້ໃຊ້"
|
||||
copyUserId: "ສຳເນົາ ID ຜູ້ໃຊ້"
|
||||
copyNoteId: "ສຳເນົາ ID ບັນທຶກ"
|
||||
copyFileId: "ສຳເນົາ ID ໄຟລ໌"
|
||||
copyFolderId: "ສຳເນົາ ID ໂຟນເດີ"
|
||||
copyProfileUrl: "ສຳເນົາ URL ໂປຣໄຟລ໌"
|
||||
searchUser: "ຄົ້ນຫາຜູ້ໃຊ້"
|
||||
reply: "ຕອບໄປທີ"
|
||||
loadMore: "ໂຫຼດເພີ່ມເຕີມ"
|
||||
@@ -67,15 +59,15 @@ showLess: "ປິດ"
|
||||
youGotNewFollower: "ໄດ້ຕິດຕາມທ່ານ"
|
||||
receiveFollowRequest: "ປະຕິບັດຕາມຄໍາຮ້ອງຂໍທີ່ໄດ້ຮັບ"
|
||||
followRequestAccepted: "ຜູ້ຕິດຕາມໄດ້ຍອມຮັບຄໍາຮ້ອງຂໍຂອງທ່ານ"
|
||||
mention: "ກ່າວຖືງ"
|
||||
mention: "ໄດ້ກ່າວມາ"
|
||||
mentions: "ກ່າວເຖິງ"
|
||||
directNotes: "ໂພສ Direct note"
|
||||
directNotes: "ໂດຍກົງຫມາຍເຫດ"
|
||||
importAndExport: "ນໍາເຂົ້າ / ສົ່ງອອກ"
|
||||
import: "ນຳເຂົ້າ"
|
||||
export: "ສົ່ງອອກ"
|
||||
export: "ນຳອອກ"
|
||||
files: "ໄຟລ໌"
|
||||
download: "ດາວໂຫລດ"
|
||||
driveFileDeleteConfirm: "ທ່ານແນ່ໃຈບໍ່ວ່າຕ້ອງການລຶບໄຟລ໌ \"{name}\"? note ທີ່ມີໄຟລ໌ແນບນີ້ຈະຖືກລຶບຖິ້ມ"
|
||||
driveFileDeleteConfirm: "ທ່ານແນ່ໃຈບໍ່ວ່າຕ້ອງການລຶບໄຟລ໌ \"{name}\"? ບັນທຶກທີ່ມີໄຟລ໌ແນບນີ້ຈະຖືກລຶບຖິ້ມ"
|
||||
unfollowConfirm: "ທ່ານແນ່ໃຈບໍ່ວ່າຕ້ອງການເຊົາຕິດຕາມ {name}?"
|
||||
exportRequested: "ໃນເວລາທີ່ທ່ານໄດ້ຮ້ອງຂໍການສົ່ງອອກ ມັນອາດຈະໃຊ້ເວລາບາງເວລາ ແລະມັນຈະຖືກເພີ່ມໃສ່ drive ຂອງທ່ານເມື່ອມັນສຳເລັດແລ້ວ"
|
||||
importRequested: "ໃນເວລາທີ່ທ່ານໄດ້ຮ້ອງຂໍການນໍາເຂົ້າ ມັນອາດຈະໃຊ້ເວລາບາງເວລາ"
|
||||
@@ -87,7 +79,7 @@ following: "ກຳລັງຕິດຕາມ"
|
||||
followers: "ຜູ້ຕິດຕາມ"
|
||||
followsYou: "ຕິດຕາມເຈົ້າ"
|
||||
createList: "ສ້າງລາຍຊື່"
|
||||
manageLists: "ຈັດການລາຍຊື່"
|
||||
manageLists: "ການບໍລິຫານບັນຊີລາຍການ"
|
||||
error: "ຂໍ້ຜິດພາດ"
|
||||
somethingHappened: "ອຸຍ, ມີບາງຢ່າງຜິດພາດ"
|
||||
retry: "ລອງໃຫມ່"
|
||||
@@ -97,31 +89,26 @@ serverIsDead: "ເຊີບເວີນີ້ບໍ່ຕອບສະໜອງ
|
||||
youShouldUpgradeClient: "ເພື່ອເບິ່ງໜ້ານີ້, ກະລຸນາໂຫຼດຂໍ້ມູນຄືນໃໝ່ເພື່ອອັບເດດລູກຄ້າຂອງທ່ານ"
|
||||
enterListName: "ໃສ່ຊື່ສຳລັບລາຍຊື່"
|
||||
privacy: "ຄວາມເປັນສ່ວນຕົວ"
|
||||
makeFollowManuallyApprove: "ຕິດຕາມຄຳຂໍທີ່ຕ້ອງໄດ້ຮັບການອະນຸມັດ"
|
||||
defaultNoteVisibility: "ການເບິ່ງເຫັນທີ່ເປັນຄ່າເລີ່ມຕົ້ນ"
|
||||
makeFollowManuallyApprove: "ປະຕິບັດຕາມການຮ້ອງຂໍຮຽກຮ້ອງໃຫ້ມີການອະນຸມັດ"
|
||||
defaultNoteVisibility: "ເປັນຄ່າເລີ່ມຕົ້ນ"
|
||||
follow: "ກຳລັງຕິດຕາມ"
|
||||
followRequest: "ສົ່ງຄຳຂໍຕິດຕາມ"
|
||||
followRequests: "ສົ່ງຄຳຂໍຕິດຕາມ"
|
||||
followRequest: "ສົ່ງການຮ້ອງຂໍປະຕິບຕາມ"
|
||||
followRequests: "ປະຕິບັດຕາມຄໍາຮ້ອງຂໍ"
|
||||
unfollow: "ເຊົາຕິດຕາມ"
|
||||
followRequestPending: "ລໍຖ້າການອະນຸມັດໃຫ້ຕິດຕາມ"
|
||||
enterEmoji: "ປ້ອນເອໂມຈິ"
|
||||
followRequestPending: "ປະຕິບັດຕາມຄໍາຮ້ອງຂໍທີ່ລໍຖ້າຢູ່"
|
||||
enterEmoji: "ປ້ອນອີໂມຈິ"
|
||||
renote: "Renote"
|
||||
unrenote: "ເລີກ Renote"
|
||||
renoted: "renote ແລ້ວ"
|
||||
cantRenote: "ໂພສນີ້ບໍ່ສາມາດ renote ໃໝ່ໄດ້"
|
||||
cantReRenote: "ບໍ່ສາມາດບັນທຶກຄືນໃໝ່ໄດ້"
|
||||
quote: "ອ້າງອີງ"
|
||||
inChannelRenote: "Renote ໃນ channel ເທົ່ານັ້ນ"
|
||||
inChannelQuote: "ອ້າງອິງໃນ channel ເທົ່ານັ້ນ"
|
||||
pinnedNote: "note ທີ່ປັກໝຸດໄວ້"
|
||||
pinned: "ປັກໝຸດ"
|
||||
renoted: "ເກັບບັນທຶກໄວ້"
|
||||
quote: "ລວມຂໍ້ຄວາມອ້າງອີງ"
|
||||
pinnedNote: "ບັນທຶກທີ່ປັກໝຸດໄວ້"
|
||||
pinned: "ປັກໝຸດໄປຫາໂປຣໄຟລ໌"
|
||||
you: "ເຈົ້າ"
|
||||
clickToShow: "ກົດເພື່ອສະແດງໃຫ້ເຫັນ"
|
||||
sensitive: "NSFW"
|
||||
add: "ເພີ່ມ"
|
||||
reaction: "reaction"
|
||||
reactions: "reaction"
|
||||
attachCancel: "ເອົາໄຟລ໌ແນບ"
|
||||
reaction: "ປະຕິກິລິຍາ"
|
||||
reactions: "ປະຕິກິລິຍາ"
|
||||
mute: "ປີດສຽງ"
|
||||
unmute: "ເປີດສຽງ"
|
||||
block: "ບ໋ອກ"
|
||||
@@ -129,10 +116,6 @@ unblock: "ຍົກເລີກກາຮົບລັອກ"
|
||||
suspend: "ລະງັບ"
|
||||
unsuspend: "ເຊົາລະງັບ"
|
||||
selectList: "ເລືອກບັນຊີລາຍການ"
|
||||
editList: "ແກ້ໄຂລາຍຊື່"
|
||||
selectChannel: "ເລືອກຊ່ອງ"
|
||||
selectAntenna: "ເລືອກເສົາອາກາດ"
|
||||
editAntenna: "ແກ້ໄຂເສົາອາກາດ"
|
||||
selectWidget: "ເລືອກວິກເຈັດ"
|
||||
editWidgets: "ແກ້ໄຂ Widget"
|
||||
editWidgetsExit: "ສຳເລັດແລ້ວ"
|
||||
@@ -142,7 +125,6 @@ emojis: "ອີໂມຈິ"
|
||||
emojiName: "ຊື່ Emoji"
|
||||
emojiUrl: "URL ອີໂມຈິ"
|
||||
addEmoji: "ຕື່ມອີໂມຈິ"
|
||||
settingGuide: "ການຕັ້ງຄ່າທີ່ແນະນໍາ"
|
||||
flagAsBot: "ໝາຍບັນຊີນີ້ເປັນບັອດ"
|
||||
flagAsCat: "ໝາຍບັນຊີນີ້ເປັນແມວ"
|
||||
flagAsCatDescription: "ເປີດໃຊ້ຕົວເລືອກນີ້ເພື່ອໝາຍບັນຊີນີ້ເປັນແມວ"
|
||||
@@ -151,13 +133,10 @@ flagShowTimelineRepliesDescription: "ສະແດງການຕອບກັບ
|
||||
autoAcceptFollowed: "ອະນຸມັດອັດຕະໂນມັດຕາມຄຳຮ້ອງຂໍຈາກຜູ້ໃຊ້ທີ່ທ່ານກຳລັງຕິດຕາມຢູ່"
|
||||
addAccount: "ເພີ່ມບັນຊີ"
|
||||
loginFailed: "ການເຂົ້າສູ່ລະບົບບໍ່ສຳເລັດ"
|
||||
showOnRemote: "ເບິ່ງຢູ່ໃນຕົວຢ່າງໄລຍະໄກ"
|
||||
general: "ທົ່ວໄປ"
|
||||
wallpaper: "ພາບພື້ນຫລັງ"
|
||||
setWallpaper: "ຕັ້ງເປັນພາບພື້ນຫຼັງ"
|
||||
removeWallpaper: "ລຶບຮູບວໍເປເປີອອກ"
|
||||
searchWith: "ຊອກຫາ: {q}"
|
||||
youHaveNoLists: "ທ່ານບໍ່ມີລາຍການໃດໆ"
|
||||
proxyAccount: "ບັນຊີພຣັອກຊີ"
|
||||
host: "ໂຮດສ"
|
||||
selectUser: "ເລືອກຜູ້ໃຊ້"
|
||||
@@ -176,9 +155,7 @@ operations: "ການດຳເນີນງານ"
|
||||
software: "ຊອບແວ"
|
||||
version: "ສະບັບ"
|
||||
metadata: "Metadata"
|
||||
withNFiles: "{n} ໄຟລ໌(s)"
|
||||
monitor: "ຈໍພາບ"
|
||||
jobQueue: "ຄິວວຽກ"
|
||||
cpuAndMemory: "CPU ແລະ ຫນ່ວຍຄວາມຈໍາ"
|
||||
network: "ເຄືອຂ່າຍ"
|
||||
disk: "ດິສກ໌"
|
||||
@@ -231,12 +208,9 @@ fromUrl: "ຈາກ URL"
|
||||
uploadFromUrl: "ອັບໂຫຼດຈາກ URL"
|
||||
uploadFromUrlDescription: "URL ຂອງໄຟລ໌ທີ່ທ່ານຕ້ອງການອັບໂຫລດ"
|
||||
uploadFromUrlRequested: "ຮ້ອງຂໍການອັບໂຫລດ"
|
||||
explore: "ສຳຫຼວດ"
|
||||
messageRead: "ອ່ານແລ້ວ"
|
||||
startMessaging: "ເລີ່ມການສົນທະນາໃໝ່"
|
||||
nUsersRead: "ອ່ານໂດຍ {n}"
|
||||
agree: "ຍອມຮັບ"
|
||||
termsOfService: "ເງື່ອນໄຂການບໍລິການ"
|
||||
start: "ເລີ່ມຕົ້ນນຳໃຊ້ເລີຍ"
|
||||
home: "ໜ້າຫຼັກ"
|
||||
activity: "ກິດຈະກຳ"
|
||||
@@ -274,7 +248,7 @@ inputNewDescription: "ໃສ່ຄຳບັນຍາຍໃໝ່"
|
||||
inputNewFolderName: "ໃສ່ຊື່ໂຟນເດີໃໝ່"
|
||||
circularReferenceFolder: "ໂຟນເດີປາຍທາງແມ່ນໂຟນເດີຍ່ອຍຂອງໂຟນເດີທີ່ທ່ານຕ້ອງການຍ້າຍ"
|
||||
rename: "ປ່ຽນຊື່"
|
||||
doNothing: "ບໍ່ສົນໃຈ"
|
||||
nsfw: "NSFW"
|
||||
watch: "ເບິ່ງ"
|
||||
unwatch: "ຢຸດເບິ່ງ"
|
||||
accept: "ອະນຸຍາດ"
|
||||
@@ -303,16 +277,7 @@ enableRegistration: "ເປີດໃຊ້ການລົງທະບຽນຜ
|
||||
invite: "ເຊີນ"
|
||||
driveCapacityPerLocalAccount: "ຄວາມອາດສາມາດຂັບຕໍ່ຜູ້ໃຊ້ທ້ອງຖິ່ນ"
|
||||
driveCapacityPerRemoteAccount: "ໄດຣຟ໌ຄວາມອາດສາມາດຕໍ່ຜູ້ໃຊ້ທາງໄກ"
|
||||
basicInfo: "ຂໍ້ມຸນເບື້ອງຕົ້ນ"
|
||||
pinnedNotes: "ບັນທຶກທີ່ປັກໝຸດໄວ້"
|
||||
hcaptchaSiteKey: "ກະແຈໄຊທ໌"
|
||||
hcaptchaSecretKey: "ກະແຈລັບ"
|
||||
mcaptchaSiteKey: "ກະແຈໄຊທ໌"
|
||||
mcaptchaSecretKey: "ກະແຈລັບ"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "ເປີດໃຊ້ງານລີແຄ໋ບຈາ"
|
||||
recaptchaSiteKey: "ກະແຈໄຊທ໌"
|
||||
recaptchaSecretKey: "ກະແຈລັບ"
|
||||
turnstileSiteKey: "ກະແຈໄຊທ໌"
|
||||
turnstileSecretKey: "ກະແຈລັບ"
|
||||
name: "ຊື່"
|
||||
@@ -320,40 +285,24 @@ userList: "ລາຍການ"
|
||||
about: "ກ່ຽວກັບ"
|
||||
aboutMisskey: "ກ່ຽວກັບ Misskey"
|
||||
administrator: "ຜູ້ບໍລິຫານ"
|
||||
token: "ໂທເຄັນ"
|
||||
share: "ແບ່ງປັນ"
|
||||
notFound: "ບໍ່ພົບ"
|
||||
help: "ຊ່ວຍເຫຼືອ"
|
||||
close: "ປິດ"
|
||||
cacheClear: "ລຶບລ້າງແຄສ"
|
||||
invites: "ເຊີນ"
|
||||
members: "ສະມາຊິກ"
|
||||
transfer: "ໂອນຍ້າຍ"
|
||||
title: "ຫົວຂໍ້"
|
||||
text: "ຂໍ້ຄວາມ"
|
||||
enable: "ເປີດໃຊ້"
|
||||
next: "ຕໍ່ໄປ"
|
||||
retype: "ເຂົ້າໄປອີກຄັ້ງ"
|
||||
quoteAttached: "ວົງຢືມ"
|
||||
invitations: "ເຊີນ"
|
||||
unavailable: "ບໍ່ສາມາດໃຊ້ໄດ້"
|
||||
language: "ພາສາ"
|
||||
aboutX: "ກ່ຽວກັບ {x}"
|
||||
emojiStyle: "ຮູບແບບອີໂມຈິ"
|
||||
native: "ພາສາແມ່"
|
||||
noHistory: "ບໍ່ມີລາຍການຢູ່ບ່ອນນີ້"
|
||||
doing: "ກຳລັງປະມວນຜົນ..."
|
||||
category: "ຫມວດຫມູ່"
|
||||
tags: "ແທ໋ກ"
|
||||
createAccount: "ສ້າງບັນຊີ"
|
||||
existingAccount: "ທີ່ມີຢູ່"
|
||||
dashboard: "ໜ້າປັດ"
|
||||
local: "ທ້ອງຖິ່ນ"
|
||||
numberOfDays: "ຈຳນວນມື້"
|
||||
objectStorageBucket: "Bucket"
|
||||
objectStoragePrefix: "Prefix"
|
||||
objectStorageEndpoint: "Endpoint"
|
||||
objectStorageRegion: "ພາກພື້ນ"
|
||||
deleteAll: "ລຶບທັງໝົດ"
|
||||
sounds: "ສຽງ"
|
||||
sound: "ສຽງ"
|
||||
none: "ບໍ່ມີ"
|
||||
@@ -367,48 +316,25 @@ ascendingOrder: "ນ້ອຍໄປຫາໃຫຍ່"
|
||||
descendingOrder: "ໃຫຍ່ຫານ້ອຍ"
|
||||
output: "ຜົນຜະລິດ"
|
||||
script: "ບົດຄວາມ"
|
||||
menu: "ເມນູ"
|
||||
rearrange: "ຈັດລຽງຄືນ"
|
||||
poll: "ການພູນ"
|
||||
description: "ລາຍລະອຽດ"
|
||||
author: "ຜູ້ຂຽນ"
|
||||
manage: "ການຈັດການ"
|
||||
plugins: "ປລັ໋ກອີນ"
|
||||
width: "ກວ້າງ"
|
||||
height: "ຄວາມສູງ"
|
||||
large: "ໃຫຍ່."
|
||||
medium: "ປານກາງ"
|
||||
small: "ເລັກ"
|
||||
permission: "ການອະນຸຍາດ"
|
||||
notificationType: "ປະເພດການແຈ້ງເຕືອນ"
|
||||
edit: "ແກ້ໄຂ"
|
||||
email: "ອີເມວ"
|
||||
smtpHost: "ໂຮດສ"
|
||||
smtpUser: "ຊື່ຜູ້ໃຊ້"
|
||||
smtpPass: "ລະຫັດຜ່ານ"
|
||||
clearCache: "ລຶບລ້າງແຄສ"
|
||||
info: "ກ່ຽວກັບ"
|
||||
user: "ຜູ້ໃຊ້ຕ່າງໆ"
|
||||
administration: "ການຈັດການ"
|
||||
middle: "ປານກາງ"
|
||||
searchByGoogle: "ຄົ້ນຫາ"
|
||||
file: "ໄຟລ໌"
|
||||
replies: "ຕອບໄປທີ"
|
||||
renotes: "Renote"
|
||||
_role:
|
||||
_priority:
|
||||
middle: "ປານກາງ"
|
||||
_email:
|
||||
_follow:
|
||||
title: "ໄດ້ຕິດຕາມທ່ານ"
|
||||
_theme:
|
||||
description: "ລາຍລະອຽດ"
|
||||
keys:
|
||||
mention: "ໄດ້ກ່າວມາ"
|
||||
renote: "Renote"
|
||||
_sfx:
|
||||
note: "ບັນທຶກ"
|
||||
notification: "ການແຈ້ງເຕືອນ"
|
||||
chat: "ແຊ໋ດ"
|
||||
_2fa:
|
||||
renewTOTPCancel: "ບໍ່ແມ່ນຕອນນີ້"
|
||||
_widgets:
|
||||
@@ -418,7 +344,6 @@ _widgets:
|
||||
timeline: "ເສັ້ນກຳນົດເວລາ"
|
||||
activity: "ກິດຈະກຳ"
|
||||
federation: "ສະຫະພັນ"
|
||||
jobQueue: "ຄິວວຽກ"
|
||||
_userList:
|
||||
chooseList: "ເລືອກບັນຊີລາຍການ"
|
||||
_cw:
|
||||
@@ -440,7 +365,6 @@ _timelines:
|
||||
home: "ໜ້າຫຼັກ"
|
||||
_play:
|
||||
script: "ບົດຄວາມ"
|
||||
summary: "ລາຍລະອຽດ"
|
||||
_pages:
|
||||
blocks:
|
||||
image: "ຮູບພາບ"
|
||||
@@ -464,6 +388,3 @@ _deck:
|
||||
mentions: "ກ່າວເຖິງ"
|
||||
_webhookSettings:
|
||||
name: "ຊື່"
|
||||
_moderationLogTypes:
|
||||
suspend: "ລະງັບ"
|
||||
|
||||
|
@@ -20,7 +20,6 @@ noNotes: "Geen notities"
|
||||
noNotifications: "Geen meldingen"
|
||||
instance: "Server"
|
||||
settings: "Instellingen"
|
||||
notificationSettings: "Notificatie instellingen"
|
||||
basicSettings: "Basisinstellingen"
|
||||
otherSettings: "Overige instellingen"
|
||||
openInWindow: "In een venster openen"
|
||||
@@ -45,20 +44,12 @@ pin: "Vastmaken aan profielpagina"
|
||||
unpin: "Losmaken van profielpagina"
|
||||
copyContent: "Kopiëren inhoud"
|
||||
copyLink: "Kopiëren link"
|
||||
copyLinkRenote: ""
|
||||
delete: "Verwijderen"
|
||||
deleteAndEdit: "Verwijderen en bewerken"
|
||||
deleteAndEditConfirm: "Weet je zeker dat je deze notitie wilt verwijderen en dan bewerken? Je verliest alle reacties, herdelingen en antwoorden erop."
|
||||
addToList: "Aan lijst toevoegen"
|
||||
addToAntenna: "Voeg toe aan antenne"
|
||||
sendMessage: "Verstuur bericht"
|
||||
copyRSS: "Kopieer RSS"
|
||||
copyUsername: "Kopiëren gebruikersnaam "
|
||||
copyUserId: "Kopieer gebruiker ID"
|
||||
copyNoteId: "Kopieer notitie ID"
|
||||
copyFileId: "Kopieer veld ID"
|
||||
copyFolderId: "Kopieer folder ID"
|
||||
copyProfileUrl: "Kopieer profiel URL"
|
||||
searchUser: "Zoeken een gebruiker"
|
||||
reply: "Antwoord"
|
||||
loadMore: "Laad meer"
|
||||
@@ -119,6 +110,7 @@ sensitive: "NSFW"
|
||||
add: "Toevoegen"
|
||||
reaction: "Reacties"
|
||||
reactions: "Reacties"
|
||||
reactionSetting: "Reacties die in de reactie-selector worden getoond"
|
||||
reactionSettingDescription2: "Sleep om opnieuw te ordenen, Klik om te verwijderen, Druk op \"+\" om toe te voegen"
|
||||
rememberNoteVisibility: "Vergeet niet de notitie zichtbaarheidsinstellingen"
|
||||
attachCancel: "Verwijder bijlage"
|
||||
@@ -304,6 +296,7 @@ copyUrl: "URL kopiëren"
|
||||
rename: "Hernoemen"
|
||||
avatar: "Avatar"
|
||||
banner: "Banner"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "Wanneer de verbinding met de server wordt onderbroken"
|
||||
disconnectedFromServer: "Verbinding met de server onderbroken."
|
||||
reload: "Verversen"
|
||||
@@ -338,6 +331,7 @@ invite: "Uitnodigen"
|
||||
driveCapacityPerLocalAccount: "Opslagruimte per lokale gebruiker"
|
||||
driveCapacityPerRemoteAccount: "Opslagruimte per externe gebruiker"
|
||||
inMb: "in megabytes"
|
||||
iconUrl: "Pictogram URL"
|
||||
bannerUrl: "Banner URL"
|
||||
backgroundImageUrl: "URL afbeelding"
|
||||
basicInfo: "Basisinformatie"
|
||||
@@ -348,8 +342,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Inschakelen hCaptcha"
|
||||
hcaptchaSiteKey: "Site sleutel"
|
||||
hcaptchaSecretKey: "Geheime sleutel"
|
||||
mcaptchaSiteKey: "Site sleutel"
|
||||
mcaptchaSecretKey: "Geheime sleutel"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Inschakelen reCAPTCHA"
|
||||
recaptchaSiteKey: "Site sleutel"
|
||||
@@ -397,6 +389,7 @@ reduceUiAnimation: "Verminder beweging in de UI"
|
||||
share: "Delen"
|
||||
notFound: "Niet gevonden"
|
||||
uploadFolder: "Standaardmap voor uploaden"
|
||||
cacheClear: "Cache verwijderen"
|
||||
markAsReadAllNotifications: "Markeer alle meldingen als gelezen"
|
||||
markAsReadAllUnreadNotes: "Markeer alle berichten als gelezen"
|
||||
markAsReadAllTalkMessages: "Markeer alle berichten als gelezen"
|
||||
@@ -426,9 +419,6 @@ pushNotificationAlreadySubscribed: "Pushberichtrn al ingeschakeld"
|
||||
windowMaximize: "Maximaliseren"
|
||||
windowRestore: "Herstellen"
|
||||
loggedInAsBot: "Momenteel als bot ingelogd"
|
||||
icon: "Avatar"
|
||||
replies: "Antwoord"
|
||||
renotes: "Herdelen"
|
||||
_email:
|
||||
_follow:
|
||||
title: "volgde jou"
|
||||
@@ -439,6 +429,7 @@ _theme:
|
||||
_sfx:
|
||||
note: "Notities"
|
||||
notification: "Meldingen"
|
||||
chat: "Chat"
|
||||
_2fa:
|
||||
renewTOTPCancel: "Nee, bedankt"
|
||||
_widgets:
|
||||
@@ -494,7 +485,3 @@ _deck:
|
||||
mentions: "Vermeldingen"
|
||||
_webhookSettings:
|
||||
name: "Naam"
|
||||
_moderationLogTypes:
|
||||
suspend: "Opschorten"
|
||||
resetPassword: "Wachtwoord terugzetten"
|
||||
|
||||
|
@@ -102,6 +102,7 @@ clickToShow: "Klikk for å vise"
|
||||
add: "Legg til"
|
||||
reaction: "Reaksjon"
|
||||
reactions: "Reaksjoner"
|
||||
reactionSetting: "Reaksjoner som vises i reaksjonsvelgeren"
|
||||
reactionSettingDescription2: "Dra for å endre rekkefølgen, klikk for å slette, trykk \"+\" for å legge til."
|
||||
rememberNoteVisibility: "Husk innstillingene for synlighet av Notes"
|
||||
attachCancel: "Fjern vedlegg"
|
||||
@@ -460,9 +461,6 @@ videos: "Videoer"
|
||||
continue: "Fortsett"
|
||||
youFollowing: "Følger"
|
||||
options: "Alternativ"
|
||||
icon: "Avatar"
|
||||
replies: "Svar"
|
||||
renotes: "Renote"
|
||||
_initialAccountSetting:
|
||||
theseSettingsCanEditLater: "Du kan endre disse innstillingene senere."
|
||||
_achievements:
|
||||
@@ -574,6 +572,9 @@ _channel:
|
||||
nameAndDescription: "Navn og beskrivelse"
|
||||
_menuDisplay:
|
||||
hide: "Skjul"
|
||||
_wordMute:
|
||||
soft: "Myk"
|
||||
hard: "Hard"
|
||||
_theme:
|
||||
description: "Beskrivelse"
|
||||
color: "Farge"
|
||||
@@ -600,6 +601,9 @@ _time:
|
||||
minute: "Minutter"
|
||||
hour: "Timer"
|
||||
day: "Dager"
|
||||
_timelineTutorial:
|
||||
title: "Hvordan bruke Misskey"
|
||||
step2_2: "Hva med å skrive en selvpresentasjon, eller bare \"Hei {name}!\" hvis du ikke har lyst?"
|
||||
_2fa:
|
||||
renewTOTPCancel: "Avbryt"
|
||||
_weekday:
|
||||
@@ -718,6 +722,3 @@ _deck:
|
||||
direct: "Direkte"
|
||||
_webhookSettings:
|
||||
name: "Navn"
|
||||
_moderationLogTypes:
|
||||
suspend: "Suspender"
|
||||
|
||||
|
@@ -1,3 +0,0 @@
|
||||
{
|
||||
"type": "module"
|
||||
}
|
@@ -111,6 +111,7 @@ sensitive: "NSFW"
|
||||
add: "Dodaj"
|
||||
reaction: "Reakcja"
|
||||
reactions: "Reakcja"
|
||||
reactionSetting: "Reakcje do pokazania w wyborniku reakcji"
|
||||
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"
|
||||
@@ -298,6 +299,7 @@ copyUrl: "Skopiuj adres URL"
|
||||
rename: "Zmień nazwę"
|
||||
avatar: "Awatar"
|
||||
banner: "Baner"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "Po utracie połączenia z serwerem"
|
||||
disconnectedFromServer: "Utracono połączenie z serwerem."
|
||||
reload: "Odśwież"
|
||||
@@ -332,6 +334,7 @@ invite: "Zaproś"
|
||||
driveCapacityPerLocalAccount: "Powierzchnia dyskowa na lokalnego użytkownika"
|
||||
driveCapacityPerRemoteAccount: "Powierzchnia dyskowa na zdalnego użytkownika"
|
||||
inMb: "W megabajtach"
|
||||
iconUrl: "Adres URL ikony"
|
||||
bannerUrl: "Adres URL banera"
|
||||
backgroundImageUrl: "Adres URL tła"
|
||||
basicInfo: "Podstawowe informacje"
|
||||
@@ -345,8 +348,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Włącz hCaptcha"
|
||||
hcaptchaSiteKey: "Klucz strony"
|
||||
hcaptchaSecretKey: "Tajny klucz"
|
||||
mcaptchaSiteKey: "Klucz strony"
|
||||
mcaptchaSecretKey: "Tajny klucz"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Włącz reCAPTCHA"
|
||||
recaptchaSiteKey: "Klucz strony"
|
||||
@@ -408,6 +409,7 @@ share: "Udostępnij"
|
||||
notFound: "Nie znaleziono"
|
||||
notFoundDescription: "Nie ma strony odpowiadającej określonemu adresowi URL."
|
||||
uploadFolder: "Domyślne położenie wysłanych"
|
||||
cacheClear: "Wyczyść pamięć podręczną"
|
||||
markAsReadAllNotifications: "Oznacz wszystkie powiadomienia jako przeczytane"
|
||||
markAsReadAllUnreadNotes: "Oznacz wszystkie wpisy jako przeczytane"
|
||||
markAsReadAllTalkMessages: "Oznacz wszystkie wiadomości jako przeczytane"
|
||||
@@ -643,7 +645,6 @@ createNewClip: "Utwórz nowy klip"
|
||||
unclip: "Odczep"
|
||||
confirmToUnclipAlreadyClippedNote: "Ten wpis jest już częścią klipu \"{name}\". Czy chcesz ją usunąć z tego klipu?"
|
||||
public: "Publiczny"
|
||||
private: "Prywatne"
|
||||
i18nInfo: "Misskey jest tłumaczone na wiele języków przez wolontariuszy. Możesz pomóc na {link}."
|
||||
manageAccessTokens: "Zarządzaj tokenami dostępu"
|
||||
accountInfo: "Informacje o koncie"
|
||||
@@ -808,6 +809,8 @@ makeReactionsPublicDescription: "To spowoduje, że lista wszystkich Twoich dotyc
|
||||
classic: "Klasyczny"
|
||||
muteThread: "Wycisz wątek"
|
||||
unmuteThread: "Wyłącz wyciszenie wątku"
|
||||
ffVisibility: "Widoczność obserwowanych/obserwujących"
|
||||
ffVisibilityDescription: "Pozwala skonfigurować, kto może zobaczyć, kogo obserwujesz i kto Cię obserwuje."
|
||||
continueThread: "Pokaż kontynuację wątku"
|
||||
deleteAccountConfirm: "Spowoduje to nieodwracalne usunięcie Twojego konta. Kontynuować?"
|
||||
incorrectPassword: "Nieprawidłowe hasło."
|
||||
@@ -868,10 +871,6 @@ like: "Polub"
|
||||
show: "Wyświetlanie"
|
||||
color: "Kolor"
|
||||
youFollowing: "Śledzeni"
|
||||
icon: "Awatar"
|
||||
replies: "Odpowiedz"
|
||||
renotes: "Udostępnij"
|
||||
flip: "Odwróć"
|
||||
_role:
|
||||
priority: "Priorytet"
|
||||
_priority:
|
||||
@@ -924,7 +923,6 @@ _plugin:
|
||||
install: "Zainstaluj wtyczki"
|
||||
installWarn: "Nie instaluj niezaufanych wtyczek."
|
||||
manage: "Zarządzanie wtyczkami"
|
||||
viewSource: "Zobacz źródło"
|
||||
_preferencesBackups:
|
||||
list: "Utworzone kopie zapasowe"
|
||||
saveNew: "Zapisz nową kopię zapasową"
|
||||
@@ -957,6 +955,10 @@ _aboutMisskey:
|
||||
donate: "Przekaż darowiznę na Misskey"
|
||||
morePatrons: "Naprawdę doceniam wsparcie ze strony wielu niewymienionych tu osób. Dziękuję! 🥰"
|
||||
patrons: "Wspierający"
|
||||
_nsfw:
|
||||
respect: "Ukrywaj media NSFW"
|
||||
ignore: "Nie ukrywaj mediów NSFW"
|
||||
force: "Ukrywaj wszystkie media"
|
||||
_instanceTicker:
|
||||
none: "Nigdy nie pokazuj"
|
||||
remote: "Pokaż dla zdalnych użytkowników"
|
||||
@@ -981,6 +983,9 @@ _menuDisplay:
|
||||
_wordMute:
|
||||
muteWords: "Słowo do wyciszenia"
|
||||
muteWordsDescription2: "Otocz słowa kluczowe ukośnikami, aby używać wyrażeń regularnych."
|
||||
soft: "Łagodny"
|
||||
hard: "Twardy"
|
||||
mutedNotes: "Wyciszone wpisy"
|
||||
_instanceMute:
|
||||
title: "Ukrywa wpisy z wymienionych instancji."
|
||||
heading: "Lista instancji do wyciszenia"
|
||||
@@ -1042,6 +1047,9 @@ _theme:
|
||||
infoFg: "Tekst informacji"
|
||||
infoWarnBg: "Tło ostrzeżenia"
|
||||
infoWarnFg: "Tekst ostrzeżenia"
|
||||
cwBg: "Tło CW"
|
||||
cwFg: "Tekst CW"
|
||||
cwHoverBg: "Tło CW (po najechaniu)"
|
||||
toastBg: "Tło powiadomień"
|
||||
toastFg: "Tekst powiadomień"
|
||||
buttonBg: "Tło przycisku"
|
||||
@@ -1059,6 +1067,8 @@ _sfx:
|
||||
note: "Wpisy"
|
||||
noteMy: "Mój wpis"
|
||||
notification: "Powiadomienia"
|
||||
chat: "Wiadomości"
|
||||
chatBg: "Rozmowy (tło)"
|
||||
antenna: "Anteny"
|
||||
channel: "Powiadomienia kanału"
|
||||
_ago:
|
||||
@@ -1084,8 +1094,6 @@ _2fa:
|
||||
step3: "Wprowadź token podany w aplikacji, aby ukończyć konfigurację."
|
||||
step4: "Od teraz, przy każdej próbie logowania otrzymasz prośbę o token logowania."
|
||||
removeKeyConfirm: "Usunąć kopię zapasową {name}?"
|
||||
renewTOTPConfirm: "Spowoduje to, że kody weryfikacyjne z poprzedniej aplikacji przestaną działać"
|
||||
renewTOTPOk: "Rekonfiguruj"
|
||||
renewTOTPCancel: "Nie teraz"
|
||||
_permissions:
|
||||
"read:account": "Wyświetl informacje o swoim koncie"
|
||||
@@ -1099,10 +1107,8 @@ _permissions:
|
||||
"read:following": "Wyświetlanie informacji o obserwowanych"
|
||||
"write:following": "Obserwowanie lub cofanie obserwacji innych kont"
|
||||
"read:messaging": "Zobacz swoje czaty"
|
||||
"write:messaging": "Tworzenie lub usuwanie wiadomości czatu"
|
||||
"read:mutes": "Wyświetlanie listy osób, które wyciszyłeś(-aś)"
|
||||
"write:mutes": "Edycja listy osób, które wyciszyłeś(-aś)"
|
||||
"write:notes": "Tworzenie lub usuwanie wpisów"
|
||||
"read:notifications": "Wyświetlanie powiadomień"
|
||||
"write:notifications": "Działanie na powiadomieniach"
|
||||
"read:reactions": "Wyświetlanie reakcji"
|
||||
@@ -1118,23 +1124,9 @@ _permissions:
|
||||
"write:channels": "Edytuj swoje kanały"
|
||||
"read:gallery": "Zobacz swoją galerię"
|
||||
"write:gallery": "Edytuj swoją galerię"
|
||||
"read:gallery-likes": "Wyświetlanie listy polubionych postów w galerii"
|
||||
"write:gallery-likes": "Edytowanie listy polubionych postów w galerii"
|
||||
_auth:
|
||||
shareAccessTitle: "Przyznawanie uprawnień aplikacji"
|
||||
shareAccess: "Czy chcesz autoryzować „{name}” do dostępu do tego konta?"
|
||||
shareAccessAsk: "Czy na pewno chcesz zezwolić tej aplikacji na dostęp do Twojego konta?"
|
||||
permission: "{name} żąda następujących uprawnień"
|
||||
permissionAsk: "Ta aplikacja wymaga następujących uprawnień:"
|
||||
pleaseGoBack: "Proszę, wróć do aplikacji"
|
||||
callback: "Powracanie do aplikacji"
|
||||
denied: "Odmowa dostępu"
|
||||
pleaseLogin: "Zaloguj się, aby autoryzować aplikacje."
|
||||
_antennaSources:
|
||||
all: "Wszystkie wpisy"
|
||||
homeTimeline: "Wpisy obserwowanych użytkowników"
|
||||
users: "Wpisy określonych użytkowników"
|
||||
userList: "Wpisy z określonej listy użytkowników"
|
||||
_weekday:
|
||||
sunday: "Niedziela"
|
||||
monday: "Poniedziałek"
|
||||
@@ -1167,10 +1159,8 @@ _widgets:
|
||||
serverMetric: "Metryka serwera"
|
||||
aiscript: "Konsola AiScript"
|
||||
aichan: "Ai"
|
||||
userList: "Lista użytkowników"
|
||||
_userList:
|
||||
chooseList: "Wybierz listę"
|
||||
clicker: "Clicker"
|
||||
_cw:
|
||||
hide: "Ukryj"
|
||||
show: "Załaduj więcej"
|
||||
@@ -1202,16 +1192,10 @@ _visibility:
|
||||
public: "Publiczny"
|
||||
publicDescription: "Twój wpis pojawi się w publicznych osiach czasu"
|
||||
home: "Strona główna"
|
||||
homeDescription: "Publikuj tylko na głównej osi czasu"
|
||||
followers: "Obserwujący"
|
||||
followersDescription: "Widoczne tylko dla obserwujących"
|
||||
specified: "Bezpośredni"
|
||||
specifiedDescription: "Napisz tylko określonym użytkownikom"
|
||||
disableFederationDescription: "Nie przesyłaj do innych instancji"
|
||||
_postForm:
|
||||
replyPlaceholder: "Odpowiedz na ten wpis..."
|
||||
quotePlaceholder: "Zacytuj ten wpis…"
|
||||
channelPlaceholder: "Publikuj na kanale..."
|
||||
_placeholders:
|
||||
a: "Co się dzieje?"
|
||||
b: "Co się wydarzyło?"
|
||||
@@ -1233,30 +1217,17 @@ _profile:
|
||||
changeBanner: "Zmień baner"
|
||||
_exportOrImport:
|
||||
allNotes: "Wszystkie wpisy"
|
||||
favoritedNotes: "Ulubione wpisy"
|
||||
clips: "Klip"
|
||||
followingList: "Obserwowani"
|
||||
muteList: "Wycisz"
|
||||
blockingList: "Zablokuj"
|
||||
userLists: "Listy"
|
||||
excludeMutingUsers: "Wyklucz wyciszonych użytkowników"
|
||||
excludeInactiveUsers: "Wyklucz nieaktywnych użytkowników"
|
||||
_charts:
|
||||
federation: "Federacja"
|
||||
apRequest: "Żądania"
|
||||
usersIncDec: "Różnica w liczbie użytkowników"
|
||||
usersTotal: "Łącznie # użytkowników"
|
||||
activeUsers: "Aktywni użytkownicy"
|
||||
notesIncDec: "Różnica w liczbie wpisów"
|
||||
notesTotal: "Całkowita liczba wpisów"
|
||||
filesIncDec: "Różnica w liczbie plików"
|
||||
filesTotal: "Całkowita liczba plików"
|
||||
storageUsageIncDec: "Różnica w wykorzystaniu pamięci"
|
||||
storageUsageTotal: "Całkowite wykorzystanie pamięci"
|
||||
_instanceCharts:
|
||||
requests: "Żądania"
|
||||
users: "Różnica w liczbie użytkowników"
|
||||
notes: "Różnica w liczbie wpisów"
|
||||
notesTotal: "Łącznie # wpisów"
|
||||
ff: "Różnica w # obserwujących"
|
||||
ffTotal: "Łączna liczba # obserwujących"
|
||||
@@ -1381,22 +1352,5 @@ _deck:
|
||||
mentions: "Wspomnienia"
|
||||
direct: "Bezpośredni"
|
||||
_webhookSettings:
|
||||
createWebhook: "Stwórz Webhook"
|
||||
name: "Nazwa"
|
||||
secret: "Sekret"
|
||||
events: "Uruchomienie Webhooka"
|
||||
active: "Właczono"
|
||||
_events:
|
||||
follow: "Po zaobserwowaniu użytkownika"
|
||||
followed: "Po zostaniu zaobserwowanym"
|
||||
note: "Po opublikowaniu wpisu"
|
||||
reply: "Po otrzymaniu odpowiedzi"
|
||||
renote: "Po udostępnieniu wpisu"
|
||||
reaction: "Po otrzymaniu reakcji"
|
||||
mention: "Po zostaniu wspomnianym"
|
||||
_moderationLogTypes:
|
||||
suspend: "Zawieś"
|
||||
resetPassword: "Zresetuj hasło"
|
||||
_reversi:
|
||||
total: "Łącznie"
|
||||
|
||||
|
1214
locales/pt-PT.yml
1214
locales/pt-PT.yml
File diff suppressed because it is too large
Load Diff
@@ -2,7 +2,6 @@
|
||||
_lang_: "Română"
|
||||
headlineMisskey: "O rețea conectată prin note"
|
||||
introMisskey: "Bine ai venit! Misskey este un serviciu de microblogging open source și decentralizat.\nCreează \"note\" cu care să îți poți împărți gândurile cu oricine din jurul tău. 📡\nCu \"reacții\" îți poți expirma rapid părerea despre notele oricui. 👍\nHai să explorăm o lume nouă! 🚀"
|
||||
poweredByMisskeyDescription: "{name} este unul dintre serviciile care se folosește de platforma open source <b>Misskey</b>."
|
||||
monthAndDay: "{day}/{month}"
|
||||
search: "Caută"
|
||||
notifications: "Notificări"
|
||||
@@ -13,14 +12,12 @@ fetchingAsApObject: "Se aduce din Fediverse..."
|
||||
ok: "OK"
|
||||
gotIt: "Am înțeles!"
|
||||
cancel: "Anulează"
|
||||
noThankYou: "Nu, mulțumesc."
|
||||
enterUsername: "Introdu numele de utilizator"
|
||||
renotedBy: "Re-notat de {user}"
|
||||
noNotes: "Nicio notă"
|
||||
noNotifications: "Nicio notificare"
|
||||
instance: "Instanță"
|
||||
settings: "Setări"
|
||||
notificationSettings: "Setări notificări"
|
||||
basicSettings: "Setări generale"
|
||||
otherSettings: "Alte Setări"
|
||||
openInWindow: "Deschide într-o fereastră"
|
||||
@@ -45,20 +42,12 @@ pin: "Fixează pe profil"
|
||||
unpin: "Anulati fixare"
|
||||
copyContent: "Copiază conținutul"
|
||||
copyLink: "Copiază link-ul"
|
||||
copyLinkRenote: "Copiază linkul pentru renote"
|
||||
delete: "Şterge"
|
||||
deleteAndEdit: "Șterge și editează"
|
||||
deleteAndEditConfirm: "Ești sigur că vrei să ștergi această notă și să o editezi? Vei pierde reacțiile, re-notele și răspunsurile acesteia."
|
||||
addToList: "Adaugă în listă"
|
||||
addToAntenna: "Adaugă la antenă"
|
||||
sendMessage: "Trimite un mesaj"
|
||||
copyRSS: "Copiază RSS"
|
||||
copyUsername: "Copiază numele de utilizator"
|
||||
copyUserId: "Copiază numele de utilizator"
|
||||
copyNoteId: "Copiază ID-ul notiței"
|
||||
copyFileId: "Copiază ID-ul fișierului"
|
||||
copyFolderId: "Copiază ID-ul folderului"
|
||||
copyProfileUrl: "Copiază URL profil"
|
||||
searchUser: "Caută un utilizator"
|
||||
reply: "Răspunde"
|
||||
loadMore: "Incarcă mai mult"
|
||||
@@ -111,8 +100,6 @@ renoted: "Re-notat."
|
||||
cantRenote: "Această postare nu poate fi re-notată."
|
||||
cantReRenote: "O re-notă nu poate fi re-notată."
|
||||
quote: "Citează"
|
||||
inChannelRenote: "Renotează în canal"
|
||||
inChannelQuote: "Citează în canal"
|
||||
pinnedNote: "Notă fixată"
|
||||
pinned: "Fixat pe profil"
|
||||
you: "Tu"
|
||||
@@ -121,6 +108,7 @@ sensitive: "NSFW"
|
||||
add: "Adaugă"
|
||||
reaction: "Reacție"
|
||||
reactions: "Reacție"
|
||||
reactionSetting: "Reacții care să apară in selectorul de reacții"
|
||||
reactionSettingDescription2: "Trage pentru a rearanja, apasă pe \"+\" pentru a adăuga."
|
||||
rememberNoteVisibility: "Amintește setarea de vizibilitate a notelor"
|
||||
attachCancel: "Înlătură atașament"
|
||||
@@ -129,8 +117,6 @@ unmarkAsSensitive: "Demarchează ca NSFW"
|
||||
enterFileName: "Introduceţi numele fişierului"
|
||||
mute: "Amuțește"
|
||||
unmute: "Înlătură amuțirea"
|
||||
renoteMute: "Renotări pe modul silențios"
|
||||
renoteUnmute: "Scoate renotările de pe modul silențios"
|
||||
block: "Blochează"
|
||||
unblock: "Deblochează"
|
||||
suspend: "Suspendă"
|
||||
@@ -140,10 +126,7 @@ unblockConfirm: "Ești sigur ca vrei să deblochezi acest cont?"
|
||||
suspendConfirm: "Ești sigur ca vrei să suspendezi acest cont?"
|
||||
unsuspendConfirm: "Ești sigur ca vrei să nu mai suspendezi acest cont?"
|
||||
selectList: "Selectează o listă"
|
||||
editList: "Editați lista"
|
||||
selectChannel: "Selectaţi canalul"
|
||||
selectAntenna: "Selectează o antenă"
|
||||
editAntenna: "Editează antena"
|
||||
selectWidget: "Selectați un widget"
|
||||
editWidgets: "Editează widget-urile"
|
||||
editWidgetsExit: "Terminat"
|
||||
@@ -156,7 +139,6 @@ addEmoji: "Adaugă un emoji"
|
||||
settingGuide: "Setări recomandate"
|
||||
cacheRemoteFiles: "Ține fișierele externe in cache"
|
||||
cacheRemoteFilesDescription: "Când această setare este dezactivată, fișierele externe sunt încărcate direct din instanța externă. Dezactivarea va scădea utilizarea spațiului de stocare, dar va crește traficul, deoarece thumbnail-urile nu vor fi generate."
|
||||
youCanCleanRemoteFilesCache: "Poți goli cache-ul prin a apăsa pe butonul de 🗑️ din fereastra de gestionare a fișierelor."
|
||||
flagAsBot: "Marchează acest cont ca bot"
|
||||
flagAsBotDescription: "Activează această opțiune dacă acest cont este controlat de un program. Daca e activată, aceasta va juca rolul unui indicator pentru dezvoltatori pentru a preveni interacțiunea în lanțuri infinite cu ceilalți boți și ajustează sistemele interne al Misskey pentru a trata acest cont drept un bot."
|
||||
flagAsCat: "Marchează acest cont ca pisică"
|
||||
@@ -312,6 +294,7 @@ copyUrl: "Copiază URL"
|
||||
rename: "Redenumește"
|
||||
avatar: "Avatar"
|
||||
banner: "Banner"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "Când pierzi conexiunea cu serverul"
|
||||
disconnectedFromServer: "Conecțiunea cu serverul a fost pierdută"
|
||||
reload: "Reîncarcă"
|
||||
@@ -346,6 +329,7 @@ invite: "Invită"
|
||||
driveCapacityPerLocalAccount: "Capacitatea Drive-ului per utilizator local"
|
||||
driveCapacityPerRemoteAccount: "Capacitatea Drive-ului per utilizator extern"
|
||||
inMb: "În megabytes"
|
||||
iconUrl: "URL-ul iconiței"
|
||||
bannerUrl: "URL-ul imaginii de banner"
|
||||
backgroundImageUrl: "URL-ul imaginii de fundal"
|
||||
basicInfo: "Informații de bază"
|
||||
@@ -359,8 +343,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Activează hCaptcha"
|
||||
hcaptchaSiteKey: "Site key"
|
||||
hcaptchaSecretKey: "Secret key"
|
||||
mcaptchaSiteKey: "Site key"
|
||||
mcaptchaSecretKey: "Secret key"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Activează reCAPTCHA"
|
||||
recaptchaSiteKey: "Site key"
|
||||
@@ -413,6 +395,7 @@ share: "Distribuie"
|
||||
notFound: "Nu a fost găsit"
|
||||
notFoundDescription: "N-a fost găsită nicio pagină cu acest URL."
|
||||
uploadFolder: "Folder implicit pentru încărcări"
|
||||
cacheClear: "Golește cache-ul"
|
||||
markAsReadAllNotifications: "Marchează toate notificările drept citit"
|
||||
markAsReadAllUnreadNotes: "Marchează toate notele drept citit"
|
||||
markAsReadAllTalkMessages: "Marchează toate mesajele drept citit"
|
||||
@@ -648,9 +631,6 @@ sent: "Trimite"
|
||||
searchByGoogle: "Caută"
|
||||
file: "Fișiere"
|
||||
show: "Arată"
|
||||
icon: "Avatar"
|
||||
replies: "Răspunde"
|
||||
renotes: "Re-notează"
|
||||
_role:
|
||||
_priority:
|
||||
middle: "Mediu"
|
||||
@@ -666,10 +646,9 @@ _theme:
|
||||
_sfx:
|
||||
note: "Note"
|
||||
notification: "Notificări"
|
||||
chat: "Chat"
|
||||
_ago:
|
||||
invalid: "Nu e nimic de văzut aici"
|
||||
_2fa:
|
||||
renewTOTPCancel: "Nu, mulțumesc."
|
||||
_widgets:
|
||||
profile: "Profil"
|
||||
instanceInfo: "Informații despre instanță"
|
||||
@@ -724,9 +703,3 @@ _deck:
|
||||
mentions: "Mențiuni"
|
||||
_webhookSettings:
|
||||
name: "Nume"
|
||||
_moderationLogTypes:
|
||||
suspend: "Suspendă"
|
||||
resetPassword: "Resetează parola"
|
||||
_reversi:
|
||||
total: "Total"
|
||||
|
||||
|
@@ -49,19 +49,13 @@ delete: "Удалить"
|
||||
deleteAndEdit: "Удалить и отредактировать"
|
||||
deleteAndEditConfirm: "Удалить эту заметку и создать отредактированную? Все реакции, ссылки и ответы на существующую будут будут потеряны."
|
||||
addToList: "Добавить в список"
|
||||
addToAntenna: "Добавить к антенне"
|
||||
sendMessage: "Отправить сообщение"
|
||||
copyRSS: "Скопировать RSS"
|
||||
copyUsername: "Скопировать имя пользователя"
|
||||
copyUserId: "Скопировать идентификатор пользователя"
|
||||
copyNoteId: "Скопировать идентификатор заметки"
|
||||
copyFileId: "Скопировать ID файла"
|
||||
copyFolderId: "Скопировать ID папки"
|
||||
copyProfileUrl: "Скопировать URL профиля "
|
||||
searchUser: "Поиск людей"
|
||||
reply: "Ответ"
|
||||
reply: "Ответить"
|
||||
loadMore: "Показать еще"
|
||||
showMore: "Показать ещё"
|
||||
showMore: "Показать еще"
|
||||
showLess: "Закрыть"
|
||||
youGotNewFollower: "Новый подписчик"
|
||||
receiveFollowRequest: "Получен запрос на подписку"
|
||||
@@ -120,12 +114,7 @@ sensitive: "Содержимое не для всех"
|
||||
add: "Добавить"
|
||||
reaction: "Реакции"
|
||||
reactions: "Реакции"
|
||||
emojiPicker: "Палитра эмодзи"
|
||||
pinnedEmojisForReactionSettingDescription: "Здесь можно закрепить эмодзи для реакций"
|
||||
pinnedEmojisSettingDescription: "Здесь можно закрепить эмодзи в общей палитре"
|
||||
emojiPickerDisplay: "Внешний вид палитры"
|
||||
overwriteFromPinnedEmojisForReaction: "Заменить на эмодзи из списка реакций"
|
||||
overwriteFromPinnedEmojis: "Заменить на эмодзи из общего списка закреплённых"
|
||||
reactionSetting: "Реакции, отображаемые в палитре"
|
||||
reactionSettingDescription2: "Расставляйте перетаскиванием, удаляйте нажатием, добавляйте кнопкой «+»."
|
||||
rememberNoteVisibility: "Запоминать видимость заметок"
|
||||
attachCancel: "Удалить вложение"
|
||||
@@ -134,8 +123,8 @@ unmarkAsSensitive: "Снять отметку «не для всех»"
|
||||
enterFileName: "Введите имя файла"
|
||||
mute: "Скрыть"
|
||||
unmute: "Отменить скрытие"
|
||||
renoteMute: "Скрыть репосты"
|
||||
renoteUnmute: "Открыть репосты"
|
||||
renoteMute: "Заглушить репосты"
|
||||
renoteUnmute: "Включить репосты"
|
||||
block: "Заблокировать"
|
||||
unblock: "Разблокировать"
|
||||
suspend: "Заморозить"
|
||||
@@ -145,10 +134,8 @@ unblockConfirm: "Разблокировать этот аккаунт?"
|
||||
suspendConfirm: "Заморозить этот аккаунт?"
|
||||
unsuspendConfirm: "Разморозить этот аккаунт?"
|
||||
selectList: "Выберите список"
|
||||
editList: "Редактировать список"
|
||||
selectChannel: "Выберите канал"
|
||||
selectAntenna: "Выберите антенну"
|
||||
editAntenna: "Редактировать антенну"
|
||||
selectWidget: "Выберите виджет"
|
||||
editWidgets: "Редактировать виджеты"
|
||||
editWidgetsExit: "Готово"
|
||||
@@ -161,8 +148,6 @@ addEmoji: "Добавить эмодзи"
|
||||
settingGuide: "Рекомендуемые настройки"
|
||||
cacheRemoteFiles: "Кешировать внешние файлы"
|
||||
cacheRemoteFilesDescription: "Когда эта настройка отключена, файлы с других сайтов будут загружаться прямо оттуда. Это сэкономит место на сервере, но увеличит трафик, так как не будут создаваться эскизы."
|
||||
cacheRemoteSensitiveFiles: "Кэшировать внешние файлы «не для всех»"
|
||||
cacheRemoteSensitiveFilesDescription: "Если отключено, файлы «не для всех» загружаются непосредственно с удалённых серверов, не кэшируясь."
|
||||
flagAsBot: "Аккаунт бота"
|
||||
flagAsBotDescription: "Включите, если этот аккаунт управляется программой. Это позволит системе Misskey учитывать это, а также поможет разработчикам других ботов предотвратить бесконечные циклы взаимодействия."
|
||||
flagAsCat: "Аккаунт кота"
|
||||
@@ -261,7 +246,6 @@ removed: "Удалено"
|
||||
removeAreYouSure: "Хотите удалить «{x}»?"
|
||||
deleteAreYouSure: "Хотите удалить «{x}»?"
|
||||
resetAreYouSure: "На самом деле сбросить?"
|
||||
areYouSure: "Вы уверены?"
|
||||
saved: "Сохранено"
|
||||
messaging: "Сообщения"
|
||||
upload: "Загрузить"
|
||||
@@ -279,7 +263,7 @@ noMoreHistory: "История закончилась"
|
||||
startMessaging: "Начать общение"
|
||||
nUsersRead: "Прочитали {n}"
|
||||
agreeTo: "Я соглашаюсь с {0}"
|
||||
agree: "Согласен"
|
||||
agree: "Согласиться"
|
||||
agreeBelow: "Согласен со следующими"
|
||||
basicNotesBeforeCreateAccount: "Записи, перед созданием аккаунта"
|
||||
termsOfService: "Условия использования"
|
||||
@@ -325,7 +309,7 @@ copyUrl: "Копировать ссылку"
|
||||
rename: "Переименовать"
|
||||
avatar: "Аватар"
|
||||
banner: "Шапка"
|
||||
displayOfSensitiveMedia: "Отображение содержимого не для всех"
|
||||
nsfw: "Содержимое не для всех"
|
||||
whenServerDisconnected: "Когда соединение с сервером потеряно"
|
||||
disconnectedFromServer: "Разорвано соединение с сервером"
|
||||
reload: "Перезагрузить"
|
||||
@@ -360,6 +344,7 @@ invite: "Пригласить"
|
||||
driveCapacityPerLocalAccount: "Объём диска на одного локального пользователя"
|
||||
driveCapacityPerRemoteAccount: "Объём диска на одного пользователя с другого сайта"
|
||||
inMb: "В мегабайтах"
|
||||
iconUrl: "Ссылка на аватар"
|
||||
bannerUrl: "Ссылка на изображение в шапке"
|
||||
backgroundImageUrl: "Ссылка на фоновое изображение"
|
||||
basicInfo: "Общая информация"
|
||||
@@ -373,8 +358,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Включить hCaptcha"
|
||||
hcaptchaSiteKey: "Ключ сайта"
|
||||
hcaptchaSecretKey: "Секретный ключ"
|
||||
mcaptchaSiteKey: "Ключ сайта"
|
||||
mcaptchaSecretKey: "Секретный ключ"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Включить reCAPTCHA"
|
||||
recaptchaSiteKey: "Ключ сайта"
|
||||
@@ -416,8 +399,7 @@ about: "Описание"
|
||||
aboutMisskey: "О Misskey"
|
||||
administrator: "Администратор"
|
||||
token: "Токен"
|
||||
2fa: "Двухфакторная аутентификация"
|
||||
setupOf2fa: "Настроить двухфакторную аутентификацию"
|
||||
2fa: "2-х факторная аутентификация"
|
||||
totp: "Приложение-аутентификатор"
|
||||
totpDescription: "Описание приложения-аутентификатора"
|
||||
moderator: "Модератор"
|
||||
@@ -437,6 +419,7 @@ share: "Поделиться"
|
||||
notFound: "Не найдено"
|
||||
notFoundDescription: "Страница по указанной ссылке не найдена"
|
||||
uploadFolder: "Место загрузки по умолчанию"
|
||||
cacheClear: "Очистка кэша"
|
||||
markAsReadAllNotifications: "Отметить все уведомления как прочитанные"
|
||||
markAsReadAllUnreadNotes: "Отметить все заметки как прочитанные"
|
||||
markAsReadAllTalkMessages: "Отметить все реплики как прочитанные"
|
||||
@@ -480,7 +463,7 @@ aboutX: "Описание {x}"
|
||||
emojiStyle: "Стиль эмодзи"
|
||||
native: "Системные"
|
||||
disableDrawer: "Не использовать выдвижные меню"
|
||||
showNoteActionsOnlyHover: "Показывать кнопки у заметок только при наведении"
|
||||
showNoteActionsOnlyHover: "Показывать кнопки управления заметкой только при наведении"
|
||||
noHistory: "История пока пуста"
|
||||
signinHistory: "Журнал посещений"
|
||||
enableAdvancedMfm: "Включить расширенный MFM"
|
||||
@@ -493,8 +476,8 @@ createAccount: "Новая учётная запись"
|
||||
existingAccount: "Существующая учётная запись"
|
||||
regenerate: "Создать повторно"
|
||||
fontSize: "Размер шрифта"
|
||||
mediaListWithOneImageAppearance: "Вид изображения, если оно единственное в списке"
|
||||
limitTo: "Ограничить до {x}"
|
||||
mediaListWithOneImageAppearance: "Показывать список медиа только одним изображением"
|
||||
limitTo: "Обрезать до {x}"
|
||||
noFollowRequests: "Нерассмотренные запросы на подписку отсутствуют"
|
||||
openImageInNewTab: "Открыть изображение в новой вкладке"
|
||||
dashboard: "Панель управления"
|
||||
@@ -528,7 +511,7 @@ objectStorageUseSSLDesc: "Отключите, если не собираетес
|
||||
objectStorageUseProxy: "Использовать прокси"
|
||||
objectStorageUseProxyDesc: "Отключите, если не будете испоьзовать прокси для соединений по протоколу ObjectStorage."
|
||||
objectStorageSetPublicRead: "Устанавливать public-read при загрузке на сервер"
|
||||
s3ForcePathStyleDesc: "Включение s3ForcePathStyle приводит к тому, что имя корзины указывается как часть пути в URL, а не в имени хоста. Может потребоваться включить при использовании локального Minio или чего-то подобного."
|
||||
s3ForcePathStyleDesc: "Включение s3ForcePathStyle принудительно указывает имя корзины как часть пути в URL-адресе вместо имени хоста. Может потребоваться активация при использовании таких вещей, как локальный Minio."
|
||||
serverLogs: "Журнал сервера"
|
||||
deleteAll: "Удалить всё"
|
||||
showFixedPostForm: "Показывать поле для ввода новой заметки наверху ленты"
|
||||
@@ -572,7 +555,7 @@ yourAccountSuspendedTitle: "Эта учетная запись заблокир
|
||||
yourAccountSuspendedDescription: "Эта учетная запись была заблокирована из-за нарушения условий предоставления услуг сервера. Свяжитесь с администратором, если вы хотите узнать более подробную причину. Пожалуйста, не создавайте новую учетную запись."
|
||||
tokenRevoked: "Токен недействителен"
|
||||
tokenRevokedDescription: "Срок действия вашего токена входа истек. Пожалуйста, войдите снова."
|
||||
accountDeleted: "Учетная запись удалена"
|
||||
accountDeleted: "Эта учетная запись удалена"
|
||||
accountDeletedDescription: "Эта учетная запись удалена"
|
||||
menu: "Меню"
|
||||
divider: "Линия-разделитель"
|
||||
@@ -650,18 +633,16 @@ create: "Создать"
|
||||
notificationSetting: "Настройки уведомлений"
|
||||
notificationSettingDesc: "Выберите тип уведомлений для отображения"
|
||||
useGlobalSetting: "Использовать глобальные настройки"
|
||||
useGlobalSettingDesc: "Если включено, будут использоваться настройки учётной записи. Если отключить, этот виджет можно будет настроить индивидуально."
|
||||
useGlobalSettingDesc: "Если включено, будут использоваться настройки учётной записи. Если включить, этот виджет можно будет настроить индивидуально."
|
||||
other: "Другие"
|
||||
regenerateLoginToken: "Создать новый токен для входа"
|
||||
regenerateLoginTokenDescription: "Создаёт новый токен, используемый внутри программы во время входа. Обычно в этом нет необходимости. При создании все устройства будут отключены."
|
||||
theKeywordWhenSearchingForCustomEmoji: "Это ключевое слово будет использовано при поиске эмодзи."
|
||||
setMultipleBySeparatingWithSpace: "Можно написать несколько через пробел"
|
||||
fileIdOrUrl: "Идентификатор файла или ссылка"
|
||||
behavior: "Поведение"
|
||||
sample: "Пример"
|
||||
abuseReports: "Жалобы"
|
||||
reportAbuse: "Жалоба"
|
||||
reportAbuseRenote: "Пожаловаться на репост"
|
||||
reportAbuseOf: "Пожаловаться на пользователя {name}"
|
||||
fillAbuseReportDescription: "Опишите, пожалуйста, причину жалобы подробнее. Если речь о конкретной заметке, будьте добры приложить ссылку на неё."
|
||||
abuseReported: "Жалоба отправлена. Большое спасибо за информацию."
|
||||
@@ -689,7 +670,6 @@ createNewClip: "Новая подборка"
|
||||
unclip: "Убрать из подборки"
|
||||
confirmToUnclipAlreadyClippedNote: "Эта заметка уже есть в подборке «{name}». Удалить из этой подборки?"
|
||||
public: "Общедоступно"
|
||||
private: "Личное"
|
||||
i18nInfo: "Misskey переводят на разные языки добровольцы со всего света. Ваша помощь тоже пригодится здесь: {link}."
|
||||
manageAccessTokens: "Управление токенами доступа"
|
||||
accountInfo: "Сведения об учётной записи"
|
||||
@@ -725,7 +705,7 @@ useSystemFont: "Использовать шрифт, предлагаемый с
|
||||
clips: "Подборки"
|
||||
experimentalFeatures: "Экспериментальные функции"
|
||||
experimental: "Экспериментальные"
|
||||
thisIsExperimentalFeature: "Это экспериментальная функция. Её поведение, вероятно, поменяется в следующей версии, а ещё она может работать не так, как задумано."
|
||||
thisIsExperimentalFeature: "Это экспериментальная функция. Технические характеристики могут измениться или он может работать неправильно."
|
||||
developer: "Разработчик"
|
||||
makeExplorable: "Опубликовать профиль в «Обзоре»."
|
||||
makeExplorableDescription: "Если выключить, ваш профиль не будет показан в разделе «Обзор»."
|
||||
@@ -810,7 +790,6 @@ noMaintainerInformationWarning: "Не заполнены сведения об
|
||||
noBotProtectionWarning: "Ботозащита не настроена"
|
||||
configure: "Настроить"
|
||||
postToGallery: "Опубликовать в галерею"
|
||||
postToHashtag: "Написать заметку с этим хэштегом"
|
||||
gallery: "Галерея"
|
||||
recentPosts: "Недавние публикации"
|
||||
popularPosts: "Популярные публикации"
|
||||
@@ -839,7 +818,7 @@ useBlurEffect: "Размытие в интерфейсе"
|
||||
learnMore: "Подробнее"
|
||||
misskeyUpdated: "Misskey обновился!"
|
||||
whatIsNew: "Что новенького?"
|
||||
translate: "Перевести"
|
||||
translate: "Перевод"
|
||||
translatedFrom: "Перевод. Язык оригинала — {x}"
|
||||
accountDeletionInProgress: "В настоящее время выполняется удаление учетной записи"
|
||||
usernameInfo: "Имя, которое отличает вашу учетную запись от других на этом сервере. Вы можете использовать алфавит (a~z, A~Z), цифры (0~9) или символы подчеркивания (_). Имена пользователей не могут быть изменены позже."
|
||||
@@ -851,11 +830,9 @@ lastCommunication: "Последнее сообщение"
|
||||
resolved: "Решено"
|
||||
unresolved: "Без решения"
|
||||
breakFollow: "Отписка"
|
||||
breakFollowConfirm: "Действительно удалить этого подписчика?"
|
||||
breakFollowConfirm: "Удалить из подписок пользователя ?"
|
||||
itsOn: "Включено"
|
||||
itsOff: "Выключено"
|
||||
on: "Вкл."
|
||||
off: "Выкл."
|
||||
emailRequiredForSignup: "Для регистрации учётной записи нужен адрес электронной почты"
|
||||
unread: "Непрочитанное"
|
||||
filter: "Фильтры"
|
||||
@@ -866,6 +843,8 @@ makeReactionsPublicDescription: "Список сделанных вами реа
|
||||
classic: "Классика"
|
||||
muteThread: "Скрыть цепочку"
|
||||
unmuteThread: "Отменить сокрытие цепочки"
|
||||
ffVisibility: "Видимость подписок и подписчиков"
|
||||
ffVisibilityDescription: "Здесь можно настроить, кто будет видеть ваши подписки и подписчиков."
|
||||
continueThread: "Показать следующие ответы"
|
||||
deleteAccountConfirm: "Учётная запись будет безвозвратно удалена. Подтверждаете?"
|
||||
incorrectPassword: "Пароль неверен."
|
||||
@@ -884,7 +863,7 @@ numberOfColumn: "Количество столбцов"
|
||||
searchByGoogle: "Поиск"
|
||||
instanceDefaultLightTheme: "Светлая тема по умолчанию"
|
||||
instanceDefaultDarkTheme: "Темная тема по умолчанию"
|
||||
instanceDefaultThemeDescription: "Введите код темы в формате объекта."
|
||||
instanceDefaultThemeDescription: "Описание темы по умолчанию для инстанса"
|
||||
mutePeriod: "Продолжительность скрытия"
|
||||
period: "Опрос длится"
|
||||
indefinitely: "вечно"
|
||||
@@ -908,7 +887,7 @@ thereIsUnresolvedAbuseReportWarning: "Остались нерешённые жа
|
||||
recommended: "Рекомендуем"
|
||||
check: "Проверить"
|
||||
driveCapOverrideLabel: "Изменение лимита дискового пространства для этого пользователя"
|
||||
driveCapOverrideCaption: "Введите нуль или меньше, чтобы использовать значение по умолчанию."
|
||||
driveCapOverrideCaption: "Укажите меньше или равное нулю для отмены"
|
||||
requireAdminForView: "Для просмотра необходимо иметь аккаунт администратора"
|
||||
isSystemAccount: "Данная учётная запись создана автоматически и управляется системой"
|
||||
typeToConfirm: "Введите {x} для продолжения"
|
||||
@@ -928,7 +907,7 @@ type: "Тип"
|
||||
speed: "Скорость"
|
||||
slow: "Медленная"
|
||||
fast: "Быстрая"
|
||||
sensitiveMediaDetection: "Распознание содержимого не для всех"
|
||||
sensitiveMediaDetection: "Определение содержимого деликатного характера"
|
||||
localOnly: "Локально"
|
||||
remoteOnly: "Только удалённо"
|
||||
failedToUpload: "Сбой выгрузки"
|
||||
@@ -961,7 +940,7 @@ numberOfProfileView: "Количество профилей для просмо
|
||||
like: "Нравится!"
|
||||
unlike: "Отменить «нравится»"
|
||||
numberOfLikes: "Количество лайков"
|
||||
show: "Показать"
|
||||
show: "Отображение"
|
||||
neverShow: "Больше не показывать"
|
||||
remindMeLater: "Напомнить позже"
|
||||
didYouLikeMisskey: "Вам нравится Misskey?"
|
||||
@@ -1005,11 +984,9 @@ invitationRequiredToRegister: "Этот сервер в настоящее вр
|
||||
emailNotSupported: "Доставка почты не поддерживается на этом сервере"
|
||||
postToTheChannel: "Отправить в канал"
|
||||
cannotBeChangedLater: "Это нельзя изменить позже"
|
||||
reactionAcceptance: "Допустимые реакции"
|
||||
likeOnly: "Только «нравится!»"
|
||||
likeOnlyForRemote: "Всё (с других серверов только «нравится!»)"
|
||||
nonSensitiveOnly: "Только безопасные"
|
||||
nonSensitiveOnlyForLocalLikeOnlyForRemote: "Только безопасные (с других серверов только «нравится!»)"
|
||||
reactionAcceptance: "Принятие реакций"
|
||||
likeOnly: "Только лайки"
|
||||
likeOnlyForRemote: "Только лайки с удалённых серверов"
|
||||
rolesAssignedToMe: "Мои роли"
|
||||
resetPasswordConfirm: "Сбросить пароль?"
|
||||
sensitiveWords: "Чувствительные слова"
|
||||
@@ -1025,81 +1002,15 @@ retryAllQueuesConfirmTitle: "Хотите попробовать ещё раз?"
|
||||
retryAllQueuesConfirmText: "Нагрузка на сервер может увеличиться"
|
||||
enableChartsForRemoteUser: "Создание диаграмм для удалённых пользователей"
|
||||
enableChartsForFederatedInstances: "Создание диаграмм для удалённых серверов"
|
||||
largeNoteReactions: "Показывать большие реакции на заметки"
|
||||
noteIdOrUrl: "ID или ссылка на заметку"
|
||||
video: "Видео"
|
||||
videos: "Видео"
|
||||
dataSaver: "Экономия трафика"
|
||||
accountMigration: "Перенос учётной записи"
|
||||
accountMoved: "Учётная запись перенесена"
|
||||
accountMovedShort: "Эта учётная запись перемещена"
|
||||
operationForbidden: "Это действие запрещено"
|
||||
forceShowAds: "Всегда отображать рекламу"
|
||||
addMemo: "Добавить памятку"
|
||||
editMemo: "Изменить памятку"
|
||||
reactionsList: "Список реакций"
|
||||
renotesList: "Репосты"
|
||||
notificationDisplay: "Отображение уведомлений"
|
||||
leftTop: "Влево вверх"
|
||||
rightTop: "Вправо вверх"
|
||||
leftBottom: "Влево вниз"
|
||||
rightBottom: "Вправо вниз"
|
||||
vertical: "Вертикальная"
|
||||
horizontal: "Сбоку"
|
||||
position: "Позиция"
|
||||
serverRules: "Правила сервера"
|
||||
pleaseConfirmBelowBeforeSignup: "Для регистрации на данном сервере, необходимо согласится с нижеследующими положениями."
|
||||
pleaseAgreeAllToContinue: "Чтобы продолжить, необходимо поставить отметки во всех полях \"согласен\"."
|
||||
continue: "Продолжить"
|
||||
preservedUsernames: "Зарезервированные имена пользователей"
|
||||
preservedUsernamesDescription: "Перечислите зарезервированные имена пользователей, отделяя их строками. Они станут недоступны при создании учётной записи. Это ограничение не применяется при создании учётной записи администраторами. Также, уже существующие учётные записи останутся без изменений."
|
||||
createNoteFromTheFile: "Создать заметку из этого файла"
|
||||
archive: "Архив"
|
||||
channelArchiveConfirmTitle: "Переместить {name} в архив?"
|
||||
channelArchiveConfirmDescription: "Архивированные каналы перестанут отображаться в списке каналов или результатах поиска. В них также нельзя будет добавлять новые записи."
|
||||
displayOfNote: "Отображение заметок"
|
||||
initialAccountSetting: "Настройка профиля"
|
||||
youFollowing: "Подписки"
|
||||
preventAiLearning: "Отказаться от использования в машинном обучении (Генеративный ИИ)"
|
||||
options: "Настройки ролей"
|
||||
specifyUser: "Указанный пользователь"
|
||||
failedToPreviewUrl: "Предварительный просмотр недоступен"
|
||||
update: "Обновить"
|
||||
rolesThatCanBeUsedThisEmojiAsReaction: "Роли тех, кому можно использовать эти эмодзи как реакцию"
|
||||
rolesThatCanBeUsedThisEmojiAsReactionEmptyDescription: "Если здесь ничего не указать, в качестве реакции эту эмодзи сможет использовать каждый."
|
||||
later: "Позже"
|
||||
goToMisskey: "К Misskey"
|
||||
additionalEmojiDictionary: "Дополнительные словари эмодзи"
|
||||
installed: "Установлено"
|
||||
branding: "Бренд"
|
||||
enableIdenticonGeneration: "Включить генерацию иконки пользователя"
|
||||
turnOffToImprovePerformance: "Отключение этого параметра может повысить производительность."
|
||||
expirationDate: "Дата истечения"
|
||||
unused: "Неиспользуемый"
|
||||
expired: "Срок действия приглашения истёк"
|
||||
doYouAgree: "Согласны?"
|
||||
icon: "Аватар"
|
||||
replies: "Ответы"
|
||||
renotes: "Репост"
|
||||
loadReplies: "Показать ответы"
|
||||
flip: "Переворот"
|
||||
lastNDays: "Последние {n} сут"
|
||||
_initialAccountSetting:
|
||||
accountCreated: "Аккаунт успешно создан!"
|
||||
letsStartAccountSetup: "Давайте настроим вашу учётную запись."
|
||||
profileSetting: "Настройки профиля"
|
||||
privacySetting: "Настройки конфиденциальности"
|
||||
initialAccountSettingCompleted: "Первоначальная настройка успешно завершена!"
|
||||
skipAreYouSure: "Пропустить настройку?"
|
||||
_initialTutorial:
|
||||
_note:
|
||||
description: "Посты в Misskey называются 'Заметками.' Заметки отсортированы в хронологическом порядке в ленте и обновляются в режиме реального времени."
|
||||
_timelineDescription:
|
||||
home: "В персональной ленте располагаются заметки тех, на которых вы подписаны."
|
||||
local: "Местная лента показывает заметки всех пользователей этого сайта."
|
||||
social: "В социальной ленте собирается всё, что есть в персональной и местной лентах."
|
||||
global: "В глобальную ленту попадает вообще всё со связанных инстансов."
|
||||
_serverSettings:
|
||||
iconUrl: "Адрес на иконку роли"
|
||||
_achievements:
|
||||
earnedAt: "Разблокировано в"
|
||||
_types:
|
||||
@@ -1451,7 +1362,6 @@ _plugin:
|
||||
install: "Установка расширений"
|
||||
installWarn: "Пожалуйста, не устанавливайте расширения, которым не доверяете."
|
||||
manage: "Управление расширениями"
|
||||
viewSource: "Просмотр исходника"
|
||||
_preferencesBackups:
|
||||
list: "Существующие резервные копии"
|
||||
saveNew: "Создать резервную копию"
|
||||
@@ -1485,6 +1395,10 @@ _aboutMisskey:
|
||||
donate: "Пожертвование на Misskey"
|
||||
morePatrons: "Большое спасибо и многим другим, кто принял участие в этом проекте! 🥰"
|
||||
patrons: "Материальная поддержка"
|
||||
_nsfw:
|
||||
respect: "Скрывать содержимое не для всех"
|
||||
ignore: "Показывать содержимое не для всех"
|
||||
force: "Скрывать вообще все файлы"
|
||||
_instanceTicker:
|
||||
none: "Не показывать"
|
||||
remote: "Только для других сайтов"
|
||||
@@ -1512,6 +1426,11 @@ _wordMute:
|
||||
muteWords: "Скрыть слово"
|
||||
muteWordsDescription: "Пишите слова через пробел в одной строке, чтобы фильтровать их появление вместе; а если хотите фильтровать любое из них, пишите в отдельных строках."
|
||||
muteWordsDescription2: "Здесь можно использовать регулярные выражения — просто заключите их между двумя дробными чертами (/)."
|
||||
softDescription: "Соответствующие условиям заметки будут спрятаны из вашей ленты."
|
||||
hardDescription: "Соответстующие условиям заметки вообще не будут попадать в вашу ленту. Даже если вы поменяете условия, отсеенные таким образом заметки уже не появятся."
|
||||
soft: "Мягко"
|
||||
hard: "Жёстко"
|
||||
mutedNotes: "Скрытые заметки"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "Заметки и репосты с указанных здесь инстансов, а также ответы пользователям оттуда же не будут отображаться."
|
||||
instanceMuteDescription2: "Пишите каждый инстанс на отдельной строке"
|
||||
@@ -1575,6 +1494,9 @@ _theme:
|
||||
infoFg: "Текст сообщения"
|
||||
infoWarnBg: "Фон предупреждения"
|
||||
infoWarnFg: "Текст предупреждения"
|
||||
cwBg: "Фон предупреждения о содержимом"
|
||||
cwFg: "Текст предупреждения о содержимом"
|
||||
cwHoverBg: "Фон предупреждения о содержимом (под указателем)"
|
||||
toastBg: "Фон оповещения"
|
||||
toastFg: "Текст оповещения"
|
||||
buttonBg: "Фон кнопки"
|
||||
@@ -1592,6 +1514,8 @@ _sfx:
|
||||
note: "Заметки"
|
||||
noteMy: "Собственные заметки"
|
||||
notification: "Уведомления"
|
||||
chat: "Сообщения"
|
||||
chatBg: "Сообщения (фон)"
|
||||
antenna: "Антенна"
|
||||
channel: "Канал"
|
||||
_ago:
|
||||
@@ -1605,31 +1529,36 @@ _ago:
|
||||
monthsAgo: "{n} мес. назад"
|
||||
yearsAgo: "{n} г. назад"
|
||||
invalid: "Ничего нет"
|
||||
_timeIn:
|
||||
seconds: "Через {n} с"
|
||||
minutes: "Через {n} мин"
|
||||
hours: "Через {n} ч"
|
||||
days: "Через {n} сут"
|
||||
weeks: "Через {n} нед."
|
||||
months: "Через {n} мес."
|
||||
years: "Через {n} г."
|
||||
_time:
|
||||
second: "с"
|
||||
minute: "мин"
|
||||
hour: "ч"
|
||||
day: "сут"
|
||||
_timelineTutorial:
|
||||
title: "Как пользоваться Misskey"
|
||||
step1_1: "Это лицо Misskey, так называемая лента. Ваш инстанс, {name}, покажет тут все опубликованные на нём заметки в хронологическом порядке."
|
||||
step1_2: "Здесь есть несколько лент. К примеру «персональная» лента отображает заметки тех, на кого вы подписаны. А «местная» — заметки тех, кого приютил {name}."
|
||||
step2_1: "Что ж, теперь самое время опубликовать заметку. Если нажать вверху страницы на изображение карандаша, появится форма для текста."
|
||||
step2_2: "Почему бы не написать немного о себе? Ну, или хотя бы «Привет, {name}»?"
|
||||
step3_1: "Справились с первой заметкой?"
|
||||
step3_2: "Отлично, теперь она должна появиться в вашей ленте."
|
||||
step4_1: "А ещё здесь можно делиться своими реакциями на заметки."
|
||||
step4_2: "Отмечайте реакции, нажимая на символ «+» под заметкой и выбирая значок по душе."
|
||||
_2fa:
|
||||
alreadyRegistered: "Двухфакторная аутентификация уже настроена."
|
||||
registerTOTP: "Начните настраивать приложение-аутентификатор"
|
||||
passwordToTOTP: "Пожалуйста, введите свой пароль"
|
||||
step1: "Прежде всего, установите на устройство приложение для аутентификации, например, {a} или {b}."
|
||||
step2: "Далее отсканируйте отображаемый QR-код при помощи приложения."
|
||||
step2Click: "Нажав на QR-код, вы можете зарегистрироваться с помощью приложения для аутентификации или брелка для ключей, установленного на вашем устройстве."
|
||||
step2Url: "Если пользуетесь приложением на компьютере, можете ввести в него эту строку (URL):"
|
||||
step3Title: "Введите проверочный код"
|
||||
step3: "И наконец, введите код, который покажет приложение."
|
||||
step4: "Теперь при каждом входе на сайт вам нужно будет вводить код из приложения аналогичным образом."
|
||||
securityKeyNotSupported: "Ваш браузер не поддерживает ключи безопасности."
|
||||
registerTOTPBeforeKey: "Чтобы зарегистрировать ключ безопасности и пароль, сначала настройте приложение аутентификации."
|
||||
securityKeyInfo: "Вы можете настроить вход с помощью аппаратного ключа безопасности, поддерживающего FIDO2, или отпечатка пальца или PIN-кода на устройстве."
|
||||
chromePasskeyNotSupported: "В настоящее время Chrome не поддерживает пароль-ключи."
|
||||
registerSecurityKey: "Зарегистрируйте ключ безопасности ・Passkey"
|
||||
securityKeyName: "Введите имя для ключа"
|
||||
tapSecurityKey: "Пожалуйста, следуйте инструкциям в вашем браузере, чтобы зарегистрировать свой ключ безопасности или пароль"
|
||||
@@ -1699,7 +1628,7 @@ _weekday:
|
||||
_widgets:
|
||||
profile: "Профиль"
|
||||
instanceInfo: "Информация об инстансе"
|
||||
memo: "Памятки"
|
||||
memo: "Напоминания"
|
||||
notifications: "Уведомления"
|
||||
timeline: "Лента"
|
||||
calendar: "Календарь"
|
||||
@@ -1728,7 +1657,7 @@ _widgets:
|
||||
clicker: "Счётчик щелчков"
|
||||
_cw:
|
||||
hide: "Спрятать"
|
||||
show: "Показать"
|
||||
show: "Показать еще"
|
||||
chars: "знаков: {count}"
|
||||
files: "файлов: {count}"
|
||||
_poll:
|
||||
@@ -1790,7 +1719,6 @@ _profile:
|
||||
_exportOrImport:
|
||||
allNotes: "Все заметки\n"
|
||||
favoritedNotes: "Избранное"
|
||||
clips: "Подборка"
|
||||
followingList: "Подписки"
|
||||
muteList: "Скрытые"
|
||||
blockingList: "Заблокированные"
|
||||
@@ -1924,7 +1852,7 @@ _notification:
|
||||
app: "Уведомления из приложений"
|
||||
_actions:
|
||||
followBack: "отвечает взаимной подпиской"
|
||||
reply: "Ответ"
|
||||
reply: "Ответить"
|
||||
renote: "Репост"
|
||||
_deck:
|
||||
alwaysShowMainColumn: "Всегда показывать главную колонку"
|
||||
@@ -1953,7 +1881,6 @@ _deck:
|
||||
channel: "Каналы"
|
||||
mentions: "Упоминания"
|
||||
direct: "Личное"
|
||||
roleTimeline: "История Ролей"
|
||||
_dialog:
|
||||
charactersExceeded: "Превышено максимальное количество символов! У вас {current} / из {max}"
|
||||
charactersBelow: "Это ниже минимального количества символов! У вас {current} / из {min}"
|
||||
@@ -1961,15 +1888,5 @@ _disabledTimeline:
|
||||
title: "Лента отключена"
|
||||
description: "Ваша текущая роль не позволяет пользоваться этой лентой."
|
||||
_webhookSettings:
|
||||
createWebhook: "Создать вебхук"
|
||||
name: "Название"
|
||||
active: "Вкл."
|
||||
_moderationLogTypes:
|
||||
suspend: "Заморозить"
|
||||
addCustomEmoji: "Добавлено эмодзи"
|
||||
updateCustomEmoji: "Изменено эмодзи"
|
||||
deleteCustomEmoji: "Удалено эмодзи"
|
||||
resetPassword: "Сброс пароля:"
|
||||
_reversi:
|
||||
total: "Всего"
|
||||
|
||||
|
@@ -1,2 +1 @@
|
||||
---
|
||||
|
||||
|
@@ -113,6 +113,7 @@ sensitive: "NSFW"
|
||||
add: "Pridať"
|
||||
reaction: "Reakcie"
|
||||
reactions: "Reakcie"
|
||||
reactionSetting: "Reakcie zobrazené vo výbere reakcií"
|
||||
reactionSettingDescription2: "Ťahaním preusporiadate, kliknutím odstránite, Stlačením \"+\" pridáte"
|
||||
rememberNoteVisibility: "Zapamätať nastavenia viditeľnosti poznámky"
|
||||
attachCancel: "Odstrániť prílohu"
|
||||
@@ -302,6 +303,7 @@ copyUrl: "Kopírovať URL"
|
||||
rename: "Premenovať"
|
||||
avatar: "Avatar"
|
||||
banner: "BAnner"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "Keď sa stratí spojenie so serverom"
|
||||
disconnectedFromServer: "Spojenie so serverom bolo prerušené"
|
||||
reload: "Obnoviť"
|
||||
@@ -336,6 +338,7 @@ invite: "Pozvať"
|
||||
driveCapacityPerLocalAccount: "Kapacita disku pre používateľa"
|
||||
driveCapacityPerRemoteAccount: "Kapacita disku pre vzdialeného používateľa"
|
||||
inMb: "V megabajtoch"
|
||||
iconUrl: "Favicon URL"
|
||||
bannerUrl: "URL obrázku bannera"
|
||||
backgroundImageUrl: "URL obrázku pozadia"
|
||||
basicInfo: "Základné informácie"
|
||||
@@ -349,8 +352,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Zapnúť hCaptchu"
|
||||
hcaptchaSiteKey: "Site key"
|
||||
hcaptchaSecretKey: "Secret key"
|
||||
mcaptchaSiteKey: "Site key"
|
||||
mcaptchaSecretKey: "Secret key"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Zapnúť ReCAPTCHA"
|
||||
recaptchaSiteKey: "Site key"
|
||||
@@ -412,6 +413,7 @@ share: "Zdieľať"
|
||||
notFound: "Nenájdené"
|
||||
notFoundDescription: "Nenašla sa žiadna stránka na zadanej URL."
|
||||
uploadFolder: "Predvolený priečinok pre nahrávanie"
|
||||
cacheClear: "Vyčistiť cache"
|
||||
markAsReadAllNotifications: "Označiť všetky oznámenia ako prečítané"
|
||||
markAsReadAllUnreadNotes: "Označiť všetky poznámky ako prečítané"
|
||||
markAsReadAllTalkMessages: "Označiť všetky správy ako prečítané"
|
||||
@@ -653,7 +655,6 @@ createNewClip: "Vytvoriť nový klip"
|
||||
unclip: "Odopnúť"
|
||||
confirmToUnclipAlreadyClippedNote: "Táto poznámka je už pripnutá ako \"{name}\". Naozaj ju chcete odopnúť?"
|
||||
public: "Verejné"
|
||||
private: "Súkromné"
|
||||
i18nInfo: "Misskey je prekladaný do rôznych jazykov dobrovoľníkmi. Pomôcť môžete na {link}."
|
||||
manageAccessTokens: "Spravovať prístupové tokeny"
|
||||
accountInfo: "Informácie o účte"
|
||||
@@ -823,6 +824,8 @@ makeReactionsPublicDescription: "Toto spraví všetky vaše minulé reakcie vidi
|
||||
classic: "Klasika"
|
||||
muteThread: "Ztíšiť vlákno"
|
||||
unmuteThread: "Zrušiť stíšenie vlákna"
|
||||
ffVisibility: "Viditeľnosť sledujúcich/sledovaných"
|
||||
ffVisibilityDescription: "Umožňuje nastaviť kto vidí koho sledujete a kto vás sleduje."
|
||||
continueThread: "Zobraziť pokračovanie vlákna"
|
||||
deleteAccountConfirm: "Toto nezvrátiteľne vymaže váš účet. Pokračovať?"
|
||||
incorrectPassword: "Nesprávne heslo."
|
||||
@@ -916,11 +919,6 @@ pleaseDonate: "Misskey je bezplatný softvér, ktorý používa {host}. Prosím,
|
||||
color: "Farba"
|
||||
horizontal: "Strana"
|
||||
youFollowing: "Sledované"
|
||||
icon: "Avatar"
|
||||
replies: "Odpovedať"
|
||||
renotes: "Preposlať"
|
||||
flip: "Preklopiť"
|
||||
lastNDays: "Posledných {n} dní"
|
||||
_role:
|
||||
priority: "Priorita"
|
||||
_priority:
|
||||
@@ -978,7 +976,6 @@ _plugin:
|
||||
install: "Inštalova pluginy"
|
||||
installWarn: "Prosím neinštalujte nedôveryhodné pluginy."
|
||||
manage: "Spravovanie pluginov"
|
||||
viewSource: "Ukázať zdroj"
|
||||
_preferencesBackups:
|
||||
list: "Vytvorené zálohy"
|
||||
saveNew: "Uložiť novú"
|
||||
@@ -1012,6 +1009,10 @@ _aboutMisskey:
|
||||
donate: "Podporiť Misskey"
|
||||
morePatrons: "Takisto oceňujeme podporu mnoých ďalších, ktorí tu nie sú uvedení. Ďakujeme! 🥰"
|
||||
patrons: "Prispievatelia"
|
||||
_nsfw:
|
||||
respect: "Skryť NSFW médiá"
|
||||
ignore: "Neskrývať NSFW médiá"
|
||||
force: "Skryť všetky médiá"
|
||||
_instanceTicker:
|
||||
none: "Nikdy nezobrazovať"
|
||||
remote: "Zobraziť pre vzdialených používateľov"
|
||||
@@ -1039,6 +1040,11 @@ _wordMute:
|
||||
muteWords: "Umlčané slová"
|
||||
muteWordsDescription: "Medzerami oddeľte pre podmienku AND a novými riadkami pre podmienku OR."
|
||||
muteWordsDescription2: "Regulárne výrazy sa použijú keď použijete okolo lomítka."
|
||||
softDescription: "Skryje poznámky z časovej osi, ktoré spĺňajú podmienky."
|
||||
hardDescription: "Zabráni poznámky spĺňajúce množinu podmienok, aby boli pridané do časovej osi. Navyše tieto poznámky nepribudnú v časovej osi ani keď sa podmienky zmenia."
|
||||
soft: "Mäkké"
|
||||
hard: "Tvrdé"
|
||||
mutedNotes: "Umlčané poznámky"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "Toto umlčí všetky poznámky/preposlania zo zoznamu serverov, vrátane tých, na ktoré používatelia odpovedajú z umlčaného servera."
|
||||
instanceMuteDescription2: "Oddeľte novými riadkami"
|
||||
@@ -1102,6 +1108,9 @@ _theme:
|
||||
infoFg: "Informačný text"
|
||||
infoWarnBg: "Pozadie varovania"
|
||||
infoWarnFg: "Text varovania"
|
||||
cwBg: "CW pozadie tlačidla"
|
||||
cwFg: "CW text tlačidla"
|
||||
cwHoverBg: "CW pozadie tlačidla (pod kurzorom)"
|
||||
toastBg: "Pozadie upozornenia"
|
||||
toastFg: "Text upozornenia"
|
||||
buttonBg: "Pozadie tlačidla"
|
||||
@@ -1119,6 +1128,8 @@ _sfx:
|
||||
note: "Poznámky"
|
||||
noteMy: "Vlastná poznámka"
|
||||
notification: "Oznámenia"
|
||||
chat: "Chat"
|
||||
chatBg: "Chat (pozadie)"
|
||||
antenna: "Antény"
|
||||
channel: "Upozornenia kanála"
|
||||
_ago:
|
||||
@@ -1141,6 +1152,7 @@ _2fa:
|
||||
alreadyRegistered: "Už ste zaregistrovali 2-faktorové autentifikačné zariadenie."
|
||||
step1: "Najprv si nainštalujte autentifikačnú aplikáciu (napríklad {a} alebo {b}) na svoje zariadenie."
|
||||
step2: "Potom, naskenujte QR kód zobrazený na obrazovke."
|
||||
step2Url: "Do aplikácie zadajte nasledujúcu URL adresu:"
|
||||
step3: "Nastavenie dokončíte zadaním tokenu z vašej aplikácie."
|
||||
step4: "Od teraz, všetky ďalšie prihlásenia budú vyžadovať prihlasovací token."
|
||||
securityKeyInfo: "Okrem odtlačku prsta alebo PIN autentifikácie si môžete nastaviť autentifikáciu cez hardvérový bezpečnostný kľúč podporujúci FIDO2 a tak ešte viac zabezpečiť svoj účet."
|
||||
@@ -1287,7 +1299,6 @@ _profile:
|
||||
changeBanner: "Zmeniť banner"
|
||||
_exportOrImport:
|
||||
allNotes: "Všetky poznámky"
|
||||
clips: "Klip"
|
||||
followingList: "Sledujete"
|
||||
muteList: "Vypnúť zvuk"
|
||||
blockingList: "Zablokovať"
|
||||
@@ -1442,9 +1453,3 @@ _deck:
|
||||
_webhookSettings:
|
||||
name: "Názov"
|
||||
active: "Zapnuté"
|
||||
_moderationLogTypes:
|
||||
suspend: "Zmraziť"
|
||||
resetPassword: "Resetovať heslo"
|
||||
_reversi:
|
||||
total: "Celkom"
|
||||
|
||||
|
@@ -20,7 +20,6 @@ noNotes: "Inga noteringar"
|
||||
noNotifications: "Inga notifikationer"
|
||||
instance: "Instanser"
|
||||
settings: "Inställningar"
|
||||
notificationSettings: "Notifieringsinställningar"
|
||||
basicSettings: "Basinställningar"
|
||||
otherSettings: "Andra inställningar"
|
||||
openInWindow: "Öppna i ett fönster"
|
||||
@@ -52,10 +51,6 @@ addToList: "Lägg till i lista"
|
||||
sendMessage: "Skicka ett meddelande"
|
||||
copyRSS: "Kopiera RSS"
|
||||
copyUsername: "Kopiera användarnamn"
|
||||
copyUserId: "Kopiera användar-ID"
|
||||
copyNoteId: "Kopiera noter-ID"
|
||||
copyFileId: "Kopiera Fil-ID"
|
||||
copyFolderId: "Kopiera mapp-ID"
|
||||
searchUser: "Sök användare"
|
||||
reply: "Svara"
|
||||
loadMore: "Ladda mer"
|
||||
@@ -108,8 +103,6 @@ renoted: "Omnoterad."
|
||||
cantRenote: "Inlägget kunde inte bli omnoterat."
|
||||
cantReRenote: "En omnotering kan inte bli omnoterad."
|
||||
quote: "Citat"
|
||||
inChannelRenote: "Omnotera inom kanalen"
|
||||
inChannelQuote: "I kanal citat"
|
||||
pinnedNote: "Fästad not"
|
||||
pinned: "Fäst till profil"
|
||||
you: "Du"
|
||||
@@ -118,6 +111,7 @@ sensitive: "Känsligt innehåll"
|
||||
add: "Lägg till"
|
||||
reaction: "Reaktioner"
|
||||
reactions: "Reaktioner"
|
||||
reactionSetting: "Reaktioner som ska visas i reaktionsväljaren"
|
||||
reactionSettingDescription2: "Dra för att omordna, klicka för att radera, tryck \"+\" för att lägga till."
|
||||
rememberNoteVisibility: "Komihåg notvisningsinställningar"
|
||||
attachCancel: "Ta bort bilaga"
|
||||
@@ -135,10 +129,7 @@ unblockConfirm: "Är du säkert att du vill avblockera kontot?"
|
||||
suspendConfirm: "Är du säker att du vill suspendera detta konto?"
|
||||
unsuspendConfirm: "Är du säker att du vill avsuspendera detta konto?"
|
||||
selectList: "Välj lista"
|
||||
editList: "Redigera lista"
|
||||
selectChannel: "Välj en kanal"
|
||||
selectAntenna: "Välj en antenn"
|
||||
editAntenna: "Redigera en antenn"
|
||||
selectWidget: "Välj en widget"
|
||||
editWidgets: "Redigera widgets"
|
||||
editWidgetsExit: "Avsluta redigering"
|
||||
@@ -265,9 +256,6 @@ noMoreHistory: "Det finns ingen mer historik"
|
||||
startMessaging: "Starta en chatt"
|
||||
nUsersRead: "läst av {n}"
|
||||
agreeTo: "Jag accepterar {0}"
|
||||
agree: "Överens"
|
||||
termsOfService: "Användarvillkor"
|
||||
start: "Kom igång"
|
||||
home: "Hem"
|
||||
remoteUserCaution: "Då denna användaren kommer från en fjärrinstans, kan informationen visad vara ofullständig."
|
||||
activity: "Aktivitet"
|
||||
@@ -309,10 +297,10 @@ copyUrl: "Kopiera URL"
|
||||
rename: "Byt namn"
|
||||
avatar: "Profilbild"
|
||||
banner: "Banner"
|
||||
nsfw: "Känsligt innehåll"
|
||||
reload: "Ladda om"
|
||||
doNothing: "Ignorera"
|
||||
reloadConfirm: "Vill du ladda om tidslinjen?"
|
||||
watch: "Titta"
|
||||
accept: "Tillåt"
|
||||
reject: "Neka"
|
||||
normal: "Normal"
|
||||
@@ -332,32 +320,16 @@ connectService: "Anslut"
|
||||
disconnectService: "Koppla från"
|
||||
enableLocalTimeline: "Aktivera lokal tidslinje"
|
||||
enableGlobalTimeline: "Aktivera global tidslinje"
|
||||
registration: "Registrera"
|
||||
enableRegistration: "Aktivera registrering av nya användare"
|
||||
invite: "Inbjudan"
|
||||
inMb: "I megabyte"
|
||||
iconUrl: "URL till profilbilden"
|
||||
bannerUrl: "URL till banner-bilden"
|
||||
basicInfo: "Grundläggande info"
|
||||
pinnedUsers: "Fästa användare"
|
||||
pinnedPages: "Fästa sidor"
|
||||
pinnedNotes: "Fästad not"
|
||||
hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Aktivera hCaptcha"
|
||||
hcaptchaSiteKey: "Webbplatsnyckel"
|
||||
hcaptchaSecretKey: "Hemlig nyckel"
|
||||
mcaptchaSiteKey: "Webbplatsnyckel"
|
||||
mcaptchaSecretKey: "Hemlig nyckel"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Aktivera reCAPTCHA"
|
||||
recaptchaSiteKey: "Webbplatsnyckel"
|
||||
recaptchaSecretKey: "Hemlig nyckel"
|
||||
turnstile: "Turnstile"
|
||||
enableTurnstile: "Aktivera Turnstile"
|
||||
turnstileSiteKey: "Webbplatsnyckel"
|
||||
turnstileSecretKey: "Hemlig nyckel"
|
||||
antennas: "Antenner"
|
||||
manageAntennas: "Hantera Antenner"
|
||||
name: "Namn"
|
||||
antennaSource: "Antennkälla"
|
||||
antennaKeywords: "Nyckelord att lyssna efter"
|
||||
antennaExcludeKeywords: "Nyckelord att exkludera"
|
||||
@@ -366,112 +338,39 @@ notifyAntenna: "Notifiera om nya noter"
|
||||
withFileAntenna: "Endast noter med filer"
|
||||
enableServiceworker: "Aktivera pushnotiser i denna webbläsaren"
|
||||
antennaUsersDescription: "Ange ett användarnamn per linje"
|
||||
withReplies: "Med svar"
|
||||
notesAndReplies: "Inlägg och svar"
|
||||
silence: "Tystnad"
|
||||
recentlyUpdatedUsers: "Nyligen aktiva användare"
|
||||
recentlyRegisteredUsers: "Nyligen registrerade användare"
|
||||
exploreFediverse: "Utforska Fediverse"
|
||||
popularTags: "Populära taggar"
|
||||
userList: "Listor"
|
||||
about: "Om"
|
||||
aboutMisskey: "Om Misskey"
|
||||
administrator: "Administratör"
|
||||
2fa: "Tvåfaktorsautentisering"
|
||||
totp: "Autentiseringsapp"
|
||||
moderator: "Moderator"
|
||||
passwordLessLogin: "Lösenordsfri inloggning"
|
||||
passwordLessLoginDescription: "Tillåter lösenordsfri inloggning med endast en säkerhetsnyckel eller en passkey."
|
||||
resetPassword: "Återställ Lösenord"
|
||||
newPasswordIs: "Det nya lösenordet är \"{password}\""
|
||||
share: "Dela"
|
||||
help: "Hjälp"
|
||||
close: "Stäng"
|
||||
invites: "Inbjudan"
|
||||
members: "Medlemmar"
|
||||
transfer: "Överför"
|
||||
text: "Text"
|
||||
enable: "Aktivera"
|
||||
next: "Nästa"
|
||||
invitations: "Inbjudan"
|
||||
invitationCode: "Inbjudningskod"
|
||||
available: "Tillgängligt"
|
||||
weakPassword: "Svagt Lösenord"
|
||||
normalPassword: "Medel Lösenord"
|
||||
strongPassword: "Starkt Lösenord"
|
||||
signinFailed: "Kan inte logga in. Det angivna användarnamnet eller lösenordet är felaktigt."
|
||||
or: "eller"
|
||||
language: "Språk"
|
||||
aboutX: "Om {x}"
|
||||
category: "Kategori"
|
||||
tags: "Taggar"
|
||||
createAccount: "Skapa ett konto"
|
||||
existingAccount: "Existerande konto"
|
||||
regenerate: "Regenerera"
|
||||
fontSize: "Textstorlek"
|
||||
openImageInNewTab: "Öppna bild i ny flik"
|
||||
clientSettings: "Klientinställningar"
|
||||
accountSettings: "Kontoinställningar"
|
||||
numberOfDays: "Antal dagar"
|
||||
deleteAll: "Radera alla"
|
||||
sounds: "Ljud"
|
||||
sound: "Ljud"
|
||||
listen: "Lyssna"
|
||||
none: "Ingen"
|
||||
volume: "Volym"
|
||||
chooseEmoji: "Välj en emoji"
|
||||
recentUsed: "Senast använd"
|
||||
install: "Installera"
|
||||
uninstall: "Avinstallera"
|
||||
menu: "Meny"
|
||||
serviceworkerInfo: "Måste vara aktiverad för pushnotiser."
|
||||
enableInfiniteScroll: "Ladda mer automatiskt"
|
||||
enablePlayer: "Öppna videospelare"
|
||||
permission: "Behörigheter"
|
||||
enableAll: "Aktivera alla"
|
||||
edit: "Ändra"
|
||||
enableEmail: "Aktivera epost-utskick"
|
||||
email: "E-post"
|
||||
smtpHost: "Värd"
|
||||
smtpUser: "Användarnamn"
|
||||
smtpPass: "Lösenord"
|
||||
emptyToDisableSmtpAuth: "Lämna användarnamn och lösenord tomt för att avaktivera SMTP verifiering"
|
||||
logs: "Logg"
|
||||
channel: "kanal"
|
||||
create: "Skapa"
|
||||
other: "Mer"
|
||||
send: "Skicka"
|
||||
openInNewTab: "Öppna i ny flik"
|
||||
createNew: "Skapa ny"
|
||||
i18nInfo: "Misskey översätts till många olika språk av volontärer. Du kan hjälpa till med översättningen på {link}."
|
||||
accountInfo: "Kontoinformation"
|
||||
clips: "Klipp"
|
||||
duplicate: "Duplicera"
|
||||
reloadToApplySetting: "Inställningen tillämpas efter sidan laddas om. Vill du göra det nu?"
|
||||
clearCache: "Rensa cache"
|
||||
onlineUsersCount: "{n} användare är online"
|
||||
nNotes: "{n} Noter"
|
||||
backgroundColor: "Bakgrundsbild"
|
||||
textColor: "Text"
|
||||
youAreRunningUpToDateClient: "Klienten du använder är uppdaterat."
|
||||
newVersionOfClientAvailable: "Ny version av klienten är tillgänglig."
|
||||
publish: "Publicera"
|
||||
typingUsers: "{users} skriver"
|
||||
info: "Om"
|
||||
enabled: "Aktiverad"
|
||||
user: "Användare"
|
||||
customCssWarn: "Den här inställningen borde bara ändrats av en som har rätta kunskaper. Om du ställer in det här fel så kan klienten sluta fungera rätt."
|
||||
global: "Global"
|
||||
squareAvatars: "Visa fyrkantiga profilbilder"
|
||||
sent: "Skicka"
|
||||
misskeyUpdated: "Misskey har uppdaterats!"
|
||||
incorrectPassword: "Fel lösenord."
|
||||
welcomeBackWithName: "Välkommen tillbaka, {name}"
|
||||
clickToFinishEmailVerification: "Tryck på [{ok}] för att slutföra bekräftelsen på e-postadressen."
|
||||
searchByGoogle: "Sök"
|
||||
file: "Filer"
|
||||
cannotUploadBecauseNoFreeSpace: "Kan inte ladda upp filen för att det finns inget lagringsutrymme kvar."
|
||||
cannotUploadBecauseExceedsFileSizeLimit: "Kan inte ladda upp filen för att den är större än filstorleksgränsen."
|
||||
enableAutoSensitive: "Automatisk NSFW markering"
|
||||
enableAutoSensitiveDescription: "Tillåter automatiskt detektering och marketing av NSFW media genom Maskininlärning när möjligt. Även om denna inställningen är avaktiverad, kan det vara aktiverat på hela instansen."
|
||||
pushNotification: "Pushnotiser"
|
||||
@@ -482,19 +381,12 @@ pushNotificationNotSupported: "Din webbläsare eller instans har inte stöd för
|
||||
windowMaximize: "Maximera"
|
||||
windowMinimize: "Minimera"
|
||||
windowRestore: "Återställ"
|
||||
pleaseDonate: "Misskey är en gratis programvara som används på {host}. Donera gärna för att göra utvecklingen ständigt, tack!"
|
||||
resetPasswordConfirm: "Återställ verkligen ditt lösenord?"
|
||||
dataSaver: "Databesparing"
|
||||
icon: "Profilbild"
|
||||
replies: "Svara"
|
||||
renotes: "Omnotera"
|
||||
_achievements:
|
||||
_types:
|
||||
_open3windows:
|
||||
title: "Flera Fönster"
|
||||
description: "Ha minst 3 fönster öppna samtidigt"
|
||||
_ffVisibility:
|
||||
public: "Publicera"
|
||||
_email:
|
||||
_follow:
|
||||
title: "följde dig"
|
||||
@@ -508,8 +400,10 @@ _theme:
|
||||
_sfx:
|
||||
note: "Noter"
|
||||
notification: "Notifikationer"
|
||||
chat: "Chatt"
|
||||
antenna: "Antenner"
|
||||
_2fa:
|
||||
passwordToTOTP: "Skriv in ditt lösenord"
|
||||
renewTOTPCancel: "Nej tack"
|
||||
_antennaSources:
|
||||
all: "Alla noter"
|
||||
@@ -532,7 +426,6 @@ _visibility:
|
||||
home: "Hem"
|
||||
followers: "Följare"
|
||||
_profile:
|
||||
name: "Namn"
|
||||
username: "Användarnamn"
|
||||
changeAvatar: "Ändra profilbild"
|
||||
changeBanner: "Ändra banner"
|
||||
@@ -568,12 +461,6 @@ _deck:
|
||||
tl: "Tidslinje"
|
||||
antenna: "Antenner"
|
||||
list: "Listor"
|
||||
channel: "kanal"
|
||||
mentions: "Omnämningar"
|
||||
_webhookSettings:
|
||||
name: "Namn"
|
||||
active: "Aktiverad"
|
||||
_moderationLogTypes:
|
||||
suspend: "Suspendera"
|
||||
resetPassword: "Återställ Lösenord"
|
||||
|
||||
|
1185
locales/th-TH.yml
1185
locales/th-TH.yml
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,5 @@
|
||||
---
|
||||
_lang_: "Türkçe"
|
||||
headlineMisskey: "Notlarla bağlanmış bir ağ"
|
||||
introMisskey: "Açık kaynaklı bir dağıtılmış mikroblog hizmeti olan Misskey'e hoş geldiniz.\nMisskey, neler olup bittiğini paylaşmak ve herkese sizden bahsetmek için \"notlar\" oluşturmanıza olanak tanıyan, açık kaynaklı, dağıtılmış bir mikroblog hizmetidir.\nHerkesin notlarına kendi tepkilerinizi hızlıca eklemek için \"Tepkiler\" özelliğini de kullanabilirsiniz👍.\nYeni bir dünyayı keşfedin🚀."
|
||||
poweredByMisskeyDescription: "name}Açık kaynak bir platform\n<b>Misskey</b>Dünya'nın en sunucularında biri。"
|
||||
monthAndDay: "{month}Ay {day}Gün"
|
||||
@@ -9,13 +8,10 @@ notifications: "Bildirim"
|
||||
username: "Kullanıcı Adı"
|
||||
password: "Şifre"
|
||||
forgotPassword: "şifremi unuttum"
|
||||
fetchingAsApObject: "從聯邦宇宙取得中..."
|
||||
ok: "TAMAM"
|
||||
gotIt: "Anladım"
|
||||
cancel: "İptal"
|
||||
noThankYou: "Hayır, teşekkürler"
|
||||
enterUsername: "Kullanıcı adınızı giriniz"
|
||||
renotedBy: "{user} tarafından Renotelandı"
|
||||
noNotes: "Notlar mevcut değil."
|
||||
noNotifications: "Bildirim bulunmuyor"
|
||||
instance: "Sunucu"
|
||||
@@ -45,40 +41,19 @@ pin: "Sabitlenmiş"
|
||||
unpin: "Sabitlemeyi kaldır"
|
||||
copyContent: "İçeriği kopyala"
|
||||
copyLink: "Bağlantıyı Kopyala"
|
||||
copyLinkRenote: "Turkish"
|
||||
delete: "Sil"
|
||||
deleteAndEdit: "Sil ve yeniden düzenle"
|
||||
deleteAndEditConfirm: "Bu notu silip yeniden düzenlemek istiyor musunuz? Bu nota ilişkin tüm Tepkiler, Yeniden Notlar ve Yanıtlar da silinecektir."
|
||||
addToList: "Listeye ekle"
|
||||
addToAntenna: "Antene ekle"
|
||||
sendMessage: "Mesaj Gönder"
|
||||
copyRSS: "RSSKopyala"
|
||||
copyUsername: "Kullanıcı Adını Kopyala"
|
||||
copyUserId: "KullanıcıyıKopyala"
|
||||
copyNoteId: "Kimlik notunu kopyala"
|
||||
copyFileId: "Dosya ID'sini kopyala"
|
||||
copyFolderId: "Klasör ID'sini kopyala"
|
||||
copyProfileUrl: "Profil URL'sini kopyala"
|
||||
searchUser: "Kullanıcıları ara"
|
||||
reply: "yanıt"
|
||||
loadMore: "Devamını yükle"
|
||||
showMore: "Devamını yükle"
|
||||
showLess: "Kapat"
|
||||
youGotNewFollower: "seni takip etti"
|
||||
receiveFollowRequest: "Takip isteği alındı"
|
||||
followRequestAccepted: "Takip isteği kabul edildi"
|
||||
mention: "Bahset"
|
||||
mentions: "Bahsetmeler"
|
||||
directNotes: "Kişisel mesajlar"
|
||||
importAndExport: "İçeri/Dışarı aktar"
|
||||
import: "İçeri aktar"
|
||||
export: "Dışa aktar"
|
||||
files: "Dosyalar"
|
||||
download: "İndir"
|
||||
driveFileDeleteConfirm: "\"{name}\" dosyası silinsin mi? Dosya kullanıldığı tüm notlardan kaybolacaktır."
|
||||
unfollowConfirm: "{name} takipten çıkarılsın mı?"
|
||||
exportRequested: "Dışa aktarım talep ettiniz. Bu biraz zaman alabilir. İşlem bitince Sürücünüze eklenecektir."
|
||||
importRequested: "Dışa aktarım talep ettiniz. Bu işlem biraz zaman alabilir."
|
||||
lists: "Listeler"
|
||||
noLists: "Liste yok"
|
||||
note: "not"
|
||||
@@ -89,16 +64,6 @@ followsYou: "seni takip ediyor"
|
||||
createList: "Liste oluştur"
|
||||
manageLists: "Yönetici Listeleri"
|
||||
error: "hata"
|
||||
somethingHappened: "Bir hata oluştu"
|
||||
retry: "Tekrar dene"
|
||||
pageLoadError: "Sayfa yüklenemedi."
|
||||
pageLoadErrorDescription: "Bu genelde ağ veya tarayıcı ön belleği hatalarından olur. Lütfen ön belleği temizlemeyi veya birkaç dakika beklemeyi ve sayfayı yenilemeyi deneyin."
|
||||
serverIsDead: "Sunucu yanıt vermiyor. Birkaç dakika sonra tekrar deneyin."
|
||||
youShouldUpgradeClient: "Sayfayı görüntülemek için yenileyin."
|
||||
enterListName: "Liste ismi"
|
||||
privacy: "Gizlilik"
|
||||
makeFollowManuallyApprove: "Takip istekleri elle onaylansın"
|
||||
defaultNoteVisibility: "Varsayılan görünürlük"
|
||||
follow: "takipçi"
|
||||
followRequest: "Takip isteği"
|
||||
followRequests: "Takip istekleri"
|
||||
@@ -111,23 +76,9 @@ renoted: "yeniden adlandırılmış"
|
||||
cantRenote: "Ayrılamama"
|
||||
cantReRenote: "not alabilirmiyim"
|
||||
quote: "alıntı"
|
||||
inChannelRenote: "Kanal içi Renote"
|
||||
inChannelQuote: "Kanal içi Alıntı"
|
||||
pinnedNote: "Sabitlenen"
|
||||
pinned: "Sabitlenmiş"
|
||||
you: "sen"
|
||||
clickToShow: "Görüntülemek için tıkla"
|
||||
sensitive: "Hassas içerik"
|
||||
add: "Ekle"
|
||||
reaction: "Tepkiler"
|
||||
reactions: "Tepkiler"
|
||||
reactionSettingDescription2: "Sıralamak için sürükleyin, silmek için tıklayın, eklemek için \"+\" tuşuna tıklayın."
|
||||
rememberNoteVisibility: "Görünürlük ayarlarını hatırla"
|
||||
attachCancel: "Eki sil"
|
||||
markAsSensitive: "Hassas içerik olarak işaretle"
|
||||
unmarkAsSensitive: "Hassas içerik işaretini kaldır"
|
||||
enterFileName: "Dosya ismini gir"
|
||||
mute: "Gizle"
|
||||
unmute: "sesi aç"
|
||||
renoteMute: "sesi kapat"
|
||||
renoteUnmute: "sesi açmayı iptal et"
|
||||
@@ -137,322 +88,46 @@ suspend: "askıya al"
|
||||
unsuspend: "askıya alma"
|
||||
blockConfirm: "Onayı engelle"
|
||||
unblockConfirm: "engellemeyi kaldır onayla"
|
||||
suspendConfirm: "Hesap askıya alınsın mı?"
|
||||
unsuspendConfirm: "Hesap askıdan kaldırılsın mı"
|
||||
selectList: "Bir liste seç"
|
||||
editList: "Listeyi düzenle"
|
||||
selectChannel: "Kanal seç"
|
||||
selectAntenna: "Bir anten seç"
|
||||
editAntenna: "Anteni düzenle"
|
||||
selectWidget: "Araç seç"
|
||||
editWidgets: "Araçları düzenle"
|
||||
editWidgetsExit: "Tamam"
|
||||
customEmojis: "Özel Emoji"
|
||||
emoji: "Emoji"
|
||||
emojis: "Emoji"
|
||||
emojiName: "Emoji adı"
|
||||
emojiUrl: "Emoji URL'si"
|
||||
addEmoji: "Emoji ekle"
|
||||
settingGuide: "Önerilen ayarlar"
|
||||
cacheRemoteFiles: "Uzak dosyalar ön belleğe alınsın"
|
||||
cacheRemoteFilesDescription: "Bu ayar açık olduğunda diğer sitelerin dosyaları doğrudan uzak sunucudan yüklenecektir. Bu ayarı kapatmak depolama kullanımını azaltacak ama küçük resimler oluşturulmadığından trafiği arttıracaktır."
|
||||
youCanCleanRemoteFilesCache: ""
|
||||
cacheRemoteSensitiveFiles: "Hassas uzak dosyalar ön belleğe alınsın"
|
||||
cacheRemoteSensitiveFilesDescription: "Bu ayar kapalı olduğunda hassas uzak dosyalar ön belleğe alınmadan doğrudan uzak sunucudan yüklenecektir."
|
||||
flagAsBot: "Bot olarak işaretle"
|
||||
flagAsBotDescription: "Bu seçeneği hesap bir program tarafından kontrol ediliyorsa işaretleyin. Bu, diğer geliştiricilerin sonsuz etkileşim zincirleri oluşturmasını engellemeye yardımcı olur ve Misskey'in iç sisteminin hesaba bir bot gibi davranmasını sağlar."
|
||||
flagAsCat: "Kedi hesabı"
|
||||
flagAsCatDescription: "Kedi hesabı"
|
||||
flagShowTimelineReplies: "Zaman akışında notlara gelen cevapları göster"
|
||||
flagShowTimelineRepliesDescription: "Açık olduğu durumda, zaman akışında kullanıcıların başkalarına verdiği cevaplar gözükür."
|
||||
autoAcceptFollowed: "Takip edilen hesapların takip isteklerini kabul et"
|
||||
addAccount: "Hesap ekle"
|
||||
reloadAccountsList: "Hesap listesini güncelle"
|
||||
loginFailed: "Giriş başarısız oldu"
|
||||
showOnRemote: "Uzak sunucuda görüntüle"
|
||||
general: "Genel"
|
||||
wallpaper: "Duvar kağıdı"
|
||||
setWallpaper: "Duvar kağıdını ayarla"
|
||||
removeWallpaper: "Duvar kağıdını sil"
|
||||
searchWith: "Arama: {q}"
|
||||
youHaveNoLists: "Hiç listeniz yok"
|
||||
followConfirm: "{name} takip edilsin mi?"
|
||||
proxyAccount: "Vekil hesabı"
|
||||
proxyAccountDescription: "Proxy hesabı, belirli koşullar altında kullanıcılar için uzaktan takipçi işlevi gören bir hesaptır. Örneğin, bir kullanıcı listeye bir uzak kullanıcı eklediğinde, o kullanıcıyı takip eden yerel bir kullanıcı yoksa uzak kullanıcının etkinliği örneğe teslim edilmeyecektir, dolayısıyla bunun yerine proxy hesabı takip edilecektir."
|
||||
host: "Sağlayıcı"
|
||||
selectUser: "Kullanıcı seç"
|
||||
recipient: "Kime"
|
||||
annotation: "Açıklamalar"
|
||||
federation: "Federasyon"
|
||||
instances: "Sunucu"
|
||||
registeredAt: "Katılma tarihi"
|
||||
latestRequestReceivedAt: "Alınan son talep"
|
||||
latestStatus: "En son durum"
|
||||
storageUsage: "Depolama kullanımı"
|
||||
charts: "Çizelgeler"
|
||||
perHour: "Saatlik"
|
||||
perDay: "Günlük"
|
||||
stopActivityDelivery: "Durum güncellemelerini gönderme"
|
||||
blockThisInstance: "Bu sunucuyu engelle"
|
||||
silenceThisInstance: ""
|
||||
operations: "İşlemler"
|
||||
software: "Yazılımlar"
|
||||
version: "Sürüm"
|
||||
metadata: "Meta Verileri"
|
||||
withNFiles: "{n} tane dosya"
|
||||
monitor: "Monitör"
|
||||
jobQueue: "İşlem sırası"
|
||||
cpuAndMemory: "İşlemci ve Hafıza"
|
||||
network: "Ağ"
|
||||
disk: "Disk"
|
||||
instanceInfo: "Sunucu Bilgisi"
|
||||
statistics: "İstatistikler"
|
||||
clearQueue: "Sırayı temizle"
|
||||
clearQueueConfirmTitle: "Sıra silinsin mi?"
|
||||
clearQueueConfirmText: "Sırada kalan hiçbir şey iletilmeyecek. Genelde bu işlem gerekli değildir."
|
||||
clearCachedFiles: "Ön belleği temizle"
|
||||
clearCachedFilesConfirm: "Ön belleğe alınmış tüm uzak sunucu dosyaları silinsin mi?"
|
||||
blockedInstances: "Engellenen sunucular"
|
||||
blockedInstancesDescription: "Engellemek istediğiniz sunucuların alan adlarını satır sonlarıyla ayırarak yazın. Yazılan sunucular bu sunucuyla iletişime geçemeyecek."
|
||||
silencedInstances: "Turkısh"
|
||||
silencedInstancesDescription: ""
|
||||
muteAndBlock: "Susturma ve Engelleme"
|
||||
mutedUsers: "Susturulan kullanıcılar"
|
||||
blockedUsers: "Engellenen kullanıcılar"
|
||||
noUsers: "Kullanıcı yok"
|
||||
editProfile: "Profili düzenle"
|
||||
noteDeleteConfirm: "Bu notu silmek istediğinizden emin misiniz?"
|
||||
pinLimitExceeded: "Daha fazla not sabitlenemez"
|
||||
intro: "Misskey yüklemesi tamamlandı! Lütfen yönetici hesabını oluşturun."
|
||||
done: "Tamamlandı"
|
||||
preview: "Önizleme"
|
||||
default: "Varsayılan"
|
||||
defaultValueIs: "Varsayılan: {value}"
|
||||
noCustomEmojis: "Emoji bulunamadı"
|
||||
noJobs: "Hiç işlem yok"
|
||||
federating: "Federe ediliyor"
|
||||
blocked: "Engellenmiş"
|
||||
suspended: "Askıya alınmış"
|
||||
all: "Tümü"
|
||||
subscribing: "Abonelik"
|
||||
publishing: "Paylaşım"
|
||||
notResponding: "Cevap yok"
|
||||
instanceFollowing: "Sunucuda takip edenler"
|
||||
instanceFollowers: "Sunucu takipçileri"
|
||||
instanceUsers: "Sunucu kullanıcıları"
|
||||
changePassword: "Şifreyi değiştir"
|
||||
security: "Güvenlik"
|
||||
retypedNotMatch: "Girişler uyuşmuyor."
|
||||
currentPassword: "Geçerli şifre"
|
||||
newPassword: "Yeni şifre"
|
||||
newPasswordRetype: "Yeni şifre (tekrar)"
|
||||
attachFile: "Dosya ekle"
|
||||
more: "Daha!"
|
||||
featured: "Öne Çıkan"
|
||||
usernameOrUserId: "Kullanıcı adı veya ID'si"
|
||||
noSuchUser: "Kullanıcı bulunamadı"
|
||||
lookup: "Sorgu"
|
||||
announcements: "Duyurular"
|
||||
imageUrl: "Görsel URL'si"
|
||||
remove: "Sil"
|
||||
removed: "Silindi"
|
||||
removeAreYouSure: "\"{x}\" silmek istediğinizden emin misiniz?"
|
||||
deleteAreYouSure: "\"{x}\" silmek istediğinizden emin misiniz?"
|
||||
resetAreYouSure: "Sıfırlansın mı?"
|
||||
saved: "Kaydedildi"
|
||||
messaging: "Mesajlar"
|
||||
upload: "Yükle"
|
||||
keepOriginalUploading: "Orijinal görseli koru"
|
||||
keepOriginalUploadingDescription: "Orijinal olarak yüklenen görüntüyü olduğu gibi kaydeder. Kapatılırsa, yükleme sırasında web'de görüntülenecek bir sürüm oluşturulur."
|
||||
fromDrive: "Drive Dosyasından"
|
||||
fromUrl: "Bağlantıdan"
|
||||
uploadFromUrl: "Bağlantıdan yükle"
|
||||
uploadFromUrlDescription: "Yüklemek istediğiniz dosyanın bağlantısı"
|
||||
uploadFromUrlRequested: "Yükleme talep edildi"
|
||||
uploadFromUrlMayTakeTime: "Yüklemenin tamamlanması biraz süre alabilir."
|
||||
explore: "Keşfet"
|
||||
messageRead: "Okundu"
|
||||
noMoreHistory: "Bundan öncesi yok"
|
||||
startMessaging: "Yeni bir sohbet başlat"
|
||||
nUsersRead: "{n} kişi okudu"
|
||||
agreeTo: "Kabul Ediyorum: {0}"
|
||||
agree: "Kabul Et"
|
||||
agreeBelow: "Aşağıdakileri kabul ederim"
|
||||
basicNotesBeforeCreateAccount: "Önemli notlar"
|
||||
termsOfService: "Şartlar ve Koşullar"
|
||||
start: "Başla"
|
||||
home: "Ana sayfa"
|
||||
remoteUserCaution: "Bu kullanıcı bir uzak sunucudan olduğu için alınan bilgiler tam olmayabilir."
|
||||
activity: "Etkinlik"
|
||||
images: "Görseller"
|
||||
image: "Görseller"
|
||||
birthday: "Doğum günü"
|
||||
yearsOld: "{age} yaşında"
|
||||
registeredDate: "Kayıt tarihi"
|
||||
location: "Konum"
|
||||
theme: "Temalar"
|
||||
themeForLightMode: "Aydınlık Tema"
|
||||
themeForDarkMode: "Karanlık Tema"
|
||||
light: "Aydınlık"
|
||||
dark: "Karanlık"
|
||||
lightThemes: "Aydınlık Temalar"
|
||||
darkThemes: "Karanlık Temalar"
|
||||
syncDeviceDarkMode: "Sistem Koyu Modu ile senkronize et"
|
||||
drive: "Sürücü"
|
||||
fileName: "Dosya adı"
|
||||
selectFile: "Dosya seç"
|
||||
selectFiles: "Dosya seç"
|
||||
selectFolder: "Klasör seç"
|
||||
selectFolders: "Klasör seç"
|
||||
renameFile: "Dosyayı yeniden adlandır"
|
||||
folderName: "Klasör adı"
|
||||
createFolder: "Klasör oluştur"
|
||||
renameFolder: "Klasörü Yeniden Adlandır"
|
||||
deleteFolder: "Klasörü sil"
|
||||
addFile: "Dosya ekle"
|
||||
emptyDrive: "Sürücü boş"
|
||||
emptyFolder: "Bu klasör boş"
|
||||
unableToDelete: "Silme mümkün değil"
|
||||
inputNewFileName: "Yeni dosya ismini girin"
|
||||
inputNewDescription: "Yeni bir başlık gir"
|
||||
inputNewFolderName: "Yeni klasör ismini girin"
|
||||
circularReferenceFolder: "Hedef klasör taşınan klasörün bir alt klasörü."
|
||||
hasChildFilesOrFolders: "Klasör boş olmadığından silinemiyor"
|
||||
copyUrl: "URL'yi kopyala"
|
||||
rename: "Yeniden adlandır"
|
||||
avatar: "Avatar"
|
||||
banner: "Banner"
|
||||
displayOfSensitiveMedia: "Hassas içerik gösterimi"
|
||||
whenServerDisconnected: "Sunucu bağlantısı kesildiğinde"
|
||||
disconnectedFromServer: "Sunucu bağlantısı koptu"
|
||||
reload: "Yenile"
|
||||
doNothing: "Bir şey yapma"
|
||||
reloadConfirm: "Zaman akışı yenilensin mi?"
|
||||
watch: "İzle"
|
||||
unwatch: "İzlemeyi bırak"
|
||||
accept: "Kabul et"
|
||||
reject: "Reddet"
|
||||
normal: "Normal"
|
||||
instanceName: "Sunucu ismi"
|
||||
instanceDescription: "Sunucu açıklaması"
|
||||
maintainerName: "Yönetici ismi"
|
||||
maintainerEmail: "Yöneticinin e-postası"
|
||||
tosUrl: "Hizmet Koşulları Bağlantısı"
|
||||
thisYear: "Bu yıl"
|
||||
thisMonth: "Bu ay"
|
||||
today: "Bugün"
|
||||
monthX: "{month} ay"
|
||||
pages: "Sayfalar"
|
||||
integration: "Entegrasyon"
|
||||
enableRegistration: "Kayıtlara izin ver"
|
||||
basicInfo: "Temel bilgiler"
|
||||
pinnedUsers: "Sabitlenmiş kullanıcılar"
|
||||
pinnedNotes: "Sabitlenen"
|
||||
manageAntennas: "Anten ayarları"
|
||||
userList: "Listeler"
|
||||
resetPassword: "Şifre sıfırlama"
|
||||
noMessagesYet: "Şimdilik mesaj yok"
|
||||
details: "Detaylar"
|
||||
deck: "Güverte"
|
||||
smtpHost: "Sağlayıcı"
|
||||
smtpUser: "Kullanıcı Adı"
|
||||
smtpPass: "Şifre"
|
||||
notificationSetting: "Bildirim ayarları"
|
||||
instanceTicker: "Notların sunucu bilgileri"
|
||||
noCrawleDescription: "Arama motorlarından profilinde, notlarında, sayfalarında vb. dolaşılmamasını ve dizine eklememesini talep et."
|
||||
clearCache: "Ön belleği temizle"
|
||||
onlineUsersCount: "{n} kullanıcı çevrim içi"
|
||||
user: "Kullanıcı"
|
||||
global: "Küresel"
|
||||
squareAvatars: "Kare avatarlar"
|
||||
searchByGoogle: "Arama"
|
||||
file: "Dosyalar"
|
||||
pushNotification: "Push bildirimleri"
|
||||
subscribePushNotification: "Push bildirimlerini etkinleştir"
|
||||
unsubscribePushNotification: "Push bildirimlerini kapat"
|
||||
pushNotificationAlreadySubscribed: "Push bildirimleri zaten açık"
|
||||
pushNotificationNotSupported: "Push bildirimleri sunucu veya tarayıcı tarafından desteklenmiyor"
|
||||
noRole: "Rol bulunamadı"
|
||||
color: "Renk"
|
||||
addMemo: "Kısa not ekle"
|
||||
icon: "Avatar"
|
||||
replies: "yanıt"
|
||||
renotes: "vazgeçme"
|
||||
_accountDelete:
|
||||
started: "Silme işlemi başlatıldı"
|
||||
_email:
|
||||
_follow:
|
||||
title: "seni takip etti"
|
||||
_theme:
|
||||
color: "Renk"
|
||||
keys:
|
||||
mention: "Bahset"
|
||||
renote: "vazgeçme"
|
||||
_sfx:
|
||||
note: "notlar"
|
||||
notification: "Bildirim"
|
||||
_2fa:
|
||||
renewTOTPCancel: "Hayır, teşekkürler"
|
||||
_permissions:
|
||||
"read:blocks": "Engellenen hesapları gör"
|
||||
"write:blocks": "Engellenen hesap listesini düzenle"
|
||||
_widgets:
|
||||
profile: "Profil"
|
||||
instanceInfo: "Sunucu Bilgisi"
|
||||
notifications: "Bildirim"
|
||||
timeline: "Zaman çizelgesi"
|
||||
calendar: "Takvim"
|
||||
clock: "Saat"
|
||||
activity: "Etkinlik"
|
||||
federation: "Federasyon"
|
||||
jobQueue: "İşlem sırası"
|
||||
_userList:
|
||||
chooseList: "Bir liste seç"
|
||||
_cw:
|
||||
show: "Devamını yükle"
|
||||
_poll:
|
||||
vote: "Oy kullan"
|
||||
_visibility:
|
||||
publicDescription: "Herkese açık"
|
||||
home: "Ana sayfa"
|
||||
followers: "takipçi"
|
||||
_profile:
|
||||
username: "Kullanıcı Adı"
|
||||
_exportOrImport:
|
||||
followingList: "takipçi"
|
||||
muteList: "Gizle"
|
||||
blockingList: "engelle"
|
||||
userLists: "Listeler"
|
||||
_charts:
|
||||
federation: "Federasyon"
|
||||
_timelines:
|
||||
home: "Ana sayfa"
|
||||
global: "Küresel"
|
||||
_pages:
|
||||
blocks:
|
||||
image: "Görseller"
|
||||
_notification:
|
||||
youWereFollowed: "seni takip etti"
|
||||
unreadAntennaNote: "{name} anteni"
|
||||
_types:
|
||||
follow: "takipçi"
|
||||
mention: "Bahset"
|
||||
renote: "vazgeçme"
|
||||
quote: "alıntı"
|
||||
reaction: "Tepkiler"
|
||||
receiveFollowRequest: "Takip isteği alındı"
|
||||
followRequestAccepted: "Takip isteği kabul edildi"
|
||||
_actions:
|
||||
reply: "yanıt"
|
||||
renote: "vazgeçme"
|
||||
_deck:
|
||||
configureColumn: "Sütun seçenekleri"
|
||||
_columns:
|
||||
notifications: "Bildirim"
|
||||
tl: "Zaman çizelgesi"
|
||||
list: "Listeler"
|
||||
mentions: "Bahsetmeler"
|
||||
_moderationLogTypes:
|
||||
suspend: "askıya al"
|
||||
resetPassword: "Şifre sıfırlama"
|
||||
|
||||
|
@@ -1,20 +1,4 @@
|
||||
---
|
||||
_lang_: "ياپونچە"
|
||||
headlineMisskey: "خاتىرە ئارقىلىق ئۇلانغان تور"
|
||||
monthAndDay: "{day}-{month}"
|
||||
search: "ئىزدەش"
|
||||
ok: "ماقۇل"
|
||||
noThankYou: "ئۇنى توختىتىڭ"
|
||||
profile: "profile"
|
||||
login: "كىرىش"
|
||||
loggingIn: "كىرىش"
|
||||
pin: "pinned"
|
||||
delete: "ئۆچۈرۈش"
|
||||
pinned: "pinned"
|
||||
remove: "ئۆچۈرۈش"
|
||||
searchByGoogle: "ئىزدەش"
|
||||
_2fa:
|
||||
renewTOTPCancel: "ئۇنى توختىتىڭ"
|
||||
_widgets:
|
||||
profile: "profile"
|
||||
|
||||
|
@@ -20,7 +20,6 @@ noNotes: "Немає нотаток"
|
||||
noNotifications: "Немає сповіщень"
|
||||
instance: "Інстанс"
|
||||
settings: "Налаштування"
|
||||
notificationSettings: "Параметри сповіщень"
|
||||
basicSettings: "Основні налаштування"
|
||||
otherSettings: "Інші налаштування"
|
||||
openInWindow: "Відкрити у вікні"
|
||||
@@ -49,13 +48,9 @@ delete: "Видалити"
|
||||
deleteAndEdit: "Видалити й редагувати"
|
||||
deleteAndEditConfirm: "Ви впевнені, що хочете видалити цю нотатку та відредагувати її? Ви втратите всі реакції, поширення та відповіді на неї."
|
||||
addToList: "Додати до списку"
|
||||
addToAntenna: "Додати в антени"
|
||||
sendMessage: "Надіслати повідомлення"
|
||||
copyRSS: "Скопіювати RSS"
|
||||
copyUsername: "Скопіювати ім’я користувача"
|
||||
copyUserId: "Копіювати ID користувача"
|
||||
copyNoteId: "блокнот ID користувача"
|
||||
copyFileId: "Скопіювати ідентифікатор файлу."
|
||||
searchUser: "Пошук користувачів"
|
||||
reply: "Відповісти"
|
||||
loadMore: "Показати більше"
|
||||
@@ -116,6 +111,7 @@ sensitive: "NSFW"
|
||||
add: "Додати"
|
||||
reaction: "Реакції"
|
||||
reactions: "Реакції"
|
||||
reactionSetting: "Налаштування реакцій"
|
||||
reactionSettingDescription2: "Перемістити щоб змінити порядок, Клацнути мишою щоб видалити, Натиснути \"+\" щоб додати."
|
||||
rememberNoteVisibility: "Пам’ятати параметри видимісті"
|
||||
attachCancel: "Видалити вкладення"
|
||||
@@ -133,7 +129,6 @@ unblockConfirm: "Ви впевнені, що хочете розблокуват
|
||||
suspendConfirm: "Ви впевнені, що хочете призупинити цей акаунт?"
|
||||
unsuspendConfirm: "Ви впевнені, що хочете відновити цей акаунт?"
|
||||
selectList: "Виберіть список"
|
||||
editList: "Редагувати список."
|
||||
selectChannel: "Виберіть канал"
|
||||
selectAntenna: "Виберіть антену"
|
||||
selectWidget: "Виберіть віджет"
|
||||
@@ -305,6 +300,7 @@ copyUrl: "Копіювати URL"
|
||||
rename: "Перейменувати"
|
||||
avatar: "Аватар"
|
||||
banner: "Банер"
|
||||
nsfw: "NSFW"
|
||||
whenServerDisconnected: "Коли зв’язок із сервером втрачено"
|
||||
disconnectedFromServer: "Зв’язок із сервером було перервано"
|
||||
reload: "Оновити"
|
||||
@@ -339,6 +335,7 @@ invite: "Запросити"
|
||||
driveCapacityPerLocalAccount: "Об'єм диска на одного локального користувача"
|
||||
driveCapacityPerRemoteAccount: "Об'єм диска на одного віддаленого користувача"
|
||||
inMb: "В мегабайтах"
|
||||
iconUrl: "URL аватара"
|
||||
bannerUrl: "URL банера"
|
||||
backgroundImageUrl: "URL-адреса фонового зображення"
|
||||
basicInfo: "Основна інформація"
|
||||
@@ -352,8 +349,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Увімкнути hCaptcha"
|
||||
hcaptchaSiteKey: "Ключ сайту"
|
||||
hcaptchaSecretKey: "Секретний ключ"
|
||||
mcaptchaSiteKey: "Ключ сайту"
|
||||
mcaptchaSecretKey: "Секретний ключ"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Увімкнути reCAPTCHA"
|
||||
recaptchaSiteKey: "Ключ сайту"
|
||||
@@ -411,6 +406,7 @@ share: "Поділитись"
|
||||
notFound: "Не знайдено"
|
||||
notFoundDescription: "Сторінка за вказаною адресою не знайдена."
|
||||
uploadFolder: "Місце для завантаження за замовчуванням"
|
||||
cacheClear: "Очистити кеш"
|
||||
markAsReadAllNotifications: "Позначити всі сповіщення як прочитані"
|
||||
markAsReadAllUnreadNotes: "Позначити всі нотатки як прочитані"
|
||||
markAsReadAllTalkMessages: "Позначити всі повідомлення як прочитані"
|
||||
@@ -451,7 +447,6 @@ or: "або"
|
||||
language: "Мова"
|
||||
uiLanguage: "Мова інтерфейсу"
|
||||
aboutX: "Про {x}"
|
||||
native: "місцевий"
|
||||
disableDrawer: "Не використовувати висувні меню"
|
||||
noHistory: "Історія порожня"
|
||||
signinHistory: "Історія входів"
|
||||
@@ -530,8 +525,6 @@ output: "Вихід"
|
||||
script: "Скрипт"
|
||||
disablePagesScript: "Вимкнути AiScript на Сторінках"
|
||||
updateRemoteUser: "Оновити інформацію про віддаленого користувача"
|
||||
unsetUserAvatar: "Деактивувати піктограму."
|
||||
unsetUserBanner: "Випустити прапор."
|
||||
deleteAllFiles: "Видалити всі файли"
|
||||
deleteAllFilesConfirm: "Ви дійсно хочете видалити всі файли?"
|
||||
removeAllFollowing: "Скасувати всі підписки"
|
||||
@@ -652,7 +645,6 @@ createNewClip: "Створити нотатку"
|
||||
unclip: "Незакріплений"
|
||||
confirmToUnclipAlreadyClippedNote: "Ця нотатка вже включена до кліпу \"{name}\". Ви хочете виключити нотатку з цього кліпу?"
|
||||
public: "Публічний"
|
||||
private: "Приватне"
|
||||
i18nInfo: "Misskey перекладається на різні мови волонтерами. Ви можете допомогти: {link}"
|
||||
manageAccessTokens: "Керування токенами доступу"
|
||||
accountInfo: "Інформація про акаунт"
|
||||
@@ -819,6 +811,7 @@ makeReactionsPublicDescription: "Це зробить список усіх ва
|
||||
classic: "Класичний"
|
||||
muteThread: "Приглушити тред"
|
||||
unmuteThread: "Скасувати глушіння"
|
||||
ffVisibility: "Видимість підписок/підписників"
|
||||
continueThread: "Показати продовження треду"
|
||||
deleteAccountConfirm: "Це незворотно видалить ваш акаунт. Продовжити?"
|
||||
incorrectPassword: "Неправильний пароль."
|
||||
@@ -908,11 +901,6 @@ exploreOtherServers: "Знайти інший сервер"
|
||||
letsLookAtTimeline: "Перегляд історії"
|
||||
horizontal: "Збоку"
|
||||
youFollowing: "Підписки"
|
||||
icon: "Аватар"
|
||||
replies: "Відповісти"
|
||||
renotes: "Поширити"
|
||||
flip: "Перевернути"
|
||||
lastNDays: "Останні {n} днів"
|
||||
_achievements:
|
||||
earnedAt: "Відкрито"
|
||||
_types:
|
||||
@@ -1186,7 +1174,6 @@ _plugin:
|
||||
install: "Встановити плагін"
|
||||
installWarn: "Будь ласка, не встановлюйте плагінів, яким ви не довіряєте."
|
||||
manage: "Керування плагінами"
|
||||
viewSource: "Переглянути вихідний код"
|
||||
_preferencesBackups:
|
||||
list: "Створені бекапи"
|
||||
saveNew: "Зберегти як новий"
|
||||
@@ -1213,6 +1200,10 @@ _aboutMisskey:
|
||||
donate: "Пожертвувати Misskey"
|
||||
morePatrons: "Ми дуже цінуємо підтримку багатьох інших помічників, не перелічених тут. Дякуємо! 🥰"
|
||||
patrons: "Підтримали"
|
||||
_nsfw:
|
||||
respect: "Приховувати NSFW медіа"
|
||||
ignore: "Не приховувати NSFW медіа"
|
||||
force: "Приховувати всі медіа файли"
|
||||
_instanceTicker:
|
||||
none: "Не відображати"
|
||||
remote: "Відображати для віддалених користувачів"
|
||||
@@ -1239,6 +1230,11 @@ _wordMute:
|
||||
muteWords: "Заглушені слова"
|
||||
muteWordsDescription: "Розділення ключових слів пробілами для \"І\" або з нової лінійки для \"АБО\""
|
||||
muteWordsDescription2: "Для використання RegEx, ключові слова потрібно вписати поміж слешів \"/\"."
|
||||
softDescription: "Приховати записи які відповідають критеріям зі стрічки подій."
|
||||
hardDescription: "Приховати записи які відповідають критеріям зі стрічки подій. Також приховані записи не будуть додані до стрічки подій навіть якщо критерії буде змінено."
|
||||
soft: "М'яко"
|
||||
hard: "Жорстко"
|
||||
mutedNotes: "Заблоковані нотатки"
|
||||
_instanceMute:
|
||||
instanceMuteDescription2: "Розділяйте новими рядками"
|
||||
title: "Приховує нотатки з перелічених інстансів."
|
||||
@@ -1296,6 +1292,9 @@ _theme:
|
||||
infoFg: "Текст інформації"
|
||||
infoWarnBg: "Фон попередження"
|
||||
infoWarnFg: "Текст попередження"
|
||||
cwBg: "Фон чутливого змісту"
|
||||
cwFg: "Текст чутливого змісту"
|
||||
cwHoverBg: "Фон чутливого змісту (при наведенні)"
|
||||
toastBg: "Фон повідомлення"
|
||||
toastFg: "Текст повідомлення"
|
||||
buttonBg: "Фон кнопки"
|
||||
@@ -1313,6 +1312,8 @@ _sfx:
|
||||
note: "Нотатки"
|
||||
noteMy: "Мої нотатки"
|
||||
notification: "Сповіщення"
|
||||
chat: "Чати"
|
||||
chatBg: "Чати (фон)"
|
||||
antenna: "Прийом антени"
|
||||
channel: "Повідомлення каналу"
|
||||
_ago:
|
||||
@@ -1335,6 +1336,7 @@ _2fa:
|
||||
alreadyRegistered: "Двофакторна автентифікація вже налаштована."
|
||||
step1: "Спершу встановіть на свій пристрій програму автентифікації (наприклад {a} або {b})."
|
||||
step2: "Потім відскануйте QR-код, який відображається на цьому екрані."
|
||||
step2Url: "Ви також можете ввести цю URL-адресу, якщо використовуєте програму для ПК:"
|
||||
step3: "Щоб завершити налаштування, введіть токен, наданий вашою програмою."
|
||||
step4: "Відтепер будь-які майбутні спроби входу вимагатимуть такого токена."
|
||||
renewTOTPCancel: "Не зараз"
|
||||
@@ -1471,7 +1473,6 @@ _profile:
|
||||
changeBanner: "Змінити банер"
|
||||
_exportOrImport:
|
||||
allNotes: "Всі нотатки"
|
||||
clips: "Добірка"
|
||||
followingList: "Підписки"
|
||||
muteList: "Ігнорувати"
|
||||
blockingList: "Заблокувати"
|
||||
@@ -1617,9 +1618,3 @@ _deck:
|
||||
_webhookSettings:
|
||||
name: "Ім'я"
|
||||
active: "Увімкнено"
|
||||
_moderationLogTypes:
|
||||
suspend: "Призупинити"
|
||||
resetPassword: "Скинути пароль"
|
||||
_reversi:
|
||||
total: "Всього"
|
||||
|
||||
|
1093
locales/uz-UZ.yml
1093
locales/uz-UZ.yml
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
---
|
||||
_lang_: "Tiếng Nhật"
|
||||
_lang_: "Tiếng Việt"
|
||||
headlineMisskey: "Mạng xã hội liên hợp"
|
||||
introMisskey: "Xin chào! Misskey là một nền tảng tiểu blog phi tập trung mã nguồn mở.\nViết \"tút\" để chia sẻ những suy nghĩ của bạn 📡\nBằng \"biểu cảm\", bạn có thể bày tỏ nhanh chóng cảm xúc của bạn với các tút 👍\nHãy khám phá một thế giới mới! 🚀"
|
||||
poweredByMisskeyDescription: "{name} là một trong những chủ máy của <b>Misskey</b> là nền tảng mã nguồn mở"
|
||||
@@ -20,7 +20,6 @@ noNotes: "Chưa có bài viết nào."
|
||||
noNotifications: "Chưa có thông báo"
|
||||
instance: "Máy chủ"
|
||||
settings: "Cài đặt"
|
||||
notificationSettings: "Cài đặt thông báo"
|
||||
basicSettings: "Thiết lập chung"
|
||||
otherSettings: "Thiết lập khác"
|
||||
openInWindow: "Mở trong cửa sổ mới"
|
||||
@@ -45,20 +44,13 @@ pin: "Ghim"
|
||||
unpin: "Bỏ ghim"
|
||||
copyContent: "Chép nội dung"
|
||||
copyLink: "Chép liên kết"
|
||||
copyLinkRenote: "Sao chép liên kết ghi chú"
|
||||
delete: "Xóa"
|
||||
deleteAndEdit: "Sửa"
|
||||
deleteAndEditConfirm: "Bạn có chắc muốn sửa tút này? Những biểu cảm, lượt trả lời và đăng lại sẽ bị mất."
|
||||
addToList: "Thêm vào danh sách"
|
||||
addToAntenna: "Thêm vào Ăngten"
|
||||
sendMessage: "Gửi tin nhắn"
|
||||
copyRSS: "Sao chép RSS"
|
||||
copyUsername: "Chép tên người dùng"
|
||||
copyUserId: "Sao chép ID người dùng"
|
||||
copyNoteId: "Sao chép ID ghi chú"
|
||||
copyFileId: "Sao chép ID tập tin"
|
||||
copyFolderId: "Sao chép ID thư mục"
|
||||
copyProfileUrl: "Sao chép URL hồ sơ"
|
||||
searchUser: "Tìm kiếm người dùng"
|
||||
reply: "Trả lời"
|
||||
loadMore: "Tải thêm"
|
||||
@@ -121,6 +113,7 @@ sensitive: "Nhạy cảm"
|
||||
add: "Thêm"
|
||||
reaction: "Biểu cảm"
|
||||
reactions: "Biểu cảm"
|
||||
reactionSetting: "Chọn những biểu cảm hiển thị"
|
||||
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"
|
||||
@@ -129,8 +122,6 @@ unmarkAsSensitive: "Bỏ đánh dấu nhạy cảm"
|
||||
enterFileName: "Nhập tên tập tin"
|
||||
mute: "Ẩn"
|
||||
unmute: "Bỏ ẩn"
|
||||
renoteMute: "Mute Renotes"
|
||||
renoteUnmute: "Unmute Renotes"
|
||||
block: "Chặn"
|
||||
unblock: "Bỏ chặn"
|
||||
suspend: "Vô hiệu hóa"
|
||||
@@ -140,10 +131,8 @@ unblockConfirm: "Bạn có chắc muốn bỏ chặn người này?"
|
||||
suspendConfirm: "Bạn có chắc muốn vô hiệu hóa người này?"
|
||||
unsuspendConfirm: "Bạn có chắc muốn bỏ vô hiệu hóa người này?"
|
||||
selectList: "Chọn danh sách"
|
||||
editList: "Chỉnh sửa danh sách"
|
||||
selectChannel: "Lựa chọn kênh"
|
||||
selectAntenna: "Chọn một antenna"
|
||||
editAntenna: "Chỉnh sửa Ăngten"
|
||||
selectWidget: "Chọn tiện ích"
|
||||
editWidgets: "Sửa tiện ích"
|
||||
editWidgetsExit: "Xong"
|
||||
@@ -156,9 +145,6 @@ addEmoji: "Thêm emoji"
|
||||
settingGuide: "Cài đặt đề xuất"
|
||||
cacheRemoteFiles: "Tập tin cache từ xa"
|
||||
cacheRemoteFilesDescription: "Khi tùy chọn này bị tắt, các tập tin từ xa sẽ được tải trực tiếp từ máy chủ khác. Điều này sẽ giúp giảm dung lượng lưu trữ nhưng lại tăng lưu lượng truy cập, vì hình thu nhỏ sẽ không được tạo."
|
||||
youCanCleanRemoteFilesCache: "Bạn có thể xoá bộ nhớ đệm bằng cách nhấn vào nút🗑️ở trong phần quản lý tệp."
|
||||
cacheRemoteSensitiveFiles: "Lưu các tập tin nhạy cảm vào bộ nhớ tạm từ xa"
|
||||
cacheRemoteSensitiveFilesDescription: "Khi bạn tắt tính năng này, các tệp nhạy cảm sẽ được tải trực tiếp từ máy chủ và không được lưu vào bộ nhớ tạm"
|
||||
flagAsBot: "Đánh dấu đây là tài khoản bot"
|
||||
flagAsBotDescription: "Bật tùy chọn này nếu tài khoản này được kiểm soát bởi một chương trình. Nếu được bật, nó sẽ được đánh dấu để các nhà phát triển khác ngăn chặn chuỗi tương tác vô tận với các bot khác và điều chỉnh hệ thống nội bộ của Misskey để coi tài khoản này như một bot."
|
||||
flagAsCat: "Chế độ Mèeeeeeeeeeo!!"
|
||||
@@ -167,7 +153,6 @@ flagShowTimelineReplies: "Hiện lượt trả lời trong bảng tin"
|
||||
flagShowTimelineRepliesDescription: "Hiện lượt trả lời của người bạn theo dõi trên tút của những người khác."
|
||||
autoAcceptFollowed: "Tự động phê duyệt theo dõi từ những người mà bạn đang theo dõi"
|
||||
addAccount: "Thêm tài khoản"
|
||||
reloadAccountsList: "Cập nhật danh sách tài khoản"
|
||||
loginFailed: "Đăng nhập không thành công"
|
||||
showOnRemote: "Truy cập trang của người này"
|
||||
general: "Tổng quan"
|
||||
@@ -274,10 +259,8 @@ noMoreHistory: "Không còn gì để đọc"
|
||||
startMessaging: "Bắt đầu trò chuyện"
|
||||
nUsersRead: "đọc bởi {n}"
|
||||
agreeTo: "Tôi đồng ý {0}"
|
||||
agree: "Đồng ý"
|
||||
agreeBelow: "Đồng ý với nội dung dưới đây"
|
||||
basicNotesBeforeCreateAccount: "Những điều cơ bản cần chú ý "
|
||||
termsOfService: "Điều khoản và Điều kiện"
|
||||
start: "Bắt đầu"
|
||||
home: "Trang chính"
|
||||
remoteUserCaution: "Vì người dùng này ở máy chủ khác, thông tin hiển thị có thể không đầy đủ."
|
||||
@@ -320,7 +303,7 @@ copyUrl: "Sao chép URL"
|
||||
rename: "Đổi tên"
|
||||
avatar: "Ảnh đại diện"
|
||||
banner: "Ảnh bìa"
|
||||
displayOfSensitiveMedia: "Hiển thị nội dung nhạy cảm (NSFW)"
|
||||
nsfw: "Nhạy cảm"
|
||||
whenServerDisconnected: "Khi mất kết nối tới máy chủ"
|
||||
disconnectedFromServer: "Mất kết nối tới máy chủ"
|
||||
reload: "Tải lại"
|
||||
@@ -355,6 +338,7 @@ invite: "Mời"
|
||||
driveCapacityPerLocalAccount: "Dung lượng ổ đĩa tối đa cho mỗi người dùng"
|
||||
driveCapacityPerRemoteAccount: "Dung lượng ổ đĩa tối đa cho mỗi người dùng từ xa"
|
||||
inMb: "Tính bằng MB"
|
||||
iconUrl: "URL Icon"
|
||||
bannerUrl: "URL Ảnh bìa"
|
||||
backgroundImageUrl: "URL Ảnh nền"
|
||||
basicInfo: "Thông tin cơ bản"
|
||||
@@ -368,8 +352,6 @@ hcaptcha: "hCaptcha"
|
||||
enableHcaptcha: "Bật hCaptcha"
|
||||
hcaptchaSiteKey: "Khóa của trang"
|
||||
hcaptchaSecretKey: "Khóa bí mật"
|
||||
mcaptchaSiteKey: "Khóa của trang"
|
||||
mcaptchaSecretKey: "Khóa bí mật"
|
||||
recaptcha: "reCAPTCHA"
|
||||
enableRecaptcha: "Bật reCAPTCHA"
|
||||
recaptchaSiteKey: "Khóa của trang"
|
||||
@@ -412,13 +394,10 @@ aboutMisskey: "Về Misskey"
|
||||
administrator: "Quản trị viên"
|
||||
token: "Token"
|
||||
2fa: "Xác thực 2 yếu tố"
|
||||
setupOf2fa: "Thiết lập xác thực 2 yếu tố"
|
||||
totp: "Ứng dụng xác thực"
|
||||
totpDescription: "Nhắn mã OTP bằng ứng dụng xác thực"
|
||||
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"
|
||||
nUsersMentioned: "Dùng bởi {n} người"
|
||||
securityKeyAndPasskey: "Mã bảo mật・Passkey"
|
||||
securityKey: "Khóa bảo mật"
|
||||
@@ -434,6 +413,7 @@ share: "Chia sẻ"
|
||||
notFound: "Không tìm thấy"
|
||||
notFoundDescription: "Không tìm thấy trang nào tương ứng với URL này."
|
||||
uploadFolder: "Thư mục tải lên mặc định"
|
||||
cacheClear: "Xóa bộ nhớ đệm"
|
||||
markAsReadAllNotifications: "Đánh dấu tất cả các thông báo là đã đọc"
|
||||
markAsReadAllUnreadNotes: "Đánh dấu tất cả các tút là đã đọc"
|
||||
markAsReadAllTalkMessages: "Đánh dấu tất cả các tin nhắn là đã đọc"
|
||||
@@ -477,7 +457,6 @@ 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"
|
||||
enableAdvancedMfm: "Xem bài MFM chất lượng cao."
|
||||
@@ -490,7 +469,6 @@ createAccount: "Tạo tài khoản"
|
||||
existingAccount: "Tài khoản hiện có"
|
||||
regenerate: "Tạo lại"
|
||||
fontSize: "Cỡ chữ"
|
||||
limitTo: "Giới hạn tỷ lệ {x}"
|
||||
noFollowRequests: "Bạn không có yêu cầu theo dõi nào"
|
||||
openImageInNewTab: "Mở ảnh trong tab mới"
|
||||
dashboard: "Trang chính"
|
||||
@@ -527,7 +505,6 @@ objectStorageSetPublicRead: "Đặt \"public-read\" khi tải lên"
|
||||
serverLogs: "Nhật ký máy chủ"
|
||||
deleteAll: "Xóa tất cả"
|
||||
showFixedPostForm: "Hiện khung soạn tút ở phía trên bảng tin"
|
||||
showFixedPostFormInChannel: "Hiển thị mẫu bài đăng ở phía trên bản tin"
|
||||
newNoteRecived: "Đã nhận tút mới"
|
||||
sounds: "Âm thanh"
|
||||
sound: "Âm thanh"
|
||||
@@ -565,14 +542,9 @@ userSuspended: "Người này đã bị vô hiệu hóa."
|
||||
userSilenced: "Người này đã bị ẩn"
|
||||
yourAccountSuspendedTitle: "Tài khoản bị vô hiệu hóa"
|
||||
yourAccountSuspendedDescription: "Tài khoản này đã bị vô hiệu hóa do vi phạm quy tắc máy chủ hoặc điều tương tự. Liên hệ với quản trị viên nếu bạn muốn biết lý do chi tiết hơn. Vui lòng không tạo tài khoản mới."
|
||||
tokenRevoked: "Token đã bị từ chối"
|
||||
tokenRevokedDescription: "Phiên đăng nhập đã hết hạn. Vui lòng đăng nhập lại."
|
||||
accountDeleted: "Tài khoản đã bị xóa"
|
||||
accountDeletedDescription: "Tài khoản này đã bị xóa."
|
||||
menu: "Menu"
|
||||
divider: "Phân chia"
|
||||
addItem: "Thêm mục"
|
||||
rearrange: "Sắp xếp lại"
|
||||
relays: "Chuyển tiếp"
|
||||
addRelay: "Thêm chuyển tiếp"
|
||||
inboxUrl: "URL Hộp thư đến"
|
||||
@@ -682,7 +654,6 @@ createNewClip: "Tạo một ghim mới"
|
||||
unclip: "Bỏ ghim"
|
||||
confirmToUnclipAlreadyClippedNote: "Bài đăng này là một phần của \"{name}\" ghim. Bạn có muốn bỏ khỏi ghim?"
|
||||
public: "Công khai"
|
||||
private: "Riêng tư"
|
||||
i18nInfo: "Misskey đang được các tình nguyện viên dịch sang nhiều thứ tiếng khác nhau. Bạn có thể hỗ trợ tại {link}."
|
||||
manageAccessTokens: "Tạo mã truy cập"
|
||||
accountInfo: "Thông tin tài khoản"
|
||||
@@ -717,8 +688,6 @@ contact: "Liên hệ"
|
||||
useSystemFont: "Dùng phông chữ mặc định của hệ thống"
|
||||
clips: "Lưu bài viết"
|
||||
experimentalFeatures: "Tính năng thử nghiệm"
|
||||
experimental: "Thử nghiệm"
|
||||
thisIsExperimentalFeature: "Tính năng này đang trong quá trình thử nghiệm. Tính năng có thể không hoạt động, hoặc đặc tính kỹ thuật có thể bị thay đổi sau này."
|
||||
developer: "Nhà phát triển"
|
||||
makeExplorable: "Không hiện tôi trong \"Khám phá\""
|
||||
makeExplorableDescription: "Nếu bạn tắt, tài khoản của bạn sẽ không hiện trong mục \"Khám phá\"."
|
||||
@@ -803,7 +772,6 @@ noMaintainerInformationWarning: "Chưa thiết lập thông tin vận hành."
|
||||
noBotProtectionWarning: "Bảo vệ Bot chưa thiết lập."
|
||||
configure: "Thiết lập"
|
||||
postToGallery: "Tạo tút có ảnh"
|
||||
postToHashtag: "Đăng bài với hashtag này"
|
||||
gallery: "Thư viện ảnh"
|
||||
recentPosts: "Tút gần đây"
|
||||
popularPosts: "Tút được xem nhiều nhất"
|
||||
@@ -837,7 +805,6 @@ translatedFrom: "Dịch từ {x}"
|
||||
accountDeletionInProgress: "Đang xử lý việc xóa tài khoản"
|
||||
usernameInfo: "Bạn có thể sử dụng chữ cái (a ~ z, A ~ Z), chữ số (0 ~ 9) hoặc dấu gạch dưới (_). Tên người dùng không thể thay đổi sau này."
|
||||
aiChanMode: "Chế độ Ai"
|
||||
devMode: "Chế độ dành cho nhà phát triển"
|
||||
keepCw: "Giữ cảnh báo nội dung"
|
||||
pubSub: "Tài khoản Chính/Phụ"
|
||||
lastCommunication: "Lần giao tiếp cuối"
|
||||
@@ -847,8 +814,6 @@ breakFollow: "Xóa người theo dõi"
|
||||
breakFollowConfirm: "Bạn bỏ theo dõi tài khoản này không?"
|
||||
itsOn: "Đã bật"
|
||||
itsOff: "Đã tắt"
|
||||
on: "Bật"
|
||||
off: "Tắt"
|
||||
emailRequiredForSignup: "Yêu cầu địa chỉ email khi đăng ký"
|
||||
unread: "Chưa đọc"
|
||||
filter: "Bộ lọc"
|
||||
@@ -859,6 +824,8 @@ makeReactionsPublicDescription: "Điều này sẽ hiển thị công khai danh
|
||||
classic: "Cổ điển"
|
||||
muteThread: "Không quan tâm nữa"
|
||||
unmuteThread: "Quan tâm tút này"
|
||||
ffVisibility: "Hiển thị Theo dõi/Người theo dõi"
|
||||
ffVisibilityDescription: "Quyết định ai có thể xem những người bạn theo dõi và những người theo dõi bạn."
|
||||
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."
|
||||
@@ -891,7 +858,6 @@ failedToFetchAccountInformation: "Không thể lấy thông tin tài khoản"
|
||||
rateLimitExceeded: "Giới hạn quá mức"
|
||||
cropImage: "Cắt hình ảnh"
|
||||
cropImageAsk: "Bạn có muốn cắt ảnh này?"
|
||||
cropYes: "Cắt"
|
||||
cropNo: "Để nguyên"
|
||||
file: "Tập tin"
|
||||
recentNHours: "{n}h trước"
|
||||
@@ -927,7 +893,6 @@ remoteOnly: "Chỉ máy chủ từ xa"
|
||||
failedToUpload: "Tải lên thất bại"
|
||||
cannotUploadBecauseInappropriate: "Không thể tải lên tập tin này vì các phần của tập tin đã được phát hiện có khả năng là NSFW."
|
||||
cannotUploadBecauseNoFreeSpace: "Tải lên không thành công do thiếu dung lượng Drive."
|
||||
cannotUploadBecauseExceedsFileSizeLimit: "Không thể tải lên tập tin vì kích thước quá lớn."
|
||||
beta: "Beta"
|
||||
enableAutoSensitive: "Tự động đánh dấu NSFW"
|
||||
enableAutoSensitiveDescription: "Cho phép tự động phát hiện và đánh dấu media NSFW thông qua học máy, nếu có thể. Ngay cả khi tùy chọn này bị tắt, nó vẫn có thể được bật trên toàn máy chủ."
|
||||
@@ -940,11 +905,9 @@ pushNotification: "Thông báo đẩy"
|
||||
subscribePushNotification: "Bật thông báo đẩy"
|
||||
unsubscribePushNotification: "Tắt thông báo đẩy"
|
||||
pushNotificationAlreadySubscribed: "Đang bật thông báo đẩy"
|
||||
pushNotificationNotSupported: "Trình duyệt của bạn không hỗ trợ thông báo đẩy."
|
||||
sendPushNotificationReadMessage: "Xóa thông báo đẩy sau khi đọc thông báo hay tin nhắn"
|
||||
sendPushNotificationReadMessageCaption: "Thông báo như {emptyPushNotificationMessage} sẽ hiển thị trong giây phút. Tiêu tốn pin của máy bạn có thể tăng lên hơn nữa."
|
||||
windowMaximize: "Phóng to"
|
||||
windowMinimize: "Thu nhỏ tối đa"
|
||||
windowRestore: "Khôi phục"
|
||||
caption: "Mô tả"
|
||||
loggedInAsBot: "Đang đăng nhập bằng tài khoản Bot"
|
||||
@@ -961,22 +924,12 @@ didYouLikeMisskey: "Bạn có ưa thích Mískey không?"
|
||||
pleaseDonate: "Misskey là phần mềm miễn phí mà {host} đang sử dụng. Xin mong bạn quyên góp cho chúng tôi để chúng tôi có thể tiếp tục phát triển dịch vụ này. Xin cảm ơn!!"
|
||||
roles: "Vai trò"
|
||||
role: "Vai trò"
|
||||
noRole: "Bạn chưa được cấp quyền."
|
||||
normalUser: "Người dùng bình thường"
|
||||
undefined: "Chưa xác định"
|
||||
assign: "Phân công"
|
||||
unassign: "Hủy phân công"
|
||||
color: "Màu sắc"
|
||||
manageCustomEmojis: "Quản lý CustomEmoji"
|
||||
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."
|
||||
invalidParamError: "Lỗi tham số"
|
||||
invalidParamErrorDescription: "Có vấn đề với các tham số được request. Thông thường, đây là do bug, nhưng cũng có thể do bạn đã nhập vào quá nhiều ký tự."
|
||||
permissionDeniedError: "Thao tác bị từ chối"
|
||||
permissionDeniedErrorDescription: "Tài khoản này không có đủ quyền hạn để thực hiện thao tác này."
|
||||
preset: "Mẫu thiết lập"
|
||||
selectFromPresets: "Chọn từ mẫu"
|
||||
achievements: "Thành tích"
|
||||
gotInvalidResponseError: "Không nhận được trả lời chủ máy"
|
||||
gotInvalidResponseErrorDescription: "Chủ máy có lẻ ngừng hoạt động hoặc bảo trí. Thử lại sau một lát nữa. "
|
||||
@@ -991,96 +944,8 @@ 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"
|
||||
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."
|
||||
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"
|
||||
license: "Giấy phép"
|
||||
unfavoriteConfirm: "Bạn thực sự muốn xoá khỏi mục yêu thích?"
|
||||
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"
|
||||
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:"
|
||||
accountMovedShort: "Tài khoản này đã được chuyển"
|
||||
operationForbidden: "Thao tác này không thể thực hiện"
|
||||
forceShowAds: "Luôn hiện quảng cáo"
|
||||
notificationDisplay: "Thông báo"
|
||||
leftTop: "Phía trên bên tráí"
|
||||
rightTop: "Phía trên bên phải"
|
||||
leftBottom: "Phía dưới bên trái"
|
||||
rightBottom: "Phía dưới bên phải"
|
||||
stackAxis: "Hướng chồng"
|
||||
vertical: "Dọc"
|
||||
horizontal: "Thanh bên"
|
||||
position: "Vị trí"
|
||||
serverRules: "Luật của máy chủ"
|
||||
youFollowing: "Đang theo dõi"
|
||||
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."
|
||||
expirationDate: "Ngày hết hạn"
|
||||
noExpirationDate: "Vô thời hạn"
|
||||
waitingForMailAuth: "Đang chờ xác nhận email"
|
||||
unused: "Chưa được sử dụng"
|
||||
used: "Đã được sử dụng"
|
||||
expired: "Đã hết hạn"
|
||||
doYouAgree: "Đồng ý?"
|
||||
iHaveReadXCarefullyAndAgree: "Tôi đã đọc và đồng ý với \"x\"."
|
||||
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."
|
||||
replies: "Trả lời"
|
||||
renotes: "Đăng lại"
|
||||
loadReplies: "Hiển thị các trả lời"
|
||||
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"
|
||||
flip: "Lật"
|
||||
lastNDays: "{n} ngày trước"
|
||||
_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ó."
|
||||
end: "Lưu trữ thông báo"
|
||||
tooManyActiveAnnouncementDescription: "Có quá nhiều thông báo sẽ làm trải nghiệm của người dùng tệ đi. Vui lòng lưu trữ những thông báo đã hết hiệu lực."
|
||||
readConfirmTitle: "Đánh dấu là đã đọc?"
|
||||
readConfirmText: "Điều này sẽ đánh dấu nội dung của \"{title}\" là đã đọc."
|
||||
_initialAccountSetting:
|
||||
accountCreated: "Tài khoản của bạn đã được tạo thành công!"
|
||||
letsStartAccountSetup: "Để bắt đầu, hãy cùng thiết lập tài khoản nhé."
|
||||
letsFillYourProfile: "Đầu tiên, hãy thiết lập hồ sơ của bạn."
|
||||
profileSetting: "Thiết lập hồ sơ"
|
||||
privacySetting: "Cài đặt quyền riêng tư"
|
||||
theseSettingsCanEditLater: "Bạn vẫn có thể thay đổi những cài đặt này."
|
||||
youCanEditMoreSettingsInSettingsPageLater: "Còn rất nhiều những cài đặt khác bạn có thể thay đổi ở trang \"Cài đặt\". Hãy nhớ ghé thăm trong lần sau nhé."
|
||||
followUsers: "Thử theo dõi một vài người mà bạn có thể thích để xây dựng dòng thời gian của mình."
|
||||
pushNotificationDescription: "Bật thông báo đẩy sẽ cho phép bạn nhận thông báo từ {name} trực tiếp từ thiết bị của bạn."
|
||||
initialAccountSettingCompleted: "Thiết lập tài khoản thành công!"
|
||||
haveFun: "Hãy tận hưởng {name} nhé!"
|
||||
skipAreYouSure: "Bạn thực sự muốn bỏ qua mục thiết lập tài khoản?"
|
||||
laterAreYouSure: "Bạn thực sự muốn thiết lập tài khoản vào lúc khác?"
|
||||
_serverSettings:
|
||||
iconUrl: "Biểu tượng URL"
|
||||
appIconResolutionMustBe: "Độ phân giải tối thiểu là {resolution}."
|
||||
manifestJsonOverride: "Ghi đè manifest.json"
|
||||
_accountMigration:
|
||||
moveFrom: "Chuyển một tài khoản khác vào tài khoản này"
|
||||
moveFromLabel: "Tài khoản gốc #{n}"
|
||||
moveTo: "Chuyển tài khoản này vào một tài khoản khác"
|
||||
moveCannotBeUndone: "Việc chuyển tài khoản không thể huỷ."
|
||||
moveAccountDescription: "Điều này sẽ chuyển tài khoản này sang một tài khoản khác.\n ・Những người theo dõi sẽ tự động được chuyển sang tài khoản mới\n ・Tài khoản này sẽ tự bỏ theo dõi những người mà bạn đã theo dõi trước đây\n ・Bạn sẽ không thể đăng tút mới, v.v trên tài khoản này\n\nDù việc chuyển người theo dõi được diễn ra tự động, bạn vẫn phải tự chuẩn bị một vài bước để chuyển danh sách những người dùng bạn đang theo dõi. Để làm vậy, vui lòng thực hiện việc xuất dữ liệu những người dùng đã theo dõi mà sau này bạn sẽ dùng để nhập vào tài khoản mới ở menu Cài đặt. Hành động tương tự áp dụng với danh sách những người dùng bị chặn hoặc tắt tiếng.\n\n(Điều này áp dụng cho phiên bản Misskey v13.12.0 và sau này. Các phần mềm ActivityPub khác , ví dụ như Mastodon, sẽ có thể hoạt động khác đi.)"
|
||||
startMigration: "Chuyển"
|
||||
movedAndCannotBeUndone: "\nTài khoản này đã được chuyển đi.\nViệc di chuyển tài khoản không thể bị huỷ bỏ."
|
||||
movedTo: "Tài khoản mới:"
|
||||
_achievements:
|
||||
earnedAt: "Ngày thu nhận"
|
||||
_types:
|
||||
@@ -1119,8 +984,6 @@ _achievements:
|
||||
title: "Hàng tinh đăng bài"
|
||||
description: "Đã đăng bài 50,000 lần rồi"
|
||||
_notes100000:
|
||||
title: "ALL YOUR NOTE ARE BELONG TO US"
|
||||
description: "Đăng 100,000 tút"
|
||||
flavor: "Liệu viết bài gì tầm này vậy? "
|
||||
_login3:
|
||||
title: "Sơ cấp I"
|
||||
@@ -1152,15 +1015,6 @@ _achievements:
|
||||
_login400:
|
||||
title: "Khách hàng thường xuyên cấp III"
|
||||
description: "Tổng số ngày đăng nhập đạt 400 ngày"
|
||||
_login1000:
|
||||
flavor: "Cảm ơn bạn đã sử dụng Misskey!"
|
||||
_noteFavorited1:
|
||||
title: "Nhà thiên văn học"
|
||||
_myNoteFavorited1:
|
||||
title: "Đi tìm những ngôi sao"
|
||||
_profileFilled:
|
||||
title: "Luôn sẵn sàng"
|
||||
description: "Thiết lập tài khoản của bạn"
|
||||
_markedAsCat:
|
||||
title: "Tôi là một con mèo"
|
||||
description: "Bật chế độ mèo"
|
||||
@@ -1186,18 +1040,8 @@ _achievements:
|
||||
_followers10:
|
||||
title: "FOLLOW ME!!"
|
||||
description: "Người theo dõi bạn vượt lên 10 người"
|
||||
_followers50:
|
||||
title: "Từng chút một"
|
||||
description: "Đạt được 50 lượt theo dõi"
|
||||
_followers100:
|
||||
title: "Người nổi tiếng"
|
||||
description: "Đạt được 100 lượt theo dõi"
|
||||
_followers300:
|
||||
title: "Vui lòng xếp thành hàng nào"
|
||||
description: "Đạt được 300 lượt theo dõi"
|
||||
_followers500:
|
||||
title: "Trạm phát sóng"
|
||||
description: "Đạt được 500 lượt theo dõi"
|
||||
_followers1000:
|
||||
title: "Người có tầm ảnh hưởng"
|
||||
description: "Người theo dõi bạn vượt lên 1000 người"
|
||||
@@ -1216,15 +1060,11 @@ _achievements:
|
||||
description: "Tìm thấy được những kho báu cất giấu"
|
||||
_client30min:
|
||||
title: "Giải lao xỉu"
|
||||
description: "Giữ Misskey mở trong ít nhất 30 phút"
|
||||
_client60min:
|
||||
description: "Giữ Misskey mở trong ít nhất 60 phút"
|
||||
_noteDeletedWithin1min:
|
||||
title: "Xem như không có gì đâu nha"
|
||||
_postedAtLateNight:
|
||||
title: "Loài ăn đêm"
|
||||
description: "Đăng bài trong đêm khuya "
|
||||
flavor: "Đến giờ đi ngủ rồi."
|
||||
_postedAt0min0sec:
|
||||
title: "Tín hiệu báo giờ"
|
||||
description: "Đăng bài vào 0 phút 0 giây"
|
||||
@@ -1255,8 +1095,6 @@ _achievements:
|
||||
_setNameToSyuilo:
|
||||
title: "Ngưỡng mộ với vị thần"
|
||||
description: "Đạt tên là syuilo"
|
||||
_passedSinceAccountCreated1:
|
||||
title: "Kỷ niệm một năm"
|
||||
_loggedInOnBirthday:
|
||||
title: "Sinh nhật vủi vẻ"
|
||||
description: "Đăng nhập vào ngày sinh"
|
||||
@@ -1267,7 +1105,6 @@ _achievements:
|
||||
_cookieClicked:
|
||||
flavor: "Bạn nhầm phầm mềm chứ?"
|
||||
_role:
|
||||
assignTarget: "Phân công"
|
||||
priority: "Ưu tiên"
|
||||
_priority:
|
||||
low: "Thấp"
|
||||
@@ -1342,7 +1179,6 @@ _plugin:
|
||||
install: "Cài đặt tiện ích"
|
||||
installWarn: "Vui lòng không cài đặt những tiện ích đáng ngờ."
|
||||
manage: "Quản lý plugin"
|
||||
viewSource: "Xem mã nguồn"
|
||||
_preferencesBackups:
|
||||
list: "Tạo sao lưu"
|
||||
saveNew: "Lưu bản sao lưu"
|
||||
@@ -1376,6 +1212,10 @@ _aboutMisskey:
|
||||
donate: "Ủng hộ Misskey"
|
||||
morePatrons: "Chúng tôi cũng trân trọng sự hỗ trợ của nhiều người đóng góp khác không được liệt kê ở đây. Cảm ơn! 🥰"
|
||||
patrons: "Người ủng hộ"
|
||||
_nsfw:
|
||||
respect: "Ẩn nội dung NSFW"
|
||||
ignore: "Hiện nội dung NSFW"
|
||||
force: "Ẩn mọi media"
|
||||
_instanceTicker:
|
||||
none: "Không hiển thị"
|
||||
remote: "Hiện cho người dùng từ máy chủ khác"
|
||||
@@ -1403,6 +1243,11 @@ _wordMute:
|
||||
muteWords: "Ẩn từ ngữ"
|
||||
muteWordsDescription: "Separate with spaces for an AND condition or with line breaks for an OR condition."
|
||||
muteWordsDescription2: "Bao quanh các từ khóa bằng dấu gạch chéo để sử dụng cụm từ thông dụng."
|
||||
softDescription: "Ẩn các tút phù hợp điều kiện đã đặt khỏi bảng tin."
|
||||
hardDescription: "Ngăn các tút đáp ứng các điều kiện đã đặt xuất hiện trên bảng tin. Lưu ý, những tút này sẽ không được thêm vào bảng tin ngay cả khi các điều kiện được thay đổi."
|
||||
soft: "Yếu"
|
||||
hard: "Mạnh"
|
||||
mutedNotes: "Những tút đã ẩn"
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "Thao tác này sẽ ẩn mọi tút/lượt đăng lại từ các máy chủ được liệt kê, bao gồm cả những tút dạng trả lời từ máy chủ bị ẩn."
|
||||
instanceMuteDescription2: "Tách bằng cách xuống dòng"
|
||||
@@ -1466,6 +1311,9 @@ _theme:
|
||||
infoFg: "Chữ thông tin"
|
||||
infoWarnBg: "Nền cảnh báo"
|
||||
infoWarnFg: "Chữ cảnh báo"
|
||||
cwBg: "Nền nút nội dung ẩn"
|
||||
cwFg: "Chữ nút nội dung ẩn"
|
||||
cwHoverBg: "Nền nút nội dung ẩn (Chạm)"
|
||||
toastBg: "Nền thông báo"
|
||||
toastFg: "Chữ thông báo"
|
||||
buttonBg: "Nền nút"
|
||||
@@ -1483,6 +1331,8 @@ _sfx:
|
||||
note: "Tút"
|
||||
noteMy: "Tút của tôi"
|
||||
notification: "Thông báo"
|
||||
chat: "Trò chuyện"
|
||||
chatBg: "Chat (Nền)"
|
||||
antenna: "Trạm phát sóng"
|
||||
channel: "Kênh"
|
||||
_ago:
|
||||
@@ -1503,19 +1353,13 @@ _time:
|
||||
day: "ngày"
|
||||
_2fa:
|
||||
alreadyRegistered: "Bạn đã đăng ký thiết bị xác minh 2 bước."
|
||||
registerTOTP: "Đăng ký ứng dụng xác thực"
|
||||
passwordToTOTP: "Nhắn mật mã"
|
||||
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"
|
||||
step2Url: "Bạn cũng có thể nhập URL này nếu sử dụng một chương trình máy tính:"
|
||||
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 đó."
|
||||
securityKeyNotSupported: "Trình duyệt của bạn không hỗ trợ khóa bảo mật"
|
||||
registerTOTPBeforeKey: "Vui lòng thiết lập một ứng dụng xác thực để đăng ký khóa bảo mật hoặc mật khẩu."
|
||||
securityKeyInfo: "Bên cạnh xác minh bằng vân tay hoặc mã PIN, bạn cũng có thể thiết lập xác minh thông qua khóa bảo mật phần cứng hỗ trợ FIDO2 để bảo mật hơn nữa cho tài khoản của mình."
|
||||
registerSecurityKey: "Tạo khóa bảo mật hoặc mã bảo mật"
|
||||
securityKeyName: "Nhập tên khóa bảo mật"
|
||||
tapSecurityKey: "Vui lòng làm theo hướng dẫn của trình duyệt để đăng ký mã bảo mật hoặc mã khóa"
|
||||
removeKey: "Xóa mã bảo mật"
|
||||
removeKeyConfirm: "Xóa bản sao lưu {name}?"
|
||||
renewTOTP: "Cài đặt lại ứng dụng xác thực"
|
||||
@@ -1672,7 +1516,6 @@ _profile:
|
||||
_exportOrImport:
|
||||
allNotes: "Toàn bộ tút"
|
||||
favoritedNotes: "Bài viết đã thích"
|
||||
clips: "Lưu bài viết"
|
||||
followingList: "Đang theo dõi"
|
||||
muteList: "Ẩn"
|
||||
blockingList: "Chặn"
|
||||
@@ -1839,17 +1682,5 @@ _dialog:
|
||||
charactersExceeded: "Bạn nhắn quá giới hạn ký tự!! Hiện nay {current} / giới hạn {max}"
|
||||
charactersBelow: "Bạn nhắn quá ít tối thiểu ký tự!! Hiện nay {current} / Tối thiểu {min}"
|
||||
_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"
|
||||
_moderationLogTypes:
|
||||
suspend: "Vô hiệu hóa"
|
||||
resetPassword: "Đặt lại mật khẩu"
|
||||
_reversi:
|
||||
total: "Tổng cộng"
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
1452
locales/zh-TW.yml
1452
locales/zh-TW.yml
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user