Compare commits
857 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d4c7ca76ac | ||
|
|
1a6aae944f | ||
|
|
71e0241c94 | ||
|
|
d838ef5b76 | ||
|
|
d90a5c9154 | ||
|
|
9b79a411e0 | ||
|
|
b8e0ec9edc | ||
|
|
57009057ae | ||
|
|
5db7b2e193 | ||
|
|
d994c84901 | ||
|
|
febfb97bb4 | ||
|
|
a6c5e62923 | ||
|
|
ac0390fec3 | ||
|
|
97b99867f2 | ||
|
|
a55d5516a6 | ||
|
|
b679163d01 | ||
|
|
76edcdbe45 | ||
|
|
d8d51519c4 | ||
|
|
3446969121 | ||
|
|
0e0c35a701 | ||
|
|
c9a6c9e20a | ||
|
|
3d2b982a94 | ||
|
|
6157d8331b | ||
|
|
3d0fc09fae | ||
|
|
b975751710 | ||
|
|
4530d40537 | ||
|
|
94e3ac9b72 | ||
|
|
e13fe97ebb | ||
|
|
4ad7632113 | ||
|
|
0709cac97f | ||
|
|
7dd4180fba | ||
|
|
558213490a | ||
|
|
78a69e3da8 | ||
|
|
140c78e5a7 | ||
|
|
a8e18e0e22 | ||
|
|
2a8bb23625 | ||
|
|
936a4d1bc4 | ||
|
|
69c34e8d00 | ||
|
|
1a2a190828 | ||
|
|
251cf1d76f | ||
|
|
52774bbe64 | ||
|
|
68a6758302 | ||
|
|
13e43a4f74 | ||
|
|
b7d62d09ec | ||
|
|
321ec18173 | ||
|
|
a44ac3306e | ||
|
|
951288ecf0 | ||
|
|
cc8a7dd588 | ||
|
|
813c52f51e | ||
|
|
be3298639d | ||
|
|
e8d2959717 | ||
|
|
e7680e08eb | ||
|
|
bd792d7661 | ||
|
|
4920983f23 | ||
|
|
2756f553c6 | ||
|
|
fc52e95ad0 | ||
|
|
5d1d6bc028 | ||
|
|
b106acac91 | ||
|
|
a5071db864 | ||
|
|
bae874eb45 | ||
|
|
60da17940d | ||
|
|
385eeed732 | ||
|
|
2e908758d8 | ||
|
|
a164f8ad95 | ||
|
|
372138dfea | ||
|
|
922a657c7e | ||
|
|
3409a51cca | ||
|
|
7174a55846 | ||
|
|
6656a59402 | ||
|
|
7612ead551 | ||
|
|
fa78fe665d | ||
|
|
c89aa7eb95 | ||
|
|
43f4c5b7cd | ||
|
|
2b6c566386 | ||
|
|
91ef328b6b | ||
|
|
5a9d9dc41d | ||
|
|
a48e503caa | ||
|
|
fe00cb9ad5 | ||
|
|
ed0fdaddbd | ||
|
|
893795a31d | ||
|
|
f1047f1ce5 | ||
|
|
9beddc941a | ||
|
|
3a6a01d2d6 | ||
|
|
e0e4bdbdbc | ||
|
|
b3daf79b6a | ||
|
|
81aa21915b | ||
|
|
5aadd80243 | ||
|
|
23350b1cbc | ||
|
|
daff0977cb | ||
|
|
c1e7d56ff8 | ||
|
|
61aef56f83 | ||
|
|
249f591403 | ||
|
|
36599c82d1 | ||
|
|
7615b1ea0a | ||
|
|
d8de9f8eba | ||
|
|
8c0e65ce6f | ||
|
|
9aa24c0552 | ||
|
|
47bf06f432 | ||
|
|
99d291c71b | ||
|
|
d51cafca74 | ||
|
|
7921f8cd43 | ||
|
|
1b8467d5e5 | ||
|
|
e13b2689b5 | ||
|
|
9c167acbd9 | ||
|
|
1bc531edbd | ||
|
|
b4d0db9202 | ||
|
|
bd2b681367 | ||
|
|
f0edf81cc4 | ||
|
|
e81ac05ba6 | ||
|
|
6279ce8f22 | ||
|
|
0fd20cf588 | ||
|
|
f2d55e7f60 | ||
|
|
963b0db3d3 | ||
|
|
aeca115a37 | ||
|
|
6f97142b59 | ||
|
|
b31d1ce61d | ||
|
|
b07cd37a16 | ||
|
|
69b74a46b9 | ||
|
|
882d829558 | ||
|
|
532821d503 | ||
|
|
522ce67498 | ||
|
|
0e046faf4a | ||
|
|
d9092dc81f | ||
|
|
92a4e90026 | ||
|
|
07dccad5b1 | ||
|
|
146b0d2889 | ||
|
|
388565fb10 | ||
|
|
da4ba51a74 | ||
|
|
1edcd136a4 | ||
|
|
9883c751da | ||
|
|
f78b28b995 | ||
|
|
54d40420ad | ||
|
|
ba1492f977 | ||
|
|
efd0368e56 | ||
|
|
a766a57af9 | ||
|
|
3bdd8a2d90 | ||
|
|
7ef1205f8b | ||
|
|
e8db63e788 | ||
|
|
0bcef2453c | ||
|
|
b9f549135c | ||
|
|
87b0017386 | ||
|
|
cc8ff556d4 | ||
|
|
021f74da54 | ||
|
|
f9389802d7 | ||
|
|
18dd172c97 | ||
|
|
1d5a54ff6f | ||
|
|
03e2c7eec6 | ||
|
|
0902727d1c | ||
|
|
496895634d | ||
|
|
9414e9e258 | ||
|
|
357528d139 | ||
|
|
c4efbdf4c7 | ||
|
|
fb4a921cd9 | ||
|
|
683b242215 | ||
|
|
a5660d6c82 | ||
|
|
f632ec50c1 | ||
|
|
a55d15214b | ||
|
|
f1709a2cc2 | ||
|
|
effa542958 | ||
|
|
e8bf742c87 | ||
|
|
2e6652edce | ||
|
|
230c204b48 | ||
|
|
3755c600b1 | ||
|
|
24513fc0a3 | ||
|
|
0a79a6564a | ||
|
|
562bb5842b | ||
|
|
ec3ca3032e | ||
|
|
890770c275 | ||
|
|
9ed58a1b4e | ||
|
|
08984be2fe | ||
|
|
e3ade148ca | ||
|
|
34c0eff89f | ||
|
|
40aba47a47 | ||
|
|
6736f51134 | ||
|
|
9d826d6e52 | ||
|
|
902d9bc7a5 | ||
|
|
b6c86e2845 | ||
|
|
34dffdfc8f | ||
|
|
a56f3f1d89 | ||
|
|
88dc4c83cb | ||
|
|
5a28dc0198 | ||
|
|
40d2650d49 | ||
|
|
545e83efb1 | ||
|
|
d4b00a5482 | ||
|
|
c2b1bbeec5 | ||
|
|
8c8f165a6e | ||
|
|
04553de230 | ||
|
|
2776934728 | ||
|
|
0064dbb010 | ||
|
|
d52e671adf | ||
|
|
6017dc2dff | ||
|
|
937f7cbd60 | ||
|
|
f8b3f66904 | ||
|
|
9d5701f35a | ||
|
|
dff65810c6 | ||
|
|
6752cf1d64 | ||
|
|
8336910a59 | ||
|
|
957a1149e0 | ||
|
|
e8719ff6e6 | ||
|
|
28b63298e5 | ||
|
|
dd4dee8095 | ||
|
|
c47818fed4 | ||
|
|
e53c383908 | ||
|
|
55c9c0436b | ||
|
|
66b79e5e24 | ||
|
|
514b830910 | ||
|
|
e4f799bf1d | ||
|
|
b383427d3d | ||
|
|
e969518139 | ||
|
|
113fe294bd | ||
|
|
a4d92f781f | ||
|
|
414cac49c3 | ||
|
|
95b157ac3e | ||
|
|
8e3d884081 | ||
|
|
9def6fcadd | ||
|
|
7837bd44fc | ||
|
|
a6c3663155 | ||
|
|
0b5afadbb8 | ||
|
|
43864f0da4 | ||
|
|
6a0d9d70ed | ||
|
|
63c6dce68e | ||
|
|
53422ffcb2 | ||
|
|
38ca514f53 | ||
|
|
caea0f0376 | ||
|
|
25a8b26977 | ||
|
|
bcaefe8d62 | ||
|
|
46f1e8c599 | ||
|
|
16230f320e | ||
|
|
ace6419aef | ||
|
|
77fb9eb2be | ||
|
|
aa7fc7c893 | ||
|
|
8fc170109f | ||
|
|
ad12d00d7e | ||
|
|
fa5ea45726 | ||
|
|
4b6c113251 | ||
|
|
3548290ff2 | ||
|
|
b165b90c40 | ||
|
|
4ffe9c908b | ||
|
|
a135f75e71 | ||
|
|
cbc61ba03d | ||
|
|
5aa58da918 | ||
|
|
b083430011 | ||
|
|
a8946b0404 | ||
|
|
0303bccc61 | ||
|
|
f3ce8564ea | ||
|
|
52c3f9e98c | ||
|
|
6c8b4184fe | ||
|
|
a0979f8435 | ||
|
|
faba21d003 | ||
|
|
d82c5dff71 | ||
|
|
59fbc5b054 | ||
|
|
2c1a7f4392 | ||
|
|
769e6182d8 | ||
|
|
88176a17a3 | ||
|
|
fc660e869f | ||
|
|
dc04869650 | ||
|
|
93c3f34813 | ||
|
|
1282eed192 | ||
|
|
962b3ca78e | ||
|
|
62d17c9266 | ||
|
|
f5b928a537 | ||
|
|
c8811894b5 | ||
|
|
e579b49228 | ||
|
|
9561908ad3 | ||
|
|
fac7ebf4f6 | ||
|
|
a0769d65e3 | ||
|
|
d17aa4b24e | ||
|
|
310371658b | ||
|
|
7ca073aafd | ||
|
|
7216d0fb1f | ||
|
|
22a9e950c7 | ||
|
|
6683d50bae | ||
|
|
8f26176273 | ||
|
|
9ea7d446e8 | ||
|
|
757312ba52 | ||
|
|
1675c473d4 | ||
|
|
3a3a5d4bfb | ||
|
|
4a41499c95 | ||
|
|
a1d1cb58e0 | ||
|
|
acb82fe7b6 | ||
|
|
b25df24cea | ||
|
|
39284eb9b2 | ||
|
|
31b0e552a2 | ||
|
|
c4a2a31cf3 | ||
|
|
4497ddb3f3 | ||
|
|
5e0eda9526 | ||
|
|
72b85fc09f | ||
|
|
6c27412c9c | ||
|
|
46bddfc9c2 | ||
|
|
56275bcfcb | ||
|
|
f35688bab8 | ||
|
|
93541f83c8 | ||
|
|
ea0d114833 | ||
|
|
7f6a3ec828 | ||
|
|
732804b6fa | ||
|
|
aba85b977d | ||
|
|
e6612f610c | ||
|
|
5a28632af7 | ||
|
|
4099db0d42 | ||
|
|
9d50a06d9c | ||
|
|
dd7bf9b2a3 | ||
|
|
c463284c2f | ||
|
|
c1d728a616 | ||
|
|
e43c9c0e21 | ||
|
|
15cac10d7b | ||
|
|
49958ca03f | ||
|
|
280dbe9853 | ||
|
|
bf964ee969 | ||
|
|
61dcd51888 | ||
|
|
5448c22031 | ||
|
|
27768081e2 | ||
|
|
c3140f57b9 | ||
|
|
7275bc6d3b | ||
|
|
485f2f460e | ||
|
|
336912e442 | ||
|
|
dd9c94e47e | ||
|
|
055863144d | ||
|
|
0bf602bae6 | ||
|
|
6fc28d1df7 | ||
|
|
2ef795aba8 | ||
|
|
1d2c50fc26 | ||
|
|
cef8aa5e7a | ||
|
|
edf3e75344 | ||
|
|
62835c6011 | ||
|
|
60fb22cb3c | ||
|
|
20dea3a793 | ||
|
|
aba37ae701 | ||
|
|
2c6e6275aa | ||
|
|
20ef362854 | ||
|
|
4692aa8d9b | ||
|
|
f7b6dc08f7 | ||
|
|
7dfe7005e0 | ||
|
|
b91de4ac12 | ||
|
|
d5205d7328 | ||
|
|
f44ce535fa | ||
|
|
7177fd27c8 | ||
|
|
cf304f88d4 | ||
|
|
dff1d84031 | ||
|
|
96bc17aa10 | ||
|
|
41ba06a5e6 | ||
|
|
d7ac0418d7 | ||
|
|
f4319a9c01 | ||
|
|
f4c4d53bbb | ||
|
|
0ed43e1bdf | ||
|
|
d25bd876cb | ||
|
|
b9782397c2 | ||
|
|
ea0abc9f71 | ||
|
|
27d16c6a12 | ||
|
|
ede70d354e | ||
|
|
66fa583f6e | ||
|
|
77bcb58f12 | ||
|
|
61036e3a70 | ||
|
|
bcd886c4f5 | ||
|
|
4d868aaf1f | ||
|
|
80ea747db6 | ||
|
|
960f29ce81 | ||
|
|
20ee57931f | ||
|
|
71ba72e796 | ||
|
|
9835945ee1 | ||
|
|
4f2d52697d | ||
|
|
46c258d77a | ||
|
|
3b5b3cf521 | ||
|
|
5e0bdd8a78 | ||
|
|
b299988bb5 | ||
|
|
e26bec6ab4 | ||
|
|
e9955e01d6 | ||
|
|
1974d8f58b | ||
|
|
08c0be11b2 | ||
|
|
87c7058494 | ||
|
|
b92addffa9 | ||
|
|
e8b49df842 | ||
|
|
18fd39b335 | ||
|
|
8a11322802 | ||
|
|
31929dad61 | ||
|
|
4a41d2fddc | ||
|
|
4c65b0cd6f | ||
|
|
3e89dc603d | ||
|
|
2a1def3cce | ||
|
|
938fe05fef | ||
|
|
5db5bbd1cd | ||
|
|
ba7e05837c | ||
|
|
9dd06a7621 | ||
|
|
2f4434b0d8 | ||
|
|
350328770b | ||
|
|
17e1b49bff | ||
|
|
266c31981d | ||
|
|
803fb0898a | ||
|
|
01983da514 | ||
|
|
6f473aa64a | ||
|
|
574747b9d4 | ||
|
|
dff1122bd5 | ||
|
|
43cb12930a | ||
|
|
8129d4dc23 | ||
|
|
9b780dff04 | ||
|
|
11a0ef485b | ||
|
|
83b2aa72b1 | ||
|
|
c71b24987d | ||
|
|
78d22dbd22 | ||
|
|
8961dab137 | ||
|
|
bcc549fd8e | ||
|
|
5a6c3fc11c | ||
|
|
7d730f676d | ||
|
|
6bda571660 | ||
|
|
d3c7129e1f | ||
|
|
3709ba95cd | ||
|
|
4162981081 | ||
|
|
7b7359fbdc | ||
|
|
70c01c52a8 | ||
|
|
443006c868 | ||
|
|
7c1db1fea5 | ||
|
|
7c2b704bef | ||
|
|
368c3f1e29 | ||
|
|
dd39d6ea37 | ||
|
|
ef618b2431 | ||
|
|
861302f0fd | ||
|
|
f014b7ae0e | ||
|
|
00b2d89f1a | ||
|
|
5410efe9ca | ||
|
|
1d814ba0e1 | ||
|
|
c107333f56 | ||
|
|
9595a56346 | ||
|
|
06707705bf | ||
|
|
68ee9a008e | ||
|
|
3a035c481e | ||
|
|
23a0aead9f | ||
|
|
6cd41f9860 | ||
|
|
baf861ac79 | ||
|
|
0ae1190c08 | ||
|
|
d3b3426ebe | ||
|
|
4982ea8f14 | ||
|
|
3be89e9702 | ||
|
|
4275af2324 | ||
|
|
84d42be090 | ||
|
|
c4c7783691 | ||
|
|
d6dba7fd71 | ||
|
|
30b1b1a5ed | ||
|
|
90b6688057 | ||
|
|
b536ee4dcd | ||
|
|
11101a6aca | ||
|
|
b4a3e5aa4f | ||
|
|
874c0eae6a | ||
|
|
9950b6fbc6 | ||
|
|
42d6ed62f6 | ||
|
|
c7e8c27ce6 | ||
|
|
67792fcb5e | ||
|
|
353fc18f19 | ||
|
|
cf9e8ed39e | ||
|
|
beb1b570d4 | ||
|
|
ba1b5a8ede | ||
|
|
99d8d0a484 | ||
|
|
5891135ac1 | ||
|
|
c4f7491322 | ||
|
|
206b57b962 | ||
|
|
1b0e03704e | ||
|
|
8b71006fbe | ||
|
|
8f2f4b6d2d | ||
|
|
6e0c055faf | ||
|
|
893a3b527d | ||
|
|
fe13c17fcb | ||
|
|
5049870b6e | ||
|
|
ce576dea8f | ||
|
|
ceda3dd72a | ||
|
|
014b58cb40 | ||
|
|
b4859be098 | ||
|
|
df54da9510 | ||
|
|
b97f788d71 | ||
|
|
edd1baa9f4 | ||
|
|
4a23ebe534 | ||
|
|
64c1075b06 | ||
|
|
217e4ee39c | ||
|
|
7e2a7cdff8 | ||
|
|
e1fb4f23f0 | ||
|
|
452fb8e496 | ||
|
|
6758b0f133 | ||
|
|
35e509850f | ||
|
|
0868c3517f | ||
|
|
1cd839215b | ||
|
|
42be09ad33 | ||
|
|
bcb7ee8d2a | ||
|
|
3a5867b324 | ||
|
|
efe2a6be14 | ||
|
|
11f30b0444 | ||
|
|
75558add17 | ||
|
|
ca91709801 | ||
|
|
45b905df6a | ||
|
|
32a0cd4b13 | ||
|
|
0b2571858f | ||
|
|
08eb3851da | ||
|
|
0bd0fb9fbf | ||
|
|
9beab05a30 | ||
|
|
3b3ef20e0a | ||
|
|
3441acf56c | ||
|
|
189f9f6592 | ||
|
|
6071fc7077 | ||
|
|
2f215ea34c | ||
|
|
c44c777976 | ||
|
|
7d2f0a1f31 | ||
|
|
15eca04bc4 | ||
|
|
238c6a428b | ||
|
|
110eeb89f1 | ||
|
|
278e43e9ba | ||
|
|
d55277e57e | ||
|
|
f53a93ea13 | ||
|
|
a3e37294e5 | ||
|
|
05baa89508 | ||
|
|
80aa45372a | ||
|
|
a91f95451a | ||
|
|
122ef23e0f | ||
|
|
cd9d67389a | ||
|
|
52d6ec2138 | ||
|
|
a5725c1d04 | ||
|
|
db8ad3c035 | ||
|
|
a0957f2e50 | ||
|
|
301b8f5e13 | ||
|
|
7f6bb75f95 | ||
|
|
9be47df10e | ||
|
|
bec014da4a | ||
|
|
cefecd7903 | ||
|
|
52cb043185 | ||
|
|
3a440dd116 | ||
|
|
8ae1039c77 | ||
|
|
190eb0601f | ||
|
|
84931003ea | ||
|
|
2b0cb6d728 | ||
|
|
4ea7e711ce | ||
|
|
2a50997a75 | ||
|
|
d692d531d1 | ||
|
|
e325410649 | ||
|
|
eea2b97ae5 | ||
|
|
6b53e9ed29 | ||
|
|
9ae3e7bdab | ||
|
|
3905129eae | ||
|
|
6b4e417cc7 | ||
|
|
3040700005 | ||
|
|
170b1bb4cc | ||
|
|
da1a238be3 | ||
|
|
9c106022ae | ||
|
|
bab1dc1d97 | ||
|
|
3b30ad5404 | ||
|
|
27268fd6b7 | ||
|
|
00f9c824d1 | ||
|
|
40e177fa96 | ||
|
|
2f72c38516 | ||
|
|
2dc4696b0a | ||
|
|
723d5baed5 | ||
|
|
341838b502 | ||
|
|
72efa278b3 | ||
|
|
5fe9f2baee | ||
|
|
c7ebf6f990 | ||
|
|
9bf9519b8f | ||
|
|
6c57690359 | ||
|
|
3a03010ee2 | ||
|
|
ba4dcc40da | ||
|
|
1b0601b421 | ||
|
|
e2bf0067b2 | ||
|
|
6d004fde7c | ||
|
|
f35547f3b8 | ||
|
|
c34a278533 | ||
|
|
6d3408ae73 | ||
|
|
a6e7bbc306 | ||
|
|
d140548784 | ||
|
|
76569bfb08 | ||
|
|
bbcdf1bb8a | ||
|
|
6439a6c63f | ||
|
|
76fe1c21c3 | ||
|
|
4f99b98ed8 | ||
|
|
7cb38f5525 | ||
|
|
734277d9f6 | ||
|
|
960d4e2e7b | ||
|
|
33eb91c0f0 | ||
|
|
6f1e47f0b3 | ||
|
|
0a8488a78c | ||
|
|
57ab640221 | ||
|
|
3c4682782c | ||
|
|
dc820ffba6 | ||
|
|
e4c745bccd | ||
|
|
a05c94437c | ||
|
|
fdcc994291 | ||
|
|
f54363076c | ||
|
|
ec016e5a95 | ||
|
|
bbdb2496a4 | ||
|
|
b515cc90e9 | ||
|
|
bb92158dff | ||
|
|
c652add16a | ||
|
|
b8a7468c4a | ||
|
|
e220ef3e75 | ||
|
|
4bb4903ee5 | ||
|
|
9487840ae3 | ||
|
|
7e3a8d56e6 | ||
|
|
e909eac296 | ||
|
|
8dc7f28744 | ||
|
|
a4b1e8ca26 | ||
|
|
79b0cc6785 | ||
|
|
00b134ce1e | ||
|
|
b3fc4dc00f | ||
|
|
d06fbbe3ea | ||
|
|
28bfb45426 | ||
|
|
1c60a49c96 | ||
|
|
3ae8ff083b | ||
|
|
c12ccb2a15 | ||
|
|
e3b1d00e4c | ||
|
|
98795aad9a | ||
|
|
ca26edbfce | ||
|
|
3058e8f354 | ||
|
|
4c9b66b0f0 | ||
|
|
6eb9ba31bf | ||
|
|
5bbf4187e6 | ||
|
|
f2425f71c2 | ||
|
|
b0e00da2f7 | ||
|
|
215472cd17 | ||
|
|
072fd4455e | ||
|
|
2ed9e26a4f | ||
|
|
8a3e26cdb8 | ||
|
|
7301671962 | ||
|
|
0d0f25818e | ||
|
|
7850d68dc2 | ||
|
|
f0f5b32300 | ||
|
|
1ca0976e85 | ||
|
|
7fbfd17896 | ||
|
|
3d04f7db62 | ||
|
|
e301630c9d | ||
|
|
afbccaae41 | ||
|
|
893c01c207 | ||
|
|
41c80097ce | ||
|
|
250933fff3 | ||
|
|
bc9454f67c | ||
|
|
377a7fdf3e | ||
|
|
645f661911 | ||
|
|
db7c83c8ff | ||
|
|
97385db5b5 | ||
|
|
c69d57a064 | ||
|
|
a488d6e2d6 | ||
|
|
85e8b1fbf4 | ||
|
|
78763116c3 | ||
|
|
103fe8b91d | ||
|
|
311e67047d | ||
|
|
62d41023e1 | ||
|
|
5fac7c1718 | ||
|
|
ade01139ca | ||
|
|
5ea8e9c787 | ||
|
|
e5cfdbf372 | ||
|
|
d2cc5c3b63 | ||
|
|
7cdd90db09 | ||
|
|
aad1b8c12e | ||
|
|
2519abdd39 | ||
|
|
e8d0568a11 | ||
|
|
031287aebd | ||
|
|
b24de13a37 | ||
|
|
c113fdc20e | ||
|
|
1af1638e2b | ||
|
|
8c62aafa97 | ||
|
|
4de62220e3 | ||
|
|
e5d9381503 | ||
|
|
5621113d1f | ||
|
|
d906d90010 | ||
|
|
b836528b51 | ||
|
|
4b191c7f68 | ||
|
|
f9f70d5df4 | ||
|
|
50b809784f | ||
|
|
54ce19bd56 | ||
|
|
71210595d2 | ||
|
|
085325e65f | ||
|
|
e4c0c8869e | ||
|
|
405f98d6d1 | ||
|
|
870ab3d3b6 | ||
|
|
9ac2913afc | ||
|
|
171651484a | ||
|
|
bfadb4026d | ||
|
|
3940a9a447 | ||
|
|
714446fb46 | ||
|
|
e806f33f9f | ||
|
|
65ee1711e5 | ||
|
|
ef92578555 | ||
|
|
0352fd0acd | ||
|
|
fffce73d3e | ||
|
|
717f66b4a6 | ||
|
|
7dcea49be7 | ||
|
|
7c91915e50 | ||
|
|
895e80d794 | ||
|
|
be5714a9f1 | ||
|
|
1ba8374292 | ||
|
|
94154a1aa2 | ||
|
|
5ae576bad1 | ||
|
|
f9e6c84d00 | ||
|
|
3ab5d2e0e1 | ||
|
|
b8f60527f6 | ||
|
|
a83c3557fc | ||
|
|
a45abf858f | ||
|
|
a82eeb7e92 | ||
|
|
3781f07c49 | ||
|
|
990bc976de | ||
|
|
ff2fc2267d | ||
|
|
ec50240a03 | ||
|
|
bf00b59339 | ||
|
|
456b01590b | ||
|
|
5eeec0becb | ||
|
|
e5fcb2aea0 | ||
|
|
d717b1d404 | ||
|
|
2334b41375 | ||
|
|
6f6974a6ae | ||
|
|
0854f2e180 | ||
|
|
a0f8c7e94e | ||
|
|
1f5e3040ed | ||
|
|
6128e62751 | ||
|
|
7c6088b2b4 | ||
|
|
9450e567c6 | ||
|
|
c9c2e36540 | ||
|
|
fbfd3a60ed | ||
|
|
9b386fd50e | ||
|
|
db5a404081 | ||
|
|
3bffe605f7 | ||
|
|
4e92eb55cd | ||
|
|
6667ddbc26 | ||
|
|
16e4bb7f79 | ||
|
|
821182cad5 | ||
|
|
b3730e3373 | ||
|
|
741efa1a9a | ||
|
|
de1a7b4364 | ||
|
|
85cd647946 | ||
|
|
da7d1938c9 | ||
|
|
5a795c4ab2 | ||
|
|
95d4937e16 | ||
|
|
6bbc6a80b2 | ||
|
|
79d2374d8e | ||
|
|
e4601962d0 | ||
|
|
4398651841 | ||
|
|
42cd7c8a75 | ||
|
|
501379c82c | ||
|
|
92b45d1a9d | ||
|
|
3330c3f548 | ||
|
|
3552b1c900 | ||
|
|
428d27a27b | ||
|
|
4f6e387d49 | ||
|
|
01c0253c89 | ||
|
|
76fcf122f9 | ||
|
|
926ad23033 | ||
|
|
b956d63c46 | ||
|
|
1970927b5e | ||
|
|
3995ae0957 | ||
|
|
c2a840fa19 | ||
|
|
c7a6321a08 | ||
|
|
0c42c54b7a | ||
|
|
8b775c85f6 | ||
|
|
5c14ff661f | ||
|
|
160c1a3022 | ||
|
|
7017d3ae07 | ||
|
|
5eca0a31f7 | ||
|
|
44d53488e0 | ||
|
|
d731c7da13 | ||
|
|
225544e985 | ||
|
|
e2f7e82cac | ||
|
|
0be7bf93d9 | ||
|
|
75f9e6bdf5 | ||
|
|
8f6ea13696 | ||
|
|
f434b3a875 | ||
|
|
70b980d463 | ||
|
|
a59cf87374 | ||
|
|
c9a9d5dbfd | ||
|
|
e0480f4e01 | ||
|
|
d8cfd8f56d | ||
|
|
593d3e2d55 | ||
|
|
a79901b441 | ||
|
|
4c526f2837 | ||
|
|
3c28dd92ec | ||
|
|
d09af4754a | ||
|
|
44ab6cbc39 | ||
|
|
6c42db7589 | ||
|
|
20dfd2faca | ||
|
|
13696a85ee | ||
|
|
4632eecb76 | ||
|
|
44a3df0acf | ||
|
|
4ab96251f5 | ||
|
|
b795379417 | ||
|
|
aa9ba31675 | ||
|
|
ad66c8478a | ||
|
|
4ec64b4c57 | ||
|
|
2f0b75a882 | ||
|
|
912ee60781 | ||
|
|
67dacb7725 | ||
|
|
82f1fc6cda | ||
|
|
4d24741d48 | ||
|
|
931f17c589 | ||
|
|
ff898b4c20 | ||
|
|
7b507c8480 | ||
|
|
bb688f78fc | ||
|
|
a2a31236f6 | ||
|
|
0b191b4d0e | ||
|
|
2e97f29411 | ||
|
|
eb1ad54427 | ||
|
|
e4974392e5 | ||
|
|
4e0d43b45a | ||
|
|
78c185a05a | ||
|
|
fa124abbe2 | ||
|
|
f4fa3f031e | ||
|
|
3cc7a99d0f | ||
|
|
8bf9e87117 | ||
|
|
97e8ac1d27 | ||
|
|
45fb2ecb3a | ||
|
|
d5e80caac8 | ||
|
|
7ceea61170 | ||
|
|
a3ce65ee28 | ||
|
|
d6b7a048e4 | ||
|
|
f7c8e31b36 | ||
|
|
26c327145f | ||
|
|
b7afd07d6a | ||
|
|
eaff52548f | ||
|
|
76828adc54 | ||
|
|
198b0b3de3 | ||
|
|
3cdee2732a | ||
|
|
27a7bb7229 | ||
|
|
cf38a6d0a0 | ||
|
|
02c88f9b3b | ||
|
|
3ac1077b36 | ||
|
|
2b4f6abc15 | ||
|
|
7bd24348d2 | ||
|
|
c49ae672f2 | ||
|
|
2eb2cc7880 | ||
|
|
f2f3d4beec | ||
|
|
3fd1ea900a | ||
|
|
c815d11ed2 | ||
|
|
350151ca5b | ||
|
|
4339f9af29 | ||
|
|
b44227948d | ||
|
|
5dc8c8846d | ||
|
|
e1bee8adf3 | ||
|
|
b9ef750321 | ||
|
|
e05c0e7d37 | ||
|
|
a3eb0ddc4f | ||
|
|
da6e71f2e0 | ||
|
|
09e08e829d | ||
|
|
1b78ae6290 | ||
|
|
97f5ba0bc5 | ||
|
|
8e29ccdc7f | ||
|
|
4e48214068 | ||
|
|
1bd128d507 | ||
|
|
bfc1f8a25d | ||
|
|
6369d79aaf | ||
|
|
2df2cf0983 | ||
|
|
c93fe423ea | ||
|
|
ecac2990eb | ||
|
|
a483af1b08 | ||
|
|
01584a6bf9 | ||
|
|
443f967611 | ||
|
|
bf931f2c82 | ||
|
|
5b32b900e4 | ||
|
|
0bdcb15b3b | ||
|
|
1b316ab98b | ||
|
|
4cd79dd530 | ||
|
|
c204e0518f | ||
|
|
129d74b463 | ||
|
|
533540031b | ||
|
|
5ea0ccea22 | ||
|
|
d2c12af085 | ||
|
|
55368c2c38 | ||
|
|
aa020eedc3 | ||
|
|
e0874069bd | ||
|
|
90c8568a3f |
@@ -2,7 +2,7 @@
|
|||||||
# __MISSKEY_BEARER_TOKEN=
|
# __MISSKEY_BEARER_TOKEN=
|
||||||
# __MISSKEY_CAMPAIGN_ID=
|
# __MISSKEY_CAMPAIGN_ID=
|
||||||
# __MISSKEY_GITHUB_TOKEN=
|
# __MISSKEY_GITHUB_TOKEN=
|
||||||
# __MISSKEY_HEAD=acid-chicken:patch-autogen
|
# __MISSKEY_HEAD=syuilo:patch-autogen
|
||||||
# __MISSKEY_REPO=syuilo/misskey
|
# __MISSKEY_REPO=syuilo/misskey
|
||||||
# __MISSKEY_BRANCH=develop
|
# __MISSKEY_BRANCH=develop
|
||||||
test "$(curl -LSs -w '\n' -- "https://api.github.com/repos/$REPO/pulls?access_token=$__MISSKEY_GITHUB_TOKEN" | jq -r -f check_pr.jq | grep $__MISSKEY_HEAD)" && exit 1
|
test "$(curl -LSs -w '\n' -- "https://api.github.com/repos/$REPO/pulls?access_token=$__MISSKEY_GITHUB_TOKEN" | jq -r -f check_pr.jq | grep $__MISSKEY_HEAD)" && exit 1
|
||||||
|
|||||||
@@ -2,6 +2,11 @@ version: 2.1
|
|||||||
|
|
||||||
executors:
|
executors:
|
||||||
default:
|
default:
|
||||||
|
working_directory: /tmp/workspace
|
||||||
|
docker:
|
||||||
|
- image: misskey/ci:latest
|
||||||
|
- image: circleci/mongo:latest
|
||||||
|
with-redis:
|
||||||
working_directory: /tmp/workspace
|
working_directory: /tmp/workspace
|
||||||
docker:
|
docker:
|
||||||
- image: misskey/ci:latest
|
- image: misskey/ci:latest
|
||||||
@@ -11,41 +16,28 @@ executors:
|
|||||||
working_directory: /tmp/workspace
|
working_directory: /tmp/workspace
|
||||||
docker:
|
docker:
|
||||||
- image: docker:latest
|
- image: docker:latest
|
||||||
alpine:
|
|
||||||
working_directory: /tmp/workspace
|
|
||||||
docker:
|
|
||||||
- image: alpine:latest
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
ok:
|
|
||||||
executor: alpine
|
|
||||||
steps:
|
|
||||||
- run:
|
|
||||||
name: OK
|
|
||||||
command: |
|
|
||||||
echo -e '\033[0;32mOK\033[0;39m'
|
|
||||||
|
|
||||||
build:
|
build:
|
||||||
executor: default
|
executor: default
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run:
|
- run:
|
||||||
name: Ensure package-lock.json
|
name: Ensure yarn.lock
|
||||||
command: |
|
command: |
|
||||||
[ ! -e package-lock.json ] && echo '{}' > package-lock.json
|
touch yarn.lock
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
name: Restore npm package caches
|
name: Restore npm package caches
|
||||||
keys:
|
keys:
|
||||||
- npm-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "package-lock.json" }}-
|
- yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "yarn.lock" }}
|
||||||
- npm-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-
|
- yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-
|
||||||
- npm-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-
|
- yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-
|
||||||
- npm-v1-arch-{{ arch }}-
|
- yarn-v1-arch-{{ arch }}-
|
||||||
- npm-v1-
|
- yarn-v1-
|
||||||
- run:
|
- run:
|
||||||
name: Install Dependencies
|
name: Install Dependencies
|
||||||
command: |
|
command: |
|
||||||
npm install
|
yarn install
|
||||||
npm prune
|
|
||||||
- run:
|
- run:
|
||||||
name: Configure
|
name: Configure
|
||||||
command: |
|
command: |
|
||||||
@@ -54,27 +46,26 @@ jobs:
|
|||||||
- run:
|
- run:
|
||||||
name: Build
|
name: Build
|
||||||
command: |
|
command: |
|
||||||
node-gyp configure
|
yarn build
|
||||||
node-gyp build
|
touch yarn.lock
|
||||||
npm run build || (echo -e '\033[0;34mRebuild modules\033[0;39m' && ls -1A node_modules | grep '^[^@]' | xargs npm rebuild && ls -1A node_modules | grep '^@' | xargs -I%1 sh -c 'ls -1A node_modules/'%1' | xargs -P0 -I%2 npm rebuild node_modules/'%1'/%2' && npm run build)
|
|
||||||
ls -1ARl node_modules > ls
|
|
||||||
- save_cache:
|
- save_cache:
|
||||||
name: Cache npm packages
|
name: Cache npm packages
|
||||||
key: npm-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "package-lock.json" }}-ls-{{ checksum "ls" }}
|
key: yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "yarn.lock" }}
|
||||||
paths:
|
paths:
|
||||||
- node_modules
|
- node_modules
|
||||||
# - store_artifacts:
|
|
||||||
# path: built
|
|
||||||
- persist_to_workspace:
|
- persist_to_workspace:
|
||||||
root: .
|
root: .
|
||||||
paths:
|
paths:
|
||||||
- .
|
- .
|
||||||
test:
|
test:
|
||||||
parameters:
|
parameters:
|
||||||
without_redis:
|
executor:
|
||||||
type: string
|
type: string
|
||||||
default: ""
|
default: "default"
|
||||||
executor: default
|
without_redis:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
executor: <<parameters.executor>>
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: /tmp/workspace
|
at: /tmp/workspace
|
||||||
@@ -90,19 +81,18 @@ jobs:
|
|||||||
- run:
|
- run:
|
||||||
name: Test
|
name: Test
|
||||||
command: |
|
command: |
|
||||||
npm run test
|
yarn test
|
||||||
ls -1ARl node_modules > ls
|
touch yarn.lock
|
||||||
- save_cache:
|
- save_cache:
|
||||||
name: Cache npm packages
|
name: Cache npm packages
|
||||||
key: npm-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "package-lock.json" }}-ls-{{ checksum "ls" }}
|
key: yarn-v1-arch-{{ arch }}-env-{{ .Environment.variableName }}-package-{{ checksum "package.json" }}-lock-{{ checksum "yarn.lock" }}
|
||||||
paths:
|
paths:
|
||||||
- node_modules
|
- node_modules
|
||||||
|
|
||||||
docker:
|
docker:
|
||||||
parameters:
|
parameters:
|
||||||
with_deploy:
|
with_deploy:
|
||||||
type: string
|
type: boolean
|
||||||
default: ""
|
default: false
|
||||||
executor: docker
|
executor: docker
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
@@ -129,42 +119,76 @@ jobs:
|
|||||||
|
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
build-and-test:
|
nodejs:
|
||||||
jobs:
|
jobs:
|
||||||
- ok:
|
- hold:
|
||||||
|
name: manual-build-trigger
|
||||||
|
type: approval
|
||||||
filters:
|
filters:
|
||||||
branches:
|
branches:
|
||||||
only:
|
ignore: master
|
||||||
- l10n_develop
|
|
||||||
- imgbot
|
|
||||||
- build:
|
- build:
|
||||||
|
name: manual-build
|
||||||
|
requires:
|
||||||
|
- manual-build-trigger
|
||||||
filters:
|
filters:
|
||||||
branches:
|
branches:
|
||||||
ignore:
|
ignore: master
|
||||||
- l10n_develop
|
- build:
|
||||||
- imgbot
|
name: auto-build
|
||||||
- test:
|
|
||||||
requires:
|
|
||||||
- build
|
|
||||||
filters:
|
|
||||||
branches:
|
|
||||||
ignore:
|
|
||||||
# - master
|
|
||||||
- l10n_develop
|
|
||||||
- imgbot
|
|
||||||
- test:
|
|
||||||
without_redis: "true"
|
|
||||||
requires:
|
|
||||||
- build
|
|
||||||
filters:
|
filters:
|
||||||
branches:
|
branches:
|
||||||
only: master
|
only: master
|
||||||
# - docker:
|
- test:
|
||||||
# filters:
|
name: manual-test-with-redis
|
||||||
# branches:
|
executor: with-redis
|
||||||
# ignore: master
|
requires:
|
||||||
|
- manual-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
ignore: master
|
||||||
|
- test:
|
||||||
|
name: auto-test-without-redis
|
||||||
|
executor: with-redis
|
||||||
|
requires:
|
||||||
|
- auto-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: master
|
||||||
|
- test:
|
||||||
|
name: manual-test-with-redis
|
||||||
|
without_redis: true
|
||||||
|
requires:
|
||||||
|
- manual-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
ignore: master
|
||||||
|
- test:
|
||||||
|
name: auto-test-without-redis
|
||||||
|
without_redis: true
|
||||||
|
requires:
|
||||||
|
- auto-build
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only: master
|
||||||
|
docker:
|
||||||
|
jobs:
|
||||||
|
- hold:
|
||||||
|
name: manual-build-trigger
|
||||||
|
type: approval
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
ignore: master
|
||||||
- docker:
|
- docker:
|
||||||
with_deploy: "true"
|
name: manual-build
|
||||||
|
requires:
|
||||||
|
- manual-build-trigger
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
ignore: master
|
||||||
|
- docker:
|
||||||
|
name: auto-build
|
||||||
|
with_deploy: true
|
||||||
filters:
|
filters:
|
||||||
branches:
|
branches:
|
||||||
only: master
|
only: master
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ mongodb:
|
|||||||
db: misskey
|
db: misskey
|
||||||
user: syuilo
|
user: syuilo
|
||||||
pass: ''
|
pass: ''
|
||||||
|
drive:
|
||||||
|
storage: 'db'
|
||||||
redis:
|
redis:
|
||||||
host: localhost
|
host: localhost
|
||||||
port: 6379
|
port: 6379
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ mongodb:
|
|||||||
db: test-misskey
|
db: test-misskey
|
||||||
user: admin
|
user: admin
|
||||||
pass: ''
|
pass: ''
|
||||||
|
drive:
|
||||||
|
storage: 'db'
|
||||||
# __REDIS__
|
# __REDIS__
|
||||||
redis:
|
redis:
|
||||||
host: localhost
|
host: localhost
|
||||||
|
|||||||
@@ -108,5 +108,8 @@ autoAdmin: true
|
|||||||
# port: 9200
|
# port: 9200
|
||||||
# pass: null
|
# pass: null
|
||||||
|
|
||||||
|
# Whether disable HSTS
|
||||||
|
#disableHsts: true
|
||||||
|
|
||||||
# Clustering
|
# Clustering
|
||||||
#clusterLimit: 1
|
#clusterLimit: 1
|
||||||
|
|||||||
39
.github/CODEOWNERS
vendored
Normal file
39
.github/CODEOWNERS
vendored
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
# PATH OWNERS
|
||||||
|
/.autogen/ @acid-chicken
|
||||||
|
/.circleci/ @syuilo @acid-chicken
|
||||||
|
/.config/ @syuilo @AyaMorisawa @mei23 @acid-chicken
|
||||||
|
# /.config/mongo_initdb_example.js @khws4v1
|
||||||
|
/.github/ @syuilo @AyaMorisawa @acid-chicken
|
||||||
|
/.vscode/ @acid-chicken
|
||||||
|
/assets/ @syuilo # @tamaina
|
||||||
|
/cli/ @syuilo
|
||||||
|
/docs/ @syuilo
|
||||||
|
/docs/*.en.md @AyaMorisawa # @skid9000
|
||||||
|
# /docs/*.fr.md @BoFFire
|
||||||
|
# /docs/docker.*.md @khws4v1
|
||||||
|
/locales/ @syuilo
|
||||||
|
/src/ @syuilo @AyaMorisawa @mei23 @acid-chicken
|
||||||
|
# /src/crypto_key.cc @akihikodaki
|
||||||
|
# /src/crypto_key.d.ts @akihikodaki
|
||||||
|
/.dockerignore @syuilo # @khws4v1
|
||||||
|
/.editorconfig @syuilo @AyaMorisawa
|
||||||
|
/.eslintrc @syuilo
|
||||||
|
/.gitattributes @syuilo
|
||||||
|
/.gitignore @syuilo
|
||||||
|
/.npmrc @syuilo
|
||||||
|
/.vsls.json @AyaMorisawa
|
||||||
|
/CHANGELOG.md @syuilo
|
||||||
|
/CODE_OF_CONDUCT.md @syuilo
|
||||||
|
/CONTRIBUTING.md @syuilo
|
||||||
|
/Dockerfile @syuilo @AyaMorisawa @acid-chicken # @khws4v1
|
||||||
|
/LICENSE @syuilo
|
||||||
|
/README.md @syuilo @AyaMorisawa @acid-chicken # @nikhiljha
|
||||||
|
# /binding.gyp @akihikodaki
|
||||||
|
/crowdin.yml @syuilo
|
||||||
|
# /docker-compose.yml @khws4v1
|
||||||
|
/gulpfile.ts @syuilo @AyaMorisawa
|
||||||
|
/jsconfig.json @syuilo @AyaMorisawa
|
||||||
|
/package.json @syuilo @AyaMorisawa
|
||||||
|
/tsconfig.json @syuilo @AyaMorisawa
|
||||||
|
/tslint.json @syuilo @AyaMorisawa
|
||||||
|
/webpack.config.ts @syuilo @AyaMorisawa
|
||||||
@@ -1,22 +1,30 @@
|
|||||||
---
|
---
|
||||||
name: Bug Report
|
name: Bug Report
|
||||||
about: Create a report to help us improve
|
about: Create a report to help us improve
|
||||||
|
title: ''
|
||||||
|
labels: bug
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Summary
|
# Summary
|
||||||
|
|
||||||
<!-- Tell us what the bug is -->
|
<!-- Tell us what the bug is -->
|
||||||
|
|
||||||
# Expected Behavior
|
# Expected Behavior
|
||||||
|
|
||||||
<!--- Tell us what should happen -->
|
<!--- Tell us what should happen -->
|
||||||
|
|
||||||
# Actual Behavior
|
# Actual Behavior
|
||||||
|
|
||||||
<!--- Tell us what happens instead of the expected behavior -->
|
<!--- Tell us what happens instead of the expected behavior -->
|
||||||
|
|
||||||
# Steps to Reproduce
|
# Steps to Reproduce
|
||||||
|
|
||||||
1.
|
1.
|
||||||
2.
|
2.
|
||||||
3.
|
3.
|
||||||
|
|
||||||
# Environment
|
# Environment
|
||||||
|
|
||||||
<!-- Tell us where on the platform it happens -->
|
<!-- Tell us where on the platform it happens -->
|
||||||
<!-- e.g. desktop or mobile version, your browser, your OS -->
|
|
||||||
31
.github/ISSUE_TEMPLATE/02_client-side-bug-report.md
vendored
Normal file
31
.github/ISSUE_TEMPLATE/02_client-side-bug-report.md
vendored
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
name: Client-side Bug Report
|
||||||
|
about: Create a report to help us improve
|
||||||
|
title: ''
|
||||||
|
labels: bug, client-side
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 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 -->
|
||||||
|
|
||||||
|
# Steps to Reproduce
|
||||||
|
|
||||||
|
1.
|
||||||
|
2.
|
||||||
|
3.
|
||||||
|
|
||||||
|
# Environment
|
||||||
|
|
||||||
|
<!-- Tell us where on the platform it happens -->
|
||||||
|
<!-- e.g. desktop or mobile version, your browser, your OS -->
|
||||||
31
.github/ISSUE_TEMPLATE/03_server-side-bug-report.md
vendored
Normal file
31
.github/ISSUE_TEMPLATE/03_server-side-bug-report.md
vendored
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
name: Server-side Bug Report
|
||||||
|
about: Create a report to help us improve
|
||||||
|
title: ''
|
||||||
|
labels: bug, server-side
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 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 -->
|
||||||
|
|
||||||
|
# Steps to Reproduce
|
||||||
|
|
||||||
|
1.
|
||||||
|
2.
|
||||||
|
3.
|
||||||
|
|
||||||
|
# Environment
|
||||||
|
|
||||||
|
<!-- Tell us where on the platform it happens -->
|
||||||
|
<!-- e.g. your Node.js version, your OS -->
|
||||||
12
.github/ISSUE_TEMPLATE/11_feature-request.md
vendored
Normal file
12
.github/ISSUE_TEMPLATE/11_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 -->
|
||||||
12
.github/ISSUE_TEMPLATE/12_client-side-feature-request.md
vendored
Normal file
12
.github/ISSUE_TEMPLATE/12_client-side-feature-request.md
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
name: Client-side Feature Request
|
||||||
|
about: Suggest an idea for this project
|
||||||
|
title: ''
|
||||||
|
labels: client-side, feature
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Summary
|
||||||
|
|
||||||
|
<!-- Tell us what the suggestion is -->
|
||||||
12
.github/ISSUE_TEMPLATE/13_server-side-feature-request.md
vendored
Normal file
12
.github/ISSUE_TEMPLATE/13_server-side-feature-request.md
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
name: Server-side Feature Request
|
||||||
|
about: Suggest an idea for this project
|
||||||
|
title: ''
|
||||||
|
labels: feature, server-side
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Summary
|
||||||
|
|
||||||
|
<!-- Tell us what the suggestion is -->
|
||||||
11
.github/ISSUE_TEMPLATE/feature_request.md
vendored
11
.github/ISSUE_TEMPLATE/feature_request.md
vendored
@@ -1,11 +0,0 @@
|
|||||||
---
|
|
||||||
name: Feature Request
|
|
||||||
about: Suggest an idea for this project
|
|
||||||
---
|
|
||||||
|
|
||||||
# Summary
|
|
||||||
<!-- Tell us what the suggestion is -->
|
|
||||||
|
|
||||||
# Environment
|
|
||||||
<!-- Tell us where on the platform it related -->
|
|
||||||
<!-- e.g. desktop or mobile version, your browser, your OS -->
|
|
||||||
236
CHANGELOG.md
236
CHANGELOG.md
@@ -1,6 +1,242 @@
|
|||||||
ChangeLog
|
ChangeLog
|
||||||
=========
|
=========
|
||||||
|
|
||||||
|
10.89.1
|
||||||
|
----------
|
||||||
|
* リアクション数を表示するように
|
||||||
|
* モバイル版でドライブのフォルダを削除できるように
|
||||||
|
* ドキュメントの強化
|
||||||
|
* プロフィールが更新できない場合がある問題を修正
|
||||||
|
* UIの修正
|
||||||
|
|
||||||
|
10.89.0
|
||||||
|
----------
|
||||||
|
* APIのエラーの形式を統一
|
||||||
|
* APIドキュメント刷新
|
||||||
|
* /api/v1/instance/peers 復活
|
||||||
|
* 「返信が遷移後も残り続ける問題を修正」([9beddc9](https://github.com/syuilo/misskey/commit/9beddc941a716f1322ae0b7d71d159edd642a399)) によって遷移前に返信が表示されなくなった問題を修正
|
||||||
|
* デッキモードにてユーザーのプロフィールを連続で見たとき、アクティビティや画像が前のユーザーのもののまま表示される問題を修正
|
||||||
|
|
||||||
|
10.88.0
|
||||||
|
----------
|
||||||
|
* アカウントの削除を試験的に実装
|
||||||
|
* デッキでメディア投稿のみ表示するオプションが機能していない問題を修正
|
||||||
|
* デッキでユーザーを表示したときにタイムラインが残存する問題を修正
|
||||||
|
* モバイルのユーザーページで、ユーザーAのタイムラインから他のユーザーBを選択してユーザーBのタイムラインに移動したとき、ユーザーAのタイムラインが残る問題を修正
|
||||||
|
* ハイライトでミュートしているユーザーの投稿が含まれる問題を修正
|
||||||
|
* 「みつける」でミュートしているユーザーが含まれる問題を修正
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.87.5
|
||||||
|
----------
|
||||||
|
* モバイル版でも連携サービスを表示するように
|
||||||
|
* webfingerのacceptが反映されない問題を修正
|
||||||
|
* 返信が遷移後も残り続ける問題を修正
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.87.4
|
||||||
|
----------
|
||||||
|
* フォローリクエストを許可するときにエラーになる問題を修正
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.87.3
|
||||||
|
----------
|
||||||
|
* 開発モードでビルドしてもスクリプトが404になる問題を修正
|
||||||
|
* 拡張子判別だとアイコンやバナー設定で対応していないと表示される問題を修正
|
||||||
|
* フォローリクエスト数がおかしい場合の応急処置APIを追加
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.87.2
|
||||||
|
----------
|
||||||
|
* みつけるの人気のタグを第2ソートで連合含めたユーザー数にしたりユーザーのタグ以外は除外するように
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.87.1
|
||||||
|
----------
|
||||||
|
* ハッシュタグ検索で大文字小文字が区別されてしまう問題を修正
|
||||||
|
|
||||||
|
10.87.0
|
||||||
|
----------
|
||||||
|
* ハッシュタグでユーザー検索できるように
|
||||||
|
* Exploreページに新規ユーザー一覧を追加
|
||||||
|
* デッキ使用中にホーム扱いで開かれた時にタイムラインボタン等がない問題を修正
|
||||||
|
* デッキ使用中に / 以外でリロードした際にホームモードになる問題を修正
|
||||||
|
|
||||||
|
10.86.2
|
||||||
|
----------
|
||||||
|
* 別タブでルートより下を開いたときにはデッキにしないように
|
||||||
|
* 横のナビゲーションバーの改善
|
||||||
|
* MIDIファイルがオーディオ扱いになる問題を修正
|
||||||
|
* ミュートワードで正規表現を使えるように
|
||||||
|
* デッキで無効になったタイムラインに警告を表示するように
|
||||||
|
* デザインの調整
|
||||||
|
* その他細かな修正
|
||||||
|
|
||||||
|
10.86.1
|
||||||
|
----------
|
||||||
|
* ナビゲーションバーの「ホーム」を「タイムライン」に改称
|
||||||
|
* モバイル版でユーザーページが二重に描画される問題を修正
|
||||||
|
* ユーザー一覧の「もっと読み込む」の動作がおかしい問題を修正
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.86.0
|
||||||
|
----------
|
||||||
|
* Exploreページを実装
|
||||||
|
* UIを改良
|
||||||
|
* その他細かな修正
|
||||||
|
|
||||||
|
10.85.2
|
||||||
|
----------
|
||||||
|
* デッキから フォロー/フォロワー ページに行けるように
|
||||||
|
* ナビゲーションが発生したときに最上部までスクロールように
|
||||||
|
* 検索結果でページ遷移が発生する問題を修正
|
||||||
|
* デザインの調整
|
||||||
|
|
||||||
|
10.85.1
|
||||||
|
----------
|
||||||
|
* ローカルのみ投稿をログイン画面のタイムラインに表示しないように
|
||||||
|
* ナビゲーションバーを横にしてるとデッキに行けない問題を修正
|
||||||
|
|
||||||
|
10.85.0
|
||||||
|
----------
|
||||||
|
* デスクトップ版のUIを改良
|
||||||
|
* 投稿ハイライトページを実装
|
||||||
|
* 無効化されているタイムラインのフォールバック
|
||||||
|
* 既にフォローされている場合はフォローリクエストを生成しないように
|
||||||
|
* その他細かな修正
|
||||||
|
|
||||||
|
10.84.2
|
||||||
|
----------
|
||||||
|
* GIF画像にGIFバッジを表示
|
||||||
|
* よく話すユーザーからサスペンドされたユーザーを隠すなど
|
||||||
|
* nodeinfoが重い問題を修正
|
||||||
|
* ハッシュタグクラウド取得が重い問題を軽減
|
||||||
|
|
||||||
|
10.84.1
|
||||||
|
----------
|
||||||
|
* deckにフォローされていますマークを追加
|
||||||
|
* URLプレビューのサムネイルの調整
|
||||||
|
* 管理画面でサイレンスされているユーザーを一覧できるように
|
||||||
|
* ドキュメントにアクセスできない問題を修正
|
||||||
|
* ジョブキューを無効化
|
||||||
|
* 軽微なバグ修正
|
||||||
|
|
||||||
|
10.84.0
|
||||||
|
----------
|
||||||
|
* インスタンス管理の強化
|
||||||
|
* パフォーマンスの問題の修正
|
||||||
|
* バグ修正
|
||||||
|
|
||||||
|
10.83.0
|
||||||
|
----------
|
||||||
|
* 特定のインスタンスをブロックをできるように
|
||||||
|
* 特定のインスタンスからのフォローを全解除できるように
|
||||||
|
* インスタンスごとのチャートを追加
|
||||||
|
|
||||||
|
10.82.4
|
||||||
|
----------
|
||||||
|
* 10.82.3でオブジェクトストレージの設定をしていると起動しなくなるバグを修正
|
||||||
|
|
||||||
|
10.82.3
|
||||||
|
----------
|
||||||
|
* フォロー/ミュート/ブロックデータをエクスポート可能に
|
||||||
|
* バグ修正
|
||||||
|
* デザインの調整
|
||||||
|
* ジョブキューの動作を修正
|
||||||
|
|
||||||
|
10.82.2
|
||||||
|
----------
|
||||||
|
* ジョブキューの動作を修正
|
||||||
|
|
||||||
|
10.82.1
|
||||||
|
----------
|
||||||
|
* クラスタリング環境でのジョブキューの動作を修正
|
||||||
|
* その他の軽微な改善
|
||||||
|
|
||||||
|
10.82.0
|
||||||
|
----------
|
||||||
|
* 自分の投稿情報をエクスポートできるように
|
||||||
|
* アニメーションする画像を再生しないで表示するオプションを実装
|
||||||
|
* 個別に投稿のウォッチ/ウォッチ解除をできるように
|
||||||
|
|
||||||
|
10.81.0
|
||||||
|
----------
|
||||||
|
* 動画のサムネイルを作成するように
|
||||||
|
* リモートの外部サービス認証情報を表示するように
|
||||||
|
* public の Renote/Reply/Quote先 が public以外 だったら、public => homeに
|
||||||
|
* ユーザーページから管理者/モデレーターがアカウントのサイレンス/凍結をできるように
|
||||||
|
* 凍結されたユーザーをタイムライン等に表示しないように
|
||||||
|
* おすすめのアンケートでミュートユーザーのものは表示しないように
|
||||||
|
* おすすめのアンケートで凍結済みユーザーのものは表示しないように
|
||||||
|
* 画像でないファイルのサムネイルとしてオリジナルファイルを返してしまうのを修正
|
||||||
|
* URLプレビューのサムネイルが表示されない場合がある問題を修正
|
||||||
|
* ダークモードで読みにくいボタンがあるのを修正
|
||||||
|
|
||||||
|
10.80.0
|
||||||
|
----------
|
||||||
|
* サイレンス機能の追加
|
||||||
|
* リプライ/メンションされていれば非フォロワーへのフォロワー限定でも参照可能に
|
||||||
|
* MFMの解析を強化
|
||||||
|
* Misskey以外のインスタンスからMisskeyの投稿を見たときに改行が多い問題を修正
|
||||||
|
* Misskey以外のインスタンスからMisskeyの投稿を見たときにメンションのURLが展開されるのを修正
|
||||||
|
|
||||||
|
10.79.1
|
||||||
|
----------
|
||||||
|
* jump構文の追加
|
||||||
|
* MFMで左回転、往復回転を行えるように
|
||||||
|
* MFMに関する制限を若干緩和
|
||||||
|
* シンタックスハイライトに関するバグ修正
|
||||||
|
|
||||||
|
10.79.0
|
||||||
|
----------
|
||||||
|
* 返信するときにCWを維持するかどうか設定できるように
|
||||||
|
* 外部サービス認証情報の配信
|
||||||
|
* 管理画面のモデレーションのUIを強化
|
||||||
|
* 管理画面からリモートユーザーの情報を更新できるように
|
||||||
|
* 回転構文の追加
|
||||||
|
* 左右反転構文の追加
|
||||||
|
* 複数行の数式構文を追加
|
||||||
|
* シンタックスハイライトの強化
|
||||||
|
* 引用投稿を削除したとき単なるRenoteとしてタイムラインに残る問題を修正
|
||||||
|
* イタリック構文の判定の改善
|
||||||
|
* タイトル構文の判定の改善
|
||||||
|
* テーマが反映されないことがある問題を修正
|
||||||
|
* ホームにフォロワー限定投稿が表示されない問題を修正
|
||||||
|
* 返信一覧を取得すると非公開投稿も取得されてしまう問題を修正
|
||||||
|
* メンション一覧を取得すると非公開投稿も取得されてしまう問題を修正
|
||||||
|
* 通知に非公開投稿が表示される問題を修正
|
||||||
|
* ダイレクトで投稿すると100%の確率で表示が二重になる問題を修正
|
||||||
|
* ウィジットの投稿フォームで投稿するとデフォルトの公開範囲が適用されない問題を修正
|
||||||
|
|
||||||
|
10.78.5
|
||||||
|
----------
|
||||||
|
* アンケートの選択肢にカスタム絵文字を使えるように
|
||||||
|
* 投稿の返信を取得したときにミュートが適用されていない問題を修正
|
||||||
|
* ユーザビリティの強化
|
||||||
|
|
||||||
|
10.78.4
|
||||||
|
----------
|
||||||
|
* フォロワー限定投稿がユーザータイムラインに含まれていない問題を修正
|
||||||
|
* データベースのインデックス設定を修正
|
||||||
|
* UIの修正
|
||||||
|
* など
|
||||||
|
|
||||||
|
10.78.3
|
||||||
|
----------
|
||||||
|
* 投票未対応インスタンス向けメッセージをわかりやすく
|
||||||
|
* リバーシが404になる問題を修正
|
||||||
|
* デザインの修正
|
||||||
|
|
||||||
|
10.78.2
|
||||||
|
----------
|
||||||
|
* リバーシが404になる問題を修正
|
||||||
|
* ストリームで流れてくる投稿とAPIでタイムラインを取得したときとの不一致を修正
|
||||||
|
|
||||||
|
10.78.1
|
||||||
|
----------
|
||||||
|
* 「関係のない返信がタイムラインに流れる問題を修正」を取り消し
|
||||||
|
* デザインの修正
|
||||||
|
|
||||||
10.78.0
|
10.78.0
|
||||||
----------
|
----------
|
||||||
* 他のインスタンスからアンケートに投票できるように
|
* 他のインスタンスからアンケートに投票できるように
|
||||||
|
|||||||
@@ -38,3 +38,37 @@ Stands for _**M**iss**k**ey_.
|
|||||||
|
|
||||||
### SW
|
### SW
|
||||||
Stands for _**S**ervice**W**orker_.
|
Stands for _**S**ervice**W**orker_.
|
||||||
|
|
||||||
|
### Nyaize
|
||||||
|
な を にゃ にすること
|
||||||
|
|
||||||
|
#### Denyaize
|
||||||
|
Nyaizeを解除すること
|
||||||
|
|
||||||
|
## Code style
|
||||||
|
### Don't use `export default`
|
||||||
|
Bad:
|
||||||
|
``` ts
|
||||||
|
export default function(foo: string): string {
|
||||||
|
```
|
||||||
|
|
||||||
|
Good:
|
||||||
|
``` ts
|
||||||
|
export function something(foo: string): string {
|
||||||
|
```
|
||||||
|
|
||||||
|
## Directory structure
|
||||||
|
```
|
||||||
|
src ... ソースコード
|
||||||
|
@types ... 外部ライブラリなどの型定義
|
||||||
|
prelude ... Misskeyに関係ないかつ副作用なし
|
||||||
|
misc ... 副作用なしのユーティリティ処理
|
||||||
|
service ... 副作用ありの共通処理
|
||||||
|
queue ... ジョブキューとジョブ
|
||||||
|
server ... Webサーバー
|
||||||
|
client ... クライアント
|
||||||
|
mfm ... MFM
|
||||||
|
|
||||||
|
test ... テスト
|
||||||
|
|
||||||
|
```
|
||||||
|
|||||||
17
Dockerfile
17
Dockerfile
@@ -8,7 +8,6 @@ WORKDIR /misskey
|
|||||||
|
|
||||||
FROM base AS builder
|
FROM base AS builder
|
||||||
|
|
||||||
RUN unlink /usr/bin/free
|
|
||||||
RUN apk add --no-cache \
|
RUN apk add --no-cache \
|
||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
@@ -20,22 +19,20 @@ RUN apk add --no-cache \
|
|||||||
make \
|
make \
|
||||||
nasm \
|
nasm \
|
||||||
pkgconfig \
|
pkgconfig \
|
||||||
procps \
|
|
||||||
python \
|
python \
|
||||||
zlib-dev
|
zlib-dev
|
||||||
RUN npm i -g node-gyp
|
RUN npm i -g yarn
|
||||||
|
|
||||||
COPY ./package.json ./
|
|
||||||
RUN npm i
|
|
||||||
|
|
||||||
COPY . ./
|
COPY . ./
|
||||||
RUN node-gyp configure \
|
RUN yarn install
|
||||||
&& node-gyp build \
|
RUN yarn build
|
||||||
&& npm run build
|
|
||||||
|
|
||||||
FROM base AS runner
|
FROM base AS runner
|
||||||
|
|
||||||
RUN apk add --no-cache tini
|
RUN apk add --no-cache \
|
||||||
|
ffmpeg \
|
||||||
|
tini
|
||||||
|
RUN npm i -g web-push
|
||||||
ENTRYPOINT ["/sbin/tini", "--"]
|
ENTRYPOINT ["/sbin/tini", "--"]
|
||||||
|
|
||||||
COPY --from=builder /misskey/node_modules ./node_modules
|
COPY --from=builder /misskey/node_modules ./node_modules
|
||||||
|
|||||||
56
README.md
56
README.md
@@ -3,9 +3,9 @@
|
|||||||
[](https://misskey.xyz/)
|
[](https://misskey.xyz/)
|
||||||
================================================================
|
================================================================
|
||||||
|
|
||||||
[](https://circleci.com/gh/syuilo/misskey)
|
[](https://circleci.com/gh/syuilo/misskey)
|
||||||
[](https://david-dm.org/syuilo/misskey)
|
[](https://david-dm.org/syuilo/misskey)
|
||||||
[](http://makeapullrequest.com)
|
[](http://makeapullrequest.com)
|
||||||
|
|
||||||
**A forever evolving, sophisticated microblogging platform.**
|
**A forever evolving, sophisticated microblogging platform.**
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
<a href="https://misskey.xyz">Misskey</a> is a decentralized microblogging platform born on Earth.
|
<a href="https://misskey.xyz">Misskey</a> is a decentralized microblogging platform born on Earth.
|
||||||
Since it exists within the Fediverse (a universe where various social media platforms are organized),
|
Since it exists within the Fediverse (a universe where various social media platforms are organized),
|
||||||
it is mutually linked with other social media platforms.
|
it is mutually linked with other social media platforms.
|
||||||
Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet? <a href="https://joinmisskey.github.io/">Find instance!</a>
|
Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet? <a href="https://joinmisskey.github.io/">Find an instance!</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<a href="https://www.patreon.com/syuilo"><img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt="Become a Patron!" width="160" /></a>
|
<a href="https://www.patreon.com/syuilo"><img src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" alt="Become a Patron!" width="160" /></a>
|
||||||
@@ -61,7 +61,19 @@ Organize and store your files! Want to post a picture you have already uploaded?
|
|||||||
|
|
||||||
...and more! Experience Misskey with your own eyes at [misskey.xyz](https://misskey.xyz) or join one of the [other instances](https://joinmisskey.github.io/) that are available.
|
...and more! Experience Misskey with your own eyes at [misskey.xyz](https://misskey.xyz) or join one of the [other instances](https://joinmisskey.github.io/) that are available.
|
||||||
|
|
||||||
:package: Create Your Own Instance
|
Screen shots
|
||||||
|
----------------------------------------------------------------
|
||||||
|
### Profile page
|
||||||
|
<img src="/assets/ss/user.jpg" width="500px"/>
|
||||||
|
|
||||||
|
### Explore users
|
||||||
|
<img src="/assets/ss/explore.jpg" width="500px"/>
|
||||||
|
|
||||||
|
:new: What's new
|
||||||
|
----------------------------------------------------------------
|
||||||
|
Please see the [Release notes](./CHANGELOG.md).
|
||||||
|
|
||||||
|
:package: Create your own instance
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
Please see the [Setup and Installation Guide](./docs/setup.en.md).
|
Please see the [Setup and Installation Guide](./docs/setup.en.md).
|
||||||
|
|
||||||
@@ -69,24 +81,38 @@ Please see the [Setup and Installation Guide](./docs/setup.en.md).
|
|||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
Please see the [Contribution Guide](./CONTRIBUTING.md).
|
Please see the [Contribution Guide](./CONTRIBUTING.md).
|
||||||
|
|
||||||
:heart: Backers & Sponsors
|
### Collaborators
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td><img src="https://avatars3.githubusercontent.com/u/4439005?s=460&v=4" alt="syuilo" width="100"></td>
|
||||||
|
<td><img src="https://avatars0.githubusercontent.com/u/10798641?s=460&v=4" alt="AyaMorisawa" width="100"></td>
|
||||||
|
<td><img src="https://avatars1.githubusercontent.com/u/30769358?s=460&v=4" alt="mei23" width="100"></td>
|
||||||
|
<td><img src="https://avatars2.githubusercontent.com/u/20679825?s=460&v=4" alt="acid-chicken" width="100"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="https://github.com/syuilo">@syuilo</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/AyaMorisawa">@AyaMorisawa</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/mei23">@mei23</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/acid-chicken">@acid-chicken</a></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
:heart: Backers
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
<!-- PATREON_START -->
|
<!-- PATREON_START -->
|
||||||
<table><tr>
|
<table><tr>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12190916/fb7fa7983c14425f890369535b1506a4/1?token-time=2145916800&token-hash=WeuDzzz24cRXJogyIkU-mxARqkdyms-rcZKbO-GpGjw%3D" alt="weep" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12190916/fb7fa7983c14425f890369535b1506a4/1?token-time=2145916800&token-hash=WeuDzzz24cRXJogyIkU-mxARqkdyms-rcZKbO-GpGjw%3D" alt="weep" width="100"></td>
|
||||||
<td><img src="https://c8.patreon.com/2/200/12059069" alt="naga_rus" width="100"></td>
|
<td><img src="https://c8.patreon.com/2/200/12059069" alt="naga_rus" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12731202/0995c46cdcb54153ab5f073f5869b70a/1?token-time=2145916800&token-hash=prtYqPOiSHBulhM7NU0VzMaWx39-9ntdq25b6kafDNA%3D" alt="negao" width="100"></td>
|
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12913507/f7181eacafe8469a93033d85f5969c29/3?token-time=2145916800&token-hash=c8HeVqLtmdgH-gSBJg8i10gmOcwllM87MDHeznl3el0%3D" alt="Melilot" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12913507/f7181eacafe8469a93033d85f5969c29/3?token-time=2145916800&token-hash=c8HeVqLtmdgH-gSBJg8i10gmOcwllM87MDHeznl3el0%3D" alt="Melilot" width="100"></td>
|
||||||
|
<td><img src="https://c8.patreon.com/2/200/16869916" alt="見当かなみ" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12999811/5f349fafcce44dd1824a8b1ebbec4564/3?token-time=2145916800&token-hash=LtV2lRi3L2jOWMLwccr9qWYfPrFlzIo2jYZHKzHEb6k%3D" alt="Xeltica" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12999811/5f349fafcce44dd1824a8b1ebbec4564/3?token-time=2145916800&token-hash=LtV2lRi3L2jOWMLwccr9qWYfPrFlzIo2jYZHKzHEb6k%3D" alt="Xeltica" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/3384329/8b713330cb27404ea6e9fac50ff96efe/1?token-time=2145916800&token-hash=Ch3iF81ZGP0LMo894Y9ajpLisgtE91SnxtZE7fxsgrM%3D" alt="べすれい" width="100"></td>
|
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12021162/963128bb8d14476dbd8407943db8f31a/1?token-time=2145916800&token-hash=1FlxS9MEgmNGH_RHUVHbO5hIXB5I1z0lvA33CTvYvjA%3D" alt="gutfuckllc" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12021162/963128bb8d14476dbd8407943db8f31a/1?token-time=2145916800&token-hash=1FlxS9MEgmNGH_RHUVHbO5hIXB5I1z0lvA33CTvYvjA%3D" alt="gutfuckllc" width="100"></td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a href="https://www.patreon.com/weepjp">weep</a></td>
|
<td><a href="https://www.patreon.com/weepjp">weep</a></td>
|
||||||
<td><a href="https://www.patreon.com/user?u=12059069">naga_rus</a></td>
|
<td><a href="https://www.patreon.com/user?u=12059069">naga_rus</a></td>
|
||||||
<td><a href="https://www.patreon.com/negao">negao</a></td>
|
|
||||||
<td><a href="https://www.patreon.com/user?u=12913507">Melilot</a></td>
|
<td><a href="https://www.patreon.com/user?u=12913507">Melilot</a></td>
|
||||||
|
<td><a href="https://www.patreon.com/user?u=16869916">見当かなみ</a></td>
|
||||||
<td><a href="https://www.patreon.com/Xeltica">Xeltica</a></td>
|
<td><a href="https://www.patreon.com/Xeltica">Xeltica</a></td>
|
||||||
<td><a href="https://www.patreon.com/user?u=3384329">べすれい</a></td>
|
|
||||||
<td><a href="https://www.patreon.com/gutfuckllc">gutfuckllc</a></td>
|
<td><a href="https://www.patreon.com/gutfuckllc">gutfuckllc</a></td>
|
||||||
</tr></table>
|
</tr></table>
|
||||||
<table><tr>
|
<table><tr>
|
||||||
@@ -95,20 +121,22 @@ Please see the [Contribution Guide](./CONTRIBUTING.md).
|
|||||||
<td><img src="https://c8.patreon.com/2/200/16542964" alt="Takumi Sugita" width="100"></td>
|
<td><img src="https://c8.patreon.com/2/200/16542964" alt="Takumi Sugita" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13039004/509d0c412eb14ae08d6a812a3054f7d6/1?token-time=2145916800&token-hash=2PsbFNw0tnubZzgSXD01R6hIgncfiElG7H7HX2Y3dyo%3D" alt="nemu" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13039004/509d0c412eb14ae08d6a812a3054f7d6/1?token-time=2145916800&token-hash=2PsbFNw0tnubZzgSXD01R6hIgncfiElG7H7HX2Y3dyo%3D" alt="nemu" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5881381/6235ca5d3fb04c8e95ef5b4ff2abcc18/3?token-time=2145916800&token-hash=9JtETp0X8gI280Ne1E8bxn6j4Lw5o2k4mJkICx97V_k%3D" alt="YUKIMOCHI" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5881381/6235ca5d3fb04c8e95ef5b4ff2abcc18/3?token-time=2145916800&token-hash=9JtETp0X8gI280Ne1E8bxn6j4Lw5o2k4mJkICx97V_k%3D" alt="YUKIMOCHI" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/8241184/39e18850e87a449e9c9a71acb3310ebd/2?token-time=2145916800&token-hash=zrInDotuEIFslKphuSiCqr3M-r-rveTXjVKWr-VK6M0%3D" alt="Acid Chicken" width="100"></td>
|
<td><img src="https://c8.patreon.com/2/200/17463605" alt="Sampot" width="100"></td>
|
||||||
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/17195955/be45e5e14c3e48b2bee0456c84e19df4/4?token-time=2145916800&token-hash=SbdZeN5SmsuT9stD6v0jN1z0hftg0FmRiCTxysU0Ihw%3D" alt="Damillora" width="100"></td>
|
||||||
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/8241184/39e18850e87a449e9c9a71acb3310ebd/3?token-time=2145916800&token-hash=gMq30aylxu5v3G8pRhWR5jeRBbYWEoRKjGbNeiCQz5g%3D" alt="Acid Chicken" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4389829/9f709180ac714651a70f74a82f3ffdb9/2?token-time=2145916800&token-hash=zcwFxb2zopzWwksKVU1YpfAEjsl4yKT02aQ6yiAFRiQ%3D" alt="natalie" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4389829/9f709180ac714651a70f74a82f3ffdb9/2?token-time=2145916800&token-hash=zcwFxb2zopzWwksKVU1YpfAEjsl4yKT02aQ6yiAFRiQ%3D" alt="natalie" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13034746/c711c7f58e204ecfbc2fd646bc8a4eee/1?token-time=2145916800&token-hash=5T8XcaAf9Zyzfg3QubR06s_kJZkArVEM2dwObrBVAU4%3D" alt="Hiratake" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13034746/c711c7f58e204ecfbc2fd646bc8a4eee/1?token-time=2145916800&token-hash=5T8XcaAf9Zyzfg3QubR06s_kJZkArVEM2dwObrBVAU4%3D" alt="Hiratake" width="100"></td>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/10789744/97175095d8f04c0f86225ff47cb98d40/1?token-time=2145916800&token-hash=ubVARikVOg3v7NW6LDhtG-ClE1LTU3I2TJ3js2-5xDs%3D" alt="Naoki Hirayama" width="100"></td>
|
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a href="https://www.patreon.com/mydarkstar">mydarkstar</a></td>
|
<td><a href="https://www.patreon.com/mydarkstar">mydarkstar</a></td>
|
||||||
<td><a href="https://www.patreon.com/user?u=12718187">Peter G.</a></td>
|
<td><a href="https://www.patreon.com/user?u=12718187">Peter G.</a></td>
|
||||||
<td><a href="https://www.patreon.com/user?u=16542964">Takumi Sugita</a></td>
|
<td><a href="https://www.patreon.com/user?u=16542964">Takumi Sugita</a></td>
|
||||||
<td><a href="https://www.patreon.com/user?u=13039004">nemu</a></td>
|
<td><a href="https://www.patreon.com/user?u=13039004">nemu</a></td>
|
||||||
<td><a href="https://www.patreon.com/yukimochi">YUKIMOCHI</a></td>
|
<td><a href="https://www.patreon.com/yukimochi">YUKIMOCHI</a></td>
|
||||||
|
<td><a href="https://www.patreon.com/user?u=17463605">Sampot</a></td>
|
||||||
|
<td><a href="https://www.patreon.com/damillora">Damillora</a></td>
|
||||||
<td><a href="https://www.patreon.com/acid_chicken">Acid Chicken</a></td>
|
<td><a href="https://www.patreon.com/acid_chicken">Acid Chicken</a></td>
|
||||||
<td><a href="https://www.patreon.com/user?u=4389829">natalie</a></td>
|
<td><a href="https://www.patreon.com/user?u=4389829">natalie</a></td>
|
||||||
<td><a href="https://www.patreon.com/hiratake">Hiratake</a></td>
|
<td><a href="https://www.patreon.com/hiratake">Hiratake</a></td>
|
||||||
<td><a href="https://www.patreon.com/spinlock">Naoki Hirayama</a></td>
|
|
||||||
</tr></table>
|
</tr></table>
|
||||||
<table><tr>
|
<table><tr>
|
||||||
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb/1?token-time=2145916800&token-hash=Ksk_2l3gjPDbnzMUOCSW1E-hdPJsNs2tSR4_RAakRK8%3D" alt="dansup" width="100"></td>
|
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb/1?token-time=2145916800&token-hash=Ksk_2l3gjPDbnzMUOCSW1E-hdPJsNs2tSR4_RAakRK8%3D" alt="dansup" width="100"></td>
|
||||||
@@ -122,7 +150,7 @@ Please see the [Contribution Guide](./CONTRIBUTING.md).
|
|||||||
<td><a href="https://www.patreon.com/user?u=12531784">Takashi Shibuya</a></td>
|
<td><a href="https://www.patreon.com/user?u=12531784">Takashi Shibuya</a></td>
|
||||||
</tr></table>
|
</tr></table>
|
||||||
|
|
||||||
**Last updated:** Fri, 18 Jan 2019 11:58:06 UTC
|
**Last updated:** Thu, 21 Feb 2019 16:10:06 UTC
|
||||||
<!-- PATREON_END -->
|
<!-- PATREON_END -->
|
||||||
|
|
||||||
:four_leaf_clover: Copyright
|
:four_leaf_clover: Copyright
|
||||||
|
|||||||
BIN
assets/api-doc.png
Normal file
BIN
assets/api-doc.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.4 KiB |
BIN
assets/ss/explore.jpg
Normal file
BIN
assets/ss/explore.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 238 KiB |
BIN
assets/ss/user.jpg
Normal file
BIN
assets/ss/user.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 148 KiB |
@@ -29,15 +29,15 @@ Please install and setup these softwares:
|
|||||||
* [Redis](https://redis.io/)
|
* [Redis](https://redis.io/)
|
||||||
* Redis is optional, but we strongly recommended to install it
|
* Redis is optional, but we strongly recommended to install it
|
||||||
* [Elasticsearch](https://www.elastic.co/) - required to enable the search feature
|
* [Elasticsearch](https://www.elastic.co/) - required to enable the search feature
|
||||||
|
* [FFmpeg](https://www.ffmpeg.org/)
|
||||||
|
|
||||||
*3.* Setup MongoDB
|
*3.* Setup MongoDB
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
As root:
|
As root:
|
||||||
1. `mongo` Go to the mongo shell
|
1. `mongo` Go to the mongo shell
|
||||||
2. `use misskey` Use the misskey database
|
2. `use misskey` Use the misskey database
|
||||||
3. `db.users.save( {dummy:"dummy"} )` Write dummy data to initialize the db.
|
3. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` Create the misskey user.
|
||||||
4. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` Create the misskey user.
|
4. `exit` You're done!
|
||||||
5. `exit` You're done !
|
|
||||||
|
|
||||||
*4.* Install Misskey
|
*4.* Install Misskey
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
@@ -57,7 +57,7 @@ As root:
|
|||||||
|
|
||||||
Build misskey with the following:
|
Build misskey with the following:
|
||||||
|
|
||||||
`npm run build`
|
`NODE_ENV=production npm run build`
|
||||||
|
|
||||||
If you're on Debian, you will need to install the `build-essential`, `python` package.
|
If you're on Debian, you will need to install the `build-essential`, `python` package.
|
||||||
|
|
||||||
@@ -66,14 +66,14 @@ If you're still encountering errors about some modules, use node-gyp:
|
|||||||
1. `npm install -g node-gyp`
|
1. `npm install -g node-gyp`
|
||||||
2. `node-gyp configure`
|
2. `node-gyp configure`
|
||||||
3. `node-gyp build`
|
3. `node-gyp build`
|
||||||
4. `npm run build`
|
4. `NODE_ENV=production npm run build`
|
||||||
|
|
||||||
*7.* That is it.
|
*7.* That is it.
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
Well done! Now, you have an environment that run to Misskey.
|
Well done! Now, you have an environment that run to Misskey.
|
||||||
|
|
||||||
### Launch normally
|
### Launch normally
|
||||||
Just `npm start`. GLHF!
|
Just `NODE_ENV=production npm start`. GLHF!
|
||||||
|
|
||||||
### Launch with systemd
|
### Launch with systemd
|
||||||
|
|
||||||
@@ -89,6 +89,7 @@ Type=simple
|
|||||||
User=misskey
|
User=misskey
|
||||||
ExecStart=/usr/bin/npm start
|
ExecStart=/usr/bin/npm start
|
||||||
WorkingDirectory=/home/misskey/misskey
|
WorkingDirectory=/home/misskey/misskey
|
||||||
|
Environment="NODE_ENV=production"
|
||||||
TimeoutSec=60
|
TimeoutSec=60
|
||||||
StandardOutput=syslog
|
StandardOutput=syslog
|
||||||
StandardError=syslog
|
StandardError=syslog
|
||||||
@@ -108,7 +109,7 @@ You can check if the service is running with `systemctl status misskey`.
|
|||||||
1. `git fetch`
|
1. `git fetch`
|
||||||
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
||||||
3. `npm install`
|
3. `npm install`
|
||||||
4. `npm run build`
|
4. `NODE_ENV=production npm run build`
|
||||||
5. Check [ChangeLog](../CHANGELOG.md) for migration information
|
5. Check [ChangeLog](../CHANGELOG.md) for migration information
|
||||||
6. Restart your Misskey process to apply changes
|
6. Restart your Misskey process to apply changes
|
||||||
7. Enjoy
|
7. Enjoy
|
||||||
|
|||||||
@@ -29,15 +29,15 @@ Installez les paquets suivants :
|
|||||||
* [Redis](https://redis.io/)
|
* [Redis](https://redis.io/)
|
||||||
* Redis est optionnel mais nous vous recommandons vivement de l'installer
|
* Redis est optionnel mais nous vous recommandons vivement de l'installer
|
||||||
* [Elasticsearch](https://www.elastic.co/) - requis pour pouvoir activer la fonctionnalité de recherche
|
* [Elasticsearch](https://www.elastic.co/) - requis pour pouvoir activer la fonctionnalité de recherche
|
||||||
|
* [FFmpeg](https://www.ffmpeg.org/)
|
||||||
|
|
||||||
*3.* Paramètrage de MongoDB
|
*3.* Paramètrage de MongoDB
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
En root :
|
En root :
|
||||||
1. `mongo` Ouvrez le shell mongo
|
1. `mongo` Ouvrez le shell mongo
|
||||||
2. `use misskey` Utilisez la base de données misskey
|
2. `use misskey` Utilisez la base de données misskey
|
||||||
3. `db.users.save( {dummy:"dummy"} )` Écrivez une donnée factice pour initialiser la base de données.
|
3. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` Créez l'utilisateur misskey.
|
||||||
4. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` Créez l'utilisateur misskey.
|
4. `exit` Vous avez terminé !
|
||||||
5. `exit` Vous avez terminé !
|
|
||||||
|
|
||||||
*4.* Installation de Misskey
|
*4.* Installation de Misskey
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
@@ -57,7 +57,7 @@ En root :
|
|||||||
|
|
||||||
Construisez Misskey comme ceci :
|
Construisez Misskey comme ceci :
|
||||||
|
|
||||||
`npm run build`
|
`NODE_ENV=production npm run build`
|
||||||
|
|
||||||
Si vous êtes sous Debian, vous serez amené à installer les paquets `build-essential` et `python`.
|
Si vous êtes sous Debian, vous serez amené à installer les paquets `build-essential` et `python`.
|
||||||
|
|
||||||
@@ -66,14 +66,14 @@ Si vous rencontrez des erreurs concernant certains modules, utilisez node-gyp:
|
|||||||
1. `npm install -g node-gyp`
|
1. `npm install -g node-gyp`
|
||||||
2. `node-gyp configure`
|
2. `node-gyp configure`
|
||||||
3. `node-gyp build`
|
3. `node-gyp build`
|
||||||
4. `npm run build`
|
4. `NODE_ENV=production npm run build`
|
||||||
|
|
||||||
*7.* C'est tout.
|
*7.* C'est tout.
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
Excellent ! Maintenant, vous avez un environnement prêt pour lancer Misskey
|
Excellent ! Maintenant, vous avez un environnement prêt pour lancer Misskey
|
||||||
|
|
||||||
### Lancement conventionnel
|
### Lancement conventionnel
|
||||||
Lancez tout simplement `npm start`. Bonne chance et amusez-vous bien !
|
Lancez tout simplement `NODE_ENV=production npm start`. Bonne chance et amusez-vous bien !
|
||||||
|
|
||||||
### Démarrage avec systemd
|
### Démarrage avec systemd
|
||||||
|
|
||||||
@@ -89,6 +89,7 @@ Type=simple
|
|||||||
User=misskey
|
User=misskey
|
||||||
ExecStart=/usr/bin/npm start
|
ExecStart=/usr/bin/npm start
|
||||||
WorkingDirectory=/home/misskey/misskey
|
WorkingDirectory=/home/misskey/misskey
|
||||||
|
Environment="NODE_ENV=production"
|
||||||
TimeoutSec=60
|
TimeoutSec=60
|
||||||
StandardOutput=syslog
|
StandardOutput=syslog
|
||||||
StandardError=syslog
|
StandardError=syslog
|
||||||
@@ -108,7 +109,7 @@ Vous pouvez vérifier si le service a démarré en utilisant la commande `system
|
|||||||
1. `git fetch`
|
1. `git fetch`
|
||||||
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
||||||
3. `npm install`
|
3. `npm install`
|
||||||
4. `npm run build`
|
4. `NODE_ENV=production npm run build`
|
||||||
5. Consultez [ChangeLog](../CHANGELOG.md) pour les information de migration.
|
5. Consultez [ChangeLog](../CHANGELOG.md) pour les information de migration.
|
||||||
|
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
|
|||||||
@@ -32,18 +32,19 @@ adduser --disabled-password --disabled-login misskey
|
|||||||
* 具体的には、Redisをインストールしないと、次の事が出来なくなります:
|
* 具体的には、Redisをインストールしないと、次の事が出来なくなります:
|
||||||
* Misskeyプロセスを複数起動しての負荷分散
|
* Misskeyプロセスを複数起動しての負荷分散
|
||||||
* レートリミット
|
* レートリミット
|
||||||
|
* ジョブキュー
|
||||||
* Twitter連携
|
* Twitter連携
|
||||||
* [Elasticsearch](https://www.elastic.co/)
|
* [Elasticsearch](https://www.elastic.co/)
|
||||||
* 検索機能を有効にするためにはインストールが必要です。
|
* 検索機能を有効にするためにはインストールが必要です。
|
||||||
|
* [FFmpeg](https://www.ffmpeg.org/)
|
||||||
|
|
||||||
*3.* MongoDBの設定
|
*3.* MongoDBの設定
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
ルートで:
|
ルートで:
|
||||||
1. `mongo` mongoシェルを起動
|
1. `mongo` mongoシェルを起動
|
||||||
2. `use misskey` misskeyデータベースを使用
|
2. `use misskey` misskeyデータベースを使用
|
||||||
3. `db.users.save( {dummy:"dummy"} )` ダミーデータを書き込みDBを初期化
|
3. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` misskeyユーザーを作成
|
||||||
4. `db.createUser( { user: "misskey", pwd: "<password>", roles: [ { role: "readWrite", db: "misskey" } ] } )` misskeyユーザーを作成
|
4. `exit` mongoシェルを終了
|
||||||
5. `exit` mongoシェルを終了
|
|
||||||
|
|
||||||
*4.* Misskeyのインストール
|
*4.* Misskeyのインストール
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
@@ -63,7 +64,7 @@ adduser --disabled-password --disabled-login misskey
|
|||||||
|
|
||||||
次のコマンドでMisskeyをビルドしてください:
|
次のコマンドでMisskeyをビルドしてください:
|
||||||
|
|
||||||
`npm run build`
|
`NODE_ENV=production npm run build`
|
||||||
|
|
||||||
Debianをお使いであれば、`build-essential`パッケージをインストールする必要があります。
|
Debianをお使いであれば、`build-essential`パッケージをインストールする必要があります。
|
||||||
|
|
||||||
@@ -71,14 +72,14 @@ Debianをお使いであれば、`build-essential`パッケージをインスト
|
|||||||
1. `npm install -g node-gyp`
|
1. `npm install -g node-gyp`
|
||||||
2. `node-gyp configure`
|
2. `node-gyp configure`
|
||||||
3. `node-gyp build`
|
3. `node-gyp build`
|
||||||
4. `npm run build`
|
4. `NODE_ENV=production npm run build`
|
||||||
|
|
||||||
*7.* 以上です!
|
*7.* 以上です!
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
お疲れ様でした。これでMisskeyを動かす準備は整いました。
|
お疲れ様でした。これでMisskeyを動かす準備は整いました。
|
||||||
|
|
||||||
### 通常起動
|
### 通常起動
|
||||||
`npm start`するだけです。GLHF!
|
`NODE_ENV=production npm start`するだけです。GLHF!
|
||||||
|
|
||||||
### systemdを用いた起動
|
### systemdを用いた起動
|
||||||
1. systemdサービスのファイルを作成: `/etc/systemd/system/misskey.service`
|
1. systemdサービスのファイルを作成: `/etc/systemd/system/misskey.service`
|
||||||
@@ -93,6 +94,7 @@ Type=simple
|
|||||||
User=misskey
|
User=misskey
|
||||||
ExecStart=/usr/bin/npm start
|
ExecStart=/usr/bin/npm start
|
||||||
WorkingDirectory=/home/misskey/misskey
|
WorkingDirectory=/home/misskey/misskey
|
||||||
|
Environment="NODE_ENV=production"
|
||||||
TimeoutSec=60
|
TimeoutSec=60
|
||||||
StandardOutput=syslog
|
StandardOutput=syslog
|
||||||
StandardError=syslog
|
StandardError=syslog
|
||||||
@@ -113,9 +115,11 @@ CentOSで1024以下のポートを使用してMisskeyを使用する場合は`Ex
|
|||||||
1. `git fetch`
|
1. `git fetch`
|
||||||
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
|
||||||
3. `npm install`
|
3. `npm install`
|
||||||
4. `npm run build`
|
4. `NODE_ENV=production npm run build`
|
||||||
5. [ChangeLog](../CHANGELOG.md)でマイグレーション情報を確認する
|
5. [ChangeLog](../CHANGELOG.md)でマイグレーション情報を確認する
|
||||||
|
|
||||||
|
なにか問題が発生した場合は、`npm run clean`すると直る場合があります。
|
||||||
|
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
|
|
||||||
なにかお困りのことがありましたらお気軽にご連絡ください。
|
なにかお困りのことがありましたらお気軽にご連絡ください。
|
||||||
|
|||||||
50
gulpfile.ts
50
gulpfile.ts
@@ -32,14 +32,6 @@ if (isDebug) {
|
|||||||
console.warn(chalk.yellow.bold(' built script will not be compressed.'));
|
console.warn(chalk.yellow.bold(' built script will not be compressed.'));
|
||||||
}
|
}
|
||||||
|
|
||||||
gulp.task('build', [
|
|
||||||
'build:ts',
|
|
||||||
'build:copy',
|
|
||||||
'build:client',
|
|
||||||
'locales',
|
|
||||||
'doc'
|
|
||||||
]);
|
|
||||||
|
|
||||||
gulp.task('build:ts', () => {
|
gulp.task('build:ts', () => {
|
||||||
const tsProject = ts.createProject('./tsconfig.json');
|
const tsProject = ts.createProject('./tsconfig.json');
|
||||||
|
|
||||||
@@ -47,6 +39,7 @@ gulp.task('build:ts', () => {
|
|||||||
.src()
|
.src()
|
||||||
.pipe(sourcemaps.init())
|
.pipe(sourcemaps.init())
|
||||||
.pipe(tsProject())
|
.pipe(tsProject())
|
||||||
|
.on('error', () => {})
|
||||||
.pipe(sourcemaps.write('.', { includeContent: false, sourceRoot: '../built' }))
|
.pipe(sourcemaps.write('.', { includeContent: false, sourceRoot: '../built' }))
|
||||||
.pipe(gulp.dest('./built/'));
|
.pipe(gulp.dest('./built/'));
|
||||||
});
|
});
|
||||||
@@ -55,7 +48,7 @@ gulp.task('build:copy:views', () =>
|
|||||||
gulp.src('./src/server/web/views/**/*').pipe(gulp.dest('./built/server/web/views'))
|
gulp.src('./src/server/web/views/**/*').pipe(gulp.dest('./built/server/web/views'))
|
||||||
);
|
);
|
||||||
|
|
||||||
gulp.task('build:copy', ['build:copy:views'], () =>
|
gulp.task('build:copy', gulp.parallel('build:copy:views', () =>
|
||||||
gulp.src([
|
gulp.src([
|
||||||
'./build/Release/crypto_key.node',
|
'./build/Release/crypto_key.node',
|
||||||
'./src/const.json',
|
'./src/const.json',
|
||||||
@@ -63,9 +56,7 @@ gulp.task('build:copy', ['build:copy:views'], () =>
|
|||||||
'./src/**/assets/**/*',
|
'./src/**/assets/**/*',
|
||||||
'!./src/client/app/**/assets/**/*'
|
'!./src/client/app/**/assets/**/*'
|
||||||
]).pipe(gulp.dest('./built/'))
|
]).pipe(gulp.dest('./built/'))
|
||||||
);
|
));
|
||||||
|
|
||||||
gulp.task('test', ['mocha']);
|
|
||||||
|
|
||||||
gulp.task('lint', () =>
|
gulp.task('lint', () =>
|
||||||
gulp.src('./src/**/*.ts')
|
gulp.src('./src/**/*.ts')
|
||||||
@@ -92,22 +83,15 @@ gulp.task('mocha', () =>
|
|||||||
} as any))
|
} as any))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
gulp.task('test', gulp.task('mocha'));
|
||||||
|
|
||||||
gulp.task('clean', cb =>
|
gulp.task('clean', cb =>
|
||||||
rimraf('./built', cb)
|
rimraf('./built', cb)
|
||||||
);
|
);
|
||||||
|
|
||||||
gulp.task('cleanall', ['clean'], cb =>
|
gulp.task('cleanall', gulp.parallel('clean', cb =>
|
||||||
rimraf('./node_modules', cb)
|
rimraf('./node_modules', cb)
|
||||||
);
|
));
|
||||||
|
|
||||||
gulp.task('default', ['build']);
|
|
||||||
|
|
||||||
gulp.task('build:client', [
|
|
||||||
'build:ts',
|
|
||||||
'build:client:script',
|
|
||||||
'build:client:styles',
|
|
||||||
'copy:client'
|
|
||||||
]);
|
|
||||||
|
|
||||||
gulp.task('build:client:script', () => {
|
gulp.task('build:client:script', () => {
|
||||||
const client = require('./built/client/meta.json');
|
const client = require('./built/client/meta.json');
|
||||||
@@ -129,9 +113,7 @@ gulp.task('build:client:styles', () =>
|
|||||||
.pipe(gulp.dest('./built/client/assets/'))
|
.pipe(gulp.dest('./built/client/assets/'))
|
||||||
);
|
);
|
||||||
|
|
||||||
gulp.task('copy:client', [
|
gulp.task('copy:client', () =>
|
||||||
'build:client:script'
|
|
||||||
], () =>
|
|
||||||
gulp.src([
|
gulp.src([
|
||||||
'./assets/**/*',
|
'./assets/**/*',
|
||||||
'./src/client/assets/**/*',
|
'./src/client/assets/**/*',
|
||||||
@@ -156,3 +138,19 @@ gulp.task('doc', () =>
|
|||||||
.pipe((cssnano as any)())
|
.pipe((cssnano as any)())
|
||||||
.pipe(gulp.dest('./built/docs/assets/'))
|
.pipe(gulp.dest('./built/docs/assets/'))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
gulp.task('build:client', gulp.parallel(
|
||||||
|
'build:client:script',
|
||||||
|
'build:client:styles',
|
||||||
|
'copy:client'
|
||||||
|
));
|
||||||
|
|
||||||
|
gulp.task('build', gulp.parallel(
|
||||||
|
'build:ts',
|
||||||
|
'build:copy',
|
||||||
|
'build:client',
|
||||||
|
'locales',
|
||||||
|
'doc'
|
||||||
|
));
|
||||||
|
|
||||||
|
gulp.task('default', gulp.task('build'));
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "わかった"
|
got-it: "わかった"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "カスタマイズのヒント"
|
title: "カスタマイズのヒント"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "ゴミ箱"
|
trash: "ゴミ箱"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "日"
|
sunday: "日"
|
||||||
monday: "月"
|
monday: "月"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "公式アカウント"
|
verified-user: "公式アカウント"
|
||||||
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "やり直す"
|
retry: "やり直す"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "アプリケーションに戻って、やっていってください。"
|
please-go-back: "アプリケーションに戻って、やっていってください。"
|
||||||
error: "セッションが存在しません。"
|
error: "セッションが存在しません。"
|
||||||
sign-in: "サインインしてください"
|
sign-in: "サインインしてください"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
vote-count: "{}票"
|
vote-count: "{}票"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "フォルダーを作成"
|
create-folder: "フォルダーを作成"
|
||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー:"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "リバーシ"
|
game: "リバーシ"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了しました!"
|
success: "設定が完了しました!"
|
||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "通知"
|
title: "通知"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
next: "次の投稿"
|
next: "次の投稿"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "フォト"
|
title: "フォト"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "キーワード"
|
keywords: "キーワード"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ meta:
|
|||||||
common:
|
common:
|
||||||
misskey: "Ein ⭐ des Fediversums"
|
misskey: "Ein ⭐ des Fediversums"
|
||||||
about-title: "Ein ⭐ des Fediversums."
|
about-title: "Ein ⭐ des Fediversums."
|
||||||
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
about: "Danke, dass Du Misskey gefunden hast. Misskey ist eine <b>dezentralisierte Microblogging-Plattform</b>, welche auf der ganzen Welt verteilt ist. Da es innerhalb es Fediversums existiert (ein Universum, in dem verschiedene Soziale Netzwerke organisiert sind), ist es unmittelbar mit anderen sozialen Netzwerken verbunden. Warum nimmst du dir nicht einmal eine Auszeit von dem Trubel der Stadt und tauchst in das neue Internet hinein?"
|
||||||
intro:
|
intro:
|
||||||
title: "Was ist Misskey?"
|
title: "Was ist Misskey?"
|
||||||
about: "Misskeyはオープンソースの<b>分散型マイクロブログSNS</b>です。リッチで高度にカスタマイズできるUI、投稿へのリアクション、ファイルを一元管理できるドライブなど、先進的な機能を揃えています。また、Fediverseと呼ばれるネットワークに接続できるため、他のSNSともやり取りできます。例えば、あなたが何か投稿すると、その投稿はMisskeyだけでなく他のSNSにも伝わります。ちょうどある惑星から他の惑星に電波を発信している様子をイメージしてください。"
|
about: "Misskeyはオープンソースの<b>分散型マイクロブログSNS</b>です。リッチで高度にカスタマイズできるUI、投稿へのリアクション、ファイルを一元管理できるドライブなど、先進的な機能を揃えています。また、Fediverseと呼ばれるネットワークに接続できるため、他のSNSともやり取りできます。例えば、あなたが何か投稿すると、その投稿はMisskeyだけでなく他のSNSにも伝わります。ちょうどある惑星から他の惑星に電波を発信している様子をイメージしてください。"
|
||||||
@@ -25,9 +25,11 @@ common:
|
|||||||
application-authorization: "Autorisierte Anwendungen"
|
application-authorization: "Autorisierte Anwendungen"
|
||||||
close: "Schließen"
|
close: "Schließen"
|
||||||
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
|
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
|
||||||
load-more: "もっと読み込む"
|
load-more: "Mehr laden"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "Bitte Passwort eingeben"
|
||||||
2fa: "二段階認証"
|
2fa: "Zwei-Faktor-Authentifizierung"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "Verstanden!"
|
got-it: "Verstanden!"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Anpassung-Tipps"
|
title: "Anpassung-Tipps"
|
||||||
@@ -54,8 +56,17 @@ common:
|
|||||||
years_ago: "vor {} Jahr(en)"
|
years_ago: "vor {} Jahr(en)"
|
||||||
month-and-day: "{day}/{month}"
|
month-and-day: "{day}/{month}"
|
||||||
trash: "Papierkorb"
|
trash: "Papierkorb"
|
||||||
drive: "ドライブ"
|
drive: "Drive"
|
||||||
messaging: "トーク"
|
messaging: "Unterhaltungen"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "So"
|
sunday: "So"
|
||||||
monday: "Mo"
|
monday: "Mo"
|
||||||
@@ -91,9 +102,9 @@ common:
|
|||||||
followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
|
followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
|
||||||
specified: "Direkt"
|
specified: "Direkt"
|
||||||
specified-desc: "Nur für bestimmte Benutzer posten"
|
specified-desc: "Nur für bestimmte Benutzer posten"
|
||||||
local-public: "公開 (ローカルのみ)"
|
local-public: "Öffentlich (nur lokal)"
|
||||||
local-home: "ホーム (ローカルのみ)"
|
local-home: "Home (nur lokal)"
|
||||||
local-followers: "フォロワー (ローカルのみ)"
|
local-followers: "Follower (nur lokal)"
|
||||||
note-placeholders:
|
note-placeholders:
|
||||||
a: "Was machst du gerade?"
|
a: "Was machst du gerade?"
|
||||||
b: "Was ist so passiert?"
|
b: "Was ist so passiert?"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "Verifizierter Benutzer"
|
verified-user: "Verifizierter Benutzer"
|
||||||
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "Dies ist eine Entwicklungsversion. Nicht in einer Produktionsumgebung verwenden."
|
do-not-use-in-production: "Dies ist eine Entwicklungsversion. Nicht in einer Produktionsumgebung verwenden."
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "Erneut versuchen"
|
retry: "Erneut versuchen"
|
||||||
@@ -171,18 +184,18 @@ common:
|
|||||||
hashtags: "Hashtags"
|
hashtags: "Hashtags"
|
||||||
dev: "Fehler beim Erstellen der Applikation. Bitte versuche es erneut."
|
dev: "Fehler beim Erstellen der Applikation. Bitte versuche es erneut."
|
||||||
ai-chan-kawaii: "藍ちゃかわいい"
|
ai-chan-kawaii: "藍ちゃかわいい"
|
||||||
you: "あなた"
|
you: "Du"
|
||||||
auth/views/form.vue:
|
auth/views/form.vue:
|
||||||
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
|
share-access: "Erlaubst Du <i>{name}</i> auf deinen Account zuzugreifen?"
|
||||||
permission-ask: "このアプリは次の権限を要求しています:"
|
permission-ask: "Diese Applikation benötigt folgende Berechtigungen:"
|
||||||
account-read: "アカウントの情報を見る。"
|
account-read: "Accountinformationen anzeigen."
|
||||||
account-write: "アカウントの情報を操作する。"
|
account-write: "Accountinformationen bearbeiten."
|
||||||
note-write: "Senden."
|
note-write: "Senden."
|
||||||
like-write: "いいねしたりいいね解除する。"
|
like-write: "Auf Beiträge reagieren."
|
||||||
following-write: "フォローしたりフォロー解除する。"
|
following-write: "Folgen oder entfolgen."
|
||||||
drive-read: "ドライブを見る。"
|
drive-read: "ドライブを見る。"
|
||||||
drive-write: "ドライブを操作する。"
|
drive-write: "ドライブを操作する。"
|
||||||
notification-read: "通知を見る。"
|
notification-read: "Siehe deine Benachrichtigungen."
|
||||||
notification-write: "Benachrichtigungen verwalten."
|
notification-write: "Benachrichtigungen verwalten."
|
||||||
cancel: "Abbrechen"
|
cancel: "Abbrechen"
|
||||||
accept: "Zugriff erlauben."
|
accept: "Zugriff erlauben."
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "Bitte gehe zurück zur Anwendung."
|
please-go-back: "Bitte gehe zurück zur Anwendung."
|
||||||
error: "Sitzung ist nicht vorhanden."
|
error: "Sitzung ist nicht vorhanden."
|
||||||
sign-in: "Bitte melde dich an."
|
sign-in: "Bitte melde dich an."
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "Warten auf {}"
|
waiting-for: "Warten auf {}"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "Diese Notiz favorisieren"
|
favorite: "Diese Notiz favorisieren"
|
||||||
unfavorite: "Aus Favoriten entfernen"
|
unfavorite: "Aus Favoriten entfernen"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "An die Profilseite pinnen"
|
pin: "An die Profilseite pinnen"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "Löschen"
|
delete: "Löschen"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Stimme für '{}'"
|
vote-to: "Stimme für '{}'"
|
||||||
vote-count: "{} Stimmen"
|
vote-count: "{} Stimmen"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "Ein Verzeichnis erstellen"
|
create-folder: "Ein Verzeichnis erstellen"
|
||||||
upload: "Eine Datei hochladen"
|
upload: "Eine Datei hochladen"
|
||||||
url-upload: "Von einer URL hochladen"
|
url-upload: "Von einer URL hochladen"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "Du folgst niemanden"
|
empty: "Du folgst niemanden"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "Wem folgen?"
|
|
||||||
empty: "Der ausgewählte Benutzer konnte nicht gefunden werden."
|
|
||||||
fetching: "Lade…"
|
|
||||||
refresh: "Mehr"
|
|
||||||
close: "Schließen"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "リバーシ"
|
game: "リバーシ"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "Automatische Pop-out Fenster"
|
auto-popout: "Automatische Pop-out Fenster"
|
||||||
auto-popout-desc: "Pop-out ein offenes Fenster wenn möglich. Diese Einstellung wird im Browser gespeichert."
|
auto-popout-desc: "Pop-out ein offenes Fenster wenn möglich. Diese Einstellung wird im Browser gespeichert."
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "Erscheinungsbild und Anzeige"
|
display: "Erscheinungsbild und Anzeige"
|
||||||
customize: "Startseite anpassen"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了しました!"
|
success: "設定が完了しました!"
|
||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Favoriten"
|
favorites: "Favoriten"
|
||||||
lists: "Listen"
|
lists: "Listen"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "Einstellungen"
|
settings: "Einstellungen"
|
||||||
signout: "Ausloggen"
|
signout: "Ausloggen"
|
||||||
dark: "Verdunkeln"
|
dark: "Verdunkeln"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Home"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "Spielen"
|
game: "Spielen"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Benachrichtigungen"
|
title: "Benachrichtigungen"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Vorheriger Kommentar"
|
prev: "Vorheriger Kommentar"
|
||||||
next: "Nächster Kommentar"
|
next: "Nächster Kommentar"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "フォト"
|
title: "フォト"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "Lade…"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "Favoriten"
|
title: "Favoriten"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "Schlagwörter"
|
keywords: "Schlagwörter"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -8,14 +8,14 @@ common:
|
|||||||
about: "Thank you for finding Misskey. Misskey is a <b>decentralized microblogging platform</b> born on Earth. Since it exists within the Fediverse (a universe where various social media platforms are organized), it is mutually linked with other social media platforms. Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet?"
|
about: "Thank you for finding Misskey. Misskey is a <b>decentralized microblogging platform</b> born on Earth. Since it exists within the Fediverse (a universe where various social media platforms are organized), it is mutually linked with other social media platforms. Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet?"
|
||||||
intro:
|
intro:
|
||||||
title: "What is Misskey?"
|
title: "What is Misskey?"
|
||||||
about: "Misskey is an open-source <b>decentralized microblogging service</b>. Sophisticated fully customizable UI, varieties of reactions for posts, free file storage providing an integrated management system and other advanced functions are available. In addition, Misskey connects to a network system called the “Fediverse” enables us to communicate with users on other SNSs. For example, when you post something it will be sent not only to Misskey but also Mastodon and Pleroma. Just imagine that the planet is sending a radio transmission to other planet to communicate."
|
about: "Misskey is an open-source, <b>decentralized microblogging software</b>. It has a sophisticated, fully customizable user interface, a variety of ways for expressing a reaction to posts, free file storage providing an integrated management system, and other advanced features are available. In addition, Misskey connects to a network system called the “Fediverse”, which enables us to communicate with users on other SNSs. For example, when you post something, it will be sent not only to Misskey users, but also those on Mastodon and Pleroma. Just imagine that the planet is sending a radio transmission to another planet, in order to communicate."
|
||||||
features: "Features"
|
features: "Features"
|
||||||
rich-contents: "Post"
|
rich-contents: "Post"
|
||||||
rich-contents-desc: "Just post your idea, hot topics and anything you want to share. You may want to decorate your words, attach your favorite pictures, send files including movies and create a poll - those are the things you can do on Misskey!"
|
rich-contents-desc: "Just post your idea, hot topics, and anything you want to share. You may want to decorate your words, attach your favorite pictures, send files, including videos, or create a poll - those are some of the things you can do with Misskey!"
|
||||||
reaction: "Reactions"
|
reaction: "Reactions"
|
||||||
reaction-desc: "Easiest way to tell your emotions. Misskey allows you to add various type of reactions to other’s post. The emotional experience on Misskey will never be on other SNSs which only able to push “likes”."
|
reaction-desc: "The easiest way to express your emotions. Misskey allows you to add various kinds of reactions to other's posts. The emotional experience on Misskey will never be on other SNSs, which are only able to push “likes”."
|
||||||
ui: "Interface"
|
ui: "Interface"
|
||||||
ui-desc: "No UI fits for everyone. Therefore, Misskey has a highly customizable UI for your taste. Make your original home by editing, adjusting layouts of timeline and placing selectable widgets you can easily customize."
|
ui-desc: "No single UI can suit everyone. Therefore, Misskey has a highly customizable UI for your tastes. You can make your home original by editing the layout of your timeline, and moving around selectable widgets that you can easily adjust to make this place your own."
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
drive-desc: "Wanna post a picture you have already uploaded? Wish to organize, name and create a folder for your uploaded files? Misskey Drive is the best solution for you. Very easy to share your files online."
|
drive-desc: "Wanna post a picture you have already uploaded? Wish to organize, name and create a folder for your uploaded files? Misskey Drive is the best solution for you. Very easy to share your files online."
|
||||||
outro: "Check Misskey-unique features by seeing them with your own eyes! If you feel like this instance is not for you, try other instances, as Misskey is a decentralized SNS, so that you can easily find your mates. Then, GLHF!"
|
outro: "Check Misskey-unique features by seeing them with your own eyes! If you feel like this instance is not for you, try other instances, as Misskey is a decentralized SNS, so that you can easily find your mates. Then, GLHF!"
|
||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "Load more"
|
load-more: "Load more"
|
||||||
enter-password: "Please enter the Password"
|
enter-password: "Please enter the Password"
|
||||||
2fa: "Two-factor authentication"
|
2fa: "Two-factor authentication"
|
||||||
|
customize-home: "Customize home layout"
|
||||||
|
featured-notes: "Featured notes"
|
||||||
got-it: "Got it!"
|
got-it: "Got it!"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Customization tips"
|
title: "Customization tips"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "Trash"
|
trash: "Trash"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
messaging: "Talk"
|
messaging: "Talk"
|
||||||
|
home: "Home"
|
||||||
|
deck: "Deck"
|
||||||
|
timeline: "Timeline"
|
||||||
|
explore: "Explore"
|
||||||
|
following: "Following"
|
||||||
|
followers: "Followers"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "Following users will show their posts in your timeline."
|
||||||
|
explore: "Find users"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "S"
|
sunday: "S"
|
||||||
monday: "M"
|
monday: "M"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "Use avatar as a stone in reversi"
|
use-avatar-reversi-stones: "Use avatar as a stone in reversi"
|
||||||
verified-user: "Verified account"
|
verified-user: "Verified account"
|
||||||
disable-animated-mfm: "Disable animated texts in a post"
|
disable-animated-mfm: "Disable animated texts in a post"
|
||||||
|
disable-showing-animated-images: "Do not play animated images"
|
||||||
suggest-recent-hashtags: "Suggest recently used hashtags within the post composition area"
|
suggest-recent-hashtags: "Suggest recently used hashtags within the post composition area"
|
||||||
always-show-nsfw: "Always show NSFW contents"
|
always-show-nsfw: "Always show NSFW contents"
|
||||||
always-mark-nsfw: "Always mark posts with media attachments as NSFW"
|
always-mark-nsfw: "Always mark posts with media attachments as NSFW"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "Show Password"
|
show-password: "Show Password"
|
||||||
do-not-use-in-production: "This is a development build. Do not use in production."
|
do-not-use-in-production: "This is a development build. Do not use in production."
|
||||||
user-suspended: "This user has been suspended."
|
user-suspended: "This user has been suspended."
|
||||||
is-remote-user: "This user's information is mirrored."
|
is-remote-user: "The information about this user may not be entirely complete."
|
||||||
is-remote-post: "These post contents are mirrored."
|
is-remote-post: "These post contents are mirrored."
|
||||||
view-on-remote: "For completion, view it remotely."
|
view-on-remote: "For completion, view it remotely."
|
||||||
renoted-by: "Renoted by {user}"
|
renoted-by: "Renoted by {user}"
|
||||||
|
no-notes: "Without any notes"
|
||||||
error:
|
error:
|
||||||
title: "Something happened :("
|
title: "Something happened :("
|
||||||
retry: "Retry"
|
retry: "Retry"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "Please go back to the application."
|
please-go-back: "Please go back to the application."
|
||||||
error: "Session does not exist."
|
error: "Session does not exist."
|
||||||
sign-in: "Please sign in."
|
sign-in: "Please sign in."
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "Verified accounts"
|
||||||
|
popular-users: "Popular users"
|
||||||
|
recently-updated-users: "Recently active users"
|
||||||
|
recently-registered-users: "Users who joined recently"
|
||||||
|
popular-tags: "Popular Tags"
|
||||||
|
federated: "From the fediverse"
|
||||||
|
explore: "Explore {host}"
|
||||||
|
users-info: "Currently, {users} users are registered here"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "There are no users."
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "Waiting for {}"
|
waiting-for: "Waiting for {}"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "Copy link"
|
copy-link: "Copy link"
|
||||||
favorite: "Favorite this note"
|
favorite: "Favorite this note"
|
||||||
unfavorite: "Unfavorite"
|
unfavorite: "Unfavorite"
|
||||||
|
watch: "Watch"
|
||||||
|
unwatch: "Unwatch"
|
||||||
pin: "Pin to your profile"
|
pin: "Pin to your profile"
|
||||||
unpin: "Unpin"
|
unpin: "Unpin"
|
||||||
delete: "Delete"
|
delete: "Delete"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "Unblock"
|
unblock: "Unblock"
|
||||||
push-to-list: "Add to list"
|
push-to-list: "Add to list"
|
||||||
select-list: "Select a list"
|
select-list: "Select a list"
|
||||||
list-pushed: "Successfully added {user} to {list}."
|
|
||||||
report-abuse: "Report abuse"
|
report-abuse: "Report abuse"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "What kind of nuisance did you encounter?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "The issue has been reported to the administrator. Your cooperation is much appreciated."
|
||||||
|
silence: "Mute"
|
||||||
|
unsilence: "Unmute"
|
||||||
|
suspend: "Suspend"
|
||||||
|
unsuspend: "Unsuspend"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Vote for '{}'"
|
vote-to: "Vote for '{}'"
|
||||||
vote-count: "{} votes"
|
vote-count: "{} votes"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "Account"
|
account: "Account"
|
||||||
location: "Location"
|
location: "Location"
|
||||||
description: "About me"
|
description: "About me"
|
||||||
|
you-can-include-hashtags: "You can also include hashtags in your profile description."
|
||||||
language: "Language"
|
language: "Language"
|
||||||
birthday: "Birthday"
|
birthday: "Birthday"
|
||||||
avatar: "Icon"
|
avatar: "Icon"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "Email Address"
|
email-address: "Email Address"
|
||||||
email-verified: "Your email has been verified."
|
email-verified: "Your email has been verified."
|
||||||
email-not-verified: "Email address is not confirmed. Please check your inbox."
|
email-not-verified: "Email address is not confirmed. Please check your inbox."
|
||||||
|
export: "Export"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "All posted Notes"
|
||||||
|
following-list: "List of followers"
|
||||||
|
mute-list: "List of muted accounts"
|
||||||
|
blocking-list: "List of blocked accounts"
|
||||||
|
export-requested: "You have requested an export. This may take a while. After the export is complete, the resulting file will be added to the drive."
|
||||||
|
enter-password: "Please enter your password"
|
||||||
|
danger-zone: "Cautious options"
|
||||||
|
delete-account: "Remove the account"
|
||||||
|
account-deleted: "The account has been deleted. It may take some time until all of the data disappears."
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "User"
|
users: "User"
|
||||||
rename: "Rename list"
|
rename: "Rename list"
|
||||||
@@ -537,7 +578,7 @@ common/views/widgets/memo.vue:
|
|||||||
memo: "Write here!"
|
memo: "Write here!"
|
||||||
save: "Save"
|
save: "Save"
|
||||||
common/views/widgets/slideshow.vue:
|
common/views/widgets/slideshow.vue:
|
||||||
folder-customize-mode: "To specify a folder, please exit customize mode"
|
folder-customize-mode: "To specify a folder, please exit customization mode"
|
||||||
folder: "Please click and specify a folder"
|
folder: "Please click and specify a folder"
|
||||||
no-image: "There is no image in this folder"
|
no-image: "There is no image in this folder"
|
||||||
common/views/widgets/tips.vue:
|
common/views/widgets/tips.vue:
|
||||||
@@ -548,7 +589,7 @@ common/views/widgets/tips.vue:
|
|||||||
tips-line5: "You can upload files by dragging and dropping them to Drive."
|
tips-line5: "You can upload files by dragging and dropping them to Drive."
|
||||||
tips-line6: "You can move a folder by dragging it within the Drive."
|
tips-line6: "You can move a folder by dragging it within the Drive."
|
||||||
tips-line7: "You can move folders by dragging them within the Drive."
|
tips-line7: "You can move folders by dragging them within the Drive."
|
||||||
tips-line8: "Home can be customized from the settings."
|
tips-line8: "The Home layout can be customized from the settings."
|
||||||
tips-line9: "Misskey is licensed under AGPLv3."
|
tips-line9: "Misskey is licensed under AGPLv3."
|
||||||
tips-line10: "Using the Time Machine widget makes it easy to trace back to the past timeline."
|
tips-line10: "Using the Time Machine widget makes it easy to trace back to the past timeline."
|
||||||
tips-line11: "You can pin posts to user page by clicking on \"...\""
|
tips-line11: "You can pin posts to user page by clicking on \"...\""
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "Create a folder"
|
create-folder: "Create a folder"
|
||||||
upload: "Upload a file"
|
upload: "Upload a file"
|
||||||
url-upload: "Upload from a URL"
|
url-upload: "Upload from a URL"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "NSFW"
|
|
||||||
click-to-show: "Click to show"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "The content is NSFW"
|
sensitive: "The content is NSFW"
|
||||||
click-to-show: "Click to show"
|
click-to-show: "Click to show"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "Following {}"
|
following: "Following {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "It seems you don't have any following users…"
|
empty: "It seems you don't have any following users…"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "Recommended users:"
|
|
||||||
empty: "Couldn't find any recommended users."
|
|
||||||
fetching: "Loading"
|
|
||||||
refresh: "More"
|
|
||||||
close: "Close"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Reversi"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "Example: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "Example: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "Auto pop-out window"
|
auto-popout: "Auto pop-out window"
|
||||||
auto-popout-desc: "If it's possible, pop-out display will be used instead of opening a new window. This setting is stored in your browser."
|
auto-popout-desc: "If it's possible, pop-out display will be used instead of opening a new window. This setting is stored in your browser."
|
||||||
deck-nav: "Transitionless deck navigation"
|
keep-cw: "Preserve content warning"
|
||||||
deck-nav-desc: "You get a temporary column without page transitions during navigation when using the deck."
|
keep-cw-desc: "When replying to a post, the same content warning is set by default to the reply, as has been set by the original post."
|
||||||
deck-default: "Use Deck as default UI"
|
|
||||||
display: "Design and display"
|
display: "Design and display"
|
||||||
customize: "Customize home layout"
|
|
||||||
wallpaper: "Wallpaper"
|
wallpaper: "Wallpaper"
|
||||||
choose-wallpaper: "Choose a background"
|
choose-wallpaper: "Choose a background"
|
||||||
delete-wallpaper: "Remove background"
|
delete-wallpaper: "Remove background"
|
||||||
@@ -806,8 +836,8 @@ desktop/views/components/settings.vue:
|
|||||||
timeline: "Timeline"
|
timeline: "Timeline"
|
||||||
show-my-renotes: "Show my renotes in the timeline"
|
show-my-renotes: "Show my renotes in the timeline"
|
||||||
show-renoted-my-notes: "Show renoted posts of mine in timelines"
|
show-renoted-my-notes: "Show renoted posts of mine in timelines"
|
||||||
show-local-renotes: "Show renoted local posts in timelines"
|
show-local-renotes: "Show renoted local posts in the timelines"
|
||||||
show-maps: "Display a map to show the location"
|
show-maps: "Display a map to show location"
|
||||||
remain-deleted-note: "Continue to show deleted posts"
|
remain-deleted-note: "Continue to show deleted posts"
|
||||||
deck-column-align: "Deck column alignment"
|
deck-column-align: "Deck column alignment"
|
||||||
deck-column-align-center: "Center"
|
deck-column-align-center: "Center"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "Settings saved!"
|
success: "Settings saved!"
|
||||||
failed: "Failed to setup. Please ensure that the token is correct."
|
failed: "Failed to setup. Please ensure that the token is correct."
|
||||||
info: "From the next time you sign in to Misskey, the token displayed on your device will be necessary too, as well as the password."
|
info: "From the next time you sign in to Misskey, the token displayed on your device will be necessary too, as well as the password."
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "NSFW"
|
||||||
|
click-to-show: "Click to show"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "To access the API, set this token as the key 'i' of request parameters."
|
intro: "To access the API, set this token as the key 'i' of request parameters."
|
||||||
caution: "Do not enter this token to any apps nor tell this token to others otherwise your account may get compromised."
|
caution: "Do not enter this token to any apps nor tell this token to others otherwise your account may get compromised."
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Favorites"
|
favorites: "Favorites"
|
||||||
lists: "Lists"
|
lists: "Lists"
|
||||||
follow-requests: "Follow requests"
|
follow-requests: "Follow requests"
|
||||||
customize: "Customize home layout"
|
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
settings: "Settings"
|
settings: "Settings"
|
||||||
signout: "Sign out"
|
signout: "Sign out"
|
||||||
dark: "Toggle dark mode"
|
dark: "Toggle dark mode"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Home"
|
|
||||||
deck: "Deck"
|
|
||||||
game: "Games"
|
game: "Games"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Notifications"
|
title: "Notifications"
|
||||||
@@ -966,7 +996,7 @@ desktop/views/components/received-follow-requests-window.vue:
|
|||||||
reject: "Reject"
|
reject: "Reject"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
title: "User lists"
|
title: "User lists"
|
||||||
create-list: "Create list"
|
create-list: "Create a list"
|
||||||
list-name: "List name"
|
list-name: "List name"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "Posts"
|
notes: "Posts"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "Announcements"
|
announcements: "Announcements"
|
||||||
hashtags: "Hashtags"
|
hashtags: "Hashtags"
|
||||||
abuse: "Abuse"
|
abuse: "Abuse"
|
||||||
|
queue: "Job Queue"
|
||||||
back-to-misskey: "Back to Misskey"
|
back-to-misskey: "Back to Misskey"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "Dashboard"
|
dashboard: "Dashboard"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "Instances"
|
instances: "Instances"
|
||||||
this-instance: "This instance"
|
this-instance: "This instance"
|
||||||
federated: "Federated"
|
federated: "Federated"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "Action(s)"
|
||||||
|
remove-all-jobs: "Clear all queued jobs"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "Abuse"
|
title: "Abuse"
|
||||||
target: "Target"
|
target: "Target"
|
||||||
@@ -1011,7 +1045,6 @@ admin/views/instance.vue:
|
|||||||
instance-name: "Instance name"
|
instance-name: "Instance name"
|
||||||
instance-description: "Instance description"
|
instance-description: "Instance description"
|
||||||
host: "Host"
|
host: "Host"
|
||||||
logo-url: "Logo image URL"
|
|
||||||
banner-url: "Banner image URL"
|
banner-url: "Banner image URL"
|
||||||
error-image-url: "Error image URL"
|
error-image-url: "Error image URL"
|
||||||
languages: "Language of this instance"
|
languages: "Language of this instance"
|
||||||
@@ -1054,7 +1087,7 @@ admin/views/instance.vue:
|
|||||||
disable-registration: "Disable new user registration"
|
disable-registration: "Disable new user registration"
|
||||||
disable-local-timeline: "Disable the Local Timeline"
|
disable-local-timeline: "Disable the Local Timeline"
|
||||||
disable-global-timeline: "Disable global timeline"
|
disable-global-timeline: "Disable global timeline"
|
||||||
disabling-timelines-info: "これらのタイムラインを無効にしても、管理者およびモデレーターは引き続き利用できます。"
|
disabling-timelines-info: "Even if you disable these timelines, the administrator as well as moderators can use them continually."
|
||||||
invite: "Invite"
|
invite: "Invite"
|
||||||
save: "Save"
|
save: "Save"
|
||||||
saved: "Saved"
|
saved: "Saved"
|
||||||
@@ -1072,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "Turn off STARTTLS when used that."
|
smtp-secure-info: "Turn off STARTTLS when used that."
|
||||||
smtp-host: "SMTP Host"
|
smtp-host: "SMTP Host"
|
||||||
smtp-port: "SMTP Port"
|
smtp-port: "SMTP Port"
|
||||||
|
smtp-auth: "Perform SMTP authentication"
|
||||||
smtp-user: "SMTP User"
|
smtp-user: "SMTP User"
|
||||||
smtp-pass: "SMTP Password"
|
smtp-pass: "SMTP Password"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1099,7 +1133,7 @@ admin/views/charts.vue:
|
|||||||
users: "The number of users: increase/decrease"
|
users: "The number of users: increase/decrease"
|
||||||
users-total: "Total users"
|
users-total: "Total users"
|
||||||
active-users: "Active users"
|
active-users: "Active users"
|
||||||
drive: "Capacity used as the storage: increase/decrease"
|
drive: "Increase and decrease in storage capacity use"
|
||||||
drive-total: "Total usage of Drive"
|
drive-total: "Total usage of Drive"
|
||||||
drive-files: "The number of files on the storage: increase/decrease"
|
drive-files: "The number of files on the storage: increase/decrease"
|
||||||
drive-files-total: "Total number of files on Drive"
|
drive-files-total: "Total number of files on Drive"
|
||||||
@@ -1126,23 +1160,32 @@ admin/views/drive.vue:
|
|||||||
deleted: "Deleted successfully"
|
deleted: "Deleted successfully"
|
||||||
mark-as-sensitive: "Mark as 'sensitive'"
|
mark-as-sensitive: "Mark as 'sensitive'"
|
||||||
unmark-as-sensitive: "Unmark as 'sensitive'"
|
unmark-as-sensitive: "Unmark as 'sensitive'"
|
||||||
marked-as-sensitive: "閲覧注意に設定しました"
|
marked-as-sensitive: "Set a sensitive content notice"
|
||||||
unmarked-as-sensitive: "閲覧注意を解除しました"
|
unmarked-as-sensitive: "Remove the sensitive content notice"
|
||||||
admin/views/users.vue:
|
admin/views/users.vue:
|
||||||
operation: "Operations"
|
operation: "Operations"
|
||||||
username-or-userid: "Username or user ID"
|
username-or-userid: "Username or user ID"
|
||||||
user-not-found: "User not found"
|
user-not-found: "User not found"
|
||||||
lookup: "Look up"
|
lookup: "Look up"
|
||||||
reset-password: "Reset password"
|
reset-password: "Reset password"
|
||||||
|
reset-password-confirm: "Do you want to reset your password?"
|
||||||
password-updated: "The password is now \"{password}\""
|
password-updated: "The password is now \"{password}\""
|
||||||
suspend: "Suspend"
|
suspend: "Suspend"
|
||||||
|
suspend-confirm: "Do you want to suspend this account?"
|
||||||
suspended: "Successfully suspended."
|
suspended: "Successfully suspended."
|
||||||
unsuspend: "Unsuspend"
|
unsuspend: "Unsuspend"
|
||||||
|
unsuspend-confirm: "Are you sure you want to unsuspend this account?"
|
||||||
unsuspended: "The user has successfully unsuspended."
|
unsuspended: "The user has successfully unsuspended."
|
||||||
|
make-silence: "Mute"
|
||||||
|
unmake-silence: "Unmute"
|
||||||
verify: "Verify account"
|
verify: "Verify account"
|
||||||
|
verify-confirm: "Do you want this to be a verified account?"
|
||||||
verified: "The account is now being verified"
|
verified: "The account is now being verified"
|
||||||
unverify: "Unverify account"
|
unverify: "Unverify account"
|
||||||
|
unverify-confirm: "Do you want to remove the 'verified account' designation?"
|
||||||
unverified: "The account is now being unverified"
|
unverified: "The account is now being unverified"
|
||||||
|
update-remote-user: "Update information about remote user"
|
||||||
|
remote-user-updated: "The information regarding the remote user has been updated."
|
||||||
users:
|
users:
|
||||||
title: "Users"
|
title: "Users"
|
||||||
sort:
|
sort:
|
||||||
@@ -1158,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "Moderator"
|
moderator: "Moderator"
|
||||||
adminOrModerator: "Admin/Moderator"
|
adminOrModerator: "Admin/Moderator"
|
||||||
verified: "Verified account"
|
verified: "Verified account"
|
||||||
|
silenced: "Already silenced"
|
||||||
suspended: "Suspended"
|
suspended: "Suspended"
|
||||||
origin:
|
origin:
|
||||||
title: "Origin"
|
title: "Origin"
|
||||||
@@ -1205,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "Deleted"
|
removed: "Deleted"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "Federation"
|
||||||
|
host: "Host"
|
||||||
|
notes: "Notes"
|
||||||
|
users: "Users"
|
||||||
|
following: "Following"
|
||||||
|
followers: "Followers"
|
||||||
|
status: "Status"
|
||||||
|
latest-request-sent-at: "Time of last request sent"
|
||||||
|
latest-request-received-at: "Last request received at"
|
||||||
|
remove-all-following: "Withold all followers"
|
||||||
|
remove-all-following-info: "Unfollow all accounts from {host}. Please run this if the instance no longer exists."
|
||||||
|
block: "Block"
|
||||||
|
marked-as-closed: "Marked as closed"
|
||||||
|
lookup: "Look up"
|
||||||
|
instances: "Instances"
|
||||||
|
instance-not-registered: "The instance has not been discovered"
|
||||||
|
sort: "Sort by"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "Date of discovery (Ascending)"
|
||||||
|
caughtAtDesc: "Date of discovery (Descending)"
|
||||||
|
lastCommunicatedAtAsc: "The date and time of the older interactions"
|
||||||
|
lastCommunicatedAtDesc: "The date and time of the newer interactions"
|
||||||
|
notesAsc: "Order by least Notes posted"
|
||||||
|
notesDesc: "Order by most Notes posted"
|
||||||
|
usersAsc: "Less followers"
|
||||||
|
usersDesc: "More followers"
|
||||||
|
followingAsc: "Least followed"
|
||||||
|
followingDesc: "Has more followers"
|
||||||
|
followersAsc: "Sort by having less followers"
|
||||||
|
followersDesc: "Sort by the larger number of followers"
|
||||||
|
driveUsageAsc: "Least storage used"
|
||||||
|
driveUsageDesc: "Most storage used"
|
||||||
|
driveFilesAsc: "By the smallest number of files stored on Drive"
|
||||||
|
driveFilesDesc: "By the largest number of files stored on Drive"
|
||||||
|
state: "Status"
|
||||||
|
states:
|
||||||
|
all: "All"
|
||||||
|
blocked: "Blocked"
|
||||||
|
not-responding: "Without response"
|
||||||
|
marked-as-closed: "Marked as closed"
|
||||||
|
result-is-truncated: "Displaying the top {n} items."
|
||||||
|
charts: "Charts"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "Requests"
|
||||||
|
users: "Increase, or decrease in the number of users"
|
||||||
|
users-total: "Total number of users"
|
||||||
|
notes: "Increase, or decrease in the number of notes"
|
||||||
|
notes-total: "Total number of notes"
|
||||||
|
ff: "Increase of followers"
|
||||||
|
ff-total: "Total number of follows accumulated"
|
||||||
|
drive-usage: "Increase and decrease in storage use"
|
||||||
|
drive-usage-total: "Total usage of the Drive"
|
||||||
|
drive-files: "Increase, or decrease in the number of files stored on Drive"
|
||||||
|
drive-files-total: "The number of files accumulated on Drive"
|
||||||
|
chart-spans:
|
||||||
|
hour: "Hourly"
|
||||||
|
day: "Daily"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "More details..."
|
about: "More details..."
|
||||||
gotit: "Got it!"
|
gotit: "Got it!"
|
||||||
@@ -1219,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "Information"
|
info: "Information"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey storage"
|
title: "Misskey storage"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "Customize home layout"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Previous post"
|
prev: "Previous post"
|
||||||
next: "Next post"
|
next: "Next post"
|
||||||
@@ -1252,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "Photos"
|
title: "Photos"
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
no-photos: "No photos"
|
no-photos: "No photos"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "Follows you"
|
|
||||||
menu: "Menu"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "Notes"
|
posts: "Notes"
|
||||||
following: "Following"
|
following: "Following"
|
||||||
followers: "Followers"
|
followers: "Followers"
|
||||||
is-bot: "This account is a Bot"
|
is-bot: "This account is a Bot"
|
||||||
|
no-description: "The user has not written their profile introduction"
|
||||||
years-old: "{age} years old"
|
years-old: "{age} years old"
|
||||||
year: "/"
|
year: "/"
|
||||||
month: "/"
|
month: "/"
|
||||||
day: "-"
|
day: "-"
|
||||||
|
follows-you: "Follows you"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "Posts"
|
default: "Posts"
|
||||||
with-replies: "Posts and replies"
|
with-replies: "Posts and replies"
|
||||||
with-media: "Media"
|
with-media: "Media"
|
||||||
my-posts: "My posts"
|
my-posts: "My posts"
|
||||||
empty: "This user doesn't seem to have posted anything yet."
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "Message"
|
title: "Message"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1303,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "What do you want to do? (Please enter a number): <1 → Upload a file | 2 → Upload a file from a URL | 3 → Create a folder | 4 → Change this folder's name | 5 → Move this folder | 6 → Delete this folder>"
|
prompt: "What do you want to do? (Please enter a number): <1 → Upload a file | 2 → Upload a file from a URL | 3 → Create a folder | 4 → Change this folder's name | 5 → Move this folder | 6 → Delete this folder>"
|
||||||
deletion-alert: "Sorry! Deleting a folder is not yet implemented."
|
deletion-alert: "Sorry! Deleting a folder is not yet implemented."
|
||||||
folder-name: "Folder name"
|
folder-name: "Folder name"
|
||||||
root-rename-alert: "You're in the root; it can't be renamed because it's not a folder. Navigate to a folder you want to rename and try again."
|
here-is-root: "Currently, you are on the root, not inside of any folder."
|
||||||
root-move-alert: "You're in the root; it can't be moved because it's not a folder. Navigate to a folder you want to move and try again."
|
|
||||||
url-prompt: "URL of the file you want to upload"
|
url-prompt: "URL of the file you want to upload"
|
||||||
uploading: "Upload requested. It may take a while for the upload to finish."
|
uploading: "Upload requested. It may take a while for the upload to finish."
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1322,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "NSFW"
|
nsfw: "NSFW"
|
||||||
mark-as-sensitive: "Mark as 'sensitive'"
|
mark-as-sensitive: "Mark as 'sensitive'"
|
||||||
unmark-as-sensitive: "Unmark as 'sensitive'"
|
unmark-as-sensitive: "Unmark as 'sensitive'"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "NSFW"
|
|
||||||
click-to-show: "Click to show"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "The content is NSFW"
|
sensitive: "The content is NSFW"
|
||||||
click-to-show: "Click to show"
|
click-to-show: "Click to show"
|
||||||
@@ -1334,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "Pending"
|
request-pending: "Pending"
|
||||||
follow-processing: "Processing"
|
follow-processing: "Processing"
|
||||||
follow-request: "Follow request"
|
follow-request: "Follow request"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "Let's follow them"
|
|
||||||
empty: "Featured user was not found."
|
|
||||||
fetching: "Loading"
|
|
||||||
refresh: "See more"
|
|
||||||
close: "Close"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "This post is private"
|
private: "This post is private"
|
||||||
deleted: "This post has been deleted"
|
deleted: "This post has been deleted"
|
||||||
@@ -1376,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "This post has been deleted"
|
deleted: "This post has been deleted"
|
||||||
media-count: "{} media attached"
|
media-count: "{} media attached"
|
||||||
poll: "Poll"
|
poll: "Poll"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "No notes"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "Welcome back, "
|
welcome-back: "Welcome back, "
|
||||||
adjective: "Sir"
|
adjective: "Sir"
|
||||||
@@ -1394,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "Settings"
|
settings: "Settings"
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
about: "About Misskey"
|
about: "About Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "It seems this user hasn't posted anything yet."
|
|
||||||
no-notes-with-media: "There are no notes with media attachments"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "All"
|
|
||||||
known: "In common"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "Favorites"
|
title: "Favorites"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1459,7 +1539,7 @@ mobile/views/pages/settings.vue:
|
|||||||
timeline: "Timeline"
|
timeline: "Timeline"
|
||||||
show-reply-target: "Show reply target"
|
show-reply-target: "Show reply target"
|
||||||
show-my-renotes: "Show my reposts"
|
show-my-renotes: "Show my reposts"
|
||||||
show-renoted-my-notes: "Show renoted posts of mine"
|
show-renoted-my-notes: "Show the renotes of my posts"
|
||||||
show-local-renotes: "Show renoted local posts"
|
show-local-renotes: "Show renoted local posts"
|
||||||
post-style: "Post design"
|
post-style: "Post design"
|
||||||
post-style-standard: "Standard"
|
post-style-standard: "Standard"
|
||||||
@@ -1469,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "Top"
|
notification-position-top: "Top"
|
||||||
behavior: "Behavior"
|
behavior: "Behavior"
|
||||||
fetch-on-scroll: "Endless loading on scroll"
|
fetch-on-scroll: "Endless loading on scroll"
|
||||||
|
keep-cw: "Preserve content warning"
|
||||||
note-visibility: "Post visibility"
|
note-visibility: "Post visibility"
|
||||||
default-note-visibility: "Default visibility"
|
default-note-visibility: "Default visibility"
|
||||||
remember-note-visibility: "Remember post visibility"
|
remember-note-visibility: "Remember post visibility"
|
||||||
@@ -1506,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "Activity"
|
activity: "Activity"
|
||||||
keywords: "Keywords"
|
keywords: "Keywords"
|
||||||
domains: "Domains"
|
domains: "Domains"
|
||||||
frequently-replied-users: "Frequently mentioned users"
|
frequently-replied-users: "Frequent mentions"
|
||||||
followers-you-know: "Followers you know"
|
followers-you-know: "Followers you know"
|
||||||
last-used-at: "Last active:"
|
last-used-at: "Last active:"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "No users you know"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "There are no users that you know"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "No notes"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "No photos"
|
no-photos: "No photos"
|
||||||
deck:
|
deck:
|
||||||
@@ -1537,11 +1612,14 @@ deck:
|
|||||||
rename: "Rename"
|
rename: "Rename"
|
||||||
stack-left: "Stack to the left"
|
stack-left: "Stack to the left"
|
||||||
pop-right: "Dock on the right"
|
pop-right: "Dock on the right"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "Timeline has been disabled"
|
||||||
|
description: "This timeline has been disabled by the server administrator."
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "Only media posts"
|
is-media-only: "Only media posts"
|
||||||
is-media-view: "Media view"
|
|
||||||
edit: "Options"
|
edit: "Options"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "Follows you"
|
||||||
posts: "Posts"
|
posts: "Posts"
|
||||||
following: "Following"
|
following: "Following"
|
||||||
followers: "Followers"
|
followers: "Followers"
|
||||||
|
|||||||
@@ -5,18 +5,18 @@ meta:
|
|||||||
common:
|
common:
|
||||||
misskey: "Una ⭐️ del fediverso"
|
misskey: "Una ⭐️ del fediverso"
|
||||||
about-title: "Una ⭐️ del fediverso"
|
about-title: "Una ⭐️ del fediverso"
|
||||||
about: "Gracias por encontrae Misskey. Misskey es una <b>plataforma descentralizada de microblogging</b> nacida en la Tierra. Gracias a existir dentro del Fediverso (un universo donde se organizan varias plataformas sociales) se encuentra enlazada mutuamente con otras plataformas sociales. ¿Por què no te tomas un respiro del caos de la ciudad y te sumerges es una nueva manera de entender Internet?"
|
about: "Gracias por encontrar Misskey. Misskey es una <b>plataforma descentralizada de microblogging</b> nacida en la Tierra. Porque el servicio existe dentro del Fediverso (un universo donde se organizan varias plataformas sociales), se encuentra enlazado mutuamente con otras plataformas sociales. ¿Por qué no te tomas un respiro del caos de la ciudad y te sumerges es una nueva manera de entender Internet?"
|
||||||
intro:
|
intro:
|
||||||
title: "Misskeyって?"
|
title: "¿Misskey?"
|
||||||
about: "Misskeyはオープンソースの<b>分散型マイクロブログSNS</b>です。リッチで高度にカスタマイズできるUI、投稿へのリアクション、ファイルを一元管理できるドライブなど、先進的な機能を揃えています。また、Fediverseと呼ばれるネットワークに接続できるため、他のSNSともやり取りできます。例えば、あなたが何か投稿すると、その投稿はMisskeyだけでなく他のSNSにも伝わります。ちょうどある惑星から他の惑星に電波を発信している様子をイメージしてください。"
|
about: "Misskey es un <b>Servicio de red social descentralizada de microblogging</b> de código abierto. Contiene una interfaz de usuario altamente personalizable, reacciones a posts, almacenamiento para poder manejar archivos y otras funciones avanzadas. Además de conectarse con la red llamada Fediverso, puede intercambiar mensajes con otras redes sociales. Por ejemplo, si contribuyes con algo, esa contribución es transmitida no sólo a Misskey sino a otras redes sociales. Imagina que se parece a transmitir una onda de radio de un planeta a otro."
|
||||||
features: "特徴"
|
features: "Características"
|
||||||
rich-contents: "投稿"
|
rich-contents: "Posts"
|
||||||
rich-contents-desc: "自分の考え、話題の出来事、皆と共有したいことについて発信してください。必要であれば、様々な構文を使って投稿を装飾したり、好きな画像、動画などのファイルやアンケートを添付することもできます。"
|
rich-contents-desc: "Escribe sobre tus pensamientos, eventos, todo lo que quieras compartir. Si es necesario, puedes usar varias sintaxis, decorar tus posts y añadir tus imágenes favoritas, archivos de viddeo y encuestas."
|
||||||
reaction: "リアクション"
|
reaction: "Reacciones"
|
||||||
reaction-desc: "あなたの気持ちを伝える最も簡単な方法です。Misskeyは、他のユーザーの投稿に様々なリアクションを付けることができます。いちどMisskeyのリアクション機能を体験してしまうと、もう「いいね」の概念しか存在しないSNSには戻れなくなるかもしれません。"
|
reaction-desc: "あなたの気持ちを伝える最も簡単な方法です。Misskeyは、他のユーザーの投稿に様々なリアクションを付けることができます。いちどMisskeyのリアクション機能を体験してしまうと、もう「いいね」の概念しか存在しないSNSには戻れなくなるかもしれません。"
|
||||||
ui: "インターフェース"
|
ui: "Interfaz"
|
||||||
ui-desc: "どのようなUIが使いやすいかは人それぞれです。だから、Misskeyは自由度の高いUIを持っています。レイアウトやデザインを調整したり、カスタマイズ可能な様々なウィジェットを配置したりして、自分だけのホームを作ってください。"
|
ui-desc: "どのようなUIが使いやすいかは人それぞれです。だから、Misskeyは自由度の高いUIを持っています。レイアウトやデザインを調整したり、カスタマイズ可能な様々なウィジェットを配置したりして、自分だけのホームを作ってください。"
|
||||||
drive: "ドライブ"
|
drive: "Drive"
|
||||||
drive-desc: "以前投稿したことのある画像をまた投稿したくなったことはありませんか?もしくは、アップロードしたファイルをフォルダ分けして整理したくなったことはありませんか?Misskeyの根幹に組み込まれたドライブ機能によってそれらが解決します。ファイルの共有も簡単です。"
|
drive-desc: "以前投稿したことのある画像をまた投稿したくなったことはありませんか?もしくは、アップロードしたファイルをフォルダ分けして整理したくなったことはありませんか?Misskeyの根幹に組み込まれたドライブ機能によってそれらが解決します。ファイルの共有も簡単です。"
|
||||||
outro: "他にもMisskeyにしかない機能はまだまだあるので、ぜひあなた自身の目で確かめてください。Misskeyは分散型SNSなので、このインスタンスが気に入らなければ他のインスタンスを試すこともできます。それでは、GLHF!"
|
outro: "他にもMisskeyにしかない機能はまだまだあるので、ぜひあなた自身の目で確かめてください。Misskeyは分散型SNSなので、このインスタンスが気に入らなければ他のインスタンスを試すこともできます。それでは、GLHF!"
|
||||||
adblock:
|
adblock:
|
||||||
@@ -27,7 +27,9 @@ common:
|
|||||||
do-not-copy-paste: "Por favor no copies código aquí. Tu cuenta puede resultar comprometida."
|
do-not-copy-paste: "Por favor no copies código aquí. Tu cuenta puede resultar comprometida."
|
||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "Autenticación de dos factores"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "¡Listo!"
|
got-it: "¡Listo!"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Consejos de personalización"
|
title: "Consejos de personalización"
|
||||||
@@ -54,8 +56,17 @@ common:
|
|||||||
years_ago: "Hace {} año(s)"
|
years_ago: "Hace {} año(s)"
|
||||||
month-and-day: "{day} de {month}"
|
month-and-day: "{day} de {month}"
|
||||||
trash: "Papelera"
|
trash: "Papelera"
|
||||||
drive: "ドライブ"
|
drive: "Drive"
|
||||||
messaging: "トーク"
|
messaging: "Conversación"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "domingo"
|
sunday: "domingo"
|
||||||
monday: "lunes"
|
monday: "lunes"
|
||||||
@@ -84,16 +95,16 @@ common:
|
|||||||
rip: "RIP"
|
rip: "RIP"
|
||||||
pudding: "Chafado"
|
pudding: "Chafado"
|
||||||
note-visibility:
|
note-visibility:
|
||||||
public: "公開"
|
public: "Público"
|
||||||
home: "ホーム"
|
home: "Inicio"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
home-desc: "Sólo en el timeline de inicio"
|
||||||
followers: "フォロワー"
|
followers: "Seguidores"
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
followers-desc: "Sólo para tus seguidores"
|
||||||
specified: "ダイレクト"
|
specified: "Mensaje directo"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
specified-desc: "Sólo para ciertos usuarios"
|
||||||
local-public: "公開 (ローカルのみ)"
|
local-public: "Público (sólo local)"
|
||||||
local-home: "ホーム (ローカルのみ)"
|
local-home: "Inicio (sólo local)"
|
||||||
local-followers: "フォロワー (ローカルのみ)"
|
local-followers: "Seguidores (sólo local)"
|
||||||
note-placeholders:
|
note-placeholders:
|
||||||
a: "¿Qué haces?"
|
a: "¿Qué haces?"
|
||||||
b: "¿Qué está pasando?"
|
b: "¿Qué está pasando?"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "Cuenta verificada"
|
verified-user: "Cuenta verificada"
|
||||||
disable-animated-mfm: "Desactivar texto animado en una publicación"
|
disable-animated-mfm: "Desactivar texto animado en una publicación"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -122,17 +134,18 @@ common:
|
|||||||
this-setting-is-this-device-only: "このデバイスのみ"
|
this-setting-is-this-device-only: "このデバイスのみ"
|
||||||
use-os-default-emojis: "OS標準の絵文字を使用"
|
use-os-default-emojis: "OS標準の絵文字を使用"
|
||||||
line-width: "線の太さ"
|
line-width: "線の太さ"
|
||||||
line-width-thin: "細い"
|
line-width-thin: "Fino"
|
||||||
line-width-normal: "普通"
|
line-width-normal: "普通"
|
||||||
line-width-thick: "太い"
|
line-width-thick: "Grueso"
|
||||||
hide-password: "パスワードを隠す"
|
hide-password: "パスワードを隠す"
|
||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "Esto está en desarrollo, no usarlo para producción."
|
do-not-use-in-production: "Esto está en desarrollo, no usarlo para producción."
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "やり直す"
|
retry: "やり直す"
|
||||||
@@ -171,7 +184,7 @@ common:
|
|||||||
hashtags: "Etiquetas"
|
hashtags: "Etiquetas"
|
||||||
dev: "アプリの作成に失敗しました。再度お試しください。"
|
dev: "アプリの作成に失敗しました。再度お試しください。"
|
||||||
ai-chan-kawaii: "藍ちゃかわいい"
|
ai-chan-kawaii: "藍ちゃかわいい"
|
||||||
you: "あなた"
|
you: "Tú"
|
||||||
auth/views/form.vue:
|
auth/views/form.vue:
|
||||||
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
|
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
|
||||||
permission-ask: "La aplicación requiere los siguientes permisos:"
|
permission-ask: "La aplicación requiere los siguientes permisos:"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "Por favor, vuelve a la aplicación."
|
please-go-back: "Por favor, vuelve a la aplicación."
|
||||||
error: "Esta sesión no existe."
|
error: "Esta sesión no existe."
|
||||||
sign-in: "Por favor inicia sesión."
|
sign-in: "Por favor inicia sesión."
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "Esperando por {}"
|
waiting-for: "Esperando por {}"
|
||||||
@@ -267,48 +291,48 @@ common/views/components/media-banner.vue:
|
|||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/theme.vue:
|
common/views/components/theme.vue:
|
||||||
theme: "テーマ"
|
theme: "Tema"
|
||||||
light-theme: "非ダークモード時に使用するテーマ"
|
light-theme: "非ダークモード時に使用するテーマ"
|
||||||
dark-theme: "ダークモード時に使用するテーマ"
|
dark-theme: "ダークモード時に使用するテーマ"
|
||||||
light-themes: "明るいテーマ"
|
light-themes: "Tema claro"
|
||||||
dark-themes: "暗いテーマ"
|
dark-themes: "Tema oscuro"
|
||||||
install-a-theme: "テーマのインストール"
|
install-a-theme: "Instalar tema"
|
||||||
theme-code: "テーマコード"
|
theme-code: "Código del tema"
|
||||||
install: "インストール"
|
install: "Instalación"
|
||||||
installed: "「{}」をインストールしました"
|
installed: "「{}」をインストールしました"
|
||||||
create-a-theme: "テーマの作成"
|
create-a-theme: "テーマの作成"
|
||||||
save-created-theme: "テーマを保存"
|
save-created-theme: "テーマを保存"
|
||||||
primary-color: "プライマリ カラー"
|
primary-color: "Color primario"
|
||||||
secondary-color: "セカンダリ カラー"
|
secondary-color: "Color secundario"
|
||||||
text-color: "文字色"
|
text-color: "文字色"
|
||||||
base-theme: "ベーステーマ"
|
base-theme: "Tema base"
|
||||||
base-theme-light: "Light"
|
base-theme-light: "Claro"
|
||||||
base-theme-dark: "Dark"
|
base-theme-dark: "Oscuro"
|
||||||
find-more-theme: "その他のテーマを入手"
|
find-more-theme: "その他のテーマを入手"
|
||||||
theme-name: "テーマ名"
|
theme-name: "Nombre del tema"
|
||||||
preview-created-theme: "プレビュー"
|
preview-created-theme: "Vista previa"
|
||||||
invalid-theme: "テーマが正しくありません。"
|
invalid-theme: "テーマが正しくありません。"
|
||||||
already-installed: "既にそのテーマはインストールされています。"
|
already-installed: "既にそのテーマはインストールされています。"
|
||||||
saved: "保存しました"
|
saved: "保存しました"
|
||||||
manage-themes: "テーマの管理"
|
manage-themes: "テーマの管理"
|
||||||
builtin-themes: "標準テーマ"
|
builtin-themes: "標準テーマ"
|
||||||
my-themes: "マイテーマ"
|
my-themes: "Mis temas"
|
||||||
installed-themes: "インストールされたテーマ"
|
installed-themes: "Temas instalados"
|
||||||
select-theme: "テーマを選択してください"
|
select-theme: "テーマを選択してください"
|
||||||
uninstall: "アンインストール"
|
uninstall: "Desinstalar"
|
||||||
uninstalled: "「{}」をアンインストールしました"
|
uninstalled: "「{}」をアンインストールしました"
|
||||||
author: "作者"
|
author: "作者"
|
||||||
desc: "説明"
|
desc: "説明"
|
||||||
export: "エクスポート"
|
export: "Exportar"
|
||||||
import: "インポート"
|
import: "Importar"
|
||||||
import-by-code: "またはコードをペースト"
|
import-by-code: "またはコードをペースト"
|
||||||
theme-name-required: "テーマ名は必須です。"
|
theme-name-required: "テーマ名は必須です。"
|
||||||
common/views/components/cw-button.vue:
|
common/views/components/cw-button.vue:
|
||||||
hide: "隠す"
|
hide: "隠す"
|
||||||
show: "もっと見る"
|
show: "Mostrar"
|
||||||
chars: "{count}文字"
|
chars: "{count} letras"
|
||||||
files: "{count}ファイル"
|
files: "{count} archivos"
|
||||||
poll: "アンケート"
|
poll: "Encuesta"
|
||||||
common/views/components/messaging.vue:
|
common/views/components/messaging.vue:
|
||||||
search-user: "Encuentra un usuario"
|
search-user: "Encuentra un usuario"
|
||||||
you: "Tu"
|
you: "Tu"
|
||||||
@@ -338,29 +362,34 @@ common/views/components/nav.vue:
|
|||||||
develop: "Desarrolladores"
|
develop: "Desarrolladores"
|
||||||
feedback: "Opiniones"
|
feedback: "Opiniones"
|
||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
mention: "メンション"
|
mention: "Menciones"
|
||||||
detail: "Detalles"
|
detail: "Detalles"
|
||||||
copy-content: "内容をコピー"
|
copy-content: "内容をコピー"
|
||||||
copy-link: "Copiar enlace"
|
copy-link: "Copiar enlace"
|
||||||
favorite: "Me gusta esta nota"
|
favorite: "Me gusta esta nota"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "Fijar en el perfil"
|
pin: "Fijar en el perfil"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "Borrar"
|
delete: "Borrar"
|
||||||
delete-confirm: "¿Seguro que quieres borrar la publicación?"
|
delete-confirm: "¿Seguro que quieres borrar la publicación?"
|
||||||
remote: "Ver el original"
|
remote: "Ver el original"
|
||||||
common/views/components/user-menu.vue:
|
common/views/components/user-menu.vue:
|
||||||
mention: "メンション"
|
mention: "Menciones"
|
||||||
mute: "ミュート"
|
mute: "Silenciar"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
block: "ブロック"
|
block: "Bloquear"
|
||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "'{}' para votar"
|
vote-to: "'{}' para votar"
|
||||||
vote-count: "{} votos"
|
vote-count: "{} votos"
|
||||||
@@ -377,15 +406,15 @@ common/views/components/poll-editor.vue:
|
|||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "Escoge una reacción"
|
choose-reaction: "Escoge una reacción"
|
||||||
common/views/components/emoji-picker.vue:
|
common/views/components/emoji-picker.vue:
|
||||||
custom-emoji: "カスタム絵文字"
|
custom-emoji: "Personalizados"
|
||||||
people: "人"
|
people: "Gente"
|
||||||
animals-and-nature: "動物&自然"
|
animals-and-nature: "Naturaleza"
|
||||||
food-and-drink: "食べ物&飲み物"
|
food-and-drink: "Comida y bebida"
|
||||||
activity: "アクティビティ"
|
activity: "Actividad"
|
||||||
travel-and-places: "場所"
|
travel-and-places: "Viajes y lugares"
|
||||||
objects: "物"
|
objects: "Objetos"
|
||||||
symbols: "記号"
|
symbols: "Símbolos"
|
||||||
flags: "旗"
|
flags: "Países"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
username: "Usuario"
|
username: "Usuario"
|
||||||
password: "Contraseña"
|
password: "Contraseña"
|
||||||
@@ -394,8 +423,8 @@ common/views/components/signin.vue:
|
|||||||
signin: "Entra"
|
signin: "Entra"
|
||||||
or: "O"
|
or: "O"
|
||||||
signin-with-twitter: "Ingresar con Twitter"
|
signin-with-twitter: "Ingresar con Twitter"
|
||||||
signin-with-github: "GitHubでログイン"
|
signin-with-github: "Ingresar con Github"
|
||||||
signin-with-discord: "Discordでログイン"
|
signin-with-discord: "Ingresar con Discord"
|
||||||
login-failed: "Autenticación fallida. Asegúrate de haber usado el nombre de usuario y contraseña correctos."
|
login-failed: "Autenticación fallida. Asegúrate de haber usado el nombre de usuario y contraseña correctos."
|
||||||
common/views/components/signup.vue:
|
common/views/components/signup.vue:
|
||||||
invitation-code: "Código de invitación"
|
invitation-code: "Código de invitación"
|
||||||
@@ -478,17 +507,18 @@ common/views/components/language-settings.vue:
|
|||||||
specify-language: "言語を指定"
|
specify-language: "言語を指定"
|
||||||
info: "変更はページの再度読み込み後に反映されます。"
|
info: "変更はページの再度読み込み後に反映されます。"
|
||||||
common/views/components/profile-editor.vue:
|
common/views/components/profile-editor.vue:
|
||||||
title: "プロフィール"
|
title: "Perfil"
|
||||||
name: "名前"
|
name: "Nombre"
|
||||||
account: "アカウント"
|
account: "Cuenta"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "Avatar"
|
||||||
banner: "バナー"
|
banner: "Banner"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "Esta cuenta es un gato"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "Esta cuenta es un bot"
|
||||||
is-locked: "フォローを承認制にする"
|
is-locked: "フォローを承認制にする"
|
||||||
careful-bot: "Botからのフォローだけ承認制にする"
|
careful-bot: "Botからのフォローだけ承認制にする"
|
||||||
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
|
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
|
||||||
@@ -499,11 +529,22 @@ common/views/components/profile-editor.vue:
|
|||||||
uploading: "アップロード中"
|
uploading: "アップロード中"
|
||||||
upload-failed: "アップロードに失敗しました"
|
upload-failed: "アップロードに失敗しました"
|
||||||
email: "メール設定"
|
email: "メール設定"
|
||||||
email-address: "メールアドレス"
|
email-address: "Correo electrónico"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "Usuarios"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
delete: "リストを削除"
|
delete: "リストを削除"
|
||||||
remove-user: "このリストから削除"
|
remove-user: "このリストから削除"
|
||||||
@@ -568,7 +609,7 @@ common/views/pages/follow.vue:
|
|||||||
following: "Siguiendo"
|
following: "Siguiendo"
|
||||||
follow: "Seguir"
|
follow: "Seguir"
|
||||||
request-pending: "Solicitud pendiente"
|
request-pending: "Solicitud pendiente"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "Solicitud en proceso"
|
||||||
follow-request: "Solicitar suscripción"
|
follow-request: "Solicitar suscripción"
|
||||||
desktop:
|
desktop:
|
||||||
banner-crop-title: "Corta la parte que aparece como un banner"
|
banner-crop-title: "Corta la parte que aparece como un banner"
|
||||||
@@ -591,7 +632,7 @@ desktop/views/components/activity.vue:
|
|||||||
title: "Actividad"
|
title: "Actividad"
|
||||||
toggle: "Alternar vistas"
|
toggle: "Alternar vistas"
|
||||||
desktop/views/components/calendar.vue:
|
desktop/views/components/calendar.vue:
|
||||||
title: "{year}年 {month}月"
|
title: "{year} / {month}"
|
||||||
prev: "Mes anterior"
|
prev: "Mes anterior"
|
||||||
next: "Próximo mes"
|
next: "Próximo mes"
|
||||||
go: "Click para navegar"
|
go: "Click para navegar"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "Crear una carpeta"
|
create-folder: "Crear una carpeta"
|
||||||
upload: "Subir fichero"
|
upload: "Subir fichero"
|
||||||
url-upload: "Subir desde una URL"
|
url-upload: "Subir desde una URL"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "El contenido es NSFW (no seguro para ver en el trabajo, 'not safe for work')"
|
|
||||||
click-to-show: "Click para mostrar"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "Este contenido no es apropiado para ver en el trabajo"
|
sensitive: "Este contenido no es apropiado para ver en el trabajo"
|
||||||
click-to-show: "Click para mostrar"
|
click-to-show: "Click para mostrar"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "Siguiendo {}"
|
following: "Siguiendo {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "Parece que aún no sigues a nadie."
|
empty: "Parece que aún no sigues a nadie."
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "Usuarios recomendados:"
|
|
||||||
empty: "No se pudieron encontrar usuarios para recomendar"
|
|
||||||
fetching: "Cargando"
|
|
||||||
refresh: "Más"
|
|
||||||
close: "Cerrar"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Reversi"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -702,7 +734,7 @@ desktop/views/components/note-detail.vue:
|
|||||||
desktop/views/components/note.vue:
|
desktop/views/components/note.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "Reacción"
|
||||||
undo-reaction: "リアクション解除"
|
undo-reaction: "リアクション解除"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
@@ -760,23 +792,23 @@ desktop/views/components/renote-form.vue:
|
|||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "¿Seguro qué quieres volver a publicarlo?"
|
title: "¿Seguro qué quieres volver a publicarlo?"
|
||||||
desktop/views/pages/user-following-or-followers.vue:
|
desktop/views/pages/user-following-or-followers.vue:
|
||||||
following: "{user}のフォロー"
|
following: "{user} sigue a"
|
||||||
followers: "{user}のフォロワー"
|
followers: "Seguidores de {user}"
|
||||||
desktop/views/components/settings-window.vue:
|
desktop/views/components/settings-window.vue:
|
||||||
settings: "Configuración"
|
settings: "Configuración"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "Perfil"
|
profile: "Perfil"
|
||||||
notification: "Notificación"
|
notification: "Notificación"
|
||||||
apps: "Aplicaciones"
|
apps: "Aplicaciones"
|
||||||
tags: "ハッシュタグ"
|
tags: "Hashtags"
|
||||||
mute-and-block: "ミュート/ブロック"
|
mute-and-block: "Silenciar/Bloquear"
|
||||||
blocking: "ブロック"
|
blocking: "Bloquear"
|
||||||
security: "Seguridad"
|
security: "Seguridad"
|
||||||
signin: "Historial de inicios de sesión"
|
signin: "Historial de inicios de sesión"
|
||||||
password: "Contraseña"
|
password: "Contraseña"
|
||||||
other: "Otros"
|
other: "Otros"
|
||||||
license: "Licencia"
|
license: "Licencia"
|
||||||
theme: "テーマ"
|
theme: "Tema"
|
||||||
behaviour: "Acciones"
|
behaviour: "Acciones"
|
||||||
fetch-on-scroll: "Desplazamiento infinito"
|
fetch-on-scroll: "Desplazamiento infinito"
|
||||||
fetch-on-scroll-desc: "Cuando te deslizas al final de la página nuevo contenido se carga automáticamente."
|
fetch-on-scroll-desc: "Cuando te deslizas al final de la página nuevo contenido se carga automáticamente."
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "Ventana emergente automática"
|
auto-popout: "Ventana emergente automática"
|
||||||
auto-popout-desc: "Muestra una ventana emergente si es posible. Esta configuración depende del navegador."
|
auto-popout-desc: "Muestra una ventana emergente si es posible. Esta configuración depende del navegador."
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "Diseño y pantalla"
|
display: "Diseño y pantalla"
|
||||||
customize: "Personaliza la página principal"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "Elije un fondo"
|
choose-wallpaper: "Elije un fondo"
|
||||||
delete-wallpaper: "Suprimir fondo"
|
delete-wallpaper: "Suprimir fondo"
|
||||||
@@ -811,30 +841,30 @@ desktop/views/components/settings.vue:
|
|||||||
remain-deleted-note: "削除された投稿を表示し続ける"
|
remain-deleted-note: "削除された投稿を表示し続ける"
|
||||||
deck-column-align: "デッキのカラムの配置"
|
deck-column-align: "デッキのカラムの配置"
|
||||||
deck-column-align-center: "中央"
|
deck-column-align-center: "中央"
|
||||||
deck-column-align-left: "左"
|
deck-column-align-left: "Izquierda"
|
||||||
deck-column-align-flexible: "フレキシブル"
|
deck-column-align-flexible: "Flexible"
|
||||||
deck-column-width: "デッキのカラムの幅"
|
deck-column-width: "デッキのカラムの幅"
|
||||||
deck-column-width-narrow: "狭"
|
deck-column-width-narrow: "狭"
|
||||||
deck-column-width-narrower: "やや狭"
|
deck-column-width-narrower: "やや狭"
|
||||||
deck-column-width-normal: "普通"
|
deck-column-width-normal: "普通"
|
||||||
deck-column-width-wider: "やや広"
|
deck-column-width-wider: "やや広"
|
||||||
deck-column-width-wide: "広"
|
deck-column-width-wide: "広"
|
||||||
sound: "サウンド"
|
sound: "Sonidos"
|
||||||
enable-sounds: "サウンドを有効にする"
|
enable-sounds: "サウンドを有効にする"
|
||||||
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
||||||
volume: "ボリューム"
|
volume: "Volúmen"
|
||||||
test: "テスト"
|
test: "Prueba"
|
||||||
cache: "キャッシュ"
|
cache: "Caché"
|
||||||
clean-cache: "クリーンアップ"
|
clean-cache: "Borrar caché"
|
||||||
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
||||||
cache-cleared: "キャッシュを削除しました"
|
cache-cleared: "キャッシュを削除しました"
|
||||||
cache-cleared-desc: "ページを再度読み込みしてください。"
|
cache-cleared-desc: "ページを再度読み込みしてください。"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
operator: "このサーバーの運営者"
|
operator: "このサーバーの運営者"
|
||||||
update: "Misskey Update"
|
update: "Actualizar Misskey"
|
||||||
version: "バージョン:"
|
version: "Versión"
|
||||||
latest-version: "最新のバージョン:"
|
latest-version: "Última versión"
|
||||||
update-checking: "アップデートを確認中"
|
update-checking: "Chequeando actualización"
|
||||||
do-update: "Chequear por actualizaciones"
|
do-update: "Chequear por actualizaciones"
|
||||||
update-settings: "Configuración avanzada"
|
update-settings: "Configuración avanzada"
|
||||||
prevent-update: "Posponer actualizaciones (no recomendado)"
|
prevent-update: "Posponer actualizaciones (no recomendado)"
|
||||||
@@ -852,9 +882,9 @@ desktop/views/components/settings.vue:
|
|||||||
task-manager: "Navegador de tareas"
|
task-manager: "Navegador de tareas"
|
||||||
third-parties: "Servicios externos"
|
third-parties: "Servicios externos"
|
||||||
navbar-position: "ナビゲーションバーの位置"
|
navbar-position: "ナビゲーションバーの位置"
|
||||||
navbar-position-top: "上"
|
navbar-position-top: "Arriba"
|
||||||
navbar-position-left: "左"
|
navbar-position-left: "Izquierda"
|
||||||
navbar-position-right: "右"
|
navbar-position-right: "Derecha"
|
||||||
desktop/views/components/settings.2fa.vue:
|
desktop/views/components/settings.2fa.vue:
|
||||||
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
|
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
|
||||||
detail: "Ver detalles..."
|
detail: "Ver detalles..."
|
||||||
@@ -867,13 +897,16 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
enter-password: "Escribe una contraseña"
|
enter-password: "Escribe una contraseña"
|
||||||
authenticator: "Primero, necesitas instalar Google Authenticator en tu dispositivo:"
|
authenticator: "Primero, necesitas instalar Google Authenticator en tu dispositivo:"
|
||||||
howtoinstall: "Cómo instalar"
|
howtoinstall: "Cómo instalar"
|
||||||
token: "トークン"
|
token: "Token"
|
||||||
scan: "Luego, escanea el código QR:"
|
scan: "Luego, escanea el código QR:"
|
||||||
done: "Por favor ingresa el token mostrado en tu dispositivo:"
|
done: "Por favor ingresa el token mostrado en tu dispositivo:"
|
||||||
submit: "Enviar"
|
submit: "Enviar"
|
||||||
success: "¡Configuraciones guardadas!"
|
success: "¡Configuraciones guardadas!"
|
||||||
failed: "Error al configurar. Por favor asegúrate de que el token es correcto."
|
failed: "Error al configurar. Por favor asegúrate de que el token es correcto."
|
||||||
info: "Desde ahora, ingresa el token que se muestra en tu dispositivo adicionalmente a tu contraseña cuando inicies sesión en Misskey"
|
info: "Desde ahora, ingresa el token que se muestra en tu dispositivo adicionalmente a tu contraseña cuando inicies sesión en Misskey"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -882,7 +915,7 @@ common/views/components/api-settings.vue:
|
|||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
console:
|
console:
|
||||||
title: "APIコンソール"
|
title: "Consola API"
|
||||||
endpoint: "エンドポイント"
|
endpoint: "エンドポイント"
|
||||||
parameter: "パラメータ"
|
parameter: "パラメータ"
|
||||||
credential-info: "「i」パラメータは自動で付与されます。"
|
credential-info: "「i」パラメータは自動で付与されます。"
|
||||||
@@ -896,9 +929,9 @@ common/views/components/drive-settings.vue:
|
|||||||
in-use: "使用中"
|
in-use: "使用中"
|
||||||
stats: "統計"
|
stats: "統計"
|
||||||
common/views/components/mute-and-block.vue:
|
common/views/components/mute-and-block.vue:
|
||||||
mute-and-block: "ミュートとブロック"
|
mute-and-block: "Silenciar y bloquear"
|
||||||
mute: "ミュート"
|
mute: "Silenciar"
|
||||||
block: "ブロック"
|
block: "Bloquear"
|
||||||
no-muted-users: "ミュートしているユーザーはいません"
|
no-muted-users: "ミュートしているユーザーはいません"
|
||||||
no-blocked-users: "ブロックしているユーザーはいません"
|
no-blocked-users: "ブロックしているユーザーはいません"
|
||||||
word-mute: "ワードミュート"
|
word-mute: "ワードミュート"
|
||||||
@@ -917,26 +950,26 @@ desktop/views/components/sub-note-content.vue:
|
|||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "Encuesta"
|
||||||
desktop/views/components/settings.tags.vue:
|
desktop/views/components/settings.tags.vue:
|
||||||
title: "タグ"
|
title: "Etiqueta"
|
||||||
query: "クエリ (省略可)"
|
query: "クエリ (省略可)"
|
||||||
add: "追加"
|
add: "追加"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "Inicio"
|
||||||
local: "ローカル"
|
local: "Local"
|
||||||
hybrid: "ソーシャル"
|
hybrid: "Social"
|
||||||
global: "グローバル"
|
global: "Global"
|
||||||
mentions: "あなた宛て"
|
mentions: "あなた宛て"
|
||||||
messages: "メッセージ"
|
messages: "メッセージ"
|
||||||
list: "リスト"
|
list: "Listas"
|
||||||
hashtag: "ハッシュタグ"
|
hashtag: "Hashtags"
|
||||||
add-tag-timeline: "ハッシュタグを追加"
|
add-tag-timeline: "ハッシュタグを追加"
|
||||||
add-list: "リストを追加"
|
add-list: "リストを追加"
|
||||||
list-name: "リスト名"
|
list-name: "Nombre de lista"
|
||||||
desktop/views/components/ui.header.vue:
|
desktop/views/components/ui.header.vue:
|
||||||
welcome-back: "Bienvenido/a de vuelta,"
|
welcome-back: "Bienvenido/a de vuelta,"
|
||||||
adjective: "-san"
|
adjective: "-san"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Favoritos"
|
favorites: "Favoritos"
|
||||||
lists: "Listas"
|
lists: "Listas"
|
||||||
follow-requests: "Solicitudes de seguimiento"
|
follow-requests: "Solicitudes de seguimiento"
|
||||||
customize: "Personalizar la página de inicio"
|
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
settings: "Configuraciones"
|
settings: "Configuraciones"
|
||||||
signout: "Desconectarse"
|
signout: "Desconectarse"
|
||||||
dark: "Sumergirse en la oscuridad"
|
dark: "Sumergirse en la oscuridad"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Inicio"
|
|
||||||
deck: "Cubierta"
|
|
||||||
game: "Juegos"
|
game: "Juegos"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Notificaciones"
|
title: "Notificaciones"
|
||||||
@@ -970,36 +1000,40 @@ desktop/views/components/user-lists-window.vue:
|
|||||||
list-name: "Nombre de lista"
|
list-name: "Nombre de lista"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "Publicaciones"
|
notes: "Publicaciones"
|
||||||
following: "フォロー"
|
following: "Sigue"
|
||||||
followers: "フォロワー"
|
followers: "Seguidores"
|
||||||
desktop/views/components/users-list.vue:
|
desktop/views/components/users-list.vue:
|
||||||
all: "すべて"
|
all: "Todo"
|
||||||
iknow: "知り合い"
|
iknow: "知り合い"
|
||||||
fetching: "読み込んでいます"
|
fetching: "読み込んでいます"
|
||||||
desktop/views/components/users-list-item.vue:
|
desktop/views/components/users-list-item.vue:
|
||||||
followed: "フォローされています"
|
followed: "フォローされています"
|
||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "Cerrar"
|
||||||
admin/views/index.vue:
|
admin/views/index.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "Panel de control"
|
||||||
instance: "インスタンス"
|
instance: "Instancia"
|
||||||
emoji: "カスタム絵文字"
|
emoji: "カスタム絵文字"
|
||||||
moderators: "モデレーター"
|
moderators: "Moderadores"
|
||||||
users: "ユーザー"
|
users: "Usuarios"
|
||||||
federation: "連合"
|
federation: "連合"
|
||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "Hashtags"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
queue: "ジョブキュー"
|
||||||
|
back-to-misskey: "Volver a Misskey"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "Panel de Control"
|
||||||
accounts: "アカウント"
|
accounts: "Cuenta"
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
drive: "ドライブ"
|
drive: "Drive"
|
||||||
instances: "インスタンス"
|
instances: "Instancias"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "Esta instancia"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1007,10 +1041,10 @@ admin/views/abuse.vue:
|
|||||||
details: "詳細"
|
details: "詳細"
|
||||||
remove-report: "削除"
|
remove-report: "削除"
|
||||||
admin/views/instance.vue:
|
admin/views/instance.vue:
|
||||||
instance: "インスタンス"
|
instance: "Instancia"
|
||||||
instance-name: "インスタンス名"
|
instance-name: "Nombre de la instancia"
|
||||||
instance-description: "インスタンスの紹介"
|
instance-description: "インスタンスの紹介"
|
||||||
host: "ホスト"
|
host: "Host"
|
||||||
banner-url: "バナー画像URL"
|
banner-url: "バナー画像URL"
|
||||||
error-image-url: "エラー画像URL"
|
error-image-url: "エラー画像URL"
|
||||||
languages: "インスタンスの対象言語"
|
languages: "インスタンスの対象言語"
|
||||||
@@ -1028,7 +1062,7 @@ admin/views/instance.vue:
|
|||||||
recaptcha-info: "reCAPTCHAを有効にする場合、reCAPTCHAトークンを取得する必要があります。https://www.google.com/recaptcha/intro/ にアクセスしてトークンを取得してください。"
|
recaptcha-info: "reCAPTCHAを有効にする場合、reCAPTCHAトークンを取得する必要があります。https://www.google.com/recaptcha/intro/ にアクセスしてトークンを取得してください。"
|
||||||
enable-recaptcha: "reCAPTCHAを有効にする"
|
enable-recaptcha: "reCAPTCHAを有効にする"
|
||||||
recaptcha-site-key: "reCAPTCHA site key"
|
recaptcha-site-key: "reCAPTCHA site key"
|
||||||
recaptcha-secret-key: "reCAPTCHA secret key"
|
recaptcha-secret-key: "clave secreta reCAPTCHA"
|
||||||
twitter-integration-config: "Twitter連携の設定"
|
twitter-integration-config: "Twitter連携の設定"
|
||||||
twitter-integration-info: "コールバックURLは {url} に設定します。"
|
twitter-integration-info: "コールバックURLは {url} に設定します。"
|
||||||
enable-twitter-integration: "Twitter連携を有効にする"
|
enable-twitter-integration: "Twitter連携を有効にする"
|
||||||
@@ -1061,7 +1095,7 @@ admin/views/instance.vue:
|
|||||||
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
|
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
|
||||||
external-user-recommendation-engine: "エンジン"
|
external-user-recommendation-engine: "エンジン"
|
||||||
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
|
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
|
||||||
external-user-recommendation-timeout: "タイムアウト"
|
external-user-recommendation-timeout: "Tiempo de espera"
|
||||||
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
|
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
|
||||||
email-config: "メールサーバーの設定"
|
email-config: "メールサーバーの設定"
|
||||||
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
|
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
|
||||||
@@ -1069,10 +1103,11 @@ admin/views/instance.vue:
|
|||||||
email: "メールアドレス"
|
email: "メールアドレス"
|
||||||
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
|
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
|
||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "Host SMTP"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "Puerto SMTP"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-user: "Usuario SMTP"
|
||||||
|
smtp-pass: "Contraseña SMTP"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
enable-serviceworker: "ServiceWorkerを有効にする"
|
enable-serviceworker: "ServiceWorkerを有効にする"
|
||||||
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
|
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
|
||||||
@@ -1080,14 +1115,14 @@ admin/views/instance.vue:
|
|||||||
vapid-privatekey: "VAPID秘密鍵"
|
vapid-privatekey: "VAPID秘密鍵"
|
||||||
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
|
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
|
||||||
admin/views/charts.vue:
|
admin/views/charts.vue:
|
||||||
title: "チャート"
|
title: "Gráficos"
|
||||||
per-day: "1日ごと"
|
per-day: "Por día"
|
||||||
per-hour: "1時間ごと"
|
per-hour: "Por hora"
|
||||||
federation: "フェデレーション"
|
federation: "Federación"
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
users: "ユーザー"
|
users: "Usuarios"
|
||||||
drive: "ドライブ"
|
drive: "Drive"
|
||||||
network: "ネットワーク"
|
network: "Red"
|
||||||
charts:
|
charts:
|
||||||
federation-instances: "インスタンスの増減"
|
federation-instances: "インスタンスの増減"
|
||||||
federation-instances-total: "インスタンスの積算"
|
federation-instances-total: "インスタンスの積算"
|
||||||
@@ -1111,16 +1146,16 @@ admin/views/drive.vue:
|
|||||||
file-not-found: "ファイルが見つかりません"
|
file-not-found: "ファイルが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
sort:
|
sort:
|
||||||
title: "ソート"
|
title: "Ordenar"
|
||||||
createdAtAsc: "アップロード日時が古い順"
|
createdAtAsc: "アップロード日時が古い順"
|
||||||
createdAtDesc: "アップロード日時が新しい順"
|
createdAtDesc: "アップロード日時が新しい順"
|
||||||
sizeAsc: "サイズが小さい順"
|
sizeAsc: "サイズが小さい順"
|
||||||
sizeDesc: "サイズが大きい順"
|
sizeDesc: "サイズが大きい順"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
combined: "ローカル+リモート"
|
combined: "Local+Remoto"
|
||||||
local: "ローカル"
|
local: "Local"
|
||||||
remote: "リモート"
|
remote: "Remoto"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
deleted: "削除しました"
|
deleted: "削除しました"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
next: "次の投稿"
|
next: "次の投稿"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "フォト"
|
title: "フォト"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "キーワード"
|
keywords: "キーワード"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "Charger plus"
|
load-more: "Charger plus"
|
||||||
enter-password: "Veuillez entrer le mot de passe"
|
enter-password: "Veuillez entrer le mot de passe"
|
||||||
2fa: "Authentification à deux facteurs"
|
2fa: "Authentification à deux facteurs"
|
||||||
|
customize-home: "Personnaliser la disposition de votre accueil"
|
||||||
|
featured-notes: "Les notes mises en avant"
|
||||||
got-it: "J’ai compris !"
|
got-it: "J’ai compris !"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Conseils de personnalisation"
|
title: "Conseils de personnalisation"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "Corbeille"
|
trash: "Corbeille"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
messaging: "Conversations"
|
messaging: "Conversations"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "Deck"
|
||||||
|
timeline: "Fil"
|
||||||
|
explore: "Découvrir"
|
||||||
|
following: "Suit"
|
||||||
|
followers: "Abonné·e·s"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "Trouver des utilisateurs"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "D"
|
sunday: "D"
|
||||||
monday: "L"
|
monday: "L"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "Utiliser l’avatar comme pion dans Reversi"
|
use-avatar-reversi-stones: "Utiliser l’avatar comme pion dans Reversi"
|
||||||
verified-user: "Compte vérifié"
|
verified-user: "Compte vérifié"
|
||||||
disable-animated-mfm: "Désactiver les textes animés dans les publications"
|
disable-animated-mfm: "Désactiver les textes animés dans les publications"
|
||||||
|
disable-showing-animated-images: "Désactiver l'animation dans les images"
|
||||||
suggest-recent-hashtags: "Suggérer les hashtags récemment utilisés dans le champs de saisie"
|
suggest-recent-hashtags: "Suggérer les hashtags récemment utilisés dans le champs de saisie"
|
||||||
always-show-nsfw: "Toujours afficher les contenus sensibles"
|
always-show-nsfw: "Toujours afficher les contenus sensibles"
|
||||||
always-mark-nsfw: "Toujours marquer les notes ayant des attachements comme sensibles"
|
always-mark-nsfw: "Toujours marquer les notes ayant des attachements comme sensibles"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "Afficher le mot de passe"
|
show-password: "Afficher le mot de passe"
|
||||||
do-not-use-in-production: "Il s’agit d’une version de développement. Ne pas utiliser dans un environnement de production."
|
do-not-use-in-production: "Il s’agit d’une version de développement. Ne pas utiliser dans un environnement de production."
|
||||||
user-suspended: "Cet·te utilisateur·trice a été suspendu·e"
|
user-suspended: "Cet·te utilisateur·trice a été suspendu·e"
|
||||||
is-remote-user: "Ces informations appartiennent à un utilisateur distant."
|
is-remote-user: "Les informations à propos de ce compte peuvent être incomplètes."
|
||||||
is-remote-post: "Ceci est une publication distante."
|
is-remote-post: "Ceci est une publication distante."
|
||||||
view-on-remote: " Consulter le profil complet"
|
view-on-remote: " Consulter le profil complet"
|
||||||
renoted-by: "Renoté par {user}"
|
renoted-by: "Renoté par {user}"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "Une erreur est survenue"
|
title: "Une erreur est survenue"
|
||||||
retry: "Réessayer"
|
retry: "Réessayer"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "Veillez retourner à l'application."
|
please-go-back: "Veillez retourner à l'application."
|
||||||
error: "La session n’existe pas."
|
error: "La session n’existe pas."
|
||||||
sign-in: "Veuillez vous connecter"
|
sign-in: "Veuillez vous connecter"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "Comptes vérifiés"
|
||||||
|
popular-users: "Utilisateurs populaires"
|
||||||
|
recently-updated-users: "Utilisateurs actifs récemment"
|
||||||
|
recently-registered-users: "Les nouveaux inscrits"
|
||||||
|
popular-tags: "Mots-clés populaires"
|
||||||
|
federated: "Du Fédiverse"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "En attente de {}"
|
waiting-for: "En attente de {}"
|
||||||
@@ -333,7 +357,7 @@ common/views/components/nav.vue:
|
|||||||
stats: "Statistiques"
|
stats: "Statistiques"
|
||||||
status: "Statut"
|
status: "Statut"
|
||||||
wiki: "Wiki"
|
wiki: "Wiki"
|
||||||
donors: "Donateurs"
|
donors: "Donateur·rice·s"
|
||||||
repository: "Dépôt"
|
repository: "Dépôt"
|
||||||
develop: "Développeurs"
|
develop: "Développeurs"
|
||||||
feedback: "Suggestions"
|
feedback: "Suggestions"
|
||||||
@@ -344,27 +368,32 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "Copier le lien"
|
copy-link: "Copier le lien"
|
||||||
favorite: "Mettre cette note en favoris"
|
favorite: "Mettre cette note en favoris"
|
||||||
unfavorite: "Retirer des favoris"
|
unfavorite: "Retirer des favoris"
|
||||||
|
watch: "Surveiller"
|
||||||
|
unwatch: "Ne plus surveiller"
|
||||||
pin: "Épingler sur votre profil"
|
pin: "Épingler sur votre profil"
|
||||||
unpin: "Désépingler"
|
unpin: "Désépingler"
|
||||||
delete: "Supprimer"
|
delete: "Supprimer"
|
||||||
delete-confirm: "Supprimer cette publication ?"
|
delete-confirm: "Supprimer cette publication ?"
|
||||||
remote: "Afficher la note originale"
|
remote: "Afficher la note originale"
|
||||||
common/views/components/user-menu.vue:
|
common/views/components/user-menu.vue:
|
||||||
mention: "メンション"
|
mention: "Mention"
|
||||||
mute: "ミュート"
|
mute: "Silencier"
|
||||||
unmute: "ミュート解除"
|
unmute: "Enlever la sourdine"
|
||||||
block: "ブロック"
|
block: "Bloquer"
|
||||||
unblock: "ブロック解除"
|
unblock: "Débloquer"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "Ajouter à une liste"
|
||||||
select-list: "リストを選択してください"
|
select-list: "Sélectionnez une liste"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
report-abuse: "Signaler un abus"
|
||||||
report-abuse: "スパムを報告"
|
report-abuse-detail: "Détail du signalement"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-reported: "Transmit à l’administrateur. Merci de votre collaboration."
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
silence: "Mettre en sourdine"
|
||||||
|
unsilence: "Enlever la sourdine"
|
||||||
|
suspend: "Suspendre"
|
||||||
|
unsuspend: "Ne plus suspendre"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Voter pour '{}'"
|
vote-to: "Voter pour '{}'"
|
||||||
vote-count: "{} votes"
|
vote-count: "{} votes"
|
||||||
total-users: "{} utilisateurs ont voté"
|
total-users: "{} utilisateur·rice·s ont voté"
|
||||||
vote: "Vote"
|
vote: "Vote"
|
||||||
show-result: "Montrer les résultats"
|
show-result: "Montrer les résultats"
|
||||||
voted: "Voté"
|
voted: "Voté"
|
||||||
@@ -387,7 +416,7 @@ common/views/components/emoji-picker.vue:
|
|||||||
symbols: "Symboles"
|
symbols: "Symboles"
|
||||||
flags: "Drapeaux"
|
flags: "Drapeaux"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
username: "Nom d'utilisateur"
|
username: "Nom d'utilisateur·rice"
|
||||||
password: "Mot de passe"
|
password: "Mot de passe"
|
||||||
token: "Jeton"
|
token: "Jeton"
|
||||||
signing-in: "Connexion…"
|
signing-in: "Connexion…"
|
||||||
@@ -400,7 +429,7 @@ common/views/components/signin.vue:
|
|||||||
common/views/components/signup.vue:
|
common/views/components/signup.vue:
|
||||||
invitation-code: "Code d’invitation"
|
invitation-code: "Code d’invitation"
|
||||||
invitation-info: "Si vous n’avez pas de code d’invitation, contactez un <a href=\"{}\">administrateur</a>."
|
invitation-info: "Si vous n’avez pas de code d’invitation, contactez un <a href=\"{}\">administrateur</a>."
|
||||||
username: "Nom d'utilisateur"
|
username: "Nom d'utilisateur·rice"
|
||||||
checking: "Vérification…"
|
checking: "Vérification…"
|
||||||
available: "Disponible"
|
available: "Disponible"
|
||||||
unavailable: "Non disponible"
|
unavailable: "Non disponible"
|
||||||
@@ -433,7 +462,7 @@ common/views/components/notification-settings.vue:
|
|||||||
mark-as-read-all-unread-notes: "Marquer toutes les notes comme lues"
|
mark-as-read-all-unread-notes: "Marquer toutes les notes comme lues"
|
||||||
mark-as-read-all-talk-messages: "Marquer toutes les conversations comme lues"
|
mark-as-read-all-talk-messages: "Marquer toutes les conversations comme lues"
|
||||||
auto-watch: "投稿の自動ウォッチ"
|
auto-watch: "投稿の自動ウォッチ"
|
||||||
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
|
auto-watch-desc: "Recevoir automatiquement des notifications à propos des publications auxquelles vous avez réagi ou répondu"
|
||||||
common/views/components/integration-settings.vue:
|
common/views/components/integration-settings.vue:
|
||||||
title: "Intégrations"
|
title: "Intégrations"
|
||||||
connect: "Connecter"
|
connect: "Connecter"
|
||||||
@@ -459,8 +488,8 @@ common/views/components/visibility-chooser.vue:
|
|||||||
public: "Public"
|
public: "Public"
|
||||||
home: "Accueil"
|
home: "Accueil"
|
||||||
home-desc: "Publier sur le fil d’Accueil uniquement"
|
home-desc: "Publier sur le fil d’Accueil uniquement"
|
||||||
followers: "Abonnés"
|
followers: "Abonné·e·s"
|
||||||
followers-desc: "Publier à vos abonnés uniquement"
|
followers-desc: "Publier à vos abonné·e·s uniquement"
|
||||||
specified: "Direct"
|
specified: "Direct"
|
||||||
specified-desc: "Publier uniquement aux utilisateurs mentionnés"
|
specified-desc: "Publier uniquement aux utilisateurs mentionnés"
|
||||||
local-public: "Local (Public)"
|
local-public: "Local (Public)"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "Compte"
|
account: "Compte"
|
||||||
location: "Lieu"
|
location: "Lieu"
|
||||||
description: "À propos de moi"
|
description: "À propos de moi"
|
||||||
|
you-can-include-hashtags: "Vous pouvez également inclure un hashtag sur votre description de profile."
|
||||||
language: "Langue"
|
language: "Langue"
|
||||||
birthday: "Date de naissance"
|
birthday: "Date de naissance"
|
||||||
avatar: "Avatar"
|
avatar: "Avatar"
|
||||||
@@ -491,7 +521,7 @@ common/views/components/profile-editor.vue:
|
|||||||
is-bot: "Ce compte est un Bot"
|
is-bot: "Ce compte est un Bot"
|
||||||
is-locked: "Demandes d’abonnements requièrent l’approbation"
|
is-locked: "Demandes d’abonnements requièrent l’approbation"
|
||||||
careful-bot: "Les demandes d’abonnements venant de Bots requièrent l’approbation"
|
careful-bot: "Les demandes d’abonnements venant de Bots requièrent l’approbation"
|
||||||
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
|
auto-accept-followed: "Accepter automatiquement les demandes d’abonnement venant des gens que vous suivez"
|
||||||
advanced: "Avancé"
|
advanced: "Avancé"
|
||||||
privacy: "Vie privée"
|
privacy: "Vie privée"
|
||||||
save: "Mettre à jour le profil"
|
save: "Mettre à jour le profil"
|
||||||
@@ -502,8 +532,19 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "Adresse de courrier électronique"
|
email-address: "Adresse de courrier électronique"
|
||||||
email-verified: "L’adresse du courrier électronique a été vérifiée."
|
email-verified: "L’adresse du courrier électronique a été vérifiée."
|
||||||
email-not-verified: "Adresse de courriel n’est pas confirmée. Veuillez vérifier votre boite de réception."
|
email-not-verified: "Adresse de courriel n’est pas confirmée. Veuillez vérifier votre boite de réception."
|
||||||
|
export: "Exporter"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "Toutes les notes publiées"
|
||||||
|
following-list: "Liste des abonnements"
|
||||||
|
mute-list: "Liste des comptes mis en sourdine"
|
||||||
|
blocking-list: "Liste des comptes bloqués"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "Utilisateur"
|
users: "Utilisateur·rice"
|
||||||
rename: "Renommer la liste"
|
rename: "Renommer la liste"
|
||||||
delete: "Supprimer la liste"
|
delete: "Supprimer la liste"
|
||||||
remove-user: "Retirer de cette liste"
|
remove-user: "Retirer de cette liste"
|
||||||
@@ -659,26 +700,17 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "Créer un dossier"
|
create-folder: "Créer un dossier"
|
||||||
upload: "Téléverser un fichier"
|
upload: "Téléverser un fichier"
|
||||||
url-upload: "Téléverser à partir d’une URL"
|
url-upload: "Téléverser à partir d’une URL"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "Le contenu est NSFW"
|
|
||||||
click-to-show: "Cliquer pour afficher"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "Le contenu est NSFW"
|
sensitive: "Le contenu est NSFW"
|
||||||
click-to-show: "Cliquer pour afficher"
|
click-to-show: "Cliquer pour afficher"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} abonnés"
|
followers: "{} abonné·e·s"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
empty: "Il semble que vous n'avez pas encore d'abonnés."
|
empty: "Il semble que vous n’avez pas encore d’abonné·e·s."
|
||||||
desktop/views/components/following-window.vue:
|
desktop/views/components/following-window.vue:
|
||||||
following: "Suit {}"
|
following: "Suit {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "Vous ne suivez aucun compte."
|
empty: "Vous ne suivez aucun compte."
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "Utilisateurs recommandés :"
|
|
||||||
empty: "Impossible de trouver des utilisateurs à recommander."
|
|
||||||
fetching: "Chargement"
|
|
||||||
refresh: "Plus"
|
|
||||||
close: "Fermer"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Reversi"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -713,7 +745,7 @@ desktop/views/components/notes.vue:
|
|||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
empty: "Aucune de notification !"
|
empty: "Aucune de notification !"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
add-visible-user: "+Ajouter un utilisateur"
|
add-visible-user: "+Ajouter un·e utilisateur·rice"
|
||||||
attach-location-information: "Attacher des informations de localisation"
|
attach-location-information: "Attacher des informations de localisation"
|
||||||
hide-contents: "Masquer les contenus"
|
hide-contents: "Masquer les contenus"
|
||||||
reply-placeholder: "Répondre à cette note …"
|
reply-placeholder: "Répondre à cette note …"
|
||||||
@@ -741,7 +773,7 @@ desktop/views/components/post-form.vue:
|
|||||||
geolocation-alert: "Votre appareil ne prend pas en charge les services de localisation"
|
geolocation-alert: "Votre appareil ne prend pas en charge les services de localisation"
|
||||||
error: "Erreur"
|
error: "Erreur"
|
||||||
enter-username: "Saisir un nom d'utilisateur …"
|
enter-username: "Saisir un nom d'utilisateur …"
|
||||||
annotations: "内容への注釈 (オプション)"
|
annotations: "Commenter le contenu (optionnel)"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "Nouvelle note"
|
note: "Nouvelle note"
|
||||||
reply: "Répondre"
|
reply: "Répondre"
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "Exemple : https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "Exemple : https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "Fenêtre contextuelle automatique"
|
auto-popout: "Fenêtre contextuelle automatique"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "Deck sans tansitions"
|
keep-cw: "Maintenir l'avertissement de contenu"
|
||||||
deck-nav-desc: "Vous obtenez une colonne temporaire sans transitions dans la page pendant la navigation, lors de l’utilisation du Deck."
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "Utiliser le Deck comme IU par défaut"
|
|
||||||
display: "Affichage et design"
|
display: "Affichage et design"
|
||||||
customize: "Personnaliser l'Accueil"
|
|
||||||
wallpaper: "Arrière plan"
|
wallpaper: "Arrière plan"
|
||||||
choose-wallpaper: "Sélectionner un fond d'écran"
|
choose-wallpaper: "Sélectionner un fond d'écran"
|
||||||
delete-wallpaper: "Supprimer le fond d'écran"
|
delete-wallpaper: "Supprimer le fond d'écran"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "Sauvegarde des paramètres avec succès !"
|
success: "Sauvegarde des paramètres avec succès !"
|
||||||
failed: "L’opération a échoué. Veuillez vous assurer que le jeton a été saisi correctement."
|
failed: "L’opération a échoué. Veuillez vous assurer que le jeton a été saisi correctement."
|
||||||
info: "À partir de maintenant, à chaque fois que vous vous connectez entrez votre mot de passe ainsi que le jeton généré sur votre appareil."
|
info: "À partir de maintenant, à chaque fois que vous vous connectez entrez votre mot de passe ainsi que le jeton généré sur votre appareil."
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "Contenu sensible"
|
||||||
|
click-to-show: "Cliquer pour afficher"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "Pour accéder à l'API, définissez ce jeton comme la clé de « i » dans les paramètres de requête."
|
intro: "Pour accéder à l'API, définissez ce jeton comme la clé de « i » dans les paramètres de requête."
|
||||||
caution: "Merci de ne pas introduire ce jeton dans aucune application ou le divulguer à quiconque. Ceci risque de compromettre votre compte."
|
caution: "Merci de ne pas introduire ce jeton dans aucune application ou le divulguer à quiconque. Ceci risque de compromettre votre compte."
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Favorites"
|
favorites: "Favorites"
|
||||||
lists: "Listes"
|
lists: "Listes"
|
||||||
follow-requests: "Demandes de suivi"
|
follow-requests: "Demandes de suivi"
|
||||||
customize: "Personnaliser l'Accueil"
|
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
settings: "Réglages"
|
settings: "Réglages"
|
||||||
signout: "Déconnexion"
|
signout: "Déconnexion"
|
||||||
dark: "Fall in dark"
|
dark: "Fall in dark"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Accueil"
|
|
||||||
deck: "Deck"
|
|
||||||
game: "Jeux"
|
game: "Jeux"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Notifications"
|
title: "Notifications"
|
||||||
@@ -971,7 +1001,7 @@ desktop/views/components/user-lists-window.vue:
|
|||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "Publications"
|
notes: "Publications"
|
||||||
following: "Abonné à"
|
following: "Abonné à"
|
||||||
followers: "Abonnés"
|
followers: "Abonné·e·s"
|
||||||
desktop/views/components/users-list.vue:
|
desktop/views/components/users-list.vue:
|
||||||
all: "Tout"
|
all: "Tout"
|
||||||
iknow: "Vous connaissez"
|
iknow: "Vous connaissez"
|
||||||
@@ -990,7 +1020,8 @@ admin/views/index.vue:
|
|||||||
federation: "Fédération"
|
federation: "Fédération"
|
||||||
announcements: "Annonces"
|
announcements: "Annonces"
|
||||||
hashtags: "Hashtags"
|
hashtags: "Hashtags"
|
||||||
abuse: "スパム報告"
|
abuse: "Abus"
|
||||||
|
queue: "File d’attente"
|
||||||
back-to-misskey: "Retour vers Misskey"
|
back-to-misskey: "Retour vers Misskey"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "Tableau de bord"
|
dashboard: "Tableau de bord"
|
||||||
@@ -1000,12 +1031,15 @@ admin/views/dashboard.vue:
|
|||||||
instances: "Instances"
|
instances: "Instances"
|
||||||
this-instance: "Cette instance"
|
this-instance: "Cette instance"
|
||||||
federated: "Fédérées"
|
federated: "Fédérées"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "Action(s)"
|
||||||
|
remove-all-jobs: "Enlever toutes les tâches en attente"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "Abus"
|
||||||
target: "対象"
|
target: "Cible"
|
||||||
reporter: "報告者"
|
reporter: "Signalé par"
|
||||||
details: "詳細"
|
details: "Détails"
|
||||||
remove-report: "削除"
|
remove-report: "Supprimer"
|
||||||
admin/views/instance.vue:
|
admin/views/instance.vue:
|
||||||
instance: "Instance"
|
instance: "Instance"
|
||||||
instance-name: "Nom de l’instance"
|
instance-name: "Nom de l’instance"
|
||||||
@@ -1052,7 +1086,7 @@ admin/views/instance.vue:
|
|||||||
max-note-text-length: "Nombre maximal de caractères pour les messages"
|
max-note-text-length: "Nombre maximal de caractères pour les messages"
|
||||||
disable-registration: "Désactiver les inscriptions"
|
disable-registration: "Désactiver les inscriptions"
|
||||||
disable-local-timeline: "Désactiver le fil local"
|
disable-local-timeline: "Désactiver le fil local"
|
||||||
disable-global-timeline: "グローバルタイムラインを無効にする"
|
disable-global-timeline: "Désactiver le fil global"
|
||||||
disabling-timelines-info: "これらのタイムラインを無効にしても、管理者およびモデレーターは引き続き利用できます。"
|
disabling-timelines-info: "これらのタイムラインを無効にしても、管理者およびモデレーターは引き続き利用できます。"
|
||||||
invite: "Inviter"
|
invite: "Inviter"
|
||||||
save: "Sauvegarder"
|
save: "Sauvegarder"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "Désactiver STARTTLS lorsque celui-ci est utilisé."
|
smtp-secure-info: "Désactiver STARTTLS lorsque celui-ci est utilisé."
|
||||||
smtp-host: "Hôte SMTP"
|
smtp-host: "Hôte SMTP"
|
||||||
smtp-port: "Port SMTP"
|
smtp-port: "Port SMTP"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "Utilisateur SMTP"
|
smtp-user: "Utilisateur SMTP"
|
||||||
smtp-pass: "Mot de passe SMTP"
|
smtp-pass: "Mot de passe SMTP"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1106,10 +1141,10 @@ admin/views/charts.vue:
|
|||||||
network-time: "Temps de réponse"
|
network-time: "Temps de réponse"
|
||||||
network-usage: "Traffic"
|
network-usage: "Traffic"
|
||||||
admin/views/drive.vue:
|
admin/views/drive.vue:
|
||||||
operation: "操作"
|
operation: "Actions"
|
||||||
fileid-or-url: "ファイルIDまたはファイルURL"
|
fileid-or-url: "ID du fichier ou URL"
|
||||||
file-not-found: "ファイルが見つかりません"
|
file-not-found: "Fichier non trouvé"
|
||||||
lookup: "照会"
|
lookup: "Recherche"
|
||||||
sort:
|
sort:
|
||||||
title: "Tri"
|
title: "Tri"
|
||||||
createdAtAsc: "Âge - Du plus ancien"
|
createdAtAsc: "Âge - Du plus ancien"
|
||||||
@@ -1125,23 +1160,32 @@ admin/views/drive.vue:
|
|||||||
deleted: "Supprimé"
|
deleted: "Supprimé"
|
||||||
mark-as-sensitive: "Marquer comme sensible"
|
mark-as-sensitive: "Marquer comme sensible"
|
||||||
unmark-as-sensitive: "Ne pas marquer comme sensible"
|
unmark-as-sensitive: "Ne pas marquer comme sensible"
|
||||||
marked-as-sensitive: "閲覧注意に設定しました"
|
marked-as-sensitive: "Marqué comme sensible"
|
||||||
unmarked-as-sensitive: "閲覧注意を解除しました"
|
unmarked-as-sensitive: "Marqué comme non sensible"
|
||||||
admin/views/users.vue:
|
admin/views/users.vue:
|
||||||
operation: "Actions"
|
operation: "Actions"
|
||||||
username-or-userid: "Nom d’utilisateur·rice ou ID utilisateur"
|
username-or-userid: "Nom d’utilisateur·rice ou ID utilisateur"
|
||||||
user-not-found: "Utilisateur non trouvé"
|
user-not-found: "Utilisateur non trouvé"
|
||||||
lookup: "Recherche"
|
lookup: "Recherche"
|
||||||
reset-password: "Réinitialiser mot de passe"
|
reset-password: "Réinitialiser mot de passe"
|
||||||
|
reset-password-confirm: "Souhaitez-vous réinitialiser votre mot de passe ?"
|
||||||
password-updated: "Le mot de passe est « {password} »"
|
password-updated: "Le mot de passe est « {password} »"
|
||||||
suspend: "Suspendre"
|
suspend: "Suspendre"
|
||||||
|
suspend-confirm: "Désirez-vous suspendre ce compte ?"
|
||||||
suspended: "Suspendu avec succès."
|
suspended: "Suspendu avec succès."
|
||||||
unsuspend: "Suspension levée"
|
unsuspend: "Suspension levée"
|
||||||
|
unsuspend-confirm: "Souhaiteriez-vous ne plus suspendre ce compte ?"
|
||||||
unsuspended: "La suspension de l’utilisateur a été levée avec succès"
|
unsuspended: "La suspension de l’utilisateur a été levée avec succès"
|
||||||
|
make-silence: "Mettre en sourdine"
|
||||||
|
unmake-silence: "Enlever la sourdine"
|
||||||
verify: "Vérification du compte"
|
verify: "Vérification du compte"
|
||||||
|
verify-confirm: "Souhaiteriez-vous rendre votre compte comme étant un compte vérifié ?"
|
||||||
verified: "Le compte a été vérifié"
|
verified: "Le compte a été vérifié"
|
||||||
unverify: "Enlever la vérification du compte"
|
unverify: "Enlever la vérification du compte"
|
||||||
|
unverify-confirm: "Désirez-vous considérer ce compte comme étant non-vérifié ?"
|
||||||
unverified: "Ce compte n'est plus vérifié"
|
unverified: "Ce compte n'est plus vérifié"
|
||||||
|
update-remote-user: "Mettre à jour les informations de l’utilisateur·rice distant·e"
|
||||||
|
remote-user-updated: "Les informations de l’utilisateur·rice distant·e ont étés mis à jour"
|
||||||
users:
|
users:
|
||||||
title: "Utilisateurs"
|
title: "Utilisateurs"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "Modérateur"
|
moderator: "Modérateur"
|
||||||
adminOrModerator: "Administrateur/Modérateur"
|
adminOrModerator: "Administrateur/Modérateur"
|
||||||
verified: "Compte vérifié"
|
verified: "Compte vérifié"
|
||||||
|
silenced: "Déjà mis en sourdine"
|
||||||
suspended: "Suspendu"
|
suspended: "Suspendu"
|
||||||
origin:
|
origin:
|
||||||
title: "Origine"
|
title: "Origine"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "Supprimé"
|
removed: "Supprimé"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Tags cachés"
|
hided-tags: "Tags cachés"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "Fédération"
|
||||||
|
host: "Hôte"
|
||||||
|
notes: "Notes"
|
||||||
|
users: "Utilisateur·rice·s"
|
||||||
|
following: "Abonnements"
|
||||||
|
followers: "Abonné·e·s"
|
||||||
|
status: "Statuts"
|
||||||
|
latest-request-sent-at: "Dernière requête envoyée"
|
||||||
|
latest-request-received-at: "Dernière requête reçue"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "Bloquer"
|
||||||
|
marked-as-closed: "Marquées comme fermées"
|
||||||
|
lookup: "Recherche"
|
||||||
|
instances: "Instances"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "Trier par"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "Date d’inscription (Ascendant)"
|
||||||
|
caughtAtDesc: "Date d’inscription (Descendant)"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "Description des notes"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "Les moins suivies"
|
||||||
|
followingDesc: "Ayant le plus d'abonné·e·s"
|
||||||
|
followersAsc: "Ayant le moins d'abonné·e·s"
|
||||||
|
followersDesc: "Ayant le plus d'abonné·e·s"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "État"
|
||||||
|
states:
|
||||||
|
all: "Tout"
|
||||||
|
blocked: "Bloquées"
|
||||||
|
not-responding: "Sans réponse"
|
||||||
|
marked-as-closed: "Marquée comme fermée"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "Graphs"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "Requêtes"
|
||||||
|
users: "Nombre d’utilisateurs·trices : augmentation/diminution"
|
||||||
|
users-total: "Nombre total des utilisateur·rice·s"
|
||||||
|
notes: "Augmentation/diminution du nombre des notes"
|
||||||
|
notes-total: "Nombre total des notes"
|
||||||
|
ff: "Augmentation des abonné·e·s"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "Augmentation et diminution de la capacité stockage"
|
||||||
|
drive-usage-total: "Utilisation totale du stockage"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "Nombre total des fichiers sur le Drive"
|
||||||
|
chart-spans:
|
||||||
|
hour: "Par heure"
|
||||||
|
day: "Par jour"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "à propos"
|
about: "à propos"
|
||||||
gotit: "J'ai compris !"
|
gotit: "J'ai compris !"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "Informations"
|
info: "Informations"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Lecteur de Misskey"
|
title: "Lecteur de Misskey"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "Personnaliser l'Accueil"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Note précédente"
|
prev: "Note précédente"
|
||||||
next: "Note suivante"
|
next: "Note suivante"
|
||||||
@@ -1236,11 +1337,11 @@ desktop/views/pages/share.vue:
|
|||||||
desktop/views/pages/tag.vue:
|
desktop/views/pages/tag.vue:
|
||||||
no-posts-found: "Aucune publication contenant « {q} » n’a été trouvée."
|
no-posts-found: "Aucune publication contenant « {q} » n’a été trouvée."
|
||||||
desktop/views/pages/user-list.users.vue:
|
desktop/views/pages/user-list.users.vue:
|
||||||
users: "Utilisateurs"
|
users: "Utilisateur·rice·s"
|
||||||
add-user: "Ajouter un utilisateur"
|
add-user: "Ajouter un utilisateur"
|
||||||
username: "Nom d'utilisateur"
|
username: "Nom d'utilisateur"
|
||||||
desktop/views/pages/user/user.followers-you-know.vue:
|
desktop/views/pages/user/user.followers-you-know.vue:
|
||||||
title: "Abonnés que vous connaissez"
|
title: "Abonné·e·s que vous connaissez"
|
||||||
loading: "Chargement en cours"
|
loading: "Chargement en cours"
|
||||||
no-users: "Aucun abonné connu"
|
no-users: "Aucun abonné connu"
|
||||||
desktop/views/pages/user/user.friends.vue:
|
desktop/views/pages/user/user.friends.vue:
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "Photos"
|
title: "Photos"
|
||||||
loading: "Chargement en cours"
|
loading: "Chargement en cours"
|
||||||
no-photos: "Pas de photos"
|
no-photos: "Pas de photos"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "Vous suit"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "Notes"
|
posts: "Notes"
|
||||||
following: "Suit"
|
following: "Suit"
|
||||||
followers: "Abonnés"
|
followers: "Abonné·e·s"
|
||||||
is-bot: "Ce compte est un Bot"
|
is-bot: "Ce compte est un Bot"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age} ans"
|
years-old: "{age} ans"
|
||||||
year: "/"
|
year: "/"
|
||||||
month: "/"
|
month: "/"
|
||||||
day: "-"
|
day: "-"
|
||||||
|
follows-you: "Vous suit"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "Publications"
|
default: "Publications"
|
||||||
with-replies: "Publications et réponses"
|
with-replies: "Publications et réponses"
|
||||||
with-media: "Média"
|
with-media: "Média"
|
||||||
my-posts: "Mes Messages"
|
my-posts: "Mes Messages"
|
||||||
empty: "Cet utilisateur n'a rien posté encore."
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "Messagerie"
|
title: "Messagerie"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1289,7 +1388,7 @@ desktop/views/widgets/trends.vue:
|
|||||||
refresh: "Afficher d'autres"
|
refresh: "Afficher d'autres"
|
||||||
nothing: "Rien"
|
nothing: "Rien"
|
||||||
desktop/views/widgets/users.vue:
|
desktop/views/widgets/users.vue:
|
||||||
title: "Utilisateurs"
|
title: "Utilisateurs·rices"
|
||||||
refresh: "Afficher d'autres"
|
refresh: "Afficher d'autres"
|
||||||
no-one: "Personne"
|
no-one: "Personne"
|
||||||
mobile/views/components/drive.vue:
|
mobile/views/components/drive.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "Que veux-tu faire ? (Entrez un nombre): <1 → Télécharger le fichier | 2 → Télécharger le fichier avec l'URL | 3 → Créer le dossier | 4 → Modifier le nom du dossier | 5 → Déplacer ce dossier | 6 → Supprimer ce dossier >"
|
prompt: "Que veux-tu faire ? (Entrez un nombre): <1 → Télécharger le fichier | 2 → Télécharger le fichier avec l'URL | 3 → Créer le dossier | 4 → Modifier le nom du dossier | 5 → Déplacer ce dossier | 6 → Supprimer ce dossier >"
|
||||||
deletion-alert: "Désolé ! La suppression d’un dossier n’est pas encore implémentée."
|
deletion-alert: "Désolé ! La suppression d’un dossier n’est pas encore implémentée."
|
||||||
folder-name: "Nom du dossier"
|
folder-name: "Nom du dossier"
|
||||||
root-rename-alert: "L'emplacement actuel est la racine, pas le dossier, vous ne pouvez donc pas le renommer. Veuillez vous déplacer dans le dossier dont vous souhaitez modifier le nom."
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "L'emplacement actuel est la racine, ce n'est pas un dossier et il ne peut pas être déplacé. Veuillez vous déplacer dans le dossier que vous souhaitez déplacer."
|
|
||||||
url-prompt: "URL du fichier que vous souhaitez téléverser"
|
url-prompt: "URL du fichier que vous souhaitez téléverser"
|
||||||
uploading: "Envoi demandé. Le téléversement pourrait prendre un certain temps avant de s'achever."
|
uploading: "Envoi demandé. Le téléversement pourrait prendre un certain temps avant de s'achever."
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "CW"
|
nsfw: "CW"
|
||||||
mark-as-sensitive: "Marquer comme sensible"
|
mark-as-sensitive: "Marquer comme sensible"
|
||||||
unmark-as-sensitive: "Ne pas marquer comme sensible"
|
unmark-as-sensitive: "Ne pas marquer comme sensible"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "Le contenu est NSFW"
|
|
||||||
click-to-show: "Cliquer pour afficher"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "Le contenu est NSFW"
|
sensitive: "Le contenu est NSFW"
|
||||||
click-to-show: "Cliquer pour afficher"
|
click-to-show: "Cliquer pour afficher"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "Demande en attente"
|
request-pending: "Demande en attente"
|
||||||
follow-processing: "En cours d’abonnement"
|
follow-processing: "En cours d’abonnement"
|
||||||
follow-request: "Demande d’abonnement"
|
follow-request: "Demande d’abonnement"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "Abonnez-vous à"
|
|
||||||
empty: "Impossible de trouver des utilisateurs à recommander."
|
|
||||||
fetching: "Chargement"
|
|
||||||
refresh: "Voir plus"
|
|
||||||
close: "Fermer"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "cette publication est privée"
|
private: "cette publication est privée"
|
||||||
deleted: "cette publication a été supprimée"
|
deleted: "cette publication a été supprimée"
|
||||||
@@ -1360,7 +1449,7 @@ mobile/views/components/note-sub.vue:
|
|||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
empty: "Aucune de notification !"
|
empty: "Aucune de notification !"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
add-visible-user: "Ajouter un utilisateur"
|
add-visible-user: "Ajouter un·e utilisateur·rice"
|
||||||
submit: "Publier"
|
submit: "Publier"
|
||||||
reply: "Répondre"
|
reply: "Répondre"
|
||||||
renote: "Republier"
|
renote: "Republier"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "cette publication a été supprimée"
|
deleted: "cette publication a été supprimée"
|
||||||
media-count: "{} médias attachés"
|
media-count: "{} médias attachés"
|
||||||
poll: "Sondage"
|
poll: "Sondage"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "Pas de notes"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "Content de vous revoir ! "
|
welcome-back: "Content de vous revoir ! "
|
||||||
adjective: "M."
|
adjective: "M."
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "Réglages"
|
settings: "Réglages"
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
about: "À propos de Misskey"
|
about: "À propos de Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "Il semble que cet utilisateur n’a rien publié pour le moment."
|
|
||||||
no-notes-with-media: "Aucune note comprenant des médias"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "Tout"
|
|
||||||
known: "Vous connaissez"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "Favoris"
|
title: "Favoris"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1435,7 +1516,7 @@ mobile/views/pages/received-follow-requests.vue:
|
|||||||
accept: "Accepter"
|
accept: "Accepter"
|
||||||
reject: "Refuser"
|
reject: "Refuser"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "Post"
|
title: "Publication"
|
||||||
prev: "Note précédente"
|
prev: "Note précédente"
|
||||||
next: "Note suivante"
|
next: "Note suivante"
|
||||||
mobile/views/pages/notifications.vue:
|
mobile/views/pages/notifications.vue:
|
||||||
@@ -1449,7 +1530,7 @@ mobile/views/pages/search.vue:
|
|||||||
mobile/views/pages/selectdrive.vue:
|
mobile/views/pages/selectdrive.vue:
|
||||||
select-file: "Choisissez un fichier"
|
select-file: "Choisissez un fichier"
|
||||||
mobile/views/pages/settings.vue:
|
mobile/views/pages/settings.vue:
|
||||||
signed-in-as: "Connecté en tant que {}"
|
signed-in-as: "Connecté·e en tant que {}"
|
||||||
design: "Affichage et design"
|
design: "Affichage et design"
|
||||||
dark-mode: "Mode nuit"
|
dark-mode: "Mode nuit"
|
||||||
i-am-under-limited-internet: "J'ai un accès Internet limité"
|
i-am-under-limited-internet: "J'ai un accès Internet limité"
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "en haut"
|
notification-position-top: "en haut"
|
||||||
behavior: "Comportement"
|
behavior: "Comportement"
|
||||||
fetch-on-scroll: "Chargement lors du défilement"
|
fetch-on-scroll: "Chargement lors du défilement"
|
||||||
|
keep-cw: "Garder l'avertissement de contenu"
|
||||||
note-visibility: "Visibilité de la publication"
|
note-visibility: "Visibilité de la publication"
|
||||||
default-note-visibility: "Visibilité par défaut"
|
default-note-visibility: "Visibilité par défaut"
|
||||||
remember-note-visibility: "Se souvenir du mode de visibilité de la publication"
|
remember-note-visibility: "Se souvenir du mode de visibilité de la publication"
|
||||||
@@ -1493,7 +1575,7 @@ mobile/views/pages/settings.vue:
|
|||||||
mobile/views/pages/user.vue:
|
mobile/views/pages/user.vue:
|
||||||
follows-you: "Vous suit"
|
follows-you: "Vous suit"
|
||||||
following: "Abonnements"
|
following: "Abonnements"
|
||||||
followers: "Abonnés"
|
followers: "Abonné·e·s"
|
||||||
notes: "Notes"
|
notes: "Notes"
|
||||||
overview: "Aperçu"
|
overview: "Aperçu"
|
||||||
timeline: "Fil d’actualité"
|
timeline: "Fil d’actualité"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "Activité"
|
activity: "Activité"
|
||||||
keywords: "Mot clés"
|
keywords: "Mot clés"
|
||||||
domains: "Domaines"
|
domains: "Domaines"
|
||||||
frequently-replied-users: "Utilisateurs mentionnés souvent"
|
frequently-replied-users: "Mentions fréquentes"
|
||||||
followers-you-know: "Abonnés que vous connaissez"
|
followers-you-know: "Abonné·e·s que vous connaissez"
|
||||||
last-used-at: "Dernière connexion il y a"
|
last-used-at: "Dernière connexion il y a"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "Aucun utilisateur connu"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "Aucun utilisateur connu"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "Pas de notes"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "Pas de photos"
|
no-photos: "Pas de photos"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "Renommer"
|
rename: "Renommer"
|
||||||
stack-left: "Vers la gauche"
|
stack-left: "Vers la gauche"
|
||||||
pop-right: "Vers la droite"
|
pop-right: "Vers la droite"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "Le fil été désactivé"
|
||||||
|
description: "Ce fil a été désactivé par l'administrateur du serveur."
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "Les publications médias uniquement"
|
is-media-only: "Les publications médias uniquement"
|
||||||
is-media-view: "Vue média"
|
|
||||||
edit: "Option"
|
edit: "Option"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "Vous suit"
|
||||||
posts: "Notes"
|
posts: "Notes"
|
||||||
following: "Suit"
|
following: "Suit"
|
||||||
followers: "Abonnés"
|
followers: "Abonnés"
|
||||||
|
|||||||
3
locales/index.d.ts
vendored
Normal file
3
locales/index.d.ts
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
declare const locales: { [lang: string]: any };
|
||||||
|
|
||||||
|
export = locales;
|
||||||
@@ -8,6 +8,19 @@ const yaml = require('js-yaml');
|
|||||||
const langs = ['de-DE', 'en-US', 'fr-FR', 'ja-JP', 'ja-KS', 'pl-PL', 'es-ES', 'nl-NL', 'zh-CN', 'ko-KR'];
|
const langs = ['de-DE', 'en-US', 'fr-FR', 'ja-JP', 'ja-KS', 'pl-PL', 'es-ES', 'nl-NL', 'zh-CN', 'ko-KR'];
|
||||||
|
|
||||||
const loadLocale = lang => yaml.safeLoad(fs.readFileSync(`${__dirname}/${lang}.yml`, 'utf-8'));
|
const loadLocale = lang => yaml.safeLoad(fs.readFileSync(`${__dirname}/${lang}.yml`, 'utf-8'));
|
||||||
const locales = langs.map(lang => ({ [lang]: loadLocale(lang) }));
|
const locales = langs
|
||||||
|
.map(lang => [lang, loadLocale(lang)])
|
||||||
|
.map(([lang, locale], _, locales) => {
|
||||||
|
switch (lang) {
|
||||||
|
case 'ja-JP': return [lang, locale];
|
||||||
|
case 'en-US': return [lang, { ...locales['ja-JP'], ...locale }];
|
||||||
|
default: return [lang, {
|
||||||
|
...(lang.startsWith('ja-') ? {} : locales['en-US']),
|
||||||
|
...locales['ja-JP'],
|
||||||
|
...locale
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.map(([lang, locale]) => ({ [lang]: loadLocale(lang) }));
|
||||||
|
|
||||||
module.exports = locales.reduce((a, b) => ({ ...a, ...b }));
|
module.exports = locales.reduce((a, b) => ({ ...a, ...b }));
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "わかった"
|
got-it: "わかった"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "カスタマイズのヒント"
|
title: "カスタマイズのヒント"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "ゴミ箱"
|
trash: "ゴミ箱"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "日"
|
sunday: "日"
|
||||||
monday: "月"
|
monday: "月"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "公式アカウント"
|
verified-user: "公式アカウント"
|
||||||
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "やり直す"
|
retry: "やり直す"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "アプリケーションに戻って、やっていってください。"
|
please-go-back: "アプリケーションに戻って、やっていってください。"
|
||||||
error: "セッションが存在しません。"
|
error: "セッションが存在しません。"
|
||||||
sign-in: "サインインしてください"
|
sign-in: "サインインしてください"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
vote-count: "{}票"
|
vote-count: "{}票"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "フォルダーを作成"
|
create-folder: "フォルダーを作成"
|
||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー:"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "リバーシ"
|
game: "リバーシ"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了しました!"
|
success: "設定が完了しました!"
|
||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "通知"
|
title: "通知"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
next: "次の投稿"
|
next: "次の投稿"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "フォト"
|
title: "フォト"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "キーワード"
|
keywords: "キーワード"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
|
|
||||||
got-it: "わかった"
|
got-it: "わかった"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
@@ -58,6 +60,16 @@ common:
|
|||||||
trash: "ゴミ箱"
|
trash: "ゴミ箱"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
|
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "日"
|
sunday: "日"
|
||||||
@@ -121,6 +133,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "公式アカウント"
|
verified-user: "公式アカウント"
|
||||||
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -138,10 +151,13 @@ common:
|
|||||||
|
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
|
turn-on-darkmode: "闇に飲まれる"
|
||||||
|
turn-off-darkmode: "光あれ"
|
||||||
|
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
@@ -212,6 +228,19 @@ auth/views/index.vue:
|
|||||||
error: "セッションが存在しません。"
|
error: "セッションが存在しません。"
|
||||||
sign-in: "サインインしてください"
|
sign-in: "サインインしてください"
|
||||||
|
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
|
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -374,6 +403,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
@@ -388,10 +419,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
|
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
@@ -531,6 +565,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -550,6 +585,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
|
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
@@ -731,10 +777,6 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
|
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -751,13 +793,6 @@ desktop/views/components/following-window.vue:
|
|||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
|
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー:"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "リバーシ"
|
game: "リバーシ"
|
||||||
|
|
||||||
@@ -883,12 +918,10 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -979,6 +1012,10 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
|
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -1060,15 +1097,12 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
|
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
|
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -1117,6 +1151,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
|
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
@@ -1128,6 +1163,10 @@ admin/views/dashboard.vue:
|
|||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
|
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1200,6 +1239,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1265,15 +1305,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1289,6 +1338,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1341,6 +1391,65 @@ admin/views/announcements.vue:
|
|||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
|
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1357,9 +1466,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
|
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
next: "次の投稿"
|
next: "次の投稿"
|
||||||
@@ -1400,26 +1506,23 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
|
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
@@ -1461,8 +1564,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
|
||||||
@@ -1485,10 +1587,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
|
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1500,13 +1598,6 @@ common/views/components/follow-button.vue:
|
|||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
|
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1550,9 +1641,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
|
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1571,14 +1659,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
|
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
|
|
||||||
@@ -1665,6 +1745,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1704,19 +1785,10 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "キーワード"
|
keywords: "キーワード"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
|
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
|
||||||
@@ -1740,13 +1812,16 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
|
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
|
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっとあらへんのか!"
|
load-more: "もっとあらへんのか!"
|
||||||
enter-password: "パスワードを入れてや"
|
enter-password: "パスワードを入れてや"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "ほい"
|
got-it: "ほい"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "カスタマイズのヒント"
|
title: "カスタマイズのヒント"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "ゴミ箱"
|
trash: "ゴミ箱"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "日"
|
sunday: "日"
|
||||||
monday: "月"
|
monday: "月"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "アメちゃん付きアカウント"
|
verified-user: "アメちゃん付きアカウント"
|
||||||
disable-animated-mfm: "投稿内のちょろちょろ動いてんのを止める"
|
disable-animated-mfm: "投稿内のちょろちょろ動いてんのを止める"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "閲覧注意?見せたらあかん?そんなん知らんわ、見せろや!"
|
always-show-nsfw: "閲覧注意?見せたらあかん?そんなん知らんわ、見せろや!"
|
||||||
always-mark-nsfw: "わからんからとりあえずメディアは見せたらあかん"
|
always-mark-nsfw: "わからんからとりあえずメディアは見せたらあかん"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "開発ビルドや。本番環境で使わんといて!知らんで!"
|
do-not-use-in-production: "開発ビルドや。本番環境で使わんといて!知らんで!"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "ちゃんとした情報見せてや!"
|
view-on-remote: "ちゃんとした情報見せてや!"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が起こったわ"
|
title: "問題が起こったわ"
|
||||||
retry: "もっぺん"
|
retry: "もっぺん"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "アプリケーションに戻って、気張ってってな。"
|
please-go-back: "アプリケーションに戻って、気張ってってな。"
|
||||||
error: "セッションが存在してへん。"
|
error: "セッションが存在してへん。"
|
||||||
sign-in: "サインインしてや"
|
sign-in: "サインインしてや"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っとります"
|
waiting-for: "{}を待っとります"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
unfavorite: "お気に入りやめる"
|
unfavorite: "お気に入りやめる"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
unpin: "ピン留めやめる"
|
unpin: "ピン留めやめる"
|
||||||
delete: "ほかす"
|
delete: "ほかす"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票や!"
|
vote-to: "「{}」に投票や!"
|
||||||
vote-count: "{}票"
|
vote-count: "{}票"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "このメールアドレスOKや!"
|
email-verified: "このメールアドレスOKや!"
|
||||||
email-not-verified: "メールアドレスが確認されとらん。メールボックスもっぺん見てくれへん?"
|
email-not-verified: "メールアドレスが確認されとらん。メールボックスもっぺん見てくれへん?"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "フォルダー作る"
|
create-folder: "フォルダー作る"
|
||||||
upload: "ファイル上げる"
|
upload: "ファイル上げる"
|
||||||
url-upload: "URLつこうて上げる"
|
url-upload: "URLつこうて上げる"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "ちょっと見せられへんわ"
|
|
||||||
click-to-show: "クリックして見せるで"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "ちょっと見せられへんわ"
|
sensitive: "ちょっと見せられへんわ"
|
||||||
click-to-show: "クリックして見せるで"
|
click-to-show: "クリックして見せるで"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはおらんっぽいで、知らんけど。"
|
empty: "フォロー中のユーザーはおらんっぽいで、知らんけど。"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "おもろそうやな:"
|
|
||||||
empty: "おもろいユーザー居らんかったわ"
|
|
||||||
fetching: "読み込んどります"
|
|
||||||
refresh: "もっとあるやろ!"
|
|
||||||
close: "さいなら"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q?{{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q?{{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトすんで。この設定はブラウザに記憶されんで。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトすんで。この設定はブラウザに記憶されんで。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使うとるとき、ナビゲーションが発生するときにページ移動せんで、一時的なカラムで受けれるようにするで"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "見た感じ"
|
display: "見た感じ"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙選ぶ"
|
choose-wallpaper: "壁紙選ぶ"
|
||||||
delete-wallpaper: "壁紙ほかす"
|
delete-wallpaper: "壁紙ほかす"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了したで!"
|
success: "設定が完了したで!"
|
||||||
failed: "なんか設定に失敗したで。トークンを間違えとらんか確認してや。"
|
failed: "なんか設定に失敗したで。トークンを間違えとらんか確認してや。"
|
||||||
info: "次のサインインからは、パスワードに加えてデバイスに出とるトークンを入力してな。"
|
info: "次のサインインからは、パスワードに加えてデバイスに出とるトークンを入力してな。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "API使うんやったらこのトークンを「i」っちゅうパラメータにくっつけてリクエストできるで。"
|
intro: "API使うんやったらこのトークンを「i」っちゅうパラメータにくっつけてリクエストできるで。"
|
||||||
caution: "アカウント勝手にいじられるかも知れんから、このトークンは教えたらあかんし、アプリにも書いたらあかんで(これはフリちゃうで)"
|
caution: "アカウント勝手にいじられるかも知れんから、このトークンは教えたらあかんし、アプリにも書いたらあかんで(これはフリちゃうで)"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
follow-requests: "フォロー許してくれや!言うてみる"
|
follow-requests: "フォロー許してくれや!言うてみる"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "さいなら"
|
signout: "さいなら"
|
||||||
dark: "ナイトゲームじゃ!"
|
dark: "ナイトゲームじゃ!"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "通知"
|
title: "通知"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "知っといてや"
|
announcements: "知っといてや"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "ワイのインスタンス"
|
this-instance: "ワイのインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つからへん!"
|
user-not-found: "ユーザーが見つからへん!"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password} 」やで"
|
password-updated: "パスワードは現在「{password} 」やで"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "もうちょい……"
|
about: "もうちょい……"
|
||||||
gotit: "ほい"
|
gotit: "ほい"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "ドライブ"
|
title: "ドライブ"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームをカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "前のやつ"
|
prev: "前のやつ"
|
||||||
next: "次のやつ"
|
next: "次のやつ"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "写真"
|
title: "写真"
|
||||||
loading: "読み込んどります"
|
loading: "読み込んどります"
|
||||||
no-photos: "写真はあらへんで"
|
no-photos: "写真はあらへんで"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされとるで"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotや"
|
is-bot: "このアカウントはBotや"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿しとらんようや。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何すんの?(数字を入れてや): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何すんの?(数字を入れてや): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "フォルダの削除は未実装やねん...。堪忍な!"
|
deletion-alert: "フォルダの削除は未実装やねん...。堪忍な!"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在おる場所はルートで、フォルダとちゃうから名前の変更はできへん。名前を変更したいフォルダに移動してからやってな。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在おる場所はルートで、フォルダとちゃうから移動はできへん。移動したいフォルダに移動してからやってな。"
|
|
||||||
url-prompt: "このURLのファイルをアップロードしたいねん"
|
url-prompt: "このURLのファイルをアップロードしたいねん"
|
||||||
uploading: "アップロードをリクエストしたで。アップロードが完了するまで時間がかかるかも分からん、知らんけど。"
|
uploading: "アップロードをリクエストしたで。アップロードが完了するまで時間がかかるかも分からん、知らんけど。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "ちょっと見せられへんわ"
|
nsfw: "ちょっと見せられへんわ"
|
||||||
mark-as-sensitive: "見たらあかん感じにしとく"
|
mark-as-sensitive: "見たらあかん感じにしとく"
|
||||||
unmark-as-sensitive: "やっぱ見せたるわ"
|
unmark-as-sensitive: "やっぱ見せたるわ"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "見たらあかんで"
|
|
||||||
click-to-show: "押してみ、見せたるわ"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "ちょっと見せられへんわ"
|
sensitive: "ちょっと見せられへんわ"
|
||||||
click-to-show: "押してみ、見せたるわ"
|
click-to-show: "押してみ、見せたるわ"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許してくれるん待っとる"
|
request-pending: "フォロー許してくれるん待っとる"
|
||||||
follow-processing: "今フォロー処理やっとる‥"
|
follow-processing: "今フォロー処理やっとる‥"
|
||||||
follow-request: "フォローさせてや!言うてみる"
|
follow-request: "フォローさせてや!言うてみる"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "おもろそうやな"
|
|
||||||
empty: "おすすめのユーザーはおらん。"
|
|
||||||
fetching: "読み込んどります"
|
|
||||||
refresh: "もっとあるやろ!"
|
|
||||||
close: "さいなら"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は見せられへんわ"
|
private: "この投稿は見せられへんわ"
|
||||||
deleted: "この投稿なんか無くなってもうたわ"
|
deleted: "この投稿なんか無くなってもうたわ"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿なんか無くなってもうたわ"
|
deleted: "この投稿なんか無くなってもうたわ"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿はあらへん"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえり、"
|
welcome-back: "おかえり、"
|
||||||
adjective: "はん"
|
adjective: "はん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyってなんや?"
|
about: "Misskeyってなんや?"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿しとらんようや。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はあらへん。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知っとる"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "キタの方"
|
notification-position-top: "キタの方"
|
||||||
behavior: "動き"
|
behavior: "動き"
|
||||||
fetch-on-scroll: "スクロールしたらもっと見せてや"
|
fetch-on-scroll: "スクロールしたらもっと見せてや"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "もとからの公開範囲"
|
default-note-visibility: "もとからの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲おぼえといて"
|
remember-note-visibility: "投稿の公開範囲おぼえといて"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "やっとること"
|
activity: "やっとること"
|
||||||
keywords: "キーワード"
|
keywords: "キーワード"
|
||||||
domains: "よく出るドメイン"
|
domains: "よく出るドメイン"
|
||||||
frequently-replied-users: "よう話しとるユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知っとるフォロワー"
|
followers-you-know: "知っとるフォロワー"
|
||||||
last-used-at: "最後いつ来た?"
|
last-used-at: "最後いつ来た?"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知っとるユーザーは居らん"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よう話すユーザーは居らん"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はあらへん"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はあらへんで"
|
no-photos: "写真はあらへんで"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変えるで"
|
rename: "名前を変えるで"
|
||||||
stack-left: "左に重ねんで!"
|
stack-left: "左に重ねんで!"
|
||||||
pop-right: "右に出すで!"
|
pop-right: "右に出すで!"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿だけや"
|
is-media-only: "メディア投稿だけや"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -27,7 +27,9 @@ common:
|
|||||||
do-not-copy-paste: "여기에 코드를 입력하거나 붙여넣지 마십시오. 계정이 무단으로 사용될 수 있습니다."
|
do-not-copy-paste: "여기에 코드를 입력하거나 붙여넣지 마십시오. 계정이 무단으로 사용될 수 있습니다."
|
||||||
load-more: "더보기"
|
load-more: "더보기"
|
||||||
enter-password: "비밀번호를 입력하여 주십시오"
|
enter-password: "비밀번호를 입력하여 주십시오"
|
||||||
2fa: "二段階認証"
|
2fa: "2단계 인증"
|
||||||
|
customize-home: "홈 커스터마이징"
|
||||||
|
featured-notes: "하이라이트"
|
||||||
got-it: "알겠습니다"
|
got-it: "알겠습니다"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "커스터마이징 도움말"
|
title: "커스터마이징 도움말"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "휴지통"
|
trash: "휴지통"
|
||||||
drive: "드라이브"
|
drive: "드라이브"
|
||||||
messaging: "대화"
|
messaging: "대화"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "덱"
|
||||||
|
timeline: "타임라인"
|
||||||
|
explore: "발견"
|
||||||
|
following: "팔로우 중"
|
||||||
|
followers: "팔로워"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "사용자를 팔로우하면 글이 타임라인에 표시됩니다."
|
||||||
|
explore: "사용자 탐색"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "일"
|
sunday: "일"
|
||||||
monday: "월"
|
monday: "월"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "리버시의 돌로 아바타를 사용"
|
use-avatar-reversi-stones: "리버시의 돌로 아바타를 사용"
|
||||||
verified-user: "공식 계정"
|
verified-user: "공식 계정"
|
||||||
disable-animated-mfm: "글의 문자 애니메이션을 비활성화"
|
disable-animated-mfm: "글의 문자 애니메이션을 비활성화"
|
||||||
|
disable-showing-animated-images: "움직이는 이미지를 자동으로 재생하지 않음"
|
||||||
suggest-recent-hashtags: "최근 해시태그를 글 작성란에 표시"
|
suggest-recent-hashtags: "최근 해시태그를 글 작성란에 표시"
|
||||||
always-show-nsfw: "항상 열람주의 미디어를 표시"
|
always-show-nsfw: "항상 열람주의 미디어를 표시"
|
||||||
always-mark-nsfw: "항상 미디어를 열람주의로 설정하여 게시"
|
always-mark-nsfw: "항상 미디어를 열람주의로 설정하여 게시"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "비밀번호 표시"
|
show-password: "비밀번호 표시"
|
||||||
do-not-use-in-production: "이것은 개발 빌드입니다. 프로덕션 환경에서 사용하지 마십시오."
|
do-not-use-in-production: "이것은 개발 빌드입니다. 프로덕션 환경에서 사용하지 마십시오."
|
||||||
user-suspended: "이 사용자는 정지된 상태입니다."
|
user-suspended: "이 사용자는 정지된 상태입니다."
|
||||||
is-remote-user: "이 유저 정보는 복사본입니다."
|
is-remote-user: "이 사용자 정보는 정확하지 않을 수 있습니다."
|
||||||
is-remote-post: "이 글 정보는 복사본입니다."
|
is-remote-post: "이 글 정보는 복사본입니다."
|
||||||
view-on-remote: "정확한 정보 보기"
|
view-on-remote: "정확한 정보 보기"
|
||||||
renoted-by: "{user}이(가) 리노트"
|
renoted-by: "{user}이(가) 리노트"
|
||||||
|
no-notes: "글이 없습니다"
|
||||||
error:
|
error:
|
||||||
title: "오류가 발생했습니다"
|
title: "오류가 발생했습니다"
|
||||||
retry: "다시 시도"
|
retry: "다시 시도"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "어플리케이션으로 돌아가여 시도하여 주십시오."
|
please-go-back: "어플리케이션으로 돌아가여 시도하여 주십시오."
|
||||||
error: "세션이 존재하지 않습니다."
|
error: "세션이 존재하지 않습니다."
|
||||||
sign-in: "로그인 해주시기 바랍니다"
|
sign-in: "로그인 해주시기 바랍니다"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "공식 계정"
|
||||||
|
popular-users: "인기 사용자"
|
||||||
|
recently-updated-users: "최근 게시한 사용자"
|
||||||
|
recently-registered-users: "신규 사용자"
|
||||||
|
popular-tags: "인기 태그"
|
||||||
|
federated: "연합"
|
||||||
|
explore: "{host}을(를) 탐색"
|
||||||
|
users-info: "현재 {users} 사용자가 등록되어 있습니다"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "사용자가 없습니다"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}을(를) 기다리고 있습니다"
|
waiting-for: "{}을(를) 기다리고 있습니다"
|
||||||
@@ -208,7 +232,7 @@ common/views/components/games/reversi/reversi.game.vue:
|
|||||||
can-put-everywhere: "어디에도 둘 수 있는 모드"
|
can-put-everywhere: "어디에도 둘 수 있는 모드"
|
||||||
common/views/components/games/reversi/reversi.index.vue:
|
common/views/components/games/reversi/reversi.index.vue:
|
||||||
title: "Misskey Reversi"
|
title: "Misskey Reversi"
|
||||||
sub-title: "다른 Misskey 유저와 리버시로 대결하자"
|
sub-title: "다른 Misskey 사용자와 리버시로 대결하자"
|
||||||
invite: "초대"
|
invite: "초대"
|
||||||
rule: "게임 방법"
|
rule: "게임 방법"
|
||||||
rule-desc: "리버시는 상대와 번갈아가며 돌을 판에 두고, 상대의 돌을 자신의 돌 사이에 두어 자신의 색으로 바꿔나가며, 최종적으로 남아있는 돌이 많은 쪽이 승리하는 보드게임입니다."
|
rule-desc: "리버시는 상대와 번갈아가며 돌을 판에 두고, 상대의 돌을 자신의 돌 사이에 두어 자신의 색으로 바꿔나가며, 최종적으로 남아있는 돌이 많은 쪽이 승리하는 보드게임입니다."
|
||||||
@@ -344,23 +368,28 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "링크 복사"
|
copy-link: "링크 복사"
|
||||||
favorite: "이 노트 즐겨찾기"
|
favorite: "이 노트 즐겨찾기"
|
||||||
unfavorite: "즐겨찾기에서 제거"
|
unfavorite: "즐겨찾기에서 제거"
|
||||||
|
watch: "지켜보기"
|
||||||
|
unwatch: "지켜보기 해제"
|
||||||
pin: "프로필에 고정"
|
pin: "프로필에 고정"
|
||||||
unpin: "프로필에서 고정 해제"
|
unpin: "프로필에서 고정 해제"
|
||||||
delete: "삭제"
|
delete: "삭제"
|
||||||
delete-confirm: "이 글을 삭제하시겠습니까?"
|
delete-confirm: "이 글을 삭제하시겠습니까?"
|
||||||
remote: "글 원본 보기"
|
remote: "글 원본 보기"
|
||||||
common/views/components/user-menu.vue:
|
common/views/components/user-menu.vue:
|
||||||
mention: "メンション"
|
mention: "멘션"
|
||||||
mute: "ミュート"
|
mute: "뮤트"
|
||||||
unmute: "ミュート解除"
|
unmute: "뮤트 해제"
|
||||||
block: "ブロック"
|
block: "차단"
|
||||||
unblock: "ブロック解除"
|
unblock: "차단 해제"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "리스트에 추가"
|
||||||
select-list: "リストを選択してください"
|
select-list: "리스트를 선택하여 주십시오"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
report-abuse: "스팸 신고"
|
||||||
report-abuse: "スパムを報告"
|
report-abuse-detail: "어떤 스팸 행위를 하고 있습니까?"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-reported: "관리자에게 보고되었습니다. 협조해주셔서 감사합니다."
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
silence: "침묵"
|
||||||
|
unsilence: "침묵 해제"
|
||||||
|
suspend: "정지"
|
||||||
|
unsuspend: "정지 해제"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "\"{}\"에 투표하기"
|
vote-to: "\"{}\"에 투표하기"
|
||||||
vote-count: "{}표"
|
vote-count: "{}표"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "계정"
|
account: "계정"
|
||||||
location: "장소"
|
location: "장소"
|
||||||
description: "자기소개"
|
description: "자기소개"
|
||||||
|
you-can-include-hashtags: "해시 태그를 포함할 수 있습니다."
|
||||||
language: "언어"
|
language: "언어"
|
||||||
birthday: "생일"
|
birthday: "생일"
|
||||||
avatar: "아바타"
|
avatar: "아바타"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "메일 주소"
|
email-address: "메일 주소"
|
||||||
email-verified: "매일 주소가 확인되었습니다"
|
email-verified: "매일 주소가 확인되었습니다"
|
||||||
email-not-verified: "메일 주소가 확인되지 않았습니다. 받은 편지함을 확인하여 주시기 바랍니다."
|
email-not-verified: "메일 주소가 확인되지 않았습니다. 받은 편지함을 확인하여 주시기 바랍니다."
|
||||||
|
export: "내보내기"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "모든 글 데이터"
|
||||||
|
following-list: "팔로잉"
|
||||||
|
mute-list: "뮤트"
|
||||||
|
blocking-list: "차단"
|
||||||
|
export-requested: "내보내기를 요청하였습니다. 이 작업은 시간이 걸릴 수 있습니다. 내보내기가 완료되면 드라이브에 파일이 추가됩니다."
|
||||||
|
enter-password: "비밀번호를 입력하여 주십시오"
|
||||||
|
danger-zone: "위험한 설정"
|
||||||
|
delete-account: "계정 삭제"
|
||||||
|
account-deleted: "계정이 삭제되었습니다. 데이터가 사라질 때까지 시간이 걸릴 수 있습니다."
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "사용자"
|
users: "사용자"
|
||||||
rename: "리스트 이름 바꾸기"
|
rename: "리스트 이름 바꾸기"
|
||||||
@@ -594,7 +635,7 @@ desktop/views/components/calendar.vue:
|
|||||||
title: "{year}년 {month}월"
|
title: "{year}년 {month}월"
|
||||||
prev: "이전 달"
|
prev: "이전 달"
|
||||||
next: "다음 달"
|
next: "다음 달"
|
||||||
go: "클릭 하 여 시간 회귀"
|
go: "클릭하여 시간역행"
|
||||||
desktop/views/components/choose-file-from-drive-window.vue:
|
desktop/views/components/choose-file-from-drive-window.vue:
|
||||||
chosen-files: "{count} 파일 선택중"
|
chosen-files: "{count} 파일 선택중"
|
||||||
upload: "PC에서 드라이브에 파일을 업로드"
|
upload: "PC에서 드라이브에 파일을 업로드"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "폴더 만들기"
|
create-folder: "폴더 만들기"
|
||||||
upload: "파일 업로드"
|
upload: "파일 업로드"
|
||||||
url-upload: "URL에서 업로드"
|
url-upload: "URL에서 업로드"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "열람주의"
|
|
||||||
click-to-show: "클릭하여 표시"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "열람주의"
|
sensitive: "열람주의"
|
||||||
click-to-show: "클릭하여 표시"
|
click-to-show: "클릭하여 표시"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} 의 팔로우"
|
following: "{} 의 팔로우"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "팔로우중인 사용자가 없는 것 같습니다."
|
empty: "팔로우중인 사용자가 없는 것 같습니다."
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "마음에 드는 사용자를 팔로우:"
|
|
||||||
empty: "추천 사용자를 찾을 수 없습니다."
|
|
||||||
fetching: "불러오는 중입니다"
|
|
||||||
refresh: "더 보기"
|
|
||||||
close: "닫기"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "리버시"
|
game: "리버시"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "예: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "예: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "창 자동 팝아웃"
|
auto-popout: "창 자동 팝아웃"
|
||||||
auto-popout-desc: "창이 열릴 때 팝아웃 (브라우저 밖으로 분리) 이 가능한 경우 자동으로 팝아웃합니다. 이 설정은 브라우저에 저장됩니다."
|
auto-popout-desc: "창이 열릴 때 팝아웃 (브라우저 밖으로 분리) 이 가능한 경우 자동으로 팝아웃합니다. 이 설정은 브라우저에 저장됩니다."
|
||||||
deck-nav: "덱 내 탐색"
|
keep-cw: "CW 유지"
|
||||||
deck-nav-desc: "덱을 사용중일 때, 내비게이션이 발생하였을 경우 페이지를 이동하지 않고 일시적으로 임시 칼럼을 생성하도록 합니다."
|
keep-cw-desc: "글에 답글을 달 때, 답글할 글에 CW가 설정되어 있는 경우 기본값으로 동일한 CW를 설정하도록 합니다."
|
||||||
deck-default: "덱을 기본 UI로 설정"
|
|
||||||
display: "디자인 및 표시"
|
display: "디자인 및 표시"
|
||||||
customize: "홈 커스터마이징"
|
|
||||||
wallpaper: "배경"
|
wallpaper: "배경"
|
||||||
choose-wallpaper: "배경 설정"
|
choose-wallpaper: "배경 설정"
|
||||||
delete-wallpaper: "배경 제거"
|
delete-wallpaper: "배경 제거"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "설정이 완료되었습니다!"
|
success: "설정이 완료되었습니다!"
|
||||||
failed: "설정에 실패했습니다. 토큰이 잘못되었는지 확인해주십시오."
|
failed: "설정에 실패했습니다. 토큰이 잘못되었는지 확인해주십시오."
|
||||||
info: "다음 로그인부터는 이와 동일하게 비밀번호에 더해 장치에 표시된 토큰을 입력합니다."
|
info: "다음 로그인부터는 이와 동일하게 비밀번호에 더해 장치에 표시된 토큰을 입력합니다."
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "열람주의"
|
||||||
|
click-to-show: "클릭하여 보기"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "API를 사용하려면 위의 토큰을 \"i\" 라는 키의 값으로 매개변수를 추가하여 요청합니다."
|
intro: "API를 사용하려면 위의 토큰을 \"i\" 라는 키의 값으로 매개변수를 추가하여 요청합니다."
|
||||||
caution: "계정을 부정 사용할 가능성이 있으므로, 이 토큰은 제 3자에게 알려주지 마십시오 (앱 등에 붙여넣지 마십시오)."
|
caution: "계정을 부정 사용할 가능성이 있으므로, 이 토큰은 제 3자에게 알려주지 마십시오 (앱 등에 붙여넣지 마십시오)."
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "즐겨찾기"
|
favorites: "즐겨찾기"
|
||||||
lists: "리스트"
|
lists: "리스트"
|
||||||
follow-requests: "팔로우 요청"
|
follow-requests: "팔로우 요청"
|
||||||
customize: "홈 커스터마이징"
|
|
||||||
admin: "관리"
|
admin: "관리"
|
||||||
settings: "설정"
|
settings: "설정"
|
||||||
signout: "로그아웃"
|
signout: "로그아웃"
|
||||||
dark: "어둠에 삼켜져라"
|
dark: "어둠에 삼켜져라"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "홈"
|
|
||||||
deck: "덱"
|
|
||||||
game: "게임"
|
game: "게임"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "알림"
|
title: "알림"
|
||||||
@@ -990,7 +1020,8 @@ admin/views/index.vue:
|
|||||||
federation: "연합"
|
federation: "연합"
|
||||||
announcements: "공지사항"
|
announcements: "공지사항"
|
||||||
hashtags: "해시태그"
|
hashtags: "해시태그"
|
||||||
abuse: "スパム報告"
|
abuse: "스팸 신고"
|
||||||
|
queue: "작업 대기열"
|
||||||
back-to-misskey: "Misskey로 돌아가기"
|
back-to-misskey: "Misskey로 돌아가기"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "대시보드"
|
dashboard: "대시보드"
|
||||||
@@ -1000,12 +1031,15 @@ admin/views/dashboard.vue:
|
|||||||
instances: "인스턴스"
|
instances: "인스턴스"
|
||||||
this-instance: "이 인스턴스"
|
this-instance: "이 인스턴스"
|
||||||
federated: "연합"
|
federated: "연합"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "동작"
|
||||||
|
remove-all-jobs: "모든 작업 제거"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "스팸 신고"
|
||||||
target: "対象"
|
target: "대상"
|
||||||
reporter: "報告者"
|
reporter: "신고자"
|
||||||
details: "詳細"
|
details: "상세"
|
||||||
remove-report: "削除"
|
remove-report: "삭제"
|
||||||
admin/views/instance.vue:
|
admin/views/instance.vue:
|
||||||
instance: "인스턴스"
|
instance: "인스턴스"
|
||||||
instance-name: "인스턴스 이름"
|
instance-name: "인스턴스 이름"
|
||||||
@@ -1020,7 +1054,7 @@ admin/views/instance.vue:
|
|||||||
maintainer-email: "관리자 연락처"
|
maintainer-email: "관리자 연락처"
|
||||||
drive-config: "드라이브 설정"
|
drive-config: "드라이브 설정"
|
||||||
cache-remote-files: "원격 파일을 캐시"
|
cache-remote-files: "원격 파일을 캐시"
|
||||||
cache-remote-files-desc: "이 설정을 해지하면 원격 파일을 캐시하지 않고 해당 파일을 직접 링크하게 됩니다. 그에 따라 서버의 저장 공간을 절약할 수 있지만, 프라이버시 설정에서 직접 링크를 무효로 설정한 유저에게는 파일이 보이지 않거나, 썸네일이 생성되지 않기 때문에 통신량이 증가합니다. 일반적으로 이 설정을 ON으로 두는 것을 추천합니다."
|
cache-remote-files-desc: "이 설정을 해지하면 원격 파일을 캐시하지 않고 해당 파일을 직접 링크하게 됩니다. 그에 따라 서버의 저장 공간을 절약할 수 있지만, 프라이버시 설정에서 직접 링크를 무효로 설정한 사용자에게는 파일이 보이지 않거나, 썸네일이 생성되지 않기 때문에 통신량이 증가합니다. 일반적으로 이 설정을 ON으로 두는 것을 추천합니다."
|
||||||
local-drive-capacity-mb: "로컬 사용자 한 명당 드라이브 용량"
|
local-drive-capacity-mb: "로컬 사용자 한 명당 드라이브 용량"
|
||||||
remote-drive-capacity-mb: "원격 사용자 한 명당 드라이브 용량"
|
remote-drive-capacity-mb: "원격 사용자 한 명당 드라이브 용량"
|
||||||
mb: "메가바이트 단위"
|
mb: "메가바이트 단위"
|
||||||
@@ -1053,7 +1087,7 @@ admin/views/instance.vue:
|
|||||||
disable-registration: "사용자 등록 비활성화"
|
disable-registration: "사용자 등록 비활성화"
|
||||||
disable-local-timeline: "로컬 타임라인 비활성화"
|
disable-local-timeline: "로컬 타임라인 비활성화"
|
||||||
disable-global-timeline: "글로벌 타임라인 비활성화"
|
disable-global-timeline: "글로벌 타임라인 비활성화"
|
||||||
disabling-timelines-info: "これらのタイムラインを無効にしても、管理者およびモデレーターは引き続き利用できます。"
|
disabling-timelines-info: "이 타임라인들을 비활성화해도 관리자 및 모더레이터는 계속 사용할 수 있습니다."
|
||||||
invite: "초대"
|
invite: "초대"
|
||||||
save: "저장"
|
save: "저장"
|
||||||
saved: "저장하였습니다"
|
saved: "저장하였습니다"
|
||||||
@@ -1064,13 +1098,14 @@ admin/views/instance.vue:
|
|||||||
external-user-recommendation-timeout: "타임 아웃"
|
external-user-recommendation-timeout: "타임 아웃"
|
||||||
external-user-recommendation-timeout-desc: "밀리초 (예: 300000)"
|
external-user-recommendation-timeout-desc: "밀리초 (예: 300000)"
|
||||||
email-config: "메일 서버 설정"
|
email-config: "메일 서버 설정"
|
||||||
email-config-info: "메일 주소 확인 혹은 암호 재설정에 사용 됩니다."
|
email-config-info: "메일 주소 확인 혹은 비밀번호 재설정에 사용 됩니다."
|
||||||
enable-email: "메일 발신 활성화"
|
enable-email: "메일 발신 활성화"
|
||||||
email: "메일 주소"
|
email: "메일 주소"
|
||||||
smtp-secure: "SMTP 연결에 암시적으로 SSL/TLS를 사용"
|
smtp-secure: "SMTP 연결에 암시적으로 SSL/TLS를 사용"
|
||||||
smtp-secure-info: "STARTTLS를 사용 시 ON으로 합니다."
|
smtp-secure-info: "STARTTLS를 사용 시 ON으로 합니다."
|
||||||
smtp-host: "SMTP 호스트"
|
smtp-host: "SMTP 호스트"
|
||||||
smtp-port: "SMTP 포트"
|
smtp-port: "SMTP 포트"
|
||||||
|
smtp-auth: "SMTP 인증 수행"
|
||||||
smtp-user: "SMTP 사용자"
|
smtp-user: "SMTP 사용자"
|
||||||
smtp-pass: "SMTP 비밀번호"
|
smtp-pass: "SMTP 비밀번호"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1094,10 +1129,10 @@ admin/views/charts.vue:
|
|||||||
notes: "글 증감 (통합)"
|
notes: "글 증감 (통합)"
|
||||||
local-notes: "글 증감 (로컬)"
|
local-notes: "글 증감 (로컬)"
|
||||||
remote-notes: "글 증감 (원격)"
|
remote-notes: "글 증감 (원격)"
|
||||||
notes-total: "글 누적 수"
|
notes-total: "글 누적"
|
||||||
users: "사용자 증감"
|
users: "사용자 증감"
|
||||||
users-total: "사용자 누적"
|
users-total: "사용자 누적"
|
||||||
active-users: "アクティブユーザー数"
|
active-users: "활성 사용자 수"
|
||||||
drive: "드라이브 사용량 증감"
|
drive: "드라이브 사용량 증감"
|
||||||
drive-total: "드라이브 사용량 누적"
|
drive-total: "드라이브 사용량 누적"
|
||||||
drive-files: "드라이브 파일 수 증감"
|
drive-files: "드라이브 파일 수 증감"
|
||||||
@@ -1106,10 +1141,10 @@ admin/views/charts.vue:
|
|||||||
network-time: "응답시간"
|
network-time: "응답시간"
|
||||||
network-usage: "통신량"
|
network-usage: "통신량"
|
||||||
admin/views/drive.vue:
|
admin/views/drive.vue:
|
||||||
operation: "操作"
|
operation: "작업"
|
||||||
fileid-or-url: "ファイルIDまたはファイルURL"
|
fileid-or-url: "파일 ID 또는 파일 URL"
|
||||||
file-not-found: "ファイルが見つかりません"
|
file-not-found: "파일을 찾을 수 없습니다"
|
||||||
lookup: "照会"
|
lookup: "조회"
|
||||||
sort:
|
sort:
|
||||||
title: "정렬"
|
title: "정렬"
|
||||||
createdAtAsc: "업로드 날짜 오랜 순"
|
createdAtAsc: "업로드 날짜 오랜 순"
|
||||||
@@ -1125,23 +1160,32 @@ admin/views/drive.vue:
|
|||||||
deleted: "삭제하였습니다"
|
deleted: "삭제하였습니다"
|
||||||
mark-as-sensitive: "열람주의로 설정"
|
mark-as-sensitive: "열람주의로 설정"
|
||||||
unmark-as-sensitive: "열람주의 해제"
|
unmark-as-sensitive: "열람주의 해제"
|
||||||
marked-as-sensitive: "閲覧注意に設定しました"
|
marked-as-sensitive: "열람주의로 설정하였습니다"
|
||||||
unmarked-as-sensitive: "閲覧注意を解除しました"
|
unmarked-as-sensitive: "열람주의를 제거하였습니다"
|
||||||
admin/views/users.vue:
|
admin/views/users.vue:
|
||||||
operation: "작업"
|
operation: "작업"
|
||||||
username-or-userid: "사용자명 혹은 사용자 ID"
|
username-or-userid: "사용자명 혹은 사용자 ID"
|
||||||
user-not-found: "사용자를 찾을 수 없습니다"
|
user-not-found: "사용자를 찾을 수 없습니다"
|
||||||
lookup: "조회"
|
lookup: "조회"
|
||||||
reset-password: "암호 재설정"
|
reset-password: "비밀번호 재설정"
|
||||||
password-updated: "암호는 현재 \"{password}\" 입니다"
|
reset-password-confirm: "비밀번호를 재설정하시겠습니까?"
|
||||||
|
password-updated: "비밀번호는 현재 \"{password}\" 입니다"
|
||||||
suspend: "정지"
|
suspend: "정지"
|
||||||
|
suspend-confirm: "정지하시겠습니까?"
|
||||||
suspended: "정지하였습니다"
|
suspended: "정지하였습니다"
|
||||||
unsuspend: "정지 해제"
|
unsuspend: "정지 해제"
|
||||||
|
unsuspend-confirm: "정지를 해제하시겠습니까?"
|
||||||
unsuspended: "정지를 해제하였습니다"
|
unsuspended: "정지를 해제하였습니다"
|
||||||
|
make-silence: "침묵"
|
||||||
|
unmake-silence: "침묵 해제"
|
||||||
verify: "공식 계정으로 설정"
|
verify: "공식 계정으로 설정"
|
||||||
|
verify-confirm: "공식 계정으로 설정하시겠습니까?"
|
||||||
verified: "공식 계정으로 설정하였습니다"
|
verified: "공식 계정으로 설정하였습니다"
|
||||||
unverify: "공식 계정 해제"
|
unverify: "공식 계정 해제"
|
||||||
|
unverify-confirm: "공식 계정을 해제하시겠습니까?"
|
||||||
unverified: "공식 계정을 해제하였습니다"
|
unverified: "공식 계정을 해제하였습니다"
|
||||||
|
update-remote-user: "원격 사용자 정보 갱신"
|
||||||
|
remote-user-updated: "원격 사용자 정보를 갱신하였습니다"
|
||||||
users:
|
users:
|
||||||
title: "사용자"
|
title: "사용자"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "모더레이터"
|
moderator: "모더레이터"
|
||||||
adminOrModerator: "관리자+모더레이터"
|
adminOrModerator: "관리자+모더레이터"
|
||||||
verified: "공식 계정"
|
verified: "공식 계정"
|
||||||
|
silenced: "침묵됨"
|
||||||
suspended: "정지됨"
|
suspended: "정지됨"
|
||||||
origin:
|
origin:
|
||||||
title: "위치 (오리진)"
|
title: "위치 (오리진)"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "삭제하였습니다"
|
removed: "삭제하였습니다"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "연합"
|
||||||
|
host: "호스트"
|
||||||
|
notes: "글"
|
||||||
|
users: "사용자"
|
||||||
|
following: "팔로우 중"
|
||||||
|
followers: "팔로워"
|
||||||
|
status: "상태"
|
||||||
|
latest-request-sent-at: "마지막으로 요청을 전송한 시간"
|
||||||
|
latest-request-received-at: "마지막으로 요청을 받은 시간"
|
||||||
|
remove-all-following: "모든 팔로잉 해제"
|
||||||
|
remove-all-following-info: "{host}(으)로부터 모든 팔로잉을 해제합니다. 해당 인스턴스가 더 이상 존재하지 않게 된 경우 등에 실행하십시오."
|
||||||
|
block: "차단"
|
||||||
|
marked-as-closed: "폐쇄된 것으로 표시"
|
||||||
|
lookup: "조회"
|
||||||
|
instances: "인스턴스"
|
||||||
|
instance-not-registered: "해당 인스턴스가 등록되어 있지 않습니다"
|
||||||
|
sort: "정렬"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "등록일이 오래된 순"
|
||||||
|
caughtAtDesc: "등록일이 최신인 순"
|
||||||
|
lastCommunicatedAtAsc: "마지막으로 요청을 주고받은 일시가 오래된 순"
|
||||||
|
lastCommunicatedAtDesc: "마지막으로 요청을 주고받은 일시가 빠른 순"
|
||||||
|
notesAsc: "글이 적은 순"
|
||||||
|
notesDesc: "글이 많은 순"
|
||||||
|
usersAsc: "사용자가 적은 순"
|
||||||
|
usersDesc: "사용자가 많은 순"
|
||||||
|
followingAsc: "팔로잉이 적은 순"
|
||||||
|
followingDesc: "팔로잉이 많은 순"
|
||||||
|
followersAsc: "팔로워가 적은 순"
|
||||||
|
followersDesc: "팔로워가 많은 순"
|
||||||
|
driveUsageAsc: "드라이브 사용량이 적은 순"
|
||||||
|
driveUsageDesc: "드라이브 사용량이 많은 순"
|
||||||
|
driveFilesAsc: "드라이브 파일 수가 적은 순"
|
||||||
|
driveFilesDesc: "드라이브 파일 수가 많은 순"
|
||||||
|
state: "상태"
|
||||||
|
states:
|
||||||
|
all: "모두"
|
||||||
|
blocked: "차단됨"
|
||||||
|
not-responding: "응답 없음"
|
||||||
|
marked-as-closed: "폐쇄된 것으로 표시됨"
|
||||||
|
result-is-truncated: "상위 {n}개를 표시하고 있습니다."
|
||||||
|
charts: "차트"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "요청"
|
||||||
|
users: "사용자 증감"
|
||||||
|
users-total: "사용자 누적"
|
||||||
|
notes: "글 증감"
|
||||||
|
notes-total: "글 누적"
|
||||||
|
ff: "팔로잉/팔로워 증감"
|
||||||
|
ff-total: "팔로잉/팔로워 누적"
|
||||||
|
drive-usage: "드라이브 사용량 증감"
|
||||||
|
drive-usage-total: "드라이브 사용량 누적"
|
||||||
|
drive-files: "드라이브 파일 수 증감"
|
||||||
|
drive-files-total: "드라이브 파일 수 누적"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1시간마다"
|
||||||
|
day: "1일마다"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "자세히..."
|
about: "자세히..."
|
||||||
gotit: "알겠습니다"
|
gotit: "알겠습니다"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "정보"
|
info: "정보"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "홈 커스터마이징"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "이전 글"
|
prev: "이전 글"
|
||||||
next: "다음 글"
|
next: "다음 글"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "사진"
|
title: "사진"
|
||||||
loading: "로드 중"
|
loading: "로드 중"
|
||||||
no-photos: "사진이 없습니다"
|
no-photos: "사진이 없습니다"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "당신을 팔로우합니다"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "글"
|
posts: "글"
|
||||||
following: "팔로잉"
|
following: "팔로잉"
|
||||||
followers: "팔로워"
|
followers: "팔로워"
|
||||||
is-bot: "이 계정은 Bot입니다"
|
is-bot: "이 계정은 Bot입니다"
|
||||||
|
no-description: "자기소개가 없습니다"
|
||||||
years-old: "{age}세"
|
years-old: "{age}세"
|
||||||
year: "년"
|
year: "년"
|
||||||
month: "월"
|
month: "월"
|
||||||
day: "일"
|
day: "일"
|
||||||
|
follows-you: "당신을 팔로우합니다"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "글"
|
default: "글"
|
||||||
with-replies: "글과 답글"
|
with-replies: "글과 답글"
|
||||||
with-media: "미디어"
|
with-media: "미디어"
|
||||||
my-posts: "내 글"
|
my-posts: "내 글"
|
||||||
empty: "이 사용자는 아직 아무것도 게시하지 않은 것 같습니다."
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "메시지"
|
title: "메시지"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "무엇을 하시겠습니까? (숫자를 입력하여 주십시오): <1 → 파일 업로드 | 2 → 파일을 URL에서 업로드 | 3 → 폴더 만들기 | 4 → 이 폴더의 이름을 변경 | 5 → 현재 폴더 이동| 6 → 현재 폴더 삭제>"
|
prompt: "무엇을 하시겠습니까? (숫자를 입력하여 주십시오): <1 → 파일 업로드 | 2 → 파일을 URL에서 업로드 | 3 → 폴더 만들기 | 4 → 이 폴더의 이름을 변경 | 5 → 현재 폴더 이동| 6 → 현재 폴더 삭제>"
|
||||||
deletion-alert: "죄송합니다! 폴더 삭제는 아직 구현되지 않았습니다..."
|
deletion-alert: "죄송합니다! 폴더 삭제는 아직 구현되지 않았습니다..."
|
||||||
folder-name: "폴더 이름"
|
folder-name: "폴더 이름"
|
||||||
root-rename-alert: "현재 위치가 루트이고, 폴더가 아니므로 이름을 변경할 수 없습니다. 이름을 바꾸고 싶은 폴더로 이동하여 주십시오."
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "현재 위치가 루트이므로, 폴더가 아니므로 이동할 수 없습니다. 이동하고 싶은 폴더로 이동하여 주십시오."
|
|
||||||
url-prompt: "업로드 하려는 파일의 URL"
|
url-prompt: "업로드 하려는 파일의 URL"
|
||||||
uploading: "업로드를 요청하였습니다. 업로드가 완료될 때까지 시간이 소요될 수 있습니다."
|
uploading: "업로드를 요청하였습니다. 업로드가 완료될 때까지 시간이 소요될 수 있습니다."
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "열람주의"
|
nsfw: "열람주의"
|
||||||
mark-as-sensitive: "열람주의로 설정"
|
mark-as-sensitive: "열람주의로 설정"
|
||||||
unmark-as-sensitive: "열람주의 해제"
|
unmark-as-sensitive: "열람주의 해제"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "열람주의"
|
|
||||||
click-to-show: "클릭하여 표시"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "열람주의"
|
sensitive: "열람주의"
|
||||||
click-to-show: "클릭하여 표시"
|
click-to-show: "클릭하여 표시"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "팔로우 허가 대기중"
|
request-pending: "팔로우 허가 대기중"
|
||||||
follow-processing: "팔로우 처리중"
|
follow-processing: "팔로우 처리중"
|
||||||
follow-request: "팔로우 요청"
|
follow-request: "팔로우 요청"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "마음에 드는 사용자를 팔로우"
|
|
||||||
empty: "추천 사용자를 찾을 수 없습니다."
|
|
||||||
fetching: "불러오는 중입니다"
|
|
||||||
refresh: "더 보기"
|
|
||||||
close: "닫기"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "이 글은 비공개입니다"
|
private: "이 글은 비공개입니다"
|
||||||
deleted: "이 글은 삭제되었습니다"
|
deleted: "이 글은 삭제되었습니다"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "이 글은 삭제되었습니다"
|
deleted: "이 글은 삭제되었습니다"
|
||||||
media-count: "{}개의 미디어"
|
media-count: "{}개의 미디어"
|
||||||
poll: "투표"
|
poll: "투표"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "글이 없습니다"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "돌아오신 걸 환영합니다."
|
welcome-back: "돌아오신 걸 환영합니다."
|
||||||
adjective: "님"
|
adjective: "님"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "설정"
|
settings: "설정"
|
||||||
admin: "관리"
|
admin: "관리"
|
||||||
about: "Misskey에 대하여"
|
about: "Misskey에 대하여"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "이 사용자는 작성한 글이 없는 것 같습니다."
|
|
||||||
no-notes-with-media: "미디어가 첨부된 글이 없습니다."
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "모두"
|
|
||||||
known: "아는 사람"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "즐겨찾기"
|
title: "즐겨찾기"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "위"
|
notification-position-top: "위"
|
||||||
behavior: "동작"
|
behavior: "동작"
|
||||||
fetch-on-scroll: "스크롤하여 자동으로 불러오기"
|
fetch-on-scroll: "스크롤하여 자동으로 불러오기"
|
||||||
|
keep-cw: "CW 유지"
|
||||||
note-visibility: "게시물의 공개 범위"
|
note-visibility: "게시물의 공개 범위"
|
||||||
default-note-visibility: "기본 공개 범위"
|
default-note-visibility: "기본 공개 범위"
|
||||||
remember-note-visibility: "글의 공개 범위를 기억하기"
|
remember-note-visibility: "글의 공개 범위를 기억하기"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "활동"
|
activity: "활동"
|
||||||
keywords: "키워드"
|
keywords: "키워드"
|
||||||
domains: "자주 보이는 도메인"
|
domains: "자주 보이는 도메인"
|
||||||
frequently-replied-users: "자주 대화하는 사용자"
|
frequently-replied-users: "자주 언급되는 사용자"
|
||||||
followers-you-know: "아는 사람의 팔로워"
|
followers-you-know: "아는 사람의 팔로워"
|
||||||
last-used-at: "마지막 로그인"
|
last-used-at: "마지막 로그인"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "아는 사용자가 없습니다"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "자주 대화하는 사용자가 없습니다"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "글이 없습니다"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "사진이 없습니다"
|
no-photos: "사진이 없습니다"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "이름 변경"
|
rename: "이름 변경"
|
||||||
stack-left: "왼쪽에 쌓기"
|
stack-left: "왼쪽에 쌓기"
|
||||||
pop-right: "오른쪽으로 빼기"
|
pop-right: "오른쪽으로 빼기"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "비활성화된 타임라인"
|
||||||
|
description: "서버 운영자에 의해 이 타임라인이 사용할 수 없도록 설정되어 있습니다."
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "미디어가 달린 글만"
|
is-media-only: "미디어가 달린 글만"
|
||||||
is-media-view: "미디어 보기"
|
|
||||||
edit: "옵션"
|
edit: "옵션"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "당신을 팔로우합니다"
|
||||||
posts: "글"
|
posts: "글"
|
||||||
following: "팔로잉"
|
following: "팔로잉"
|
||||||
followers: "팔로워"
|
followers: "팔로워"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "わかった"
|
got-it: "わかった"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "カスタマイズのヒント"
|
title: "カスタマイズのヒント"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "ゴミ箱"
|
trash: "ゴミ箱"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "Z"
|
sunday: "Z"
|
||||||
monday: "M"
|
monday: "M"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "公式アカウント"
|
verified-user: "公式アカウント"
|
||||||
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "やり直す"
|
retry: "やり直す"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "アプリケーションに戻って、やっていってください。"
|
please-go-back: "アプリケーションに戻って、やっていってください。"
|
||||||
error: "セッションが存在しません。"
|
error: "セッションが存在しません。"
|
||||||
sign-in: "サインインしてください"
|
sign-in: "サインインしてください"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "Deze notitie toevoegen aan favorieten"
|
favorite: "Deze notitie toevoegen aan favorieten"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "Vastmaken aan profielpagina"
|
pin: "Vastmaken aan profielpagina"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Stemmen op '{}'"
|
vote-to: "Stemmen op '{}'"
|
||||||
vote-count: "{} stemmen"
|
vote-count: "{} stemmen"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "Map creëren"
|
create-folder: "Map creëren"
|
||||||
upload: "Bestand uploaden"
|
upload: "Bestand uploaden"
|
||||||
url-upload: "Uploaden via URL"
|
url-upload: "Uploaden via URL"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "Volgend {}"
|
following: "Volgend {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "Je volgt niemand."
|
empty: "Je volgt niemand."
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "Aanbevolen gebruikers:"
|
|
||||||
empty: "Er zijn geen vergelijkbare gebruikers gevonden."
|
|
||||||
fetching: "Bezig met laden…"
|
|
||||||
refresh: "Meer"
|
|
||||||
close: "Sluiten"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Othello"
|
game: "Othello"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "Venster automatisch uitvouwen"
|
auto-popout: "Venster automatisch uitvouwen"
|
||||||
auto-popout-desc: "Venster uitvouwen, indien mogelijk. Deze instelling wordt opgeslagen in je browser."
|
auto-popout-desc: "Venster uitvouwen, indien mogelijk. Deze instelling wordt opgeslagen in je browser."
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "Ontwerp en weergave"
|
display: "Ontwerp en weergave"
|
||||||
customize: "Startpagina aanpassen"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "Instellen voltooid!"
|
success: "Instellen voltooid!"
|
||||||
failed: "Instellen mislukt. Zorg ervoor dat de sleutel juist is."
|
failed: "Instellen mislukt. Zorg ervoor dat de sleutel juist is."
|
||||||
info: "Vanaf nu moet je ook de op je apparaat getoonde sleutel tonen bij het inloggen op Misskey."
|
info: "Vanaf nu moet je ook de op je apparaat getoonde sleutel tonen bij het inloggen op Misskey."
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Favorieten"
|
favorites: "Favorieten"
|
||||||
lists: "Lijsten"
|
lists: "Lijsten"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "Aanpassen"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "Instellingen"
|
settings: "Instellingen"
|
||||||
signout: "Uitloggen"
|
signout: "Uitloggen"
|
||||||
dark: "Donkere modus"
|
dark: "Donkere modus"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Startpagina"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "Othello spelen"
|
game: "Othello spelen"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Meldingen"
|
title: "Meldingen"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "Startpagina aanpassen"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Vorige notitie"
|
prev: "Vorige notitie"
|
||||||
next: "Volgende notitie"
|
next: "Volgende notitie"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "Foto's"
|
title: "Foto's"
|
||||||
loading: "Bezig met laden"
|
loading: "Bezig met laden"
|
||||||
no-photos: "Geen foto's"
|
no-photos: "Geen foto's"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "Volgt jou"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "Berichten"
|
default: "Berichten"
|
||||||
with-replies: "Berichten en antwoorden"
|
with-replies: "Berichten en antwoorden"
|
||||||
with-media: "Media"
|
with-media: "Media"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "Deze gebruiker heeft nog niks geplaatst."
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "Gesprekken"
|
title: "Gesprekken"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{} media"
|
media-count: "{} media"
|
||||||
poll: "Peiling"
|
poll: "Peiling"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "Geen notities"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "Instellingen"
|
settings: "Instellingen"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Over Misskey"
|
about: "Over Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "Het lijkt erop dat deze gebruiker nog niks heeft geplaatst"
|
|
||||||
no-notes-with-media: "Er zijn geen notities met bijgevoegde media"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "Alles"
|
|
||||||
known: "die je kent"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "Gedrag"
|
behavior: "Gedrag"
|
||||||
fetch-on-scroll: "Ophalen bij scrollen"
|
fetch-on-scroll: "Ophalen bij scrollen"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "Activiteit"
|
activity: "Activiteit"
|
||||||
keywords: "Sleutelwoorden"
|
keywords: "Sleutelwoorden"
|
||||||
domains: "Domeinnamen"
|
domains: "Domeinnamen"
|
||||||
frequently-replied-users: "Frequent gesproken gebruikers"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "Volgers die je kent"
|
followers-you-know: "Volgers die je kent"
|
||||||
last-used-at: "Laatst actief"
|
last-used-at: "Laatst actief"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "Geen gebruikers"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "Geen gebruikers"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "Geen notities"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "Geen foto's"
|
no-photos: "Geen foto's"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "Skjønner!"
|
got-it: "Skjønner!"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "カスタマイズのヒント"
|
title: "カスタマイズのヒント"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "Papirkurv"
|
trash: "Papirkurv"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "S"
|
sunday: "S"
|
||||||
monday: "M"
|
monday: "M"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "公式アカウント"
|
verified-user: "公式アカウント"
|
||||||
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "やり直す"
|
retry: "やり直す"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "アプリケーションに戻って、やっていってください。"
|
please-go-back: "アプリケーションに戻って、やっていってください。"
|
||||||
error: "セッションが存在しません。"
|
error: "セッションが存在しません。"
|
||||||
sign-in: "サインインしてください"
|
sign-in: "サインインしてください"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "Merket som favoritt"
|
favorite: "Merket som favoritt"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "Fest til profilen din"
|
pin: "Fest til profilen din"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "Slett"
|
delete: "Slett"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
vote-count: "{} stemmer"
|
vote-count: "{} stemmer"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "フォルダーを作成"
|
create-folder: "フォルダーを作成"
|
||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "NSFW"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "Innholdet er NSFW"
|
sensitive: "Innholdet er NSFW"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー:"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "Mer"
|
|
||||||
close: "Lukk"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Reversi"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了しました!"
|
success: "設定が完了しました!"
|
||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Favoritter"
|
favorites: "Favoritter"
|
||||||
lists: "Lister"
|
lists: "Lister"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
settings: "Innstillinger"
|
settings: "Innstillinger"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Hjem"
|
|
||||||
deck: "Kolonner"
|
|
||||||
game: "Spill"
|
game: "Spill"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Notifikasjon"
|
title: "Notifikasjon"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "Skjønner!"
|
gotit: "Skjønner!"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "Informasjon"
|
info: "Informasjon"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Forrige innlegg"
|
prev: "Forrige innlegg"
|
||||||
next: "Neste innlegg"
|
next: "Neste innlegg"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "Bilder"
|
title: "Bilder"
|
||||||
loading: "Laster inn"
|
loading: "Laster inn"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "Innlegg"
|
posts: "Innlegg"
|
||||||
following: "Følger"
|
following: "Følger"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "Innlegg"
|
default: "Innlegg"
|
||||||
with-replies: "Innlegg og svar"
|
with-replies: "Innlegg og svar"
|
||||||
with-media: "Media"
|
with-media: "Media"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "Melding"
|
title: "Melding"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "NSFW"
|
nsfw: "NSFW"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "NSFW"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "Innholdet er NSFW"
|
sensitive: "Innholdet er NSFW"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "Se mer"
|
|
||||||
close: "Lukk"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "Mr."
|
adjective: "Mr."
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "Innstillinger"
|
settings: "Innstillinger"
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "Alle"
|
|
||||||
known: "Du kjenner"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "Favoritter"
|
title: "Favoritter"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "Topp"
|
notification-position-top: "Topp"
|
||||||
behavior: "Oppførsel"
|
behavior: "Oppførsel"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "Nøkkelord"
|
keywords: "Nøkkelord"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -9,10 +9,10 @@ common:
|
|||||||
intro:
|
intro:
|
||||||
title: "Czym jest Misskey?"
|
title: "Czym jest Misskey?"
|
||||||
about: "Misskeyはオープンソースの<b>分散型マイクロブログSNS</b>です。リッチで高度にカスタマイズできるUI、投稿へのリアクション、ファイルを一元管理できるドライブなど、先進的な機能を揃えています。また、Fediverseと呼ばれるネットワークに接続できるため、他のSNSともやり取りできます。例えば、あなたが何か投稿すると、その投稿はMisskeyだけでなく他のSNSにも伝わります。ちょうどある惑星から他の惑星に電波を発信している様子をイメージしてください。"
|
about: "Misskeyはオープンソースの<b>分散型マイクロブログSNS</b>です。リッチで高度にカスタマイズできるUI、投稿へのリアクション、ファイルを一元管理できるドライブなど、先進的な機能を揃えています。また、Fediverseと呼ばれるネットワークに接続できるため、他のSNSともやり取りできます。例えば、あなたが何か投稿すると、その投稿はMisskeyだけでなく他のSNSにも伝わります。ちょうどある惑星から他の惑星に電波を発信している様子をイメージしてください。"
|
||||||
features: "特徴"
|
features: "Funkcje"
|
||||||
rich-contents: "Wpis"
|
rich-contents: "Wpis"
|
||||||
rich-contents-desc: "Po prostu opublikuj swój pomysł, gorące tematy i wszystko, co chcesz udostępnić. Możesz ozdobić swoje słowa, dołączyć swoje ulubione zdjęcia, wysłać pliki, w tym filmy i utworzyć ankietę - to są rzeczy, które możesz zrobić w Misskey!"
|
rich-contents-desc: "Po prostu opublikuj swój pomysł, gorące tematy i wszystko, co chcesz udostępnić. Możesz ozdobić swoje słowa, dołączyć swoje ulubione zdjęcia, wysłać pliki, w tym filmy i utworzyć ankietę - to są rzeczy, które możesz zrobić w Misskey!"
|
||||||
reaction: "Reakcje"
|
reaction: "Reakcja"
|
||||||
reaction-desc: "あなたの気持ちを伝える最も簡単な方法です。Misskeyは、他のユーザーの投稿に様々なリアクションを付けることができます。いちどMisskeyのリアクション機能を体験してしまうと、もう「いいね」の概念しか存在しないSNSには戻れなくなるかもしれません。"
|
reaction-desc: "あなたの気持ちを伝える最も簡単な方法です。Misskeyは、他のユーザーの投稿に様々なリアクションを付けることができます。いちどMisskeyのリアクション機能を体験してしまうと、もう「いいね」の概念しか存在しないSNSには戻れなくなるかもしれません。"
|
||||||
ui: "Interfejs"
|
ui: "Interfejs"
|
||||||
ui-desc: "どのようなUIが使いやすいかは人それぞれです。だから、Misskeyは自由度の高いUIを持っています。レイアウトやデザインを調整したり、カスタマイズ可能な様々なウィジェットを配置したりして、自分だけのホームを作ってください。"
|
ui-desc: "どのようなUIが使いやすいかは人それぞれです。だから、Misskeyは自由度の高いUIを持っています。レイアウトやデザインを調整したり、カスタマイズ可能な様々なウィジェットを配置したりして、自分だけのホームを作ってください。"
|
||||||
@@ -22,12 +22,14 @@ common:
|
|||||||
adblock:
|
adblock:
|
||||||
detected: "Spróbuj wyłączyć blokadę reklam."
|
detected: "Spróbuj wyłączyć blokadę reklam."
|
||||||
warning: "<strong>Misskey nie zawiera reklam</strong>, ale część funkcji może nie działać prawidłowo z włączonym blokowaniem reklam."
|
warning: "<strong>Misskey nie zawiera reklam</strong>, ale część funkcji może nie działać prawidłowo z włączonym blokowaniem reklam."
|
||||||
application-authorization: "アプリの連携"
|
application-authorization: "Współpraca aplikacji"
|
||||||
close: "Zamknij"
|
close: "Zamknij"
|
||||||
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
|
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
|
||||||
load-more: "Załaduj więcej"
|
load-more: "Załaduj więcej"
|
||||||
enter-password: "Wprowadź Hasło"
|
enter-password: "Wprowadź Hasło"
|
||||||
2fa: "二段階認証"
|
2fa: "Uwierzytelnienie dwuetapowe"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "Rozumiem!"
|
got-it: "Rozumiem!"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Wskazówki o dostosowywaniu"
|
title: "Wskazówki o dostosowywaniu"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "Kosz"
|
trash: "Kosz"
|
||||||
drive: "Dysk"
|
drive: "Dysk"
|
||||||
messaging: "Rozmowy"
|
messaging: "Rozmowy"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "Znajdź"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "N"
|
sunday: "N"
|
||||||
monday: "Pn"
|
monday: "Pn"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "Zweryfikowane konto"
|
verified-user: "Zweryfikowane konto"
|
||||||
disable-animated-mfm: "Wyłącz animowany tekst we wpisach"
|
disable-animated-mfm: "Wyłącz animowany tekst we wpisach"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "Zawszę pokazuj zawartość NSFW"
|
always-show-nsfw: "Zawszę pokazuj zawartość NSFW"
|
||||||
always-mark-nsfw: "Zawsze oznaczaj posty z multimediami jako NSFW"
|
always-mark-nsfw: "Zawsze oznaczaj posty z multimediami jako NSFW"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "Pokaż hasło"
|
show-password: "Pokaż hasło"
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "Informacje o użytkowniku są kopiowane."
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "Dla dopełnienia, zobacz to zdalnie."
|
view-on-remote: "Dla dopełnienia, zobacz to zdalnie."
|
||||||
renoted-by: "{user} udostępnił(a)"
|
renoted-by: "{user} udostępnił(a)"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "Coś poszło nie tak"
|
title: "Coś poszło nie tak"
|
||||||
retry: "Ponów próbę"
|
retry: "Ponów próbę"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "Wróć do aplikacji."
|
please-go-back: "Wróć do aplikacji."
|
||||||
error: "Sesja nie istnieje."
|
error: "Sesja nie istnieje."
|
||||||
sign-in: "Proszę zalogować się."
|
sign-in: "Proszę zalogować się."
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "Oczekiwanie na {}"
|
waiting-for: "Oczekiwanie na {}"
|
||||||
@@ -344,23 +368,28 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "Skopiuj adres"
|
copy-link: "Skopiuj adres"
|
||||||
favorite: "Dodaj do ulubionych"
|
favorite: "Dodaj do ulubionych"
|
||||||
unfavorite: "Usuń z ulubionych"
|
unfavorite: "Usuń z ulubionych"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "Przypnij do profilu"
|
pin: "Przypnij do profilu"
|
||||||
unpin: "Odepnij"
|
unpin: "Odepnij"
|
||||||
delete: "Usuń"
|
delete: "Usuń"
|
||||||
delete-confirm: "Czy na pewno chcesz usunąć ten wpis?"
|
delete-confirm: "Czy na pewno chcesz usunąć ten wpis?"
|
||||||
remote: "Pokaż oryginał"
|
remote: "Pokaż oryginał"
|
||||||
common/views/components/user-menu.vue:
|
common/views/components/user-menu.vue:
|
||||||
mention: "メンション"
|
mention: "Wspomnij"
|
||||||
mute: "ミュート"
|
mute: "Wycisz"
|
||||||
unmute: "ミュート解除"
|
unmute: "Cofnij wyciszenie"
|
||||||
block: "ブロック"
|
block: "Zablokuj"
|
||||||
unblock: "ブロック解除"
|
unblock: "Odblokuj"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "Dodaj do listy"
|
||||||
select-list: "リストを選択してください"
|
select-list: "Wybierz listę"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
report-abuse: "Zgłoś nadużycie"
|
||||||
report-abuse: "スパムを報告"
|
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Zagłosuj na '{}'"
|
vote-to: "Zagłosuj na '{}'"
|
||||||
vote-count: "{} głosów"
|
vote-count: "{} głosów"
|
||||||
@@ -392,11 +421,11 @@ common/views/components/signin.vue:
|
|||||||
token: "Token"
|
token: "Token"
|
||||||
signing-in: "Logowanie…"
|
signing-in: "Logowanie…"
|
||||||
signin: "Zaloguj"
|
signin: "Zaloguj"
|
||||||
or: "または"
|
or: "lub"
|
||||||
signin-with-twitter: "Zaloguj się za pomocą Twittera"
|
signin-with-twitter: "Zaloguj się za pomocą Twittera"
|
||||||
signin-with-github: "Zaloguj się za pomocą GitHuba"
|
signin-with-github: "Zaloguj się za pomocą GitHuba"
|
||||||
signin-with-discord: "Zaloguj się za pomocą Discorda"
|
signin-with-discord: "Zaloguj się za pomocą Discorda"
|
||||||
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
|
login-failed: "Logowanie nie powiodło się. Upewnij się, że podałeś prawidłową nazwę użytkownika i hasło."
|
||||||
common/views/components/signup.vue:
|
common/views/components/signup.vue:
|
||||||
invitation-code: "Kod zaproszenia"
|
invitation-code: "Kod zaproszenia"
|
||||||
invitation-info: "招待コードをお持ちでない方は、<a href=\"{}\">管理者</a>までご連絡ください。"
|
invitation-info: "招待コードをお持ちでない方は、<a href=\"{}\">管理者</a>までご連絡ください。"
|
||||||
@@ -469,13 +498,13 @@ common/views/components/visibility-chooser.vue:
|
|||||||
local-followers: "Dla śledzących (tylko lokalnie)"
|
local-followers: "Dla śledzących (tylko lokalnie)"
|
||||||
common/views/components/trends.vue:
|
common/views/components/trends.vue:
|
||||||
count: "{}人が投稿"
|
count: "{}人が投稿"
|
||||||
empty: "トレンドなし"
|
empty: "Brak popularnych hashtagów"
|
||||||
common/views/components/language-settings.vue:
|
common/views/components/language-settings.vue:
|
||||||
title: "Język"
|
title: "Język"
|
||||||
pick-language: "Wybierz język"
|
pick-language: "Wybierz język"
|
||||||
recommended: "Zalecane"
|
recommended: "Zalecane"
|
||||||
auto: "Automatyczny"
|
auto: "Automatyczny"
|
||||||
specify-language: "言語を指定"
|
specify-language: "Wybierz język"
|
||||||
info: "Musisz odświeżyć stronę, aby zmiany zostały uwzględnione."
|
info: "Musisz odświeżyć stronę, aby zmiany zostały uwzględnione."
|
||||||
common/views/components/profile-editor.vue:
|
common/views/components/profile-editor.vue:
|
||||||
title: "Twój profil"
|
title: "Twój profil"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "Konto"
|
account: "Konto"
|
||||||
location: "Lokalizacja"
|
location: "Lokalizacja"
|
||||||
description: "O mnie"
|
description: "O mnie"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "Język"
|
language: "Język"
|
||||||
birthday: "Data urodzenia"
|
birthday: "Data urodzenia"
|
||||||
avatar: "Awatar"
|
avatar: "Awatar"
|
||||||
@@ -500,15 +530,26 @@ common/views/components/profile-editor.vue:
|
|||||||
upload-failed: "Wysyłanie nie powiodło się"
|
upload-failed: "Wysyłanie nie powiodło się"
|
||||||
email: "Ustawienia e-mail"
|
email: "Ustawienia e-mail"
|
||||||
email-address: "Adres e-mail"
|
email-address: "Adres e-mail"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "Twój adres e-mail został zweryfikowany."
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "Użytkownicy"
|
users: "Użytkownicy"
|
||||||
rename: "Zmień nazwę listy"
|
rename: "Zmień nazwę listy"
|
||||||
delete: "Usuń listę"
|
delete: "Usuń listę"
|
||||||
remove-user: "Usuń z tej listy"
|
remove-user: "Usuń z tej listy"
|
||||||
delete-are-you-sure: "リスト「$1」を削除しますか?"
|
delete-are-you-sure: "Usunąć listę \"$1\"?"
|
||||||
deleted: "削除しました"
|
deleted: "Usunięto"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "Sprawdzanie"
|
fetching: "Sprawdzanie"
|
||||||
no-broadcasts: "Brak transmisji"
|
no-broadcasts: "Brak transmisji"
|
||||||
@@ -591,7 +632,7 @@ desktop/views/components/activity.vue:
|
|||||||
title: "Aktywność"
|
title: "Aktywność"
|
||||||
toggle: "Przełącz widok"
|
toggle: "Przełącz widok"
|
||||||
desktop/views/components/calendar.vue:
|
desktop/views/components/calendar.vue:
|
||||||
title: "{year}年 {month}月"
|
title: "{year} / {month}"
|
||||||
prev: "Poprzedni miesiąc"
|
prev: "Poprzedni miesiąc"
|
||||||
next: "Następny miesiąc"
|
next: "Następny miesiąc"
|
||||||
go: "Naciśnij, aby przejść"
|
go: "Naciśnij, aby przejść"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "Utwórz katalog"
|
create-folder: "Utwórz katalog"
|
||||||
upload: "Wyślij plik"
|
upload: "Wyślij plik"
|
||||||
url-upload: "Wyślij z adresu URL"
|
url-upload: "Wyślij z adresu URL"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "To jest zawartość NSFW"
|
|
||||||
click-to-show: "Naciśnij aby wyświetlić"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "To jest zawartość NSFW"
|
sensitive: "To jest zawartość NSFW"
|
||||||
click-to-show: "Naciśnij aby wyświetlić"
|
click-to-show: "Naciśnij aby wyświetlić"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "Śledzeni przez {}"
|
following: "Śledzeni przez {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "Nikt Cię nie śledzi."
|
empty: "Nikt Cię nie śledzi."
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "Zacznij śledzić ludzi takich jak Ty:"
|
|
||||||
empty: "Nie znaleziono podobnych użytkowników."
|
|
||||||
fetching: "Ładowanie…"
|
|
||||||
refresh: "Więcej"
|
|
||||||
close: "Zamknij"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Reversi"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -705,7 +737,7 @@ desktop/views/components/note.vue:
|
|||||||
add-reaction: "Dodaj reakcję"
|
add-reaction: "Dodaj reakcję"
|
||||||
undo-reaction: "リアクション解除"
|
undo-reaction: "リアクション解除"
|
||||||
detail: "Szczegóły"
|
detail: "Szczegóły"
|
||||||
private: "この投稿は非公開です"
|
private: "Ten wpis jest prywatny"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "Ładowanie nie powiodło się."
|
error: "Ładowanie nie powiodło się."
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "Np: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "Np: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "Automatycznie pojawiające się okna"
|
auto-popout: "Automatycznie pojawiające się okna"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "Użyj Talię jako domyślne UI"
|
|
||||||
display: "Wygląd i wyświetlanie"
|
display: "Wygląd i wyświetlanie"
|
||||||
customize: "Dostosuj stronę główną"
|
|
||||||
wallpaper: "Tapeta"
|
wallpaper: "Tapeta"
|
||||||
choose-wallpaper: "Wybierz tło"
|
choose-wallpaper: "Wybierz tło"
|
||||||
delete-wallpaper: "Usuń tło"
|
delete-wallpaper: "Usuń tło"
|
||||||
@@ -867,13 +897,16 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
enter-password: "Wprowadź hasło"
|
enter-password: "Wprowadź hasło"
|
||||||
authenticator: "Na początek musisz zainstalować Google Authenticator na swoim urządzeniu:"
|
authenticator: "Na początek musisz zainstalować Google Authenticator na swoim urządzeniu:"
|
||||||
howtoinstall: "Jak zainstalować"
|
howtoinstall: "Jak zainstalować"
|
||||||
token: "トークン"
|
token: "Token"
|
||||||
scan: "Później, zeskanuje ten kod QR:"
|
scan: "Później, zeskanuje ten kod QR:"
|
||||||
done: "Wprowadź token wyświetlony na Twoim urządzeniu:"
|
done: "Wprowadź token wyświetlony na Twoim urządzeniu:"
|
||||||
submit: "Wyślij"
|
submit: "Wyślij"
|
||||||
success: "Pomyślnie ukończono konfigurację!"
|
success: "Pomyślnie ukończono konfigurację!"
|
||||||
failed: "Nie udało się skonfigurować uwierzytelniania dwuetapowego, upewnij się że wprowadziłeś prawidłowy token."
|
failed: "Nie udało się skonfigurować uwierzytelniania dwuetapowego, upewnij się że wprowadziłeś prawidłowy token."
|
||||||
info: "Od teraz, wprowadzaj token wyświetlany na urządzeniu przy każdym logowaniu do Misskey."
|
info: "Od teraz, wprowadzaj token wyświetlany na urządzeniu przy każdym logowaniu do Misskey."
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "Aby uzyskać dostęp do API, ustaw ten token jako klucz 'i' parametrów żądań."
|
intro: "Aby uzyskać dostęp do API, ustaw ten token jako klucz 'i' parametrów żądań."
|
||||||
caution: "Nie pokazuj tego tokenu osobom trzecim (nie wprowadzaj go nigdzie indziej), aby konto nie trafiło w niepowołane ręce."
|
caution: "Nie pokazuj tego tokenu osobom trzecim (nie wprowadzaj go nigdzie indziej), aby konto nie trafiło w niepowołane ręce."
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "Ulubione"
|
favorites: "Ulubione"
|
||||||
lists: "Listy"
|
lists: "Listy"
|
||||||
follow-requests: "Prośby o śledzenie"
|
follow-requests: "Prośby o śledzenie"
|
||||||
customize: "Dostosuj stronę główną"
|
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
settings: "Ustawienia"
|
settings: "Ustawienia"
|
||||||
signout: "Wyloguj się"
|
signout: "Wyloguj się"
|
||||||
dark: "Sprowadź ciemność"
|
dark: "Sprowadź ciemność"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Strona główna"
|
|
||||||
deck: "Talia"
|
|
||||||
game: "Gra"
|
game: "Gra"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Powiadomienia"
|
title: "Powiadomienia"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "Ogłoszenia"
|
announcements: "Ogłoszenia"
|
||||||
hashtags: "Hashtagi"
|
hashtags: "Hashtagi"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,12 +1031,15 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
reporter: "報告者"
|
reporter: "報告者"
|
||||||
details: "詳細"
|
details: "詳細"
|
||||||
remove-report: "削除"
|
remove-report: "Usuń"
|
||||||
admin/views/instance.vue:
|
admin/views/instance.vue:
|
||||||
instance: "インスタンス"
|
instance: "インスタンス"
|
||||||
instance-name: "インスタンス名"
|
instance-name: "インスタンス名"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "Nie znaleziono użytkownika"
|
user-not-found: "Nie znaleziono użytkownika"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "Użytkownicy"
|
title: "Użytkownicy"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "Źródło"
|
title: "Źródło"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "Usunięto"
|
removed: "Usunięto"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "O Misskey"
|
about: "O Misskey"
|
||||||
gotit: "Rozumiem!"
|
gotit: "Rozumiem!"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "Informacje"
|
info: "Informacje"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Dysk Misskey"
|
title: "Dysk Misskey"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "Dostosuj stronę główną"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Poprzedni wpis"
|
prev: "Poprzedni wpis"
|
||||||
next: "Następny wpis"
|
next: "Następny wpis"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "Zdjęcia"
|
title: "Zdjęcia"
|
||||||
loading: "Ładowanie"
|
loading: "Ładowanie"
|
||||||
no-photos: "Brak zdjęć"
|
no-photos: "Brak zdjęć"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "Śledzi Cię"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "Wpisy"
|
posts: "Wpisy"
|
||||||
following: "Śledzeni"
|
following: "Śledzeni"
|
||||||
followers: "Śledzący"
|
followers: "Śledzący"
|
||||||
is-bot: "To konto jest botem"
|
is-bot: "To konto jest botem"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age} lat"
|
years-old: "{age} lat"
|
||||||
year: "/"
|
year: "/"
|
||||||
month: "/"
|
month: "/"
|
||||||
day: "-"
|
day: "-"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "Wpisy"
|
default: "Wpisy"
|
||||||
with-replies: "Wpisy i odpowiedzi"
|
with-replies: "Wpisy i odpowiedzi"
|
||||||
with-media: "Multimedia"
|
with-media: "Multimedia"
|
||||||
my-posts: "Moje wpisy"
|
my-posts: "Moje wpisy"
|
||||||
empty: "Ten użytkownik nie umieścił jeszcze niczego."
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "Wiadomości"
|
title: "Wiadomości"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "Co chcesz zrobić? (wprowadź odpowiednią cyfrę): <1 → Wysłać plik | 2 → Wysłać plik z adresu URL | 3 → Utworzyć katalog | 4 → Zmienić nazwę tego katalogu | 5 → Przenieść ten katalog | 6 → Usunąć ten katalog>"
|
prompt: "Co chcesz zrobić? (wprowadź odpowiednią cyfrę): <1 → Wysłać plik | 2 → Wysłać plik z adresu URL | 3 → Utworzyć katalog | 4 → Zmienić nazwę tego katalogu | 5 → Przenieść ten katalog | 6 → Usunąć ten katalog>"
|
||||||
deletion-alert: "Przepraszamy. Usuwanie katalogów nie zostało jeszcze zaimplementowane."
|
deletion-alert: "Przepraszamy. Usuwanie katalogów nie zostało jeszcze zaimplementowane."
|
||||||
folder-name: "Nazwa katalogu"
|
folder-name: "Nazwa katalogu"
|
||||||
root-rename-alert: "Nie można zmienić nazwy katalogu głównego. Przejdź do katalogu, którego nazwę chcesz zmienić."
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "Nie można przenieść tego katalogu, ponieważ jest on katalogiem głównym. Przejdź do katalogu, który chcesz przenieść."
|
|
||||||
url-prompt: "Adres URL pliku, który chcesz wysłać"
|
url-prompt: "Adres URL pliku, który chcesz wysłać"
|
||||||
uploading: "Rozpoczęto wysyłanie. Może to trochę potrwać."
|
uploading: "Rozpoczęto wysyłanie. Może to trochę potrwać."
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "NSFW"
|
nsfw: "NSFW"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "To jest zawartość NSFW"
|
|
||||||
click-to-show: "Naciśnij aby wyświetlić"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "To jest zawartość NSFW"
|
sensitive: "To jest zawartość NSFW"
|
||||||
click-to-show: "Naciśnij aby wyświetlić"
|
click-to-show: "Naciśnij aby wyświetlić"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "Przetwarzanie"
|
follow-processing: "Przetwarzanie"
|
||||||
follow-request: "Poproś o śledzenie"
|
follow-request: "Poproś o śledzenie"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "Zacznij śledzić ludzi takich jak Ty"
|
|
||||||
empty: "Nie znaleziono podobnych użytkowników."
|
|
||||||
fetching: "Ładowanie…"
|
|
||||||
refresh: "Więcej"
|
|
||||||
close: "Zamknij"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "ten wpis jest prywatny"
|
private: "ten wpis jest prywatny"
|
||||||
deleted: "ten wpis został usunięty"
|
deleted: "ten wpis został usunięty"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "ten wpis został usunięty"
|
deleted: "ten wpis został usunięty"
|
||||||
media-count: "{}zawartości multimedialnej"
|
media-count: "{}zawartości multimedialnej"
|
||||||
poll: "Ankieta"
|
poll: "Ankieta"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "Brak wpisów"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "Witaj ponownie, "
|
welcome-back: "Witaj ponownie, "
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "Ustawienia"
|
settings: "Ustawienia"
|
||||||
admin: "Admin"
|
admin: "Admin"
|
||||||
about: "O Misskey"
|
about: "O Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "Wygląda na to, że ten użytkownik nie opublikował jeszcze niczego"
|
|
||||||
no-notes-with-media: "Brak wpisów z zawartością multimedialną"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "Wszyscy"
|
|
||||||
known: "Znasz"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "Ulubione"
|
title: "Ulubione"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "Góra"
|
notification-position-top: "Góra"
|
||||||
behavior: "Zachowanie"
|
behavior: "Zachowanie"
|
||||||
fetch-on-scroll: "Automatycznie ładuj po przeciągnięciu w dół"
|
fetch-on-scroll: "Automatycznie ładuj po przeciągnięciu w dół"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "Widoczność wpisów"
|
note-visibility: "Widoczność wpisów"
|
||||||
default-note-visibility: "Domyślna widoczność"
|
default-note-visibility: "Domyślna widoczność"
|
||||||
remember-note-visibility: "Zapamiętaj widoczność wpisów"
|
remember-note-visibility: "Zapamiętaj widoczność wpisów"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "Aktywność"
|
activity: "Aktywność"
|
||||||
keywords: "Słowa kluczowe"
|
keywords: "Słowa kluczowe"
|
||||||
domains: "Domeny"
|
domains: "Domeny"
|
||||||
frequently-replied-users: "Często aktywni użytkownicy"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "Śledzący których znasz"
|
followers-you-know: "Śledzący których znasz"
|
||||||
last-used-at: "Ostatnio aktywny"
|
last-used-at: "Ostatnio aktywny"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "Brak użytkowników"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "Brak użytkowników"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "Brak wpisów"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "Brak zdjęć"
|
no-photos: "Brak zdjęć"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "Zmień nazwę"
|
rename: "Zmień nazwę"
|
||||||
stack-left: "Przypnij do lewej"
|
stack-left: "Przypnij do lewej"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "Tylko wpisy z zawartością multimedialną"
|
is-media-only: "Tylko wpisy z zawartością multimedialną"
|
||||||
is-media-view: "Widok multimediów"
|
|
||||||
edit: "Opcje"
|
edit: "Opcje"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "Wpisy"
|
posts: "Wpisy"
|
||||||
following: "Śledzeni"
|
following: "Śledzeni"
|
||||||
followers: "Śledzący"
|
followers: "Śledzący"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "Entendi!"
|
got-it: "Entendi!"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Dicas de personalização"
|
title: "Dicas de personalização"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "Lixo"
|
trash: "Lixo"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
messaging: "トーク"
|
messaging: "トーク"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "Dom"
|
sunday: "Dom"
|
||||||
monday: "Seg"
|
monday: "Seg"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "Conta verificada"
|
verified-user: "Conta verificada"
|
||||||
disable-animated-mfm: "Desativar texto animado nas publicações"
|
disable-animated-mfm: "Desativar texto animado nas publicações"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
always-show-nsfw: "常に閲覧注意のメディアを表示する"
|
||||||
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
always-mark-nsfw: "常にメディアを閲覧注意として投稿"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "問題が発生しました"
|
title: "問題が発生しました"
|
||||||
retry: "やり直す"
|
retry: "やり直す"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "Por favor, volte ao aplicativo."
|
please-go-back: "Por favor, volte ao aplicativo."
|
||||||
error: "A sessão não existe."
|
error: "A sessão não existe."
|
||||||
sign-in: "Por favor, entre."
|
sign-in: "Por favor, entre."
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
vote-count: "{}票"
|
vote-count: "{}票"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "フォルダーを作成"
|
create-folder: "フォルダーを作成"
|
||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー:"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "リバーシ"
|
game: "リバーシ"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了しました!"
|
success: "設定が完了しました!"
|
||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "通知"
|
title: "通知"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Drive Misskey"
|
title: "Drive Misskey"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "Personalizar a página inicial"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Nota anterior"
|
prev: "Nota anterior"
|
||||||
next: "Próxima nota"
|
next: "Próxima nota"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "フォト"
|
title: "フォト"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "Atividade"
|
activity: "Atividade"
|
||||||
keywords: "Palavras chave"
|
keywords: "Palavras chave"
|
||||||
domains: "Domínios"
|
domains: "Domínios"
|
||||||
frequently-replied-users: "Perguntas frequentes"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "Seguidores que você conhece"
|
followers-you-know: "Seguidores que você conhece"
|
||||||
last-used-at: "Ativo pela última vez"
|
last-used-at: "Ativo pela última vez"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "Nenhuma mensagem"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "Sem fotos"
|
no-photos: "Sem fotos"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ common:
|
|||||||
load-more: "Загрузить больше"
|
load-more: "Загрузить больше"
|
||||||
enter-password: "Пожалуйста, введите ваш пароль"
|
enter-password: "Пожалуйста, введите ваш пароль"
|
||||||
2fa: "二段階認証"
|
2fa: "二段階認証"
|
||||||
|
customize-home: "ホームをカスタマイズ"
|
||||||
|
featured-notes: "ハイライト"
|
||||||
got-it: "わかった"
|
got-it: "わかった"
|
||||||
customization-tips:
|
customization-tips:
|
||||||
title: "Советы по настройке"
|
title: "Советы по настройке"
|
||||||
@@ -56,6 +58,15 @@ common:
|
|||||||
trash: "Мусорное ведро"
|
trash: "Мусорное ведро"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
messaging: "Чат"
|
messaging: "Чат"
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
explore: "みつける"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
empty-timeline-info:
|
||||||
|
follow-users-to-make-your-timeline: "ユーザーをフォローすると投稿がタイムラインに表示されます。"
|
||||||
|
explore: "ユーザーを探索する"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "Вс"
|
sunday: "Вс"
|
||||||
monday: "Пн"
|
monday: "Пн"
|
||||||
@@ -113,6 +124,7 @@ common:
|
|||||||
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
use-avatar-reversi-stones: "リバーシの石にアバターを使う"
|
||||||
verified-user: "公式アカウント"
|
verified-user: "公式アカウント"
|
||||||
disable-animated-mfm: "Отключить анимированный текст в постах"
|
disable-animated-mfm: "Отключить анимированный текст в постах"
|
||||||
|
disable-showing-animated-images: "アニメーション画像を再生しない"
|
||||||
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
|
||||||
always-show-nsfw: "Всегда показывать NSFW контент"
|
always-show-nsfw: "Всегда показывать NSFW контент"
|
||||||
always-mark-nsfw: "Всегда помечать посты с медиафайлами как NSFW"
|
always-mark-nsfw: "Всегда помечать посты с медиафайлами как NSFW"
|
||||||
@@ -129,10 +141,11 @@ common:
|
|||||||
show-password: "パスワードを表示する"
|
show-password: "パスワードを表示する"
|
||||||
do-not-use-in-production: "Эта сборка для разработчиков. Не используйте в продакшне."
|
do-not-use-in-production: "Эта сборка для разработчиков. Не используйте в продакшне."
|
||||||
user-suspended: "このユーザーは凍結されています。"
|
user-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote-user: "このユーザー情報はコピーです。"
|
is-remote-user: "このユーザー情報は不正確な可能性があります。"
|
||||||
is-remote-post: "この投稿情報はコピーです。"
|
is-remote-post: "この投稿情報はコピーです。"
|
||||||
view-on-remote: "正確な情報を見る"
|
view-on-remote: "正確な情報を見る"
|
||||||
renoted-by: "{user}がRenote"
|
renoted-by: "{user}がRenote"
|
||||||
|
no-notes: "投稿がありません"
|
||||||
error:
|
error:
|
||||||
title: "Что-то пошло не так :("
|
title: "Что-то пошло не так :("
|
||||||
retry: "Повторить"
|
retry: "Повторить"
|
||||||
@@ -196,6 +209,17 @@ auth/views/index.vue:
|
|||||||
please-go-back: "アプリケーションに戻って、やっていってください。"
|
please-go-back: "アプリケーションに戻って、やっていってください。"
|
||||||
error: "セッションが存在しません。"
|
error: "セッションが存在しません。"
|
||||||
sign-in: "サインインしてください"
|
sign-in: "サインインしてください"
|
||||||
|
common/views/pages/explore.vue:
|
||||||
|
verified-users: "公式アカウント"
|
||||||
|
popular-users: "人気のユーザー"
|
||||||
|
recently-updated-users: "最近投稿したユーザー"
|
||||||
|
recently-registered-users: "新規ユーザー"
|
||||||
|
popular-tags: "人気のタグ"
|
||||||
|
federated: "連合"
|
||||||
|
explore: "{host}を探索"
|
||||||
|
users-info: "現在{users}ユーザーが登録されています"
|
||||||
|
common/views/components/user-list.vue:
|
||||||
|
no-users: "ユーザーがいません"
|
||||||
common/views/components/games/reversi/reversi.vue:
|
common/views/components/games/reversi/reversi.vue:
|
||||||
matching:
|
matching:
|
||||||
waiting-for: "{}を待っています"
|
waiting-for: "{}を待っています"
|
||||||
@@ -344,6 +368,8 @@ common/views/components/note-menu.vue:
|
|||||||
copy-link: "リンクをコピー"
|
copy-link: "リンクをコピー"
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
unfavorite: "お気に入り解除"
|
unfavorite: "お気に入り解除"
|
||||||
|
watch: "ウォッチ"
|
||||||
|
unwatch: "ウォッチ解除"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
unpin: "ピン留め解除"
|
unpin: "ピン留め解除"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
@@ -357,10 +383,13 @@ common/views/components/user-menu.vue:
|
|||||||
unblock: "ブロック解除"
|
unblock: "ブロック解除"
|
||||||
push-to-list: "リストに追加"
|
push-to-list: "リストに追加"
|
||||||
select-list: "リストを選択してください"
|
select-list: "リストを選択してください"
|
||||||
list-pushed: "{user}を{list}に追加しました"
|
|
||||||
report-abuse: "スパムを報告"
|
report-abuse: "スパムを報告"
|
||||||
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
report-abuse-detail: "どのような迷惑行為を行っていますか?"
|
||||||
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
report-abuse-reported: "管理者に報告されました。ご協力ありがとうございました。"
|
||||||
|
silence: "サイレンス"
|
||||||
|
unsilence: "サイレンス解除"
|
||||||
|
suspend: "凍結"
|
||||||
|
unsuspend: "凍結解除"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
vote-count: "{}票"
|
vote-count: "{}票"
|
||||||
@@ -483,6 +512,7 @@ common/views/components/profile-editor.vue:
|
|||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
|
you-can-include-hashtags: "ハッシュタグを含めることができます。"
|
||||||
language: "言語"
|
language: "言語"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
avatar: "アイコン"
|
avatar: "アイコン"
|
||||||
@@ -502,6 +532,17 @@ common/views/components/profile-editor.vue:
|
|||||||
email-address: "メールアドレス"
|
email-address: "メールアドレス"
|
||||||
email-verified: "メールアドレスが確認されました"
|
email-verified: "メールアドレスが確認されました"
|
||||||
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
|
||||||
|
export: "エクスポート"
|
||||||
|
export-targets:
|
||||||
|
all-notes: "すべての投稿データ"
|
||||||
|
following-list: "フォロー"
|
||||||
|
mute-list: "ミュート"
|
||||||
|
blocking-list: "ブロック"
|
||||||
|
export-requested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、ドライブにファイルが追加されます。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
danger-zone: "危険な設定"
|
||||||
|
delete-account: "アカウントを削除"
|
||||||
|
account-deleted: "アカウントが削除されました。データが消えるまで時間がかかる場合があります。"
|
||||||
common/views/components/user-list-editor.vue:
|
common/views/components/user-list-editor.vue:
|
||||||
users: "ユーザー"
|
users: "ユーザー"
|
||||||
rename: "リスト名を変更"
|
rename: "リスト名を変更"
|
||||||
@@ -659,9 +700,6 @@ desktop/views/components/drive.vue:
|
|||||||
create-folder: "フォルダーを作成"
|
create-folder: "フォルダーを作成"
|
||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
desktop/views/components/media-video.vue:
|
desktop/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -673,12 +711,6 @@ desktop/views/components/following-window.vue:
|
|||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
desktop/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー:"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "リバーシ"
|
game: "リバーシ"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
@@ -787,11 +819,9 @@ desktop/views/components/settings.vue:
|
|||||||
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
deck-nav: "デッキ内ナビゲーション"
|
keep-cw: "CW保持"
|
||||||
deck-nav-desc: "デッキを使用しているとき、ナビゲーションが発生する際にページ遷移を行わずに一時的なカラムで受けるようにします。"
|
keep-cw-desc: "投稿にリプライする際、リプライ元の投稿にCWが設定されていたとき、デフォルトで同じCWを設定するようにします。"
|
||||||
deck-default: "デッキをデフォルトのUIにする"
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
|
||||||
wallpaper: "壁紙"
|
wallpaper: "壁紙"
|
||||||
choose-wallpaper: "壁紙を選択"
|
choose-wallpaper: "壁紙を選択"
|
||||||
delete-wallpaper: "壁紙を削除"
|
delete-wallpaper: "壁紙を削除"
|
||||||
@@ -874,6 +904,9 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
success: "設定が完了しました!"
|
success: "設定が完了しました!"
|
||||||
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
common/views/components/media-image.vue:
|
||||||
|
sensitive: "閲覧注意"
|
||||||
|
click-to-show: "クリックして表示"
|
||||||
common/views/components/api-settings.vue:
|
common/views/components/api-settings.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
@@ -945,14 +978,11 @@ desktop/views/components/ui.header.account.vue:
|
|||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
follow-requests: "フォロー申請"
|
follow-requests: "フォロー申請"
|
||||||
customize: "ホームのカスタマイズ"
|
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
|
||||||
deck: "デッキ"
|
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "通知"
|
title: "通知"
|
||||||
@@ -991,6 +1021,7 @@ admin/views/index.vue:
|
|||||||
announcements: "お知らせ"
|
announcements: "お知らせ"
|
||||||
hashtags: "ハッシュタグ"
|
hashtags: "ハッシュタグ"
|
||||||
abuse: "スパム報告"
|
abuse: "スパム報告"
|
||||||
|
queue: "ジョブキュー"
|
||||||
back-to-misskey: "Misskeyに戻る"
|
back-to-misskey: "Misskeyに戻る"
|
||||||
admin/views/dashboard.vue:
|
admin/views/dashboard.vue:
|
||||||
dashboard: "ダッシュボード"
|
dashboard: "ダッシュボード"
|
||||||
@@ -1000,6 +1031,9 @@ admin/views/dashboard.vue:
|
|||||||
instances: "インスタンス"
|
instances: "インスタンス"
|
||||||
this-instance: "このインスタンス"
|
this-instance: "このインスタンス"
|
||||||
federated: "連合"
|
federated: "連合"
|
||||||
|
admin/views/queue.vue:
|
||||||
|
operation: "操作"
|
||||||
|
remove-all-jobs: "すべてのジョブをクリア"
|
||||||
admin/views/abuse.vue:
|
admin/views/abuse.vue:
|
||||||
title: "スパム報告"
|
title: "スパム報告"
|
||||||
target: "対象"
|
target: "対象"
|
||||||
@@ -1071,6 +1105,7 @@ admin/views/instance.vue:
|
|||||||
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
smtp-secure-info: "STARTTLS使用時はオフにします。"
|
||||||
smtp-host: "SMTPホスト"
|
smtp-host: "SMTPホスト"
|
||||||
smtp-port: "SMTPポート"
|
smtp-port: "SMTPポート"
|
||||||
|
smtp-auth: "SMTP認証を行う"
|
||||||
smtp-user: "SMTPユーザー"
|
smtp-user: "SMTPユーザー"
|
||||||
smtp-pass: "SMTPパスワード"
|
smtp-pass: "SMTPパスワード"
|
||||||
serviceworker-config: "ServiceWorker"
|
serviceworker-config: "ServiceWorker"
|
||||||
@@ -1133,15 +1168,24 @@ admin/views/users.vue:
|
|||||||
user-not-found: "ユーザーが見つかりません"
|
user-not-found: "ユーザーが見つかりません"
|
||||||
lookup: "照会"
|
lookup: "照会"
|
||||||
reset-password: "パスワードをリセット"
|
reset-password: "パスワードをリセット"
|
||||||
|
reset-password-confirm: "パスワードをリセットしますか?"
|
||||||
password-updated: "パスワードは現在「{password}」です"
|
password-updated: "パスワードは現在「{password}」です"
|
||||||
suspend: "凍結"
|
suspend: "凍結"
|
||||||
|
suspend-confirm: "凍結しますか?"
|
||||||
suspended: "凍結しました"
|
suspended: "凍結しました"
|
||||||
unsuspend: "凍結の解除"
|
unsuspend: "凍結の解除"
|
||||||
|
unsuspend-confirm: "凍結を解除しますか?"
|
||||||
unsuspended: "凍結を解除しました"
|
unsuspended: "凍結を解除しました"
|
||||||
|
make-silence: "サイレンス"
|
||||||
|
unmake-silence: "サイレンスの解除"
|
||||||
verify: "公式アカウントにする"
|
verify: "公式アカウントにする"
|
||||||
|
verify-confirm: "公式アカウントにしますか?"
|
||||||
verified: "公式アカウントにしました"
|
verified: "公式アカウントにしました"
|
||||||
unverify: "公式アカウントを解除する"
|
unverify: "公式アカウントを解除する"
|
||||||
|
unverify-confirm: "公式アカウントを解除しますか?"
|
||||||
unverified: "公式アカウントを解除しました"
|
unverified: "公式アカウントを解除しました"
|
||||||
|
update-remote-user: "リモートユーザー情報の更新"
|
||||||
|
remote-user-updated: "リモートユーザー情報を更新しました"
|
||||||
users:
|
users:
|
||||||
title: "ユーザー"
|
title: "ユーザー"
|
||||||
sort:
|
sort:
|
||||||
@@ -1157,6 +1201,7 @@ admin/views/users.vue:
|
|||||||
moderator: "モデレーター"
|
moderator: "モデレーター"
|
||||||
adminOrModerator: "管理者+モデレーター"
|
adminOrModerator: "管理者+モデレーター"
|
||||||
verified: "公式アカウント"
|
verified: "公式アカウント"
|
||||||
|
silenced: "サイレンス済み"
|
||||||
suspended: "凍結済み"
|
suspended: "凍結済み"
|
||||||
origin:
|
origin:
|
||||||
title: "オリジン"
|
title: "オリジン"
|
||||||
@@ -1204,6 +1249,64 @@ admin/views/announcements.vue:
|
|||||||
removed: "削除しました"
|
removed: "削除しました"
|
||||||
admin/views/hashtags.vue:
|
admin/views/hashtags.vue:
|
||||||
hided-tags: "Hidden Tags"
|
hided-tags: "Hidden Tags"
|
||||||
|
admin/views/federation.vue:
|
||||||
|
federation: "連合"
|
||||||
|
host: "ホスト"
|
||||||
|
notes: "投稿"
|
||||||
|
users: "ユーザー"
|
||||||
|
following: "フォロー中"
|
||||||
|
followers: "フォロワー"
|
||||||
|
status: "ステータス"
|
||||||
|
latest-request-sent-at: "直近のリクエスト送信"
|
||||||
|
latest-request-received-at: "直近のリクエスト受信"
|
||||||
|
remove-all-following: "フォローを全解除"
|
||||||
|
remove-all-following-info: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
|
||||||
|
block: "ブロック"
|
||||||
|
marked-as-closed: "閉鎖されているとマーク"
|
||||||
|
lookup: "照会"
|
||||||
|
instances: "インスタンス"
|
||||||
|
instance-not-registered: "そのインスタンスは登録されていません"
|
||||||
|
sort: "ソート"
|
||||||
|
sorts:
|
||||||
|
caughtAtAsc: "登録日時が古い順"
|
||||||
|
caughtAtDesc: "登録日時が新しい順"
|
||||||
|
lastCommunicatedAtAsc: "最後にやり取りした日時が古い順"
|
||||||
|
lastCommunicatedAtDesc: "最後にやり取りした日時が新しい順"
|
||||||
|
notesAsc: "投稿が少ない順"
|
||||||
|
notesDesc: "投稿が多い順"
|
||||||
|
usersAsc: "ユーザーが少ない順"
|
||||||
|
usersDesc: "ユーザーが多い順"
|
||||||
|
followingAsc: "フォローが少ない順"
|
||||||
|
followingDesc: "フォローが多い順"
|
||||||
|
followersAsc: "フォロワーが少ない順"
|
||||||
|
followersDesc: "フォロワーが多い順"
|
||||||
|
driveUsageAsc: "ドライブ使用量が少ない順"
|
||||||
|
driveUsageDesc: "ドライブ使用量が多い順"
|
||||||
|
driveFilesAsc: "ドライブのファイル数が少ない順"
|
||||||
|
driveFilesDesc: "ドライブのファイル数が多い順"
|
||||||
|
state: "状態"
|
||||||
|
states:
|
||||||
|
all: "すべて"
|
||||||
|
blocked: "ブロック"
|
||||||
|
not-responding: "応答なし"
|
||||||
|
marked-as-closed: "閉鎖とマーク済み"
|
||||||
|
result-is-truncated: "上位{n}件を表示しています。"
|
||||||
|
charts: "チャート"
|
||||||
|
chart-srcs:
|
||||||
|
requests: "リクエスト"
|
||||||
|
users: "ユーザーの増減"
|
||||||
|
users-total: "ユーザーの積算"
|
||||||
|
notes: "投稿の増減"
|
||||||
|
notes-total: "投稿の積算"
|
||||||
|
ff: "フォロー/フォロワーの増減"
|
||||||
|
ff-total: "フォロー/フォロワーの積算"
|
||||||
|
drive-usage: "ドライブ使用量の増減"
|
||||||
|
drive-usage-total: "ドライブ使用量の積算"
|
||||||
|
drive-files: "ドライブファイル数の増減"
|
||||||
|
drive-files-total: "ドライブファイル数の積算"
|
||||||
|
chart-spans:
|
||||||
|
hour: "1時間ごと"
|
||||||
|
day: "1日ごと"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
about: "詳しく..."
|
about: "詳しく..."
|
||||||
gotit: "わかった"
|
gotit: "わかった"
|
||||||
@@ -1218,8 +1321,6 @@ desktop/views/pages/welcome.vue:
|
|||||||
info: "情報"
|
info: "情報"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey Drive"
|
||||||
desktop/views/pages/home-customize.vue:
|
|
||||||
title: "ホームのカスタマイズ"
|
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
next: "次の投稿"
|
next: "次の投稿"
|
||||||
@@ -1251,24 +1352,22 @@ desktop/views/pages/user/user.photos.vue:
|
|||||||
title: "フォト"
|
title: "フォト"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
desktop/views/pages/user/user.profile.vue:
|
|
||||||
follows-you: "フォローされています"
|
|
||||||
menu: "メニュー"
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.header.vue:
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
|
no-description: "自己紹介はありません"
|
||||||
years-old: "{age}歳"
|
years-old: "{age}歳"
|
||||||
year: "年"
|
year: "年"
|
||||||
month: "月"
|
month: "月"
|
||||||
day: "日"
|
day: "日"
|
||||||
|
follows-you: "フォローされています"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
with-media: "メディア"
|
with-media: "メディア"
|
||||||
my-posts: "私の投稿"
|
my-posts: "私の投稿"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -1302,8 +1401,7 @@ mobile/views/components/drive.vue:
|
|||||||
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "フォルダー名"
|
||||||
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
here-is-root: "現在いる場所はルートで、フォルダではありません。"
|
||||||
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
|
||||||
url-prompt: "アップロードしたいファイルのURL"
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
@@ -1321,9 +1419,6 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
nsfw: "閲覧注意"
|
nsfw: "閲覧注意"
|
||||||
mark-as-sensitive: "閲覧注意に設定"
|
mark-as-sensitive: "閲覧注意に設定"
|
||||||
unmark-as-sensitive: "閲覧注意を解除"
|
unmark-as-sensitive: "閲覧注意を解除"
|
||||||
mobile/views/components/media-image.vue:
|
|
||||||
sensitive: "閲覧注意"
|
|
||||||
click-to-show: "クリックして表示"
|
|
||||||
mobile/views/components/media-video.vue:
|
mobile/views/components/media-video.vue:
|
||||||
sensitive: "閲覧注意"
|
sensitive: "閲覧注意"
|
||||||
click-to-show: "クリックして表示"
|
click-to-show: "クリックして表示"
|
||||||
@@ -1333,12 +1428,6 @@ common/views/components/follow-button.vue:
|
|||||||
request-pending: "フォロー許可待ち"
|
request-pending: "フォロー許可待ち"
|
||||||
follow-processing: "フォロー処理中"
|
follow-processing: "フォロー処理中"
|
||||||
follow-request: "フォロー申請"
|
follow-request: "フォロー申請"
|
||||||
mobile/views/components/friends-maker.vue:
|
|
||||||
title: "気になるユーザーをフォロー"
|
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
|
||||||
fetching: "読み込んでいます"
|
|
||||||
refresh: "もっと見る"
|
|
||||||
close: "閉じる"
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
private: "この投稿は非公開です"
|
private: "この投稿は非公開です"
|
||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
@@ -1375,8 +1464,6 @@ mobile/views/components/sub-note-content.vue:
|
|||||||
deleted: "この投稿は削除されました"
|
deleted: "この投稿は削除されました"
|
||||||
media-count: "{}つのメディア"
|
media-count: "{}つのメディア"
|
||||||
poll: "アンケート"
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
|
||||||
empty: "投稿がありません"
|
|
||||||
mobile/views/components/ui.header.vue:
|
mobile/views/components/ui.header.vue:
|
||||||
welcome-back: "おかえりなさい、"
|
welcome-back: "おかえりなさい、"
|
||||||
adjective: "さん"
|
adjective: "さん"
|
||||||
@@ -1393,12 +1480,6 @@ mobile/views/components/ui.nav.vue:
|
|||||||
settings: "設定"
|
settings: "設定"
|
||||||
admin: "管理"
|
admin: "管理"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
|
||||||
no-notes: "このユーザーは投稿していないようです。"
|
|
||||||
no-notes-with-media: "メディア付き投稿はありません。"
|
|
||||||
mobile/views/components/users-list.vue:
|
|
||||||
all: "すべて"
|
|
||||||
known: "知り合い"
|
|
||||||
mobile/views/pages/favorites.vue:
|
mobile/views/pages/favorites.vue:
|
||||||
title: "お気に入り"
|
title: "お気に入り"
|
||||||
mobile/views/pages/user-lists.vue:
|
mobile/views/pages/user-lists.vue:
|
||||||
@@ -1468,6 +1549,7 @@ mobile/views/pages/settings.vue:
|
|||||||
notification-position-top: "上"
|
notification-position-top: "上"
|
||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
keep-cw: "CW保持"
|
||||||
note-visibility: "投稿の公開範囲"
|
note-visibility: "投稿の公開範囲"
|
||||||
default-note-visibility: "デフォルトの公開範囲"
|
default-note-visibility: "デフォルトの公開範囲"
|
||||||
remember-note-visibility: "投稿の公開範囲を記憶する"
|
remember-note-visibility: "投稿の公開範囲を記憶する"
|
||||||
@@ -1505,15 +1587,9 @@ mobile/views/pages/user/home.vue:
|
|||||||
activity: "アクティビティ"
|
activity: "アクティビティ"
|
||||||
keywords: "キーワード"
|
keywords: "キーワード"
|
||||||
domains: "頻出ドメイン"
|
domains: "頻出ドメイン"
|
||||||
frequently-replied-users: "よく会話するユーザー"
|
frequently-replied-users: "よく話すユーザー"
|
||||||
followers-you-know: "知り合いのフォロワー"
|
followers-you-know: "知り合いのフォロワー"
|
||||||
last-used-at: "最終ログイン"
|
last-used-at: "最終ログイン"
|
||||||
mobile/views/pages/user/home.followers-you-know.vue:
|
|
||||||
no-users: "知り合いのユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.friends.vue:
|
|
||||||
no-users: "よく会話するユーザーはいません"
|
|
||||||
mobile/views/pages/user/home.notes.vue:
|
|
||||||
no-notes: "投稿はありません"
|
|
||||||
mobile/views/pages/user/home.photos.vue:
|
mobile/views/pages/user/home.photos.vue:
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
deck:
|
deck:
|
||||||
@@ -1536,11 +1612,14 @@ deck:
|
|||||||
rename: "名前を変更"
|
rename: "名前を変更"
|
||||||
stack-left: "左に重ねる"
|
stack-left: "左に重ねる"
|
||||||
pop-right: "右に出す"
|
pop-right: "右に出す"
|
||||||
|
disabled-timeline:
|
||||||
|
title: "無効化されたタイムライン"
|
||||||
|
description: "サーバーの運営者により、このタイムラインは使用できない状態に設定されています。"
|
||||||
deck/deck.tl-column.vue:
|
deck/deck.tl-column.vue:
|
||||||
is-media-only: "メディア投稿のみ"
|
is-media-only: "メディア投稿のみ"
|
||||||
is-media-view: "メディアビュー"
|
|
||||||
edit: "オプション"
|
edit: "オプション"
|
||||||
deck/deck.user-column.vue:
|
deck/deck.user-column.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
posts: "投稿"
|
posts: "投稿"
|
||||||
following: "フォロー"
|
following: "フォロー"
|
||||||
followers: "フォロワー"
|
followers: "フォロワー"
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
115
package.json
115
package.json
@@ -1,14 +1,17 @@
|
|||||||
{
|
{
|
||||||
"name": "misskey",
|
"name": "misskey",
|
||||||
"author": "syuilo <i@syuilo.com>",
|
"author": "syuilo <i@syuilo.com>",
|
||||||
"version": "10.78.0",
|
"version": "10.89.1",
|
||||||
"clientVersion": "2.0.13640",
|
|
||||||
"codename": "nighthike",
|
"codename": "nighthike",
|
||||||
"main": "./built/index.js",
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/syuilo/misskey.git"
|
||||||
|
},
|
||||||
|
"main": "./index.js",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "node ./built",
|
"start": "node ./index.js",
|
||||||
"debug": "DEBUG=misskey:* node ./built",
|
"debug": "DEBUG=misskey:* node ./index.js",
|
||||||
"build": "webpack && gulp build",
|
"build": "webpack && gulp build",
|
||||||
"webpack": "webpack",
|
"webpack": "webpack",
|
||||||
"watch": "webpack --watch",
|
"watch": "webpack --watch",
|
||||||
@@ -20,10 +23,10 @@
|
|||||||
"format": "gulp format"
|
"format": "gulp format"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fortawesome/fontawesome-svg-core": "1.2.12",
|
"@fortawesome/fontawesome-svg-core": "1.2.14",
|
||||||
"@fortawesome/free-brands-svg-icons": "5.6.3",
|
"@fortawesome/free-brands-svg-icons": "5.7.1",
|
||||||
"@fortawesome/free-regular-svg-icons": "5.5.0",
|
"@fortawesome/free-regular-svg-icons": "5.7.0",
|
||||||
"@fortawesome/free-solid-svg-icons": "5.6.3",
|
"@fortawesome/free-solid-svg-icons": "5.7.1",
|
||||||
"@fortawesome/vue-fontawesome": "0.1.5",
|
"@fortawesome/vue-fontawesome": "0.1.5",
|
||||||
"@koa/cors": "2.2.3",
|
"@koa/cors": "2.2.3",
|
||||||
"@prezzemolo/rap": "0.1.2",
|
"@prezzemolo/rap": "0.1.2",
|
||||||
@@ -31,12 +34,11 @@
|
|||||||
"@types/bcryptjs": "2.4.2",
|
"@types/bcryptjs": "2.4.2",
|
||||||
"@types/chai-http": "3.0.5",
|
"@types/chai-http": "3.0.5",
|
||||||
"@types/dateformat": "3.0.0",
|
"@types/dateformat": "3.0.0",
|
||||||
"@types/debug": "0.0.31",
|
|
||||||
"@types/deep-equal": "1.0.1",
|
"@types/deep-equal": "1.0.1",
|
||||||
"@types/double-ended-queue": "2.1.0",
|
"@types/double-ended-queue": "2.1.0",
|
||||||
"@types/elasticsearch": "5.0.30",
|
"@types/elasticsearch": "5.0.30",
|
||||||
"@types/file-type": "10.6.0",
|
"@types/file-type": "10.6.0",
|
||||||
"@types/gulp": "3.8.36",
|
"@types/gulp": "4.0.5",
|
||||||
"@types/gulp-mocha": "0.0.32",
|
"@types/gulp-mocha": "0.0.32",
|
||||||
"@types/gulp-rename": "0.0.33",
|
"@types/gulp-rename": "0.0.33",
|
||||||
"@types/gulp-replace": "0.0.31",
|
"@types/gulp-replace": "0.0.31",
|
||||||
@@ -45,27 +47,30 @@
|
|||||||
"@types/is-root": "1.0.0",
|
"@types/is-root": "1.0.0",
|
||||||
"@types/is-svg": "3.0.0",
|
"@types/is-svg": "3.0.0",
|
||||||
"@types/is-url": "1.2.28",
|
"@types/is-url": "1.2.28",
|
||||||
"@types/js-yaml": "3.11.4",
|
"@types/js-yaml": "3.12.0",
|
||||||
|
"@types/jsdom": "12.2.1",
|
||||||
"@types/katex": "0.5.0",
|
"@types/katex": "0.5.0",
|
||||||
"@types/koa": "2.0.48",
|
"@types/koa": "2.0.48",
|
||||||
"@types/koa-bodyparser": "5.0.2",
|
"@types/koa-bodyparser": "5.0.2",
|
||||||
"@types/koa-compress": "2.0.8",
|
"@types/koa-compress": "2.0.8",
|
||||||
|
"@types/koa-cors": "0.0.0",
|
||||||
"@types/koa-favicon": "2.0.19",
|
"@types/koa-favicon": "2.0.19",
|
||||||
"@types/koa-logger": "3.1.1",
|
"@types/koa-logger": "3.1.1",
|
||||||
"@types/koa-mount": "3.0.1",
|
"@types/koa-mount": "3.0.1",
|
||||||
"@types/koa-multer": "1.0.0",
|
"@types/koa-multer": "1.0.0",
|
||||||
"@types/koa-router": "7.0.35",
|
"@types/koa-router": "7.0.39",
|
||||||
"@types/koa-send": "4.1.1",
|
"@types/koa-send": "4.1.1",
|
||||||
"@types/koa-views": "2.0.3",
|
"@types/koa-views": "2.0.3",
|
||||||
"@types/koa__cors": "2.2.3",
|
"@types/koa__cors": "2.2.3",
|
||||||
"@types/minio": "7.0.1",
|
"@types/minio": "7.0.1",
|
||||||
"@types/mkdirp": "0.5.2",
|
"@types/mkdirp": "0.5.2",
|
||||||
"@types/mocha": "5.2.5",
|
"@types/mocha": "5.2.5",
|
||||||
"@types/mongodb": "3.1.18",
|
"@types/mongodb": "3.1.19",
|
||||||
"@types/ms": "0.7.30",
|
"@types/node": "10.12.24",
|
||||||
"@types/node": "10.12.18",
|
|
||||||
"@types/nodemailer": "4.6.5",
|
"@types/nodemailer": "4.6.5",
|
||||||
|
"@types/nprogress": "0.0.29",
|
||||||
"@types/oauth": "0.9.1",
|
"@types/oauth": "0.9.1",
|
||||||
|
"@types/parse5": "5.0.0",
|
||||||
"@types/parsimmon": "1.10.0",
|
"@types/parsimmon": "1.10.0",
|
||||||
"@types/portscanner": "2.1.0",
|
"@types/portscanner": "2.1.0",
|
||||||
"@types/pug": "2.0.4",
|
"@types/pug": "2.0.4",
|
||||||
@@ -74,54 +79,54 @@
|
|||||||
"@types/redis": "2.8.10",
|
"@types/redis": "2.8.10",
|
||||||
"@types/request": "2.48.1",
|
"@types/request": "2.48.1",
|
||||||
"@types/request-promise-native": "1.0.15",
|
"@types/request-promise-native": "1.0.15",
|
||||||
|
"@types/request-stats": "3.0.0",
|
||||||
"@types/rimraf": "2.0.2",
|
"@types/rimraf": "2.0.2",
|
||||||
"@types/seedrandom": "2.4.27",
|
"@types/seedrandom": "2.4.27",
|
||||||
"@types/sharp": "0.21.0",
|
"@types/sharp": "0.21.2",
|
||||||
"@types/showdown": "1.9.2",
|
"@types/showdown": "1.9.2",
|
||||||
"@types/speakeasy": "2.0.3",
|
"@types/speakeasy": "2.0.3",
|
||||||
"@types/systeminformation": "3.23.1",
|
"@types/systeminformation": "3.23.1",
|
||||||
"@types/tinycolor2": "1.4.1",
|
"@types/tinycolor2": "1.4.1",
|
||||||
"@types/tmp": "0.0.33",
|
"@types/tmp": "0.0.33",
|
||||||
"@types/uuid": "3.4.4",
|
"@types/uuid": "3.4.4",
|
||||||
"@types/webpack": "4.4.21",
|
"@types/web-push": "3.3.0",
|
||||||
|
"@types/webpack": "4.4.24",
|
||||||
"@types/webpack-stream": "3.2.10",
|
"@types/webpack-stream": "3.2.10",
|
||||||
"@types/websocket": "0.0.40",
|
"@types/websocket": "0.0.40",
|
||||||
"@types/ws": "6.0.1",
|
"@types/ws": "6.0.1",
|
||||||
"animejs": "3.0.1",
|
"animejs": "3.0.1",
|
||||||
"apexcharts": "2.5.1",
|
"apexcharts": "3.4.1",
|
||||||
"autobind-decorator": "2.4.0",
|
"autobind-decorator": "2.4.0",
|
||||||
"autosize": "4.0.2",
|
"autosize": "4.0.2",
|
||||||
"autwh": "0.1.0",
|
"autwh": "0.1.0",
|
||||||
"bcryptjs": "2.4.3",
|
"bcryptjs": "2.4.3",
|
||||||
"bee-queue": "1.2.2",
|
"bee-queue": "1.2.2",
|
||||||
"bootstrap-vue": "2.0.0-rc.11",
|
"bootstrap-vue": "2.0.0-rc.11",
|
||||||
"cafy": "12.0.0",
|
"cafy": "15.1.0",
|
||||||
"chai": "4.2.0",
|
"chai": "4.2.0",
|
||||||
"chalk": "2.4.2",
|
|
||||||
"chai-http": "4.2.1",
|
"chai-http": "4.2.1",
|
||||||
|
"chalk": "2.4.2",
|
||||||
"commander": "2.19.0",
|
"commander": "2.19.0",
|
||||||
"crc-32": "1.2.0",
|
"crc-32": "1.2.0",
|
||||||
"css-loader": "1.0.1",
|
"css-loader": "2.1.0",
|
||||||
"cssnano": "4.1.8",
|
"cssnano": "4.1.10",
|
||||||
"dateformat": "3.0.3",
|
"dateformat": "3.0.3",
|
||||||
"debug": "4.1.0",
|
|
||||||
"deep-equal": "1.0.1",
|
"deep-equal": "1.0.1",
|
||||||
"deepcopy": "0.6.3",
|
"deepcopy": "0.6.3",
|
||||||
"diskusage": "1.0.0",
|
"diskusage": "1.0.0",
|
||||||
"double-ended-queue": "2.1.0-0",
|
"double-ended-queue": "2.1.0-0",
|
||||||
"elasticsearch": "15.3.0",
|
"elasticsearch": "15.3.1",
|
||||||
"emojilib": "2.4.0",
|
"emojilib": "2.4.0",
|
||||||
"escape-regexp": "0.0.1",
|
"escape-regexp": "0.0.1",
|
||||||
"eslint": "5.12.0",
|
"eslint": "5.12.0",
|
||||||
"eslint-plugin-vue": "5.1.0",
|
"eslint-plugin-vue": "5.1.0",
|
||||||
"eventemitter3": "3.1.0",
|
"eventemitter3": "3.1.0",
|
||||||
"feed": "2.0.2",
|
"feed": "2.0.2",
|
||||||
"file-loader": "2.0.0",
|
"file-type": "10.7.1",
|
||||||
"file-type": "10.7.0",
|
|
||||||
"fuckadblock": "3.2.1",
|
"fuckadblock": "3.2.1",
|
||||||
"gulp": "3.9.1",
|
"gulp": "4.0.0",
|
||||||
"gulp-cssnano": "2.1.3",
|
"gulp-cssnano": "2.1.3",
|
||||||
"gulp-imagemin": "4.1.0",
|
"gulp-imagemin": "5.0.3",
|
||||||
"gulp-mocha": "6.0.0",
|
"gulp-mocha": "6.0.0",
|
||||||
"gulp-rename": "1.4.0",
|
"gulp-rename": "1.4.0",
|
||||||
"gulp-replace": "1.0.0",
|
"gulp-replace": "1.0.0",
|
||||||
@@ -131,20 +136,19 @@
|
|||||||
"gulp-typescript": "5.0.0",
|
"gulp-typescript": "5.0.0",
|
||||||
"gulp-uglify": "3.0.1",
|
"gulp-uglify": "3.0.1",
|
||||||
"gulp-util": "3.0.8",
|
"gulp-util": "3.0.8",
|
||||||
"gulp-yaml": "2.0.2",
|
"gulp-yaml": "2.0.3",
|
||||||
"hard-source-webpack-plugin": "0.13.1",
|
"hard-source-webpack-plugin": "0.13.1",
|
||||||
"html-minifier": "3.5.21",
|
"html-minifier": "3.5.21",
|
||||||
"http-signature": "1.2.0",
|
"http-signature": "1.2.0",
|
||||||
"insert-text-at-cursor": "0.1.1",
|
"insert-text-at-cursor": "0.1.2",
|
||||||
"is-root": "2.0.0",
|
"is-root": "2.0.0",
|
||||||
"is-svg": "3.0.0",
|
"is-svg": "3.0.0",
|
||||||
"is-url": "1.2.4",
|
|
||||||
"js-yaml": "3.12.1",
|
"js-yaml": "3.12.1",
|
||||||
"jsdom": "13.1.0",
|
"jsdom": "13.2.0",
|
||||||
"json5": "2.1.0",
|
"json5": "2.1.0",
|
||||||
"json5-loader": "1.0.1",
|
"json5-loader": "1.0.1",
|
||||||
"katex": "0.10.0",
|
"katex": "0.10.0",
|
||||||
"koa": "2.6.2",
|
"koa": "2.7.0",
|
||||||
"koa-bodyparser": "4.2.1",
|
"koa-bodyparser": "4.2.1",
|
||||||
"koa-compress": "3.0.0",
|
"koa-compress": "3.0.0",
|
||||||
"koa-favicon": "2.0.1",
|
"koa-favicon": "2.0.1",
|
||||||
@@ -155,21 +159,21 @@
|
|||||||
"koa-router": "7.4.0",
|
"koa-router": "7.4.0",
|
||||||
"koa-send": "5.0.0",
|
"koa-send": "5.0.0",
|
||||||
"koa-slow": "2.1.0",
|
"koa-slow": "2.1.0",
|
||||||
"koa-views": "6.1.4",
|
"koa-views": "6.1.5",
|
||||||
"langmap": "0.0.16",
|
"langmap": "0.0.16",
|
||||||
"loader-utils": "1.2.3",
|
"loader-utils": "1.2.3",
|
||||||
"lookup-dns-cache": "2.1.0",
|
"lookup-dns-cache": "2.1.0",
|
||||||
"minio": "7.0.3",
|
"minio": "7.0.5",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
"mocha": "5.2.0",
|
"mocha": "5.2.0",
|
||||||
"moji": "0.5.1",
|
"moji": "0.5.1",
|
||||||
"moment": "2.23.0",
|
"moment": "2.24.0",
|
||||||
"mongodb": "3.1.10",
|
"mongodb": "3.1.13",
|
||||||
"monk": "6.0.6",
|
"monk": "6.0.6",
|
||||||
"ms": "2.1.1",
|
"ms": "2.1.1",
|
||||||
"nan": "2.12.1",
|
"nan": "2.12.1",
|
||||||
"nested-property": "0.0.7",
|
"nested-property": "0.0.7",
|
||||||
"nodemailer": "5.0.0",
|
"nodemailer": "5.1.1",
|
||||||
"nprogress": "0.2.0",
|
"nprogress": "0.2.0",
|
||||||
"object-assign-deep": "0.4.0",
|
"object-assign-deep": "0.4.0",
|
||||||
"on-build-webpack": "0.1.0",
|
"on-build-webpack": "0.1.0",
|
||||||
@@ -178,13 +182,14 @@
|
|||||||
"parsimmon": "1.12.0",
|
"parsimmon": "1.12.0",
|
||||||
"portscanner": "2.2.0",
|
"portscanner": "2.2.0",
|
||||||
"postcss-loader": "3.0.0",
|
"postcss-loader": "3.0.0",
|
||||||
"progress-bar-webpack-plugin": "1.11.0",
|
"prismjs": "1.15.0",
|
||||||
|
"progress-bar-webpack-plugin": "1.12.1",
|
||||||
"promise-any": "0.2.0",
|
"promise-any": "0.2.0",
|
||||||
"promise-limit": "2.7.0",
|
"promise-limit": "2.7.0",
|
||||||
"promise-sequential": "1.1.1",
|
"promise-sequential": "1.1.1",
|
||||||
"pug": "2.0.3",
|
"pug": "2.0.3",
|
||||||
"punycode": "2.1.1",
|
"punycode": "2.1.1",
|
||||||
"qrcode": "1.3.2",
|
"qrcode": "1.3.3",
|
||||||
"randomcolor": "0.5.3",
|
"randomcolor": "0.5.3",
|
||||||
"ratelimiter": "3.2.0",
|
"ratelimiter": "3.2.0",
|
||||||
"recaptcha-promise": "0.1.3",
|
"recaptcha-promise": "0.1.3",
|
||||||
@@ -197,7 +202,7 @@
|
|||||||
"rndstr": "1.0.0",
|
"rndstr": "1.0.0",
|
||||||
"s-age": "1.1.2",
|
"s-age": "1.1.2",
|
||||||
"seedrandom": "2.4.4",
|
"seedrandom": "2.4.4",
|
||||||
"sharp": "0.21.1",
|
"sharp": "0.21.3",
|
||||||
"showdown": "1.9.0",
|
"showdown": "1.9.0",
|
||||||
"showdown-highlightjs-extension": "0.1.2",
|
"showdown-highlightjs-extension": "0.1.2",
|
||||||
"speakeasy": "2.0.0",
|
"speakeasy": "2.0.0",
|
||||||
@@ -206,45 +211,47 @@
|
|||||||
"stylus": "0.54.5",
|
"stylus": "0.54.5",
|
||||||
"stylus-loader": "3.0.2",
|
"stylus-loader": "3.0.2",
|
||||||
"summaly": "2.2.0",
|
"summaly": "2.2.0",
|
||||||
"systeminformation": "3.52.2",
|
"systeminformation": "3.54.0",
|
||||||
"syuilo-password-strength": "0.0.1",
|
"syuilo-password-strength": "0.0.1",
|
||||||
"terser-webpack-plugin": "1.2.1",
|
"terser-webpack-plugin": "1.2.2",
|
||||||
"textarea-caret": "3.1.0",
|
"textarea-caret": "3.1.0",
|
||||||
"tinycolor2": "1.4.1",
|
"tinycolor2": "1.4.1",
|
||||||
"tmp": "0.0.33",
|
"tmp": "0.0.33",
|
||||||
"ts-loader": "5.3.3",
|
"ts-loader": "5.3.3",
|
||||||
"ts-node": "7.0.1",
|
"ts-node": "7.0.1",
|
||||||
"tslint": "5.12.0",
|
"tslint": "5.12.1",
|
||||||
"tslint-sonarts": "1.8.0",
|
"tslint-sonarts": "1.9.0",
|
||||||
"typescript": "3.2.2",
|
"typescript": "3.3.3333",
|
||||||
"typescript-eslint-parser": "21.0.2",
|
"typescript-eslint-parser": "21.0.2",
|
||||||
"uglify-es": "3.3.9",
|
"uglify-es": "3.3.9",
|
||||||
"url-loader": "1.1.2",
|
"url-loader": "1.1.2",
|
||||||
"uuid": "3.3.2",
|
"uuid": "3.3.2",
|
||||||
"v-animate-css": "0.0.3",
|
"v-animate-css": "0.0.3",
|
||||||
"vue": "2.5.17",
|
"video-thumbnail-generator": "1.1.3",
|
||||||
|
"vue": "2.6.7",
|
||||||
"vue-color": "2.7.0",
|
"vue-color": "2.7.0",
|
||||||
"vue-content-loading": "1.5.3",
|
"vue-content-loading": "1.5.3",
|
||||||
"vue-cropperjs": "3.0.0",
|
"vue-cropperjs": "3.0.0",
|
||||||
"vue-i18n": "8.7.0",
|
"vue-i18n": "8.8.2",
|
||||||
"vue-js-modal": "1.3.28",
|
"vue-js-modal": "1.3.28",
|
||||||
"vue-loader": "15.4.2",
|
"vue-loader": "15.6.4",
|
||||||
"vue-marquee-text-component": "1.1.1",
|
"vue-marquee-text-component": "1.1.1",
|
||||||
|
"vue-prism-component": "1.1.1",
|
||||||
"vue-router": "3.0.2",
|
"vue-router": "3.0.2",
|
||||||
"vue-sequential-entrance": "1.1.3",
|
"vue-sequential-entrance": "1.1.3",
|
||||||
"vue-style-loader": "4.1.2",
|
"vue-style-loader": "4.1.2",
|
||||||
"vue-svg-inline-loader": "1.2.7",
|
"vue-svg-inline-loader": "1.2.10",
|
||||||
"vue-template-compiler": "2.5.17",
|
"vue-template-compiler": "2.6.7",
|
||||||
"vuedraggable": "2.17.0",
|
"vuedraggable": "2.17.0",
|
||||||
"vuewordcloud": "18.7.11",
|
"vuewordcloud": "18.7.11",
|
||||||
"vuex": "3.0.1",
|
"vuex": "3.1.0",
|
||||||
"vuex-persistedstate": "2.5.4",
|
"vuex-persistedstate": "2.5.4",
|
||||||
"web-push": "3.3.3",
|
"web-push": "3.3.3",
|
||||||
"webfinger.js": "2.7.0",
|
"webfinger.js": "2.7.0",
|
||||||
"webpack": "4.28.4",
|
"webpack": "4.28.4",
|
||||||
"webpack-cli": "3.2.1",
|
"webpack-cli": "3.2.1",
|
||||||
"websocket": "1.0.28",
|
"websocket": "1.0.28",
|
||||||
"ws": "6.1.2",
|
"ws": "6.1.4",
|
||||||
"xev": "2.0.1"
|
"xev": "2.0.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
3
src/@types/const.json.d.ts
vendored
Normal file
3
src/@types/const.json.d.ts
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
declare module '*/const.json' {
|
||||||
|
const copyright: string;
|
||||||
|
}
|
||||||
17
src/@types/deepcopy.d.ts
vendored
Normal file
17
src/@types/deepcopy.d.ts
vendored
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
declare module 'deepcopy';
|
||||||
|
|
||||||
|
declare namespace deepcopy {
|
||||||
|
type DeepcopyCustomizerValueType = 'Object';
|
||||||
|
|
||||||
|
type DeepcopyCustomizer<T> = (
|
||||||
|
value: T,
|
||||||
|
valueType: DeepcopyCustomizerValueType) => T;
|
||||||
|
|
||||||
|
interface DeepcopyOptions<T> {
|
||||||
|
customizer: DeepcopyCustomizer<T>;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function deepcopy<T>(
|
||||||
|
value: T,
|
||||||
|
options?: DeepcopyOptions<T> | DeepcopyCustomizer<T>): T;
|
||||||
|
}
|
||||||
7
src/@types/escape-regexp.d.ts
vendored
Normal file
7
src/@types/escape-regexp.d.ts
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
declare module 'escape-regexp' {
|
||||||
|
function escapeRegExp(str: string): string;
|
||||||
|
|
||||||
|
namespace escapeRegExp {} // Hack
|
||||||
|
|
||||||
|
export = escapeRegExp;
|
||||||
|
}
|
||||||
75
src/@types/http-signature.d.ts
vendored
Normal file
75
src/@types/http-signature.d.ts
vendored
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
declare module 'http-signature' {
|
||||||
|
import { IncomingMessage, ClientRequest } from 'http';
|
||||||
|
|
||||||
|
interface ISignature {
|
||||||
|
keyId: string;
|
||||||
|
algorithm: string;
|
||||||
|
headers: string[];
|
||||||
|
signature: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IOptions {
|
||||||
|
headers?: string[];
|
||||||
|
algorithm?: string;
|
||||||
|
strict?: boolean;
|
||||||
|
authorizationHeaderName?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IParseRequestOptions extends IOptions {
|
||||||
|
clockSkew?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IParsedSignature {
|
||||||
|
scheme: string;
|
||||||
|
params: ISignature;
|
||||||
|
signingString: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
type RequestSignerConstructorOptions =
|
||||||
|
IRequestSignerConstructorOptionsFromProperties |
|
||||||
|
IRequestSignerConstructorOptionsFromFunction;
|
||||||
|
|
||||||
|
interface IRequestSignerConstructorOptionsFromProperties {
|
||||||
|
keyId: string;
|
||||||
|
key: string | Buffer;
|
||||||
|
algorithm?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IRequestSignerConstructorOptionsFromFunction {
|
||||||
|
sign?: (data: string, cb: (err: any, sig: ISignature) => void) => void;
|
||||||
|
}
|
||||||
|
|
||||||
|
class RequestSigner {
|
||||||
|
constructor(options: RequestSignerConstructorOptions);
|
||||||
|
|
||||||
|
public writeHeader(header: string, value: string): string;
|
||||||
|
|
||||||
|
public writeDateHeader(): string;
|
||||||
|
|
||||||
|
public writeTarget(method: string, path: string): void;
|
||||||
|
|
||||||
|
public sign(cb: (err: any, authz: string) => void): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ISignRequestOptions extends IOptions {
|
||||||
|
keyId: string;
|
||||||
|
key: string;
|
||||||
|
httpVersion?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function parse(request: IncomingMessage, options?: IParseRequestOptions): IParsedSignature;
|
||||||
|
export function parseRequest(request: IncomingMessage, options?: IParseRequestOptions): IParsedSignature;
|
||||||
|
|
||||||
|
export function sign(request: ClientRequest, options: ISignRequestOptions): boolean;
|
||||||
|
export function signRequest(request: ClientRequest, options: ISignRequestOptions): boolean;
|
||||||
|
export function createSigner(): RequestSigner;
|
||||||
|
export function isSigner(obj: any): obj is RequestSigner;
|
||||||
|
|
||||||
|
export function sshKeyToPEM(key: string): string;
|
||||||
|
export function sshKeyFingerprint(key: string): string;
|
||||||
|
export function pemToRsaSSHKey(pem: string, comment: string): string;
|
||||||
|
|
||||||
|
export function verify(parsedSignature: IParsedSignature, pubkey: string | Buffer): boolean;
|
||||||
|
export function verifySignature(parsedSignature: IParsedSignature, pubkey: string | Buffer): boolean;
|
||||||
|
export function verifyHMAC(parsedSignature: IParsedSignature, secret: string): boolean;
|
||||||
|
}
|
||||||
7
src/@types/is-root.d.ts
vendored
Normal file
7
src/@types/is-root.d.ts
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
declare module 'is-root' {
|
||||||
|
function isRoot(): boolean;
|
||||||
|
|
||||||
|
namespace isRoot {} // Hack
|
||||||
|
|
||||||
|
export = isRoot;
|
||||||
|
}
|
||||||
15
src/@types/koa-json-body.d.ts
vendored
Normal file
15
src/@types/koa-json-body.d.ts
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
declare module 'koa-json-body' {
|
||||||
|
import { Middleware } from 'koa';
|
||||||
|
|
||||||
|
interface IKoaJsonBodyOptions {
|
||||||
|
strict: boolean;
|
||||||
|
limit: string;
|
||||||
|
fallback: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
function koaJsonBody(opt?: IKoaJsonBodyOptions): Middleware;
|
||||||
|
|
||||||
|
namespace koaJsonBody {} // Hack
|
||||||
|
|
||||||
|
export = koaJsonBody;
|
||||||
|
}
|
||||||
14
src/@types/koa-slow.d.ts
vendored
Normal file
14
src/@types/koa-slow.d.ts
vendored
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
declare module 'koa-slow' {
|
||||||
|
import { Middleware } from 'koa';
|
||||||
|
|
||||||
|
interface ISlowOptions {
|
||||||
|
url?: RegExp;
|
||||||
|
delay?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
function slow(options?: ISlowOptions): Middleware;
|
||||||
|
|
||||||
|
namespace slow { } // Hack
|
||||||
|
|
||||||
|
export = slow;
|
||||||
|
}
|
||||||
10
src/@types/langmap.d.ts
vendored
Normal file
10
src/@types/langmap.d.ts
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
declare module 'langmap' {
|
||||||
|
type Lang = {
|
||||||
|
nativeName: string;
|
||||||
|
englishName: string;
|
||||||
|
};
|
||||||
|
|
||||||
|
const langmap: { [lang: string]: Lang };
|
||||||
|
|
||||||
|
export = langmap;
|
||||||
|
}
|
||||||
17
src/@types/lookup-dns-cache.d.ts
vendored
Normal file
17
src/@types/lookup-dns-cache.d.ts
vendored
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
declare module 'lookup-dns-cache' {
|
||||||
|
type IPv4 = 4;
|
||||||
|
|
||||||
|
type IPv6 = 6;
|
||||||
|
|
||||||
|
type Family = IPv4 | IPv6 | undefined;
|
||||||
|
|
||||||
|
interface IRunOptions {
|
||||||
|
family?: Family;
|
||||||
|
all?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
type RunCallback = (error: Error | null, address?: string | string[], family?: Family) => void;
|
||||||
|
|
||||||
|
export function lookup(hostname: string, options: IRunOptions | Family, callback: RunCallback): {} | undefined;
|
||||||
|
export function lookup(hostname: string, callback: RunCallback): {} | undefined;
|
||||||
|
}
|
||||||
3
src/@types/meta.json.d.ts
vendored
Normal file
3
src/@types/meta.json.d.ts
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
declare module '*/meta.json' {
|
||||||
|
const version: string;
|
||||||
|
}
|
||||||
12
src/@types/ms.d.ts
vendored
Normal file
12
src/@types/ms.d.ts
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
declare module 'ms' {
|
||||||
|
interface IMSOptions {
|
||||||
|
long: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
function ms(value: string): number;
|
||||||
|
function ms(value: number, options?: IMSOptions): string;
|
||||||
|
|
||||||
|
namespace ms {} // Hack
|
||||||
|
|
||||||
|
export = ms;
|
||||||
|
}
|
||||||
21
src/@types/nested-property.d.ts
vendored
Normal file
21
src/@types/nested-property.d.ts
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
type Obj = { [key: string]: any };
|
||||||
|
|
||||||
|
declare module 'nested-property' {
|
||||||
|
interface IHasNestedPropertyOptions {
|
||||||
|
own?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IIsInNestedPropertyOptions {
|
||||||
|
validPath?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function set<T>(object: T, property: string, value: any): T;
|
||||||
|
|
||||||
|
export function get(object: Obj, property: string): any;
|
||||||
|
|
||||||
|
export function has(object: Obj, property: string, options?: IHasNestedPropertyOptions): boolean;
|
||||||
|
|
||||||
|
export function hasOwn(object: Obj, property: string, options?: IHasNestedPropertyOptions): boolean;
|
||||||
|
|
||||||
|
export function isIn(object: Obj, property: string, objectInPath: Obj, options?: IIsInNestedPropertyOptions): boolean;
|
||||||
|
}
|
||||||
30
src/@types/os-utils.d.ts
vendored
Normal file
30
src/@types/os-utils.d.ts
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
declare module 'os-utils' {
|
||||||
|
type FreeCommandCallback = (usedmem: number) => void;
|
||||||
|
|
||||||
|
type HarddriveCallback = (total: number, free: number, used: number) => void;
|
||||||
|
|
||||||
|
type GetProcessesCallback = (result: string) => void;
|
||||||
|
|
||||||
|
type CPUCallback = (perc: number) => void;
|
||||||
|
|
||||||
|
export function platform(): NodeJS.Platform;
|
||||||
|
export function cpuCount(): number;
|
||||||
|
export function sysUptime(): number;
|
||||||
|
export function processUptime(): number;
|
||||||
|
|
||||||
|
export function freemem(): number;
|
||||||
|
export function totalmem(): number;
|
||||||
|
export function freememPercentage(): number;
|
||||||
|
export function freeCommand(callback: FreeCommandCallback): void;
|
||||||
|
|
||||||
|
export function harddrive(callback: HarddriveCallback): void;
|
||||||
|
|
||||||
|
export function getProcesses(callback: GetProcessesCallback): void;
|
||||||
|
export function getProcesses(nProcess: number, callback: GetProcessesCallback): void;
|
||||||
|
|
||||||
|
export function allLoadavg(): string;
|
||||||
|
export function loadavg(_time?: number): number;
|
||||||
|
|
||||||
|
export function cpuFree(callback: CPUCallback): void;
|
||||||
|
export function cpuUsage(callback: CPUCallback): void;
|
||||||
|
}
|
||||||
10
src/@types/package.json.d.ts
vendored
Normal file
10
src/@types/package.json.d.ts
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
declare module '*/package.json' {
|
||||||
|
interface IRepository {
|
||||||
|
type: string;
|
||||||
|
url: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const name: string;
|
||||||
|
export const version: string;
|
||||||
|
export const repository: IRepository;
|
||||||
|
}
|
||||||
7
src/@types/promise-any.d.ts
vendored
Normal file
7
src/@types/promise-any.d.ts
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
declare module 'promise-any' {
|
||||||
|
function promiseAny<T>(iterable: Iterable<T | PromiseLike<T>>): Promise<T>;
|
||||||
|
|
||||||
|
namespace promiseAny {} // Hack
|
||||||
|
|
||||||
|
export = promiseAny;
|
||||||
|
}
|
||||||
16
src/@types/recaptcha-promise.d.ts
vendored
Normal file
16
src/@types/recaptcha-promise.d.ts
vendored
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
declare module 'recaptcha-promise' {
|
||||||
|
interface IVerifyOptions {
|
||||||
|
secret_key?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IVerify {
|
||||||
|
(response: string, remoteAddress?: string): Promise<boolean>;
|
||||||
|
init(options: IVerifyOptions): IVerify;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace recaptchaPromise {} // Hack
|
||||||
|
|
||||||
|
const verify: IVerify;
|
||||||
|
|
||||||
|
export = verify;
|
||||||
|
}
|
||||||
65
src/@types/webfinger.js.d.ts
vendored
Normal file
65
src/@types/webfinger.js.d.ts
vendored
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
declare module 'webfinger.js' {
|
||||||
|
interface IWebFingerConstructorConfig {
|
||||||
|
tls_only?: boolean;
|
||||||
|
webfist_fallback?: boolean;
|
||||||
|
uri_fallback?: boolean;
|
||||||
|
request_timeout?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
type JRDProperties = { [type: string]: string };
|
||||||
|
|
||||||
|
interface IJRDLink {
|
||||||
|
rel: string;
|
||||||
|
type?: string;
|
||||||
|
href?: string;
|
||||||
|
template?: string;
|
||||||
|
titles?: { [lang: string]: string };
|
||||||
|
properties?: JRDProperties;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IJRD {
|
||||||
|
subject?: string;
|
||||||
|
expires?: Date;
|
||||||
|
aliases?: string[];
|
||||||
|
properties?: JRDProperties;
|
||||||
|
links?: IJRDLink[];
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IIDXLinks {
|
||||||
|
'avatar': IJRDLink[];
|
||||||
|
'remotestorage': IJRDLink[];
|
||||||
|
'blog': IJRDLink[];
|
||||||
|
'vcard': IJRDLink[];
|
||||||
|
'updates': IJRDLink[];
|
||||||
|
'share': IJRDLink[];
|
||||||
|
'profile': IJRDLink[];
|
||||||
|
'webfist': IJRDLink[];
|
||||||
|
'camlistore': IJRDLink[];
|
||||||
|
[type: string]: IJRDLink[];
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IIDXProperties {
|
||||||
|
'name': string;
|
||||||
|
[type: string]: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IIDX {
|
||||||
|
links: IIDXLinks;
|
||||||
|
properties: IIDXProperties;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ILookupCallbackResult {
|
||||||
|
object: IJRD;
|
||||||
|
json: string;
|
||||||
|
idx: IIDX;
|
||||||
|
}
|
||||||
|
|
||||||
|
type LookupCallback = (err: Error | string, result?: ILookupCallbackResult) => void;
|
||||||
|
|
||||||
|
export class WebFinger {
|
||||||
|
constructor(config?: IWebFingerConstructorConfig);
|
||||||
|
|
||||||
|
public lookup(address: string, cb: LookupCallback): NodeJS.Timeout;
|
||||||
|
public lookupLink(address: string, rel: string, cb: IJRDLink): void;
|
||||||
|
}
|
||||||
|
}
|
||||||
21
src/argv.ts
Normal file
21
src/argv.ts
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import * as program from 'commander';
|
||||||
|
import * as pkg from '../package.json';
|
||||||
|
|
||||||
|
program
|
||||||
|
.version(pkg.version)
|
||||||
|
.option('--no-daemons', 'Disable daemon processes (for debbuging)')
|
||||||
|
.option('--disable-clustering', 'Disable clustering')
|
||||||
|
.option('--disable-queue', 'Disable job queue processing')
|
||||||
|
.option('--only-server', 'Run server only (without job queue)')
|
||||||
|
.option('--only-queue', 'Pocessing job queue only (without server)')
|
||||||
|
.option('--quiet', 'Suppress all logs')
|
||||||
|
.option('--verbose', 'Enable all logs')
|
||||||
|
.option('--with-log-time', 'Include timestamp for each logs')
|
||||||
|
.option('--slow', 'Delay all requests (for debbuging)')
|
||||||
|
.option('--color', 'This option is a dummy for some external program\'s (e.g. forever) issue.')
|
||||||
|
.parse(process.argv);
|
||||||
|
|
||||||
|
/*if (process.env.MK_DISABLE_QUEUE)*/ program.disableQueue = true;
|
||||||
|
if (process.env.MK_ONLY_QUEUE) program.onlyQueue = true;
|
||||||
|
|
||||||
|
export { program };
|
||||||
@@ -1,15 +1,15 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="faExclamationCircle"/> {{ $t('title') }}</div>
|
<template #title><fa :icon="faExclamationCircle"/> {{ $t('title') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<sequential-entrance animation="entranceFromTop" delay="25">
|
<sequential-entrance animation="entranceFromTop" delay="25">
|
||||||
<div v-for="report in userReports" :key="report.id" class="haexwsjc">
|
<div v-for="report in userReports" :key="report.id" class="haexwsjc">
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-input :value="report.user | acct" type="text">
|
<ui-input :value="report.user | acct" type="text" readonly>
|
||||||
<span>{{ $t('target') }}</span>
|
<span>{{ $t('target') }}</span>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
<ui-input :value="report.reporter | acct" type="text">
|
<ui-input :value="report.reporter | acct" type="text" readonly>
|
||||||
<span>{{ $t('reporter') }}</span>
|
<span>{{ $t('reporter') }}</span>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa icon="broadcast-tower"/> {{ $t('announcements') }}</div>
|
<template #title><fa icon="broadcast-tower"/> {{ $t('announcements') }}</template>
|
||||||
<section v-for="(announcement, i) in announcements" class="fit-top">
|
<section v-for="(announcement, i) in announcements" class="fit-top">
|
||||||
<ui-input v-model="announcement.title" @change="save">
|
<ui-input v-model="announcement.title" @change="save">
|
||||||
<span>{{ $t('title') }}</span>
|
<span>{{ $t('title') }}</span>
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import i18n from '../../i18n';
|
import i18n from '../../i18n';
|
||||||
import * as tinycolor from 'tinycolor2';
|
import * as tinycolor from 'tinycolor2';
|
||||||
import * as ApexCharts from 'apexcharts';
|
import ApexCharts from 'apexcharts';
|
||||||
|
|
||||||
const limit = 90;
|
const limit = 90;
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import * as ApexCharts from 'apexcharts';
|
import ApexCharts from 'apexcharts';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: ['connection'],
|
props: ['connection'],
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ export default Vue.extend({
|
|||||||
this.meta = meta;
|
this.meta = meta;
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$root.api('instances', {
|
this.$root.api('federation/instances', {
|
||||||
sort: '+notes'
|
sort: '+notes'
|
||||||
}).then(instances => {
|
}).then(instances => {
|
||||||
for (const i of instances) {
|
for (const i of instances) {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="faTerminal"/> {{ $t('operation') }}</div>
|
<template #title><fa :icon="faTerminal"/> {{ $t('operation') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-input v-model="target" type="text">
|
<ui-input v-model="target" type="text">
|
||||||
<span>{{ $t('fileid-or-url') }}</span>
|
<span>{{ $t('fileid-or-url') }}</span>
|
||||||
@@ -17,18 +17,18 @@
|
|||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="faCloud"/> {{ $t('@.drive') }}</div>
|
<template #title><fa :icon="faCloud"/> {{ $t('@.drive') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-select v-model="sort">
|
<ui-select v-model="sort">
|
||||||
<span slot="label">{{ $t('sort.title') }}</span>
|
<template #label>{{ $t('sort.title') }}</template>
|
||||||
<option value="-createdAt">{{ $t('sort.createdAtAsc') }}</option>
|
<option value="-createdAt">{{ $t('sort.createdAtAsc') }}</option>
|
||||||
<option value="+createdAt">{{ $t('sort.createdAtDesc') }}</option>
|
<option value="+createdAt">{{ $t('sort.createdAtDesc') }}</option>
|
||||||
<option value="-size">{{ $t('sort.sizeAsc') }}</option>
|
<option value="-size">{{ $t('sort.sizeAsc') }}</option>
|
||||||
<option value="+size">{{ $t('sort.sizeDesc') }}</option>
|
<option value="+size">{{ $t('sort.sizeDesc') }}</option>
|
||||||
</ui-select>
|
</ui-select>
|
||||||
<ui-select v-model="origin">
|
<ui-select v-model="origin">
|
||||||
<span slot="label">{{ $t('origin.title') }}</span>
|
<template #label>{{ $t('origin.title') }}</template>
|
||||||
<option value="combined">{{ $t('origin.combined') }}</option>
|
<option value="combined">{{ $t('origin.combined') }}</option>
|
||||||
<option value="local">{{ $t('origin.local') }}</option>
|
<option value="local">{{ $t('origin.local') }}</option>
|
||||||
<option value="remote">{{ $t('origin.remote') }}</option>
|
<option value="remote">{{ $t('origin.remote') }}</option>
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa icon="plus"/> {{ $t('add-emoji.title') }}</div>
|
<template #title><fa icon="plus"/> {{ $t('add-emoji.title') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-input v-model="name">
|
<ui-input v-model="name">
|
||||||
<span>{{ $t('add-emoji.name') }}</span>
|
<span>{{ $t('add-emoji.name') }}</span>
|
||||||
<span slot="desc">{{ $t('add-emoji.name-desc') }}</span>
|
<template #desc>{{ $t('add-emoji.name-desc') }}</template>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
<ui-input v-model="aliases">
|
<ui-input v-model="aliases">
|
||||||
<span>{{ $t('add-emoji.aliases') }}</span>
|
<span>{{ $t('add-emoji.aliases') }}</span>
|
||||||
<span slot="desc">{{ $t('add-emoji.aliases-desc') }}</span>
|
<template #desc>{{ $t('add-emoji.aliases-desc') }}</template>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-input v-model="url">
|
<ui-input v-model="url">
|
||||||
<i slot="icon"><fa icon="link"/></i>
|
<template #icon><fa icon="link"/></template>
|
||||||
<span>{{ $t('add-emoji.url') }}</span>
|
<span>{{ $t('add-emoji.url') }}</span>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
<ui-info>{{ $t('add-emoji.info') }}</ui-info>
|
<ui-info>{{ $t('add-emoji.info') }}</ui-info>
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="faGrin"/> {{ $t('emojis.title') }}</div>
|
<template #title><fa :icon="faGrin"/> {{ $t('emojis.title') }}</template>
|
||||||
<section v-for="emoji in emojis" class="oryfrbft">
|
<section v-for="emoji in emojis" class="oryfrbft">
|
||||||
<div>
|
<div>
|
||||||
<img :src="emoji.url" :alt="emoji.name" style="width: 64px;"/>
|
<img :src="emoji.url" :alt="emoji.name" style="width: 64px;"/>
|
||||||
@@ -38,7 +38,7 @@
|
|||||||
</ui-input>
|
</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-input v-model="emoji.url">
|
<ui-input v-model="emoji.url">
|
||||||
<i slot="icon"><fa icon="link"/></i>
|
<template #icon><fa icon="link"/></template>
|
||||||
<span>{{ $t('add-emoji.url') }}</span>
|
<span>{{ $t('add-emoji.url') }}</span>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
<ui-horizon-group class="fit-bottom">
|
<ui-horizon-group class="fit-bottom">
|
||||||
|
|||||||
488
src/client/app/admin/views/federation.vue
Normal file
488
src/client/app/admin/views/federation.vue
Normal file
@@ -0,0 +1,488 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<ui-card>
|
||||||
|
<template #title><fa :icon="faTerminal"/> {{ $t('federation') }}</template>
|
||||||
|
<section class="fit-top">
|
||||||
|
<ui-input class="target" v-model="target" type="text" @enter="showInstance()">
|
||||||
|
<span>{{ $t('host') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
<ui-button @click="showInstance()"><fa :icon="faSearch"/> {{ $t('lookup') }}</ui-button>
|
||||||
|
|
||||||
|
<div class="instance" v-if="instance">
|
||||||
|
<ui-input :value="instance.host" type="text" readonly>
|
||||||
|
<span>{{ $t('host') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
<ui-horizon-group inputs>
|
||||||
|
<ui-input :value="instance.notesCount | number" type="text" readonly>
|
||||||
|
<span>{{ $t('notes') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
<ui-input :value="instance.usersCount | number" type="text" readonly>
|
||||||
|
<span>{{ $t('users') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
</ui-horizon-group>
|
||||||
|
<ui-horizon-group inputs>
|
||||||
|
<ui-input :value="instance.followingCount | number" type="text" readonly>
|
||||||
|
<span>{{ $t('following') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
<ui-input :value="instance.followersCount | number" type="text" readonly>
|
||||||
|
<span>{{ $t('followers') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
</ui-horizon-group>
|
||||||
|
<ui-horizon-group inputs>
|
||||||
|
<ui-input :value="instance.latestRequestSentAt" type="text" readonly>
|
||||||
|
<span>{{ $t('latest-request-sent-at') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
<ui-input :value="instance.latestStatus" type="text" readonly>
|
||||||
|
<span>{{ $t('status') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
</ui-horizon-group>
|
||||||
|
<ui-input :value="instance.latestRequestReceivedAt" type="text" readonly>
|
||||||
|
<span>{{ $t('latest-request-received-at') }}</span>
|
||||||
|
</ui-input>
|
||||||
|
<ui-switch v-model="instance.isBlocked" @change="updateInstance()">{{ $t('block') }}</ui-switch>
|
||||||
|
<ui-switch v-model="instance.isMarkedAsClosed" @change="updateInstance()">{{ $t('marked-as-closed') }}</ui-switch>
|
||||||
|
<details>
|
||||||
|
<summary>{{ $t('charts') }}</summary>
|
||||||
|
<ui-horizon-group inputs>
|
||||||
|
<ui-select v-model="chartSrc">
|
||||||
|
<option value="requests">{{ $t('chart-srcs.requests') }}</option>
|
||||||
|
<option value="users">{{ $t('chart-srcs.users') }}</option>
|
||||||
|
<option value="users-total">{{ $t('chart-srcs.users-total') }}</option>
|
||||||
|
<option value="notes">{{ $t('chart-srcs.notes') }}</option>
|
||||||
|
<option value="notes-total">{{ $t('chart-srcs.notes-total') }}</option>
|
||||||
|
<option value="ff">{{ $t('chart-srcs.ff') }}</option>
|
||||||
|
<option value="ff-total">{{ $t('chart-srcs.ff-total') }}</option>
|
||||||
|
<option value="drive-usage">{{ $t('chart-srcs.drive-usage') }}</option>
|
||||||
|
<option value="drive-usage-total">{{ $t('chart-srcs.drive-usage-total') }}</option>
|
||||||
|
<option value="drive-files">{{ $t('chart-srcs.drive-files') }}</option>
|
||||||
|
<option value="drive-files-total">{{ $t('chart-srcs.drive-files-total') }}</option>
|
||||||
|
</ui-select>
|
||||||
|
<ui-select v-model="chartSpan">
|
||||||
|
<option value="hour">{{ $t('chart-spans.hour') }}</option>
|
||||||
|
<option value="day">{{ $t('chart-spans.day') }}</option>
|
||||||
|
</ui-select>
|
||||||
|
</ui-horizon-group>
|
||||||
|
<div ref="chart"></div>
|
||||||
|
</details>
|
||||||
|
<details>
|
||||||
|
<summary>{{ $t('remove-all-following') }}</summary>
|
||||||
|
<ui-button @click="removeAllFollowing()" style="margin-top: 16px;"><fa :icon="faMinusCircle"/> {{ $t('remove-all-following') }}</ui-button>
|
||||||
|
<ui-info warn>{{ $t('remove-all-following-info', { host: instance.host }) }}</ui-info>
|
||||||
|
</details>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</ui-card>
|
||||||
|
|
||||||
|
<ui-card>
|
||||||
|
<template #title><fa :icon="faServer"/> {{ $t('instances') }}</template>
|
||||||
|
<section class="fit-top">
|
||||||
|
<ui-horizon-group inputs>
|
||||||
|
<ui-select v-model="sort">
|
||||||
|
<template #label>{{ $t('sort') }}</template>
|
||||||
|
<option value="-caughtAt">{{ $t('sorts.caughtAtAsc') }}</option>
|
||||||
|
<option value="+caughtAt">{{ $t('sorts.caughtAtDesc') }}</option>
|
||||||
|
<option value="-lastCommunicatedAt">{{ $t('sorts.lastCommunicatedAtAsc') }}</option>
|
||||||
|
<option value="+lastCommunicatedAt">{{ $t('sorts.lastCommunicatedAtDesc') }}</option>
|
||||||
|
<option value="-notes">{{ $t('sorts.notesAsc') }}</option>
|
||||||
|
<option value="+notes">{{ $t('sorts.notesDesc') }}</option>
|
||||||
|
<option value="-users">{{ $t('sorts.usersAsc') }}</option>
|
||||||
|
<option value="+users">{{ $t('sorts.usersDesc') }}</option>
|
||||||
|
<option value="-following">{{ $t('sorts.followingAsc') }}</option>
|
||||||
|
<option value="+following">{{ $t('sorts.followingDesc') }}</option>
|
||||||
|
<option value="-followers">{{ $t('sorts.followersAsc') }}</option>
|
||||||
|
<option value="+followers">{{ $t('sorts.followersDesc') }}</option>
|
||||||
|
<option value="-driveUsage">{{ $t('sorts.driveUsageAsc') }}</option>
|
||||||
|
<option value="+driveUsage">{{ $t('sorts.driveUsageDesc') }}</option>
|
||||||
|
<option value="-driveFiles">{{ $t('sorts.driveFilesAsc') }}</option>
|
||||||
|
<option value="+driveFiles">{{ $t('sorts.driveFilesDesc') }}</option>
|
||||||
|
</ui-select>
|
||||||
|
<ui-select v-model="state">
|
||||||
|
<template #label>{{ $t('state') }}</template>
|
||||||
|
<option value="all">{{ $t('states.all') }}</option>
|
||||||
|
<option value="blocked">{{ $t('states.blocked') }}</option>
|
||||||
|
<option value="notResponding">{{ $t('states.not-responding') }}</option>
|
||||||
|
<option value="markedAsClosed">{{ $t('states.marked-as-closed') }}</option>
|
||||||
|
</ui-select>
|
||||||
|
</ui-horizon-group>
|
||||||
|
|
||||||
|
<div class="instances">
|
||||||
|
<header>
|
||||||
|
<span>{{ $t('host') }}</span>
|
||||||
|
<span>{{ $t('notes') }}</span>
|
||||||
|
<span>{{ $t('users') }}</span>
|
||||||
|
<span>{{ $t('following') }}</span>
|
||||||
|
<span>{{ $t('followers') }}</span>
|
||||||
|
<span>{{ $t('status') }}</span>
|
||||||
|
</header>
|
||||||
|
<div v-for="instance in instances" :style="{ opacity: instance.isNotResponding ? 0.5 : 1 }">
|
||||||
|
<a @click.prevent="showInstance(instance.host)" target="_blank" :href="`https://${instance.host}`" :style="{ textDecoration: instance.isMarkedAsClosed ? 'line-through' : 'none' }">{{ instance.host }}</a>
|
||||||
|
<span>{{ instance.notesCount | number }}</span>
|
||||||
|
<span>{{ instance.usersCount | number }}</span>
|
||||||
|
<span>{{ instance.followingCount | number }}</span>
|
||||||
|
<span>{{ instance.followersCount | number }}</span>
|
||||||
|
<span>{{ instance.latestStatus }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<ui-info v-if="instances.length == limit">{{ $t('result-is-truncated', { n: limit }) }}</ui-info>
|
||||||
|
</section>
|
||||||
|
</ui-card>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
import i18n from '../../i18n';
|
||||||
|
import { faGlobe, faTerminal, faSearch, faMinusCircle, faServer } from '@fortawesome/free-solid-svg-icons';
|
||||||
|
import ApexCharts from 'apexcharts';
|
||||||
|
import * as tinycolor from 'tinycolor2';
|
||||||
|
|
||||||
|
const chartLimit = 90;
|
||||||
|
const sum = (...arr) => arr.reduce((r, a) => r.map((b, i) => a[i] + b));
|
||||||
|
const negate = arr => arr.map(x => -x);
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
i18n: i18n('admin/views/federation.vue'),
|
||||||
|
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
instance: null,
|
||||||
|
target: null,
|
||||||
|
sort: '+lastCommunicatedAt',
|
||||||
|
state: 'all',
|
||||||
|
limit: 50,
|
||||||
|
instances: [],
|
||||||
|
chart: null,
|
||||||
|
chartSrc: 'requests',
|
||||||
|
chartSpan: 'hour',
|
||||||
|
chartInstance: null,
|
||||||
|
faGlobe, faTerminal, faSearch, faMinusCircle, faServer
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
computed: {
|
||||||
|
data(): any {
|
||||||
|
if (this.chart == null) return null;
|
||||||
|
switch (this.chartSrc) {
|
||||||
|
case 'requests': return this.requestsChart();
|
||||||
|
case 'users': return this.usersChart(false);
|
||||||
|
case 'users-total': return this.usersChart(true);
|
||||||
|
case 'notes': return this.notesChart(false);
|
||||||
|
case 'notes-total': return this.notesChart(true);
|
||||||
|
case 'ff': return this.ffChart(false);
|
||||||
|
case 'ff-total': return this.ffChart(true);
|
||||||
|
case 'drive-usage': return this.driveUsageChart(false);
|
||||||
|
case 'drive-usage-total': return this.driveUsageChart(true);
|
||||||
|
case 'drive-files': return this.driveFilesChart(false);
|
||||||
|
case 'drive-files-total': return this.driveFilesChart(true);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
stats(): any[] {
|
||||||
|
const stats =
|
||||||
|
this.chartSpan == 'day' ? this.chart.perDay :
|
||||||
|
this.chartSpan == 'hour' ? this.chart.perHour :
|
||||||
|
null;
|
||||||
|
|
||||||
|
return stats;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
watch: {
|
||||||
|
sort() {
|
||||||
|
this.fetchInstances();
|
||||||
|
},
|
||||||
|
|
||||||
|
state() {
|
||||||
|
this.fetchInstances();
|
||||||
|
},
|
||||||
|
|
||||||
|
async instance() {
|
||||||
|
this.now = new Date();
|
||||||
|
|
||||||
|
const [perHour, perDay] = await Promise.all([
|
||||||
|
this.$root.api('charts/instance', { host: this.instance.host, limit: chartLimit, span: 'hour' }),
|
||||||
|
this.$root.api('charts/instance', { host: this.instance.host, limit: chartLimit, span: 'day' }),
|
||||||
|
]);
|
||||||
|
|
||||||
|
const chart = {
|
||||||
|
perHour: perHour,
|
||||||
|
perDay: perDay
|
||||||
|
};
|
||||||
|
|
||||||
|
this.chart = chart;
|
||||||
|
|
||||||
|
this.renderChart();
|
||||||
|
},
|
||||||
|
|
||||||
|
chartSrc() {
|
||||||
|
this.renderChart();
|
||||||
|
},
|
||||||
|
|
||||||
|
chartSpan() {
|
||||||
|
this.renderChart();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
mounted() {
|
||||||
|
this.fetchInstances();
|
||||||
|
},
|
||||||
|
|
||||||
|
beforeDestroy() {
|
||||||
|
this.chartInstance.destroy();
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
showInstance(target?: string) {
|
||||||
|
this.$root.api('federation/show-instance', {
|
||||||
|
host: target || this.target
|
||||||
|
}).then(instance => {
|
||||||
|
if (instance == null) {
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'error',
|
||||||
|
text: this.$t('instance-not-registered')
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.instance = instance;
|
||||||
|
this.target = '';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
fetchInstances() {
|
||||||
|
this.instances = [];
|
||||||
|
this.$root.api('federation/instances', {
|
||||||
|
blocked: this.state === 'blocked' ? true : null,
|
||||||
|
notResponding: this.state === 'notResponding' ? true : null,
|
||||||
|
markedAsClosed: this.state === 'markedAsClosed' ? true : null,
|
||||||
|
sort: this.sort,
|
||||||
|
limit: this.limit
|
||||||
|
}).then(instances => {
|
||||||
|
this.instances = instances;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
removeAllFollowing() {
|
||||||
|
this.$root.api('admin/federation/remove-all-following', {
|
||||||
|
host: this.instance.host
|
||||||
|
}).then(() => {
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'success',
|
||||||
|
splash: true
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
updateInstance() {
|
||||||
|
this.$root.api('admin/federation/update-instance', {
|
||||||
|
host: this.instance.host,
|
||||||
|
isBlocked: this.instance.isBlocked || false,
|
||||||
|
isClosed: this.instance.isMarkedAsClosed || false
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
setSrc(src) {
|
||||||
|
this.chartSrc = src;
|
||||||
|
},
|
||||||
|
|
||||||
|
renderChart() {
|
||||||
|
if (this.chartInstance) {
|
||||||
|
this.chartInstance.destroy();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.chartInstance = new ApexCharts(this.$refs.chart, {
|
||||||
|
chart: {
|
||||||
|
type: 'area',
|
||||||
|
height: 300,
|
||||||
|
animations: {
|
||||||
|
dynamicAnimation: {
|
||||||
|
enabled: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
toolbar: {
|
||||||
|
show: false
|
||||||
|
},
|
||||||
|
zoom: {
|
||||||
|
enabled: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
dataLabels: {
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
grid: {
|
||||||
|
clipMarkers: false,
|
||||||
|
borderColor: 'rgba(0, 0, 0, 0.1)'
|
||||||
|
},
|
||||||
|
stroke: {
|
||||||
|
curve: 'straight',
|
||||||
|
width: 2
|
||||||
|
},
|
||||||
|
tooltip: {
|
||||||
|
theme: this.$store.state.device.darkmode ? 'dark' : 'light'
|
||||||
|
},
|
||||||
|
legend: {
|
||||||
|
labels: {
|
||||||
|
colors: tinycolor(getComputedStyle(document.documentElement).getPropertyValue('--text')).toRgbString()
|
||||||
|
},
|
||||||
|
},
|
||||||
|
xaxis: {
|
||||||
|
type: 'datetime',
|
||||||
|
labels: {
|
||||||
|
style: {
|
||||||
|
colors: tinycolor(getComputedStyle(document.documentElement).getPropertyValue('--text')).toRgbString()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
axisBorder: {
|
||||||
|
color: 'rgba(0, 0, 0, 0.1)'
|
||||||
|
},
|
||||||
|
axisTicks: {
|
||||||
|
color: 'rgba(0, 0, 0, 0.1)'
|
||||||
|
},
|
||||||
|
},
|
||||||
|
yaxis: {
|
||||||
|
labels: {
|
||||||
|
formatter: this.data.bytes ? v => Vue.filter('bytes')(v, 0) : v => Vue.filter('number')(v),
|
||||||
|
style: {
|
||||||
|
color: tinycolor(getComputedStyle(document.documentElement).getPropertyValue('--text')).toRgbString()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
series: this.data.series
|
||||||
|
});
|
||||||
|
|
||||||
|
this.chartInstance.render();
|
||||||
|
},
|
||||||
|
|
||||||
|
getDate(i: number) {
|
||||||
|
const y = this.now.getFullYear();
|
||||||
|
const m = this.now.getMonth();
|
||||||
|
const d = this.now.getDate();
|
||||||
|
const h = this.now.getHours();
|
||||||
|
|
||||||
|
return (
|
||||||
|
this.chartSpan == 'day' ? new Date(y, m, d - i) :
|
||||||
|
this.chartSpan == 'hour' ? new Date(y, m, d, h - i) :
|
||||||
|
null
|
||||||
|
);
|
||||||
|
},
|
||||||
|
|
||||||
|
format(arr) {
|
||||||
|
return arr.map((v, i) => ({ x: this.getDate(i).getTime(), y: v }));
|
||||||
|
},
|
||||||
|
|
||||||
|
requestsChart(): any {
|
||||||
|
return {
|
||||||
|
series: [{
|
||||||
|
name: 'Incoming',
|
||||||
|
data: this.format(this.stats.requests.received)
|
||||||
|
}, {
|
||||||
|
name: 'Outgoing (succeeded)',
|
||||||
|
data: this.format(this.stats.requests.succeeded)
|
||||||
|
}, {
|
||||||
|
name: 'Outgoing (failed)',
|
||||||
|
data: this.format(this.stats.requests.failed)
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
usersChart(total: boolean): any {
|
||||||
|
return {
|
||||||
|
series: [{
|
||||||
|
name: 'Users',
|
||||||
|
type: 'area',
|
||||||
|
data: this.format(total
|
||||||
|
? this.stats.users.total
|
||||||
|
: sum(this.stats.users.inc, negate(this.stats.users.dec))
|
||||||
|
)
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
notesChart(total: boolean): any {
|
||||||
|
return {
|
||||||
|
series: [{
|
||||||
|
name: 'Notes',
|
||||||
|
type: 'area',
|
||||||
|
data: this.format(total
|
||||||
|
? this.stats.notes.total
|
||||||
|
: sum(this.stats.notes.inc, negate(this.stats.notes.dec))
|
||||||
|
)
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
ffChart(total: boolean): any {
|
||||||
|
return {
|
||||||
|
series: [{
|
||||||
|
name: 'Following',
|
||||||
|
type: 'area',
|
||||||
|
data: this.format(total
|
||||||
|
? this.stats.following.total
|
||||||
|
: sum(this.stats.following.inc, negate(this.stats.following.dec))
|
||||||
|
)
|
||||||
|
}, {
|
||||||
|
name: 'Followers',
|
||||||
|
type: 'area',
|
||||||
|
data: this.format(total
|
||||||
|
? this.stats.followers.total
|
||||||
|
: sum(this.stats.followers.inc, negate(this.stats.followers.dec))
|
||||||
|
)
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
driveUsageChart(total: boolean): any {
|
||||||
|
return {
|
||||||
|
bytes: true,
|
||||||
|
series: [{
|
||||||
|
name: 'Drive usage',
|
||||||
|
type: 'area',
|
||||||
|
data: this.format(total
|
||||||
|
? this.stats.drive.totalUsage
|
||||||
|
: sum(this.stats.drive.incUsage, negate(this.stats.drive.decUsage))
|
||||||
|
)
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
driveFilesChart(total: boolean): any {
|
||||||
|
return {
|
||||||
|
series: [{
|
||||||
|
name: 'Drive files',
|
||||||
|
type: 'area',
|
||||||
|
data: this.format(total
|
||||||
|
? this.stats.drive.totalFiles
|
||||||
|
: sum(this.stats.drive.incFiles, negate(this.stats.drive.decFiles))
|
||||||
|
)
|
||||||
|
}]
|
||||||
|
};
|
||||||
|
},
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
.target
|
||||||
|
margin-bottom 16px !important
|
||||||
|
|
||||||
|
.instances
|
||||||
|
width 100%
|
||||||
|
|
||||||
|
> header
|
||||||
|
display flex
|
||||||
|
|
||||||
|
> *
|
||||||
|
color var(--text)
|
||||||
|
font-weight bold
|
||||||
|
|
||||||
|
> div
|
||||||
|
display flex
|
||||||
|
|
||||||
|
> * > *
|
||||||
|
flex 1
|
||||||
|
overflow auto
|
||||||
|
|
||||||
|
&:first-child
|
||||||
|
min-width 200px
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title">{{ $t('hided-tags') }}</div>
|
<template #title>{{ $t('hided-tags') }}</template>
|
||||||
<section>
|
<section>
|
||||||
<textarea class="jdnqwkzlnxcfftthoybjxrebyolvoucw" v-model="hidedTags"></textarea>
|
<textarea class="jdnqwkzlnxcfftthoybjxrebyolvoucw" v-model="hidedTags"></textarea>
|
||||||
<ui-button @click="save">{{ $t('save') }}</ui-button>
|
<ui-button @click="save">{{ $t('save') }}</ui-button>
|
||||||
|
|||||||
@@ -20,10 +20,11 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li @click="nav('dashboard')" :class="{ active: page == 'dashboard' }"><fa icon="home" fixed-width/>{{ $t('dashboard') }}</li>
|
<li @click="nav('dashboard')" :class="{ active: page == 'dashboard' }"><fa icon="home" fixed-width/>{{ $t('dashboard') }}</li>
|
||||||
<li @click="nav('instance')" :class="{ active: page == 'instance' }"><fa icon="cog" fixed-width/>{{ $t('instance') }}</li>
|
<li @click="nav('instance')" :class="{ active: page == 'instance' }"><fa icon="cog" fixed-width/>{{ $t('instance') }}</li>
|
||||||
|
<li @click="nav('queue')" :class="{ active: page == 'queue' }"><fa :icon="faTasks" fixed-width/>{{ $t('queue') }}</li>
|
||||||
<li @click="nav('moderators')" :class="{ active: page == 'moderators' }"><fa :icon="faHeadset" fixed-width/>{{ $t('moderators') }}</li>
|
<li @click="nav('moderators')" :class="{ active: page == 'moderators' }"><fa :icon="faHeadset" fixed-width/>{{ $t('moderators') }}</li>
|
||||||
<li @click="nav('users')" :class="{ active: page == 'users' }"><fa icon="users" fixed-width/>{{ $t('users') }}</li>
|
<li @click="nav('users')" :class="{ active: page == 'users' }"><fa icon="users" fixed-width/>{{ $t('users') }}</li>
|
||||||
<li @click="nav('drive')" :class="{ active: page == 'drive' }"><fa icon="cloud" fixed-width/>{{ $t('@.drive') }}</li>
|
<li @click="nav('drive')" :class="{ active: page == 'drive' }"><fa icon="cloud" fixed-width/>{{ $t('@.drive') }}</li>
|
||||||
<!-- <li @click="nav('federation')" :class="{ active: page == 'federation' }"><fa :icon="faShareAlt" fixed-width/>{{ $t('federation') }}</li> -->
|
<li @click="nav('federation')" :class="{ active: page == 'federation' }"><fa :icon="faGlobe" fixed-width/>{{ $t('federation') }}</li>
|
||||||
<li @click="nav('emoji')" :class="{ active: page == 'emoji' }"><fa :icon="faGrin" fixed-width/>{{ $t('emoji') }}</li>
|
<li @click="nav('emoji')" :class="{ active: page == 'emoji' }"><fa :icon="faGrin" fixed-width/>{{ $t('emoji') }}</li>
|
||||||
<li @click="nav('announcements')" :class="{ active: page == 'announcements' }"><fa icon="broadcast-tower" fixed-width/>{{ $t('announcements') }}</li>
|
<li @click="nav('announcements')" :class="{ active: page == 'announcements' }"><fa icon="broadcast-tower" fixed-width/>{{ $t('announcements') }}</li>
|
||||||
<li @click="nav('hashtags')" :class="{ active: page == 'hashtags' }"><fa icon="hashtag" fixed-width/>{{ $t('hashtags') }}</li>
|
<li @click="nav('hashtags')" :class="{ active: page == 'hashtags' }"><fa icon="hashtag" fixed-width/>{{ $t('hashtags') }}</li>
|
||||||
@@ -40,12 +41,14 @@
|
|||||||
<div class="page">
|
<div class="page">
|
||||||
<div v-if="page == 'dashboard'"><x-dashboard/></div>
|
<div v-if="page == 'dashboard'"><x-dashboard/></div>
|
||||||
<div v-if="page == 'instance'"><x-instance/></div>
|
<div v-if="page == 'instance'"><x-instance/></div>
|
||||||
|
<div v-if="page == 'queue'"><x-queue/></div>
|
||||||
<div v-if="page == 'moderators'"><x-moderators/></div>
|
<div v-if="page == 'moderators'"><x-moderators/></div>
|
||||||
<div v-if="page == 'users'"><x-users/></div>
|
<div v-if="page == 'users'"><x-users/></div>
|
||||||
<div v-if="page == 'emoji'"><x-emoji/></div>
|
<div v-if="page == 'emoji'"><x-emoji/></div>
|
||||||
<div v-if="page == 'announcements'"><x-announcements/></div>
|
<div v-if="page == 'announcements'"><x-announcements/></div>
|
||||||
<div v-if="page == 'hashtags'"><x-hashtags/></div>
|
<div v-if="page == 'hashtags'"><x-hashtags/></div>
|
||||||
<div v-if="page == 'drive'"><x-drive/></div>
|
<div v-if="page == 'drive'"><x-drive/></div>
|
||||||
|
<div v-if="page == 'federation'"><x-federation/></div>
|
||||||
<div v-if="page == 'abuse'"><x-abuse/></div>
|
<div v-if="page == 'abuse'"><x-abuse/></div>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
@@ -58,6 +61,7 @@ import i18n from '../../i18n';
|
|||||||
import { version } from '../../config';
|
import { version } from '../../config';
|
||||||
import XDashboard from "./dashboard.vue";
|
import XDashboard from "./dashboard.vue";
|
||||||
import XInstance from "./instance.vue";
|
import XInstance from "./instance.vue";
|
||||||
|
import XQueue from "./queue.vue";
|
||||||
import XModerators from "./moderators.vue";
|
import XModerators from "./moderators.vue";
|
||||||
import XEmoji from "./emoji.vue";
|
import XEmoji from "./emoji.vue";
|
||||||
import XAnnouncements from "./announcements.vue";
|
import XAnnouncements from "./announcements.vue";
|
||||||
@@ -65,7 +69,9 @@ import XHashtags from "./hashtags.vue";
|
|||||||
import XUsers from "./users.vue";
|
import XUsers from "./users.vue";
|
||||||
import XDrive from "./drive.vue";
|
import XDrive from "./drive.vue";
|
||||||
import XAbuse from "./abuse.vue";
|
import XAbuse from "./abuse.vue";
|
||||||
import { faHeadset, faArrowLeft, faShareAlt, faExclamationCircle } from '@fortawesome/free-solid-svg-icons';
|
import XFederation from "./federation.vue";
|
||||||
|
|
||||||
|
import { faHeadset, faArrowLeft, faGlobe, faExclamationCircle, faTasks } from '@fortawesome/free-solid-svg-icons';
|
||||||
import { faGrin } from '@fortawesome/free-regular-svg-icons';
|
import { faGrin } from '@fortawesome/free-regular-svg-icons';
|
||||||
|
|
||||||
// Detect the user agent
|
// Detect the user agent
|
||||||
@@ -77,6 +83,7 @@ export default Vue.extend({
|
|||||||
components: {
|
components: {
|
||||||
XDashboard,
|
XDashboard,
|
||||||
XInstance,
|
XInstance,
|
||||||
|
XQueue,
|
||||||
XModerators,
|
XModerators,
|
||||||
XEmoji,
|
XEmoji,
|
||||||
XAnnouncements,
|
XAnnouncements,
|
||||||
@@ -84,6 +91,7 @@ export default Vue.extend({
|
|||||||
XUsers,
|
XUsers,
|
||||||
XDrive,
|
XDrive,
|
||||||
XAbuse,
|
XAbuse,
|
||||||
|
XFederation,
|
||||||
},
|
},
|
||||||
provide: {
|
provide: {
|
||||||
isMobile
|
isMobile
|
||||||
@@ -97,8 +105,9 @@ export default Vue.extend({
|
|||||||
faGrin,
|
faGrin,
|
||||||
faArrowLeft,
|
faArrowLeft,
|
||||||
faHeadset,
|
faHeadset,
|
||||||
faShareAlt,
|
faGlobe,
|
||||||
faExclamationCircle
|
faExclamationCircle,
|
||||||
|
faTasks
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa icon="cog"/> {{ $t('instance') }}</div>
|
<template #title><fa icon="cog"/> {{ $t('instance') }}</template>
|
||||||
<section class="fit-top fit-bottom">
|
<section class="fit-top fit-bottom">
|
||||||
<ui-input :value="host" readonly>{{ $t('host') }}</ui-input>
|
<ui-input :value="host" readonly>{{ $t('host') }}</ui-input>
|
||||||
<ui-input v-model="name">{{ $t('instance-name') }}</ui-input>
|
<ui-input v-model="name">{{ $t('instance-name') }}</ui-input>
|
||||||
<ui-textarea v-model="description">{{ $t('instance-description') }}</ui-textarea>
|
<ui-textarea v-model="description">{{ $t('instance-description') }}</ui-textarea>
|
||||||
<ui-input v-model="mascotImageUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('logo-url') }}</ui-input>
|
<ui-input v-model="mascotImageUrl"><template #icon><fa icon="link"/></template>{{ $t('logo-url') }}</ui-input>
|
||||||
<ui-input v-model="bannerUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('banner-url') }}</ui-input>
|
<ui-input v-model="bannerUrl"><template #icon><fa icon="link"/></template>{{ $t('banner-url') }}</ui-input>
|
||||||
<ui-input v-model="errorImageUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('error-image-url') }}</ui-input>
|
<ui-input v-model="errorImageUrl"><template #icon><fa icon="link"/></template>{{ $t('error-image-url') }}</ui-input>
|
||||||
<ui-input v-model="languages"><i slot="icon"><fa icon="language"/></i>{{ $t('languages') }}<span slot="desc">{{ $t('languages-desc') }}</span></ui-input>
|
<ui-input v-model="languages"><template #icon><fa icon="language"/></template>{{ $t('languages') }}<template #desc>{{ $t('languages-desc') }}</template></ui-input>
|
||||||
</section>
|
</section>
|
||||||
<section class="fit-bottom">
|
<section class="fit-bottom">
|
||||||
<header><fa :icon="faHeadset"/> {{ $t('maintainer-config') }}</header>
|
<header><fa :icon="faHeadset"/> {{ $t('maintainer-config') }}</header>
|
||||||
<ui-input v-model="maintainerName">{{ $t('maintainer-name') }}</ui-input>
|
<ui-input v-model="maintainerName">{{ $t('maintainer-name') }}</ui-input>
|
||||||
<ui-input v-model="maintainerEmail" type="email"><i slot="icon"><fa :icon="farEnvelope"/></i>{{ $t('maintainer-email') }}</ui-input>
|
<ui-input v-model="maintainerEmail" type="email"><template #icon><fa :icon="farEnvelope"/></template>{{ $t('maintainer-email') }}</ui-input>
|
||||||
</section>
|
</section>
|
||||||
<section class="fit-top fit-bottom">
|
<section class="fit-top fit-bottom">
|
||||||
<ui-input v-model="maxNoteTextLength">{{ $t('max-note-text-length') }}</ui-input>
|
<ui-input v-model="maxNoteTextLength">{{ $t('max-note-text-length') }}</ui-input>
|
||||||
@@ -27,46 +27,47 @@
|
|||||||
</section>
|
</section>
|
||||||
<section class="fit-bottom">
|
<section class="fit-bottom">
|
||||||
<header><fa icon="cloud"/> {{ $t('drive-config') }}</header>
|
<header><fa icon="cloud"/> {{ $t('drive-config') }}</header>
|
||||||
<ui-switch v-model="cacheRemoteFiles">{{ $t('cache-remote-files') }}<span slot="desc">{{ $t('cache-remote-files-desc') }}</span></ui-switch>
|
<ui-switch v-model="cacheRemoteFiles">{{ $t('cache-remote-files') }}<template #desc>{{ $t('cache-remote-files-desc') }}</template></ui-switch>
|
||||||
<ui-input v-model="localDriveCapacityMb" type="number">{{ $t('local-drive-capacity-mb') }}<span slot="suffix">MB</span><span slot="desc">{{ $t('mb') }}</span></ui-input>
|
<ui-input v-model="localDriveCapacityMb" type="number">{{ $t('local-drive-capacity-mb') }}<template #suffix>MB</template><template #desc>{{ $t('mb') }}</template></ui-input>
|
||||||
<ui-input v-model="remoteDriveCapacityMb" type="number" :disabled="!cacheRemoteFiles">{{ $t('remote-drive-capacity-mb') }}<span slot="suffix">MB</span><span slot="desc">{{ $t('mb') }}</span></ui-input>
|
<ui-input v-model="remoteDriveCapacityMb" type="number" :disabled="!cacheRemoteFiles">{{ $t('remote-drive-capacity-mb') }}<template #suffix>MB</template><template #desc>{{ $t('mb') }}</template></ui-input>
|
||||||
</section>
|
</section>
|
||||||
<section class="fit-bottom">
|
<section class="fit-bottom">
|
||||||
<header><fa :icon="faShieldAlt"/> {{ $t('recaptcha-config') }}</header>
|
<header><fa :icon="faShieldAlt"/> {{ $t('recaptcha-config') }}</header>
|
||||||
<ui-switch v-model="enableRecaptcha">{{ $t('enable-recaptcha') }}</ui-switch>
|
<ui-switch v-model="enableRecaptcha">{{ $t('enable-recaptcha') }}</ui-switch>
|
||||||
<ui-info>{{ $t('recaptcha-info') }}</ui-info>
|
<ui-info>{{ $t('recaptcha-info') }}</ui-info>
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-input v-model="recaptchaSiteKey" :disabled="!enableRecaptcha"><i slot="icon"><fa icon="key"/></i>{{ $t('recaptcha-site-key') }}</ui-input>
|
<ui-input v-model="recaptchaSiteKey" :disabled="!enableRecaptcha"><template #icon><fa icon="key"/></template>{{ $t('recaptcha-site-key') }}</ui-input>
|
||||||
<ui-input v-model="recaptchaSecretKey" :disabled="!enableRecaptcha"><i slot="icon"><fa icon="key"/></i>{{ $t('recaptcha-secret-key') }}</ui-input>
|
<ui-input v-model="recaptchaSecretKey" :disabled="!enableRecaptcha"><template #icon><fa icon="key"/></template>{{ $t('recaptcha-secret-key') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<header><fa :icon="faGhost"/> {{ $t('proxy-account-config') }}</header>
|
<header><fa :icon="faGhost"/> {{ $t('proxy-account-config') }}</header>
|
||||||
<ui-info>{{ $t('proxy-account-info') }}</ui-info>
|
<ui-info>{{ $t('proxy-account-info') }}</ui-info>
|
||||||
<ui-input v-model="proxyAccount"><span slot="prefix">@</span>{{ $t('proxy-account-username') }}<span slot="desc">{{ $t('proxy-account-username-desc') }}</span></ui-input>
|
<ui-input v-model="proxyAccount"><template #prefix>@</template>{{ $t('proxy-account-username') }}<template #desc>{{ $t('proxy-account-username-desc') }}</template></ui-input>
|
||||||
<ui-info warn>{{ $t('proxy-account-warn') }}</ui-info>
|
<ui-info warn>{{ $t('proxy-account-warn') }}</ui-info>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<header><fa :icon="farEnvelope"/> {{ $t('email-config') }}</header>
|
<header><fa :icon="farEnvelope"/> {{ $t('email-config') }}</header>
|
||||||
<ui-switch v-model="enableEmail">{{ $t('enable-email') }}<span slot="desc">{{ $t('email-config-info') }}</span></ui-switch>
|
<ui-switch v-model="enableEmail">{{ $t('enable-email') }}<template #desc>{{ $t('email-config-info') }}</template></ui-switch>
|
||||||
<ui-input v-model="email" type="email" :disabled="!enableEmail">{{ $t('email') }}</ui-input>
|
<ui-input v-model="email" type="email" :disabled="!enableEmail">{{ $t('email') }}</ui-input>
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-input v-model="smtpHost" :disabled="!enableEmail">{{ $t('smtp-host') }}</ui-input>
|
<ui-input v-model="smtpHost" :disabled="!enableEmail">{{ $t('smtp-host') }}</ui-input>
|
||||||
<ui-input v-model="smtpPort" type="number" :disabled="!enableEmail">{{ $t('smtp-port') }}</ui-input>
|
<ui-input v-model="smtpPort" type="number" :disabled="!enableEmail">{{ $t('smtp-port') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
|
<ui-switch v-model="smtpAuth">{{ $t('smtp-auth') }}</ui-switch>
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-input v-model="smtpUser" :disabled="!enableEmail">{{ $t('smtp-user') }}</ui-input>
|
<ui-input v-model="smtpUser" :disabled="!enableEmail || !smtpAuth">{{ $t('smtp-user') }}</ui-input>
|
||||||
<ui-input v-model="smtpPass" type="password" :withPasswordToggle="true" :disabled="!enableEmail">{{ $t('smtp-pass') }}</ui-input>
|
<ui-input v-model="smtpPass" type="password" :withPasswordToggle="true" :disabled="!enableEmail || !smtpAuth">{{ $t('smtp-pass') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-switch v-model="smtpSecure" :disabled="!enableEmail">{{ $t('smtp-secure') }}<span slot="desc">{{ $t('smtp-secure-info') }}</span></ui-switch>
|
<ui-switch v-model="smtpSecure" :disabled="!enableEmail">{{ $t('smtp-secure') }}<template #desc>{{ $t('smtp-secure-info') }}</template></ui-switch>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<header><fa :icon="faBolt"/> {{ $t('serviceworker-config') }}</header>
|
<header><fa :icon="faBolt"/> {{ $t('serviceworker-config') }}</header>
|
||||||
<ui-switch v-model="enableServiceWorker">{{ $t('enable-serviceworker') }}<span slot="desc">{{ $t('serviceworker-info') }}</span></ui-switch>
|
<ui-switch v-model="enableServiceWorker">{{ $t('enable-serviceworker') }}<template #desc>{{ $t('serviceworker-info') }}</template></ui-switch>
|
||||||
<ui-info>{{ $t('vapid-info') }}<br><code>npm i web-push -g<br>web-push generate-vapid-keys</code></ui-info>
|
<ui-info>{{ $t('vapid-info') }}<br><code>npm i web-push -g<br>web-push generate-vapid-keys</code></ui-info>
|
||||||
<ui-horizon-group inputs class="fit-bottom">
|
<ui-horizon-group inputs class="fit-bottom">
|
||||||
<ui-input v-model="swPublicKey" :disabled="!enableServiceWorker"><i slot="icon"><fa icon="key"/></i>{{ $t('vapid-publickey') }}</ui-input>
|
<ui-input v-model="swPublicKey" :disabled="!enableServiceWorker"><template #icon><fa icon="key"/></template>{{ $t('vapid-publickey') }}</ui-input>
|
||||||
<ui-input v-model="swPrivateKey" :disabled="!enableServiceWorker"><i slot="icon"><fa icon="key"/></i>{{ $t('vapid-privatekey') }}</ui-input>
|
<ui-input v-model="swPrivateKey" :disabled="!enableServiceWorker"><template #icon><fa icon="key"/></template>{{ $t('vapid-privatekey') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
@@ -76,8 +77,8 @@
|
|||||||
<section>
|
<section>
|
||||||
<header><fa :icon="faUserPlus"/> {{ $t('user-recommendation-config') }}</header>
|
<header><fa :icon="faUserPlus"/> {{ $t('user-recommendation-config') }}</header>
|
||||||
<ui-switch v-model="enableExternalUserRecommendation">{{ $t('enable-external-user-recommendation') }}</ui-switch>
|
<ui-switch v-model="enableExternalUserRecommendation">{{ $t('enable-external-user-recommendation') }}</ui-switch>
|
||||||
<ui-input v-model="externalUserRecommendationEngine" :disabled="!enableExternalUserRecommendation">{{ $t('external-user-recommendation-engine') }}<span slot="desc">{{ $t('external-user-recommendation-engine-desc') }}</span></ui-input>
|
<ui-input v-model="externalUserRecommendationEngine" :disabled="!enableExternalUserRecommendation">{{ $t('external-user-recommendation-engine') }}<template #desc>{{ $t('external-user-recommendation-engine-desc') }}</template></ui-input>
|
||||||
<ui-input v-model="externalUserRecommendationTimeout" type="number" :disabled="!enableExternalUserRecommendation">{{ $t('external-user-recommendation-timeout') }}<span slot="suffix">ms</span><span slot="desc">{{ $t('external-user-recommendation-timeout-desc') }}</span></ui-input>
|
<ui-input v-model="externalUserRecommendationTimeout" type="number" :disabled="!enableExternalUserRecommendation">{{ $t('external-user-recommendation-timeout') }}<template #suffix>ms</template><template #desc>{{ $t('external-user-recommendation-timeout-desc') }}</template></ui-input>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
||||||
@@ -85,7 +86,7 @@
|
|||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title">{{ $t('invite') }}</div>
|
<template #title>{{ $t('invite') }}</template>
|
||||||
<section>
|
<section>
|
||||||
<ui-button @click="invite">{{ $t('invite') }}</ui-button>
|
<ui-button @click="invite">{{ $t('invite') }}</ui-button>
|
||||||
<p v-if="inviteCode">Code: <code>{{ inviteCode }}</code></p>
|
<p v-if="inviteCode">Code: <code>{{ inviteCode }}</code></p>
|
||||||
@@ -93,12 +94,12 @@
|
|||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="['fab', 'twitter']"/> {{ $t('twitter-integration-config') }}</div>
|
<template #title><fa :icon="['fab', 'twitter']"/> {{ $t('twitter-integration-config') }}</template>
|
||||||
<section>
|
<section>
|
||||||
<ui-switch v-model="enableTwitterIntegration">{{ $t('enable-twitter-integration') }}</ui-switch>
|
<ui-switch v-model="enableTwitterIntegration">{{ $t('enable-twitter-integration') }}</ui-switch>
|
||||||
<ui-horizon-group>
|
<ui-horizon-group>
|
||||||
<ui-input v-model="twitterConsumerKey" :disabled="!enableTwitterIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('twitter-integration-consumer-key') }}</ui-input>
|
<ui-input v-model="twitterConsumerKey" :disabled="!enableTwitterIntegration"><template #icon><fa icon="key"/></template>{{ $t('twitter-integration-consumer-key') }}</ui-input>
|
||||||
<ui-input v-model="twitterConsumerSecret" :disabled="!enableTwitterIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('twitter-integration-consumer-secret') }}</ui-input>
|
<ui-input v-model="twitterConsumerSecret" :disabled="!enableTwitterIntegration"><template #icon><fa icon="key"/></template>{{ $t('twitter-integration-consumer-secret') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-info>{{ $t('twitter-integration-info', { url: `${url}/api/tw/cb` }) }}</ui-info>
|
<ui-info>{{ $t('twitter-integration-info', { url: `${url}/api/tw/cb` }) }}</ui-info>
|
||||||
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
||||||
@@ -106,12 +107,12 @@
|
|||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="['fab', 'github']"/> {{ $t('github-integration-config') }}</div>
|
<template #title><fa :icon="['fab', 'github']"/> {{ $t('github-integration-config') }}</template>
|
||||||
<section>
|
<section>
|
||||||
<ui-switch v-model="enableGithubIntegration">{{ $t('enable-github-integration') }}</ui-switch>
|
<ui-switch v-model="enableGithubIntegration">{{ $t('enable-github-integration') }}</ui-switch>
|
||||||
<ui-horizon-group>
|
<ui-horizon-group>
|
||||||
<ui-input v-model="githubClientId" :disabled="!enableGithubIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('github-integration-client-id') }}</ui-input>
|
<ui-input v-model="githubClientId" :disabled="!enableGithubIntegration"><template #icon><fa icon="key"/></template>{{ $t('github-integration-client-id') }}</ui-input>
|
||||||
<ui-input v-model="githubClientSecret" :disabled="!enableGithubIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('github-integration-client-secret') }}</ui-input>
|
<ui-input v-model="githubClientSecret" :disabled="!enableGithubIntegration"><template #icon><fa icon="key"/></template>{{ $t('github-integration-client-secret') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-info>{{ $t('github-integration-info', { url: `${url}/api/gh/cb` }) }}</ui-info>
|
<ui-info>{{ $t('github-integration-info', { url: `${url}/api/gh/cb` }) }}</ui-info>
|
||||||
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
||||||
@@ -119,12 +120,12 @@
|
|||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="['fab', 'discord']"/> {{ $t('discord-integration-config') }}</div>
|
<template #title><fa :icon="['fab', 'discord']"/> {{ $t('discord-integration-config') }}</template>
|
||||||
<section>
|
<section>
|
||||||
<ui-switch v-model="enableDiscordIntegration">{{ $t('enable-discord-integration') }}</ui-switch>
|
<ui-switch v-model="enableDiscordIntegration">{{ $t('enable-discord-integration') }}</ui-switch>
|
||||||
<ui-horizon-group>
|
<ui-horizon-group>
|
||||||
<ui-input v-model="discordClientId" :disabled="!enableDiscordIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('discord-integration-client-id') }}</ui-input>
|
<ui-input v-model="discordClientId" :disabled="!enableDiscordIntegration"><template #icon><fa icon="key"/></template>{{ $t('discord-integration-client-id') }}</ui-input>
|
||||||
<ui-input v-model="discordClientSecret" :disabled="!enableDiscordIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('discord-integration-client-secret') }}</ui-input>
|
<ui-input v-model="discordClientSecret" :disabled="!enableDiscordIntegration"><template #icon><fa icon="key"/></template>{{ $t('discord-integration-client-secret') }}</ui-input>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-info>{{ $t('discord-integration-info', { url: `${url}/api/dc/cb` }) }}</ui-info>
|
<ui-info>{{ $t('discord-integration-info', { url: `${url}/api/dc/cb` }) }}</ui-info>
|
||||||
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
|
||||||
@@ -188,6 +189,7 @@ export default Vue.extend({
|
|||||||
smtpPort: null,
|
smtpPort: null,
|
||||||
smtpUser: null,
|
smtpUser: null,
|
||||||
smtpPass: null,
|
smtpPass: null,
|
||||||
|
smtpAuth: false,
|
||||||
enableServiceWorker: false,
|
enableServiceWorker: false,
|
||||||
swPublicKey: null,
|
swPublicKey: null,
|
||||||
swPrivateKey: null,
|
swPrivateKey: null,
|
||||||
@@ -236,6 +238,7 @@ export default Vue.extend({
|
|||||||
this.smtpPort = meta.smtpPort;
|
this.smtpPort = meta.smtpPort;
|
||||||
this.smtpUser = meta.smtpUser;
|
this.smtpUser = meta.smtpUser;
|
||||||
this.smtpPass = meta.smtpPass;
|
this.smtpPass = meta.smtpPass;
|
||||||
|
this.smtpAuth = meta.smtpUser != null && meta.smtpUser !== '';
|
||||||
this.enableServiceWorker = meta.enableServiceWorker;
|
this.enableServiceWorker = meta.enableServiceWorker;
|
||||||
this.swPublicKey = meta.swPublickey;
|
this.swPublicKey = meta.swPublickey;
|
||||||
this.swPrivateKey = meta.swPrivateKey;
|
this.swPrivateKey = meta.swPrivateKey;
|
||||||
@@ -293,8 +296,8 @@ export default Vue.extend({
|
|||||||
smtpSecure: this.smtpSecure,
|
smtpSecure: this.smtpSecure,
|
||||||
smtpHost: this.smtpHost,
|
smtpHost: this.smtpHost,
|
||||||
smtpPort: parseInt(this.smtpPort, 10),
|
smtpPort: parseInt(this.smtpPort, 10),
|
||||||
smtpUser: this.smtpUser,
|
smtpUser: this.smtpAuth ? this.smtpUser : '',
|
||||||
smtpPass: this.smtpPass,
|
smtpPass: this.smtpAuth ? this.smtpPass : '',
|
||||||
enableServiceWorker: this.enableServiceWorker,
|
enableServiceWorker: this.enableServiceWorker,
|
||||||
swPublicKey: this.swPublicKey,
|
swPublicKey: this.swPublicKey,
|
||||||
swPrivateKey: this.swPrivateKey
|
swPrivateKey: this.swPrivateKey
|
||||||
|
|||||||
@@ -1,13 +1,15 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa icon="plus"/> {{ $t('add-moderator.title') }}</div>
|
<template #title><fa icon="plus"/> {{ $t('add-moderator.title') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-input v-model="username" type="text">
|
<ui-input v-model="username" type="text">
|
||||||
<span slot="prefix">@</span>
|
<template #prefix>@</template>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
|
<ui-horizon-group>
|
||||||
<ui-button @click="add" :disabled="changing">{{ $t('add-moderator.add') }}</ui-button>
|
<ui-button @click="add" :disabled="changing">{{ $t('add-moderator.add') }}</ui-button>
|
||||||
<ui-button @click="remove" :disabled="changing">{{ $t('add-moderator.remove') }}</ui-button>
|
<ui-button @click="remove" :disabled="changing">{{ $t('add-moderator.remove') }}</ui-button>
|
||||||
|
</ui-horizon-group>
|
||||||
</section>
|
</section>
|
||||||
</ui-card>
|
</ui-card>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
43
src/client/app/admin/views/queue.vue
Normal file
43
src/client/app/admin/views/queue.vue
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<ui-card>
|
||||||
|
<template #title>{{ $t('operation') }}</template>
|
||||||
|
<section>
|
||||||
|
<ui-button @click="removeAllJobs">{{ $t('remove-all-jobs') }}</ui-button>
|
||||||
|
</section>
|
||||||
|
</ui-card>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
import i18n from '../../i18n';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
i18n: i18n('admin/views/queue.vue'),
|
||||||
|
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
async removeAllJobs() {
|
||||||
|
const process = async () => {
|
||||||
|
await this.$root.api('admin/queue/clear');
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'success',
|
||||||
|
splash: true
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
await process().catch(e => {
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'error',
|
||||||
|
text: e.toString()
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
85
src/client/app/admin/views/users.user.vue
Normal file
85
src/client/app/admin/views/users.user.vue
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
<template>
|
||||||
|
<div class="kofvwchc">
|
||||||
|
<div>
|
||||||
|
<a :href="user | userPage(null, true)">
|
||||||
|
<mk-avatar class="avatar" :user="user" :disable-link="true"/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<header>
|
||||||
|
<b><mk-user-name :user="user"/></b>
|
||||||
|
<span class="username">@{{ user | acct }}</span>
|
||||||
|
<span class="is-admin" v-if="user.isAdmin">admin</span>
|
||||||
|
<span class="is-moderator" v-if="user.isModerator">moderator</span>
|
||||||
|
<span class="is-verified" v-if="user.isVerified" :title="$t('@.verified-user')"><fa icon="star"/></span>
|
||||||
|
<span class="is-silenced" v-if="user.isSilenced" :title="$t('@.silenced-user')"><fa :icon="faMicrophoneSlash"/></span>
|
||||||
|
<span class="is-suspended" v-if="user.isSuspended" :title="$t('@.suspended-user')"><fa :icon="faSnowflake"/></span>
|
||||||
|
</header>
|
||||||
|
<div>
|
||||||
|
<span>{{ $t('users.updatedAt') }}: <mk-time :time="user.updatedAt" mode="detail"/></span>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<span>{{ $t('users.createdAt') }}: <mk-time :time="user.createdAt" mode="detail"/></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
import i18n from '../../i18n';
|
||||||
|
import { faMicrophoneSlash } from '@fortawesome/free-solid-svg-icons';
|
||||||
|
import { faSnowflake } from '@fortawesome/free-regular-svg-icons';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
i18n: i18n('admin/views/users.vue'),
|
||||||
|
props: ['user'],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
faSnowflake, faMicrophoneSlash
|
||||||
|
};
|
||||||
|
},
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
.kofvwchc
|
||||||
|
display flex
|
||||||
|
padding 16px 0
|
||||||
|
border-top solid 1px var(--faceDivider)
|
||||||
|
|
||||||
|
> div:first-child
|
||||||
|
> a
|
||||||
|
> .avatar
|
||||||
|
width 64px
|
||||||
|
height 64px
|
||||||
|
|
||||||
|
> div:last-child
|
||||||
|
flex 1
|
||||||
|
padding-left 16px
|
||||||
|
|
||||||
|
@media (max-width 500px)
|
||||||
|
font-size 14px
|
||||||
|
|
||||||
|
> header
|
||||||
|
> .username
|
||||||
|
margin-left 8px
|
||||||
|
opacity 0.7
|
||||||
|
|
||||||
|
> .is-admin
|
||||||
|
> .is-moderator
|
||||||
|
flex-shrink 0
|
||||||
|
align-self center
|
||||||
|
margin 0 0 0 .5em
|
||||||
|
padding 1px 6px
|
||||||
|
font-size 80%
|
||||||
|
border-radius 3px
|
||||||
|
background var(--noteHeaderAdminBg)
|
||||||
|
color var(--noteHeaderAdminFg)
|
||||||
|
|
||||||
|
> .is-verified
|
||||||
|
> .is-silenced
|
||||||
|
> .is-suspended
|
||||||
|
margin 0 0 0 .5em
|
||||||
|
color #4dabf7
|
||||||
|
</style>
|
||||||
@@ -1,75 +1,65 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="faTerminal"/> {{ $t('operation') }}</div>
|
<template #title><fa :icon="faTerminal"/> {{ $t('operation') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-input v-model="target" type="text">
|
<ui-input class="target" v-model="target" type="text" @enter="showUser">
|
||||||
<span>{{ $t('username-or-userid') }}</span>
|
<span>{{ $t('username-or-userid') }}</span>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
|
<ui-button @click="showUser"><fa :icon="faSearch"/> {{ $t('lookup') }}</ui-button>
|
||||||
|
|
||||||
|
<div class="user" v-if="user">
|
||||||
|
<x-user :user='user'/>
|
||||||
|
<div class="actions">
|
||||||
<ui-button @click="resetPassword"><fa :icon="faKey"/> {{ $t('reset-password') }}</ui-button>
|
<ui-button @click="resetPassword"><fa :icon="faKey"/> {{ $t('reset-password') }}</ui-button>
|
||||||
<ui-horizon-group>
|
<ui-horizon-group>
|
||||||
<ui-button @click="verifyUser" :disabled="verifying"><fa :icon="faCertificate"/> {{ $t('verify') }}</ui-button>
|
<ui-button @click="verifyUser" :disabled="verifying"><fa :icon="faCertificate"/> {{ $t('verify') }}</ui-button>
|
||||||
<ui-button @click="unverifyUser" :disabled="unverifying">{{ $t('unverify') }}</ui-button>
|
<ui-button @click="unverifyUser" :disabled="unverifying">{{ $t('unverify') }}</ui-button>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
|
<ui-horizon-group>
|
||||||
|
<ui-button @click="silenceUser"><fa :icon="faMicrophoneSlash"/> {{ $t('make-silence') }}</ui-button>
|
||||||
|
<ui-button @click="unsilenceUser">{{ $t('unmake-silence') }}</ui-button>
|
||||||
|
</ui-horizon-group>
|
||||||
<ui-horizon-group>
|
<ui-horizon-group>
|
||||||
<ui-button @click="suspendUser" :disabled="suspending"><fa :icon="faSnowflake"/> {{ $t('suspend') }}</ui-button>
|
<ui-button @click="suspendUser" :disabled="suspending"><fa :icon="faSnowflake"/> {{ $t('suspend') }}</ui-button>
|
||||||
<ui-button @click="unsuspendUser" :disabled="unsuspending">{{ $t('unsuspend') }}</ui-button>
|
<ui-button @click="unsuspendUser" :disabled="unsuspending">{{ $t('unsuspend') }}</ui-button>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<ui-button @click="showUser"><fa :icon="faSearch"/> {{ $t('lookup') }}</ui-button>
|
<ui-button v-if="user.host != null" @click="updateRemoteUser"><fa :icon="faSync"/> {{ $t('update-remote-user') }}</ui-button>
|
||||||
<ui-textarea v-if="user" :value="user | json5" readonly tall style="margin-top:16px;"></ui-textarea>
|
<ui-textarea v-if="user" :value="user | json5" readonly tall style="margin-top:16px;"></ui-textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</ui-card>
|
</ui-card>
|
||||||
|
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa :icon="faUsers"/> {{ $t('users.title') }}</div>
|
<template #title><fa :icon="faUsers"/> {{ $t('users.title') }}</template>
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-horizon-group inputs>
|
<ui-horizon-group inputs>
|
||||||
<ui-select v-model="sort">
|
<ui-select v-model="sort">
|
||||||
<span slot="label">{{ $t('users.sort.title') }}</span>
|
<template #label>{{ $t('users.sort.title') }}</template>
|
||||||
<option value="-createdAt">{{ $t('users.sort.createdAtAsc') }}</option>
|
<option value="-createdAt">{{ $t('users.sort.createdAtAsc') }}</option>
|
||||||
<option value="+createdAt">{{ $t('users.sort.createdAtDesc') }}</option>
|
<option value="+createdAt">{{ $t('users.sort.createdAtDesc') }}</option>
|
||||||
<option value="-updatedAt">{{ $t('users.sort.updatedAtAsc') }}</option>
|
<option value="-updatedAt">{{ $t('users.sort.updatedAtAsc') }}</option>
|
||||||
<option value="+updatedAt">{{ $t('users.sort.updatedAtDesc') }}</option>
|
<option value="+updatedAt">{{ $t('users.sort.updatedAtDesc') }}</option>
|
||||||
</ui-select>
|
</ui-select>
|
||||||
<ui-select v-model="state">
|
<ui-select v-model="state">
|
||||||
<span slot="label">{{ $t('users.state.title') }}</span>
|
<template #label>{{ $t('users.state.title') }}</template>
|
||||||
<option value="all">{{ $t('users.state.all') }}</option>
|
<option value="all">{{ $t('users.state.all') }}</option>
|
||||||
<option value="admin">{{ $t('users.state.admin') }}</option>
|
<option value="admin">{{ $t('users.state.admin') }}</option>
|
||||||
<option value="moderator">{{ $t('users.state.moderator') }}</option>
|
<option value="moderator">{{ $t('users.state.moderator') }}</option>
|
||||||
<option value="verified">{{ $t('users.state.verified') }}</option>
|
<option value="verified">{{ $t('users.state.verified') }}</option>
|
||||||
|
<option value="silenced">{{ $t('users.state.silenced') }}</option>
|
||||||
<option value="suspended">{{ $t('users.state.suspended') }}</option>
|
<option value="suspended">{{ $t('users.state.suspended') }}</option>
|
||||||
</ui-select>
|
</ui-select>
|
||||||
<ui-select v-model="origin">
|
<ui-select v-model="origin">
|
||||||
<span slot="label">{{ $t('users.origin.title') }}</span>
|
<template #label>{{ $t('users.origin.title') }}</template>
|
||||||
<option value="combined">{{ $t('users.origin.combined') }}</option>
|
<option value="combined">{{ $t('users.origin.combined') }}</option>
|
||||||
<option value="local">{{ $t('users.origin.local') }}</option>
|
<option value="local">{{ $t('users.origin.local') }}</option>
|
||||||
<option value="remote">{{ $t('users.origin.remote') }}</option>
|
<option value="remote">{{ $t('users.origin.remote') }}</option>
|
||||||
</ui-select>
|
</ui-select>
|
||||||
</ui-horizon-group>
|
</ui-horizon-group>
|
||||||
<sequential-entrance animation="entranceFromTop" delay="25">
|
<sequential-entrance animation="entranceFromTop" delay="25">
|
||||||
<div class="kofvwchc" v-for="user in users" :key="user.id">
|
<x-user v-for="user in users" :user='user' :key="user.id"/>
|
||||||
<div>
|
|
||||||
<a :href="user | userPage(null, true)">
|
|
||||||
<mk-avatar class="avatar" :user="user" :disable-link="true"/>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<header>
|
|
||||||
<b><mk-user-name :user="user"/></b>
|
|
||||||
<span class="username">@{{ user | acct }}</span>
|
|
||||||
<span class="is-admin" v-if="user.isAdmin">admin</span>
|
|
||||||
<span class="is-moderator" v-if="user.isModerator">moderator</span>
|
|
||||||
<span class="is-verified" v-if="user.isVerified" :title="$t('@.verified-user')"><fa icon="star"/></span>
|
|
||||||
<span class="is-suspended" v-if="user.isSuspended" :title="$t('@.suspended-user')"><fa :icon="faSnowflake"/></span>
|
|
||||||
</header>
|
|
||||||
<div>
|
|
||||||
<span>{{ $t('users.updatedAt') }}: <mk-time :time="user.updatedAt" mode="detail"/></span>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<span>{{ $t('users.createdAt') }}: <mk-time :time="user.createdAt" mode="detail"/></span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</sequential-entrance>
|
</sequential-entrance>
|
||||||
<ui-button v-if="existMore" @click="fetchUsers">{{ $t('@.load-more') }}</ui-button>
|
<ui-button v-if="existMore" @click="fetchUsers">{{ $t('@.load-more') }}</ui-button>
|
||||||
</section>
|
</section>
|
||||||
@@ -81,12 +71,15 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import i18n from '../../i18n';
|
import i18n from '../../i18n';
|
||||||
import parseAcct from "../../../../misc/acct/parse";
|
import parseAcct from "../../../../misc/acct/parse";
|
||||||
import { faCertificate, faUsers, faTerminal, faSearch, faKey } from '@fortawesome/free-solid-svg-icons';
|
import { faCertificate, faUsers, faTerminal, faSearch, faKey, faSync, faMicrophoneSlash } from '@fortawesome/free-solid-svg-icons';
|
||||||
import { faSnowflake } from '@fortawesome/free-regular-svg-icons';
|
import { faSnowflake } from '@fortawesome/free-regular-svg-icons';
|
||||||
|
import XUser from './users.user.vue';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
i18n: i18n('admin/views/users.vue'),
|
i18n: i18n('admin/views/users.vue'),
|
||||||
|
components: {
|
||||||
|
XUser
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
user: null,
|
user: null,
|
||||||
@@ -97,12 +90,12 @@ export default Vue.extend({
|
|||||||
unsuspending: false,
|
unsuspending: false,
|
||||||
sort: '+createdAt',
|
sort: '+createdAt',
|
||||||
state: 'all',
|
state: 'all',
|
||||||
origin: 'combined',
|
origin: 'local',
|
||||||
limit: 10,
|
limit: 10,
|
||||||
offset: 0,
|
offset: 0,
|
||||||
users: [],
|
users: [],
|
||||||
existMore: false,
|
existMore: false,
|
||||||
faTerminal, faCertificate, faUsers, faSnowflake, faSearch, faKey
|
faTerminal, faCertificate, faUsers, faSnowflake, faSearch, faKey, faSync, faMicrophoneSlash
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -131,34 +124,56 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
async fetchUser() {
|
/** テキストエリアのユーザーを解決する */
|
||||||
try {
|
fetchUser() {
|
||||||
return await this.$root.api('users/show', this.target.startsWith('@') ? parseAcct(this.target) : { userId: this.target });
|
return new Promise((res) => {
|
||||||
} catch (e) {
|
const usernamePromise = this.$root.api('users/show', parseAcct(this.target));
|
||||||
if (e == 'user not found') {
|
const idPromise = this.$root.api('users/show', { userId: this.target });
|
||||||
|
|
||||||
|
let _notFound = false;
|
||||||
|
const notFound = () => {
|
||||||
|
if (_notFound) {
|
||||||
this.$root.dialog({
|
this.$root.dialog({
|
||||||
type: 'error',
|
type: 'error',
|
||||||
text: this.$t('user-not-found')
|
text: this.$t('user-not-found')
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.$root.dialog({
|
_notFound = true;
|
||||||
type: 'error',
|
}
|
||||||
text: e.toString()
|
};
|
||||||
|
|
||||||
|
usernamePromise.then(res).catch(e => {
|
||||||
|
if (e == 'user not found') {
|
||||||
|
notFound();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
idPromise.then(res).catch(e => {
|
||||||
|
notFound();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/** テキストエリアから処理対象ユーザーを設定する */
|
||||||
async showUser() {
|
async showUser() {
|
||||||
|
this.user = null;
|
||||||
const user = await this.fetchUser();
|
const user = await this.fetchUser();
|
||||||
this.$root.api('admin/show-user', { userId: user.id }).then(info => {
|
this.$root.api('admin/show-user', { userId: user.id }).then(info => {
|
||||||
this.user = info;
|
this.user = info;
|
||||||
});
|
});
|
||||||
|
this.target = '';
|
||||||
|
},
|
||||||
|
|
||||||
|
/** 処理対象ユーザーの情報を更新する */
|
||||||
|
async refreshUser() {
|
||||||
|
this.$root.api('admin/show-user', { userId: this.user._id }).then(info => {
|
||||||
|
this.user = info;
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
async resetPassword() {
|
async resetPassword() {
|
||||||
const user = await this.fetchUser();
|
if (!await this.getConfirmed(this.$t('reset-password-confirm'))) return;
|
||||||
this.$root.api('admin/reset-password', { userId: user.id }).then(res => {
|
|
||||||
|
this.$root.api('admin/reset-password', { userId: this.user._id }).then(res => {
|
||||||
this.$root.dialog({
|
this.$root.dialog({
|
||||||
type: 'success',
|
type: 'success',
|
||||||
text: this.$t('password-updated', { password: res.password })
|
text: this.$t('password-updated', { password: res.password })
|
||||||
@@ -167,11 +182,12 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
|
|
||||||
async verifyUser() {
|
async verifyUser() {
|
||||||
|
if (!await this.getConfirmed(this.$t('verify-confirm'))) return;
|
||||||
|
|
||||||
this.verifying = true;
|
this.verifying = true;
|
||||||
|
|
||||||
const process = async () => {
|
const process = async () => {
|
||||||
const user = await this.fetchUser();
|
await this.$root.api('admin/verify-user', { userId: this.user._id });
|
||||||
await this.$root.api('admin/verify-user', { userId: user.id });
|
|
||||||
this.$root.dialog({
|
this.$root.dialog({
|
||||||
type: 'success',
|
type: 'success',
|
||||||
text: this.$t('verified')
|
text: this.$t('verified')
|
||||||
@@ -186,14 +202,17 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.verifying = false;
|
this.verifying = false;
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
},
|
},
|
||||||
|
|
||||||
async unverifyUser() {
|
async unverifyUser() {
|
||||||
|
if (!await this.getConfirmed(this.$t('unverify-confirm'))) return;
|
||||||
|
|
||||||
this.unverifying = true;
|
this.unverifying = true;
|
||||||
|
|
||||||
const process = async () => {
|
const process = async () => {
|
||||||
const user = await this.fetchUser();
|
await this.$root.api('admin/unverify-user', { userId: this.user._id });
|
||||||
await this.$root.api('admin/unverify-user', { userId: user.id });
|
|
||||||
this.$root.dialog({
|
this.$root.dialog({
|
||||||
type: 'success',
|
type: 'success',
|
||||||
text: this.$t('unverified')
|
text: this.$t('unverified')
|
||||||
@@ -208,14 +227,55 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.unverifying = false;
|
this.unverifying = false;
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
|
},
|
||||||
|
|
||||||
|
async silenceUser() {
|
||||||
|
const process = async () => {
|
||||||
|
await this.$root.api('admin/silence-user', { userId: this.user._id });
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'success',
|
||||||
|
splash: true
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
await process().catch(e => {
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'error',
|
||||||
|
text: e.toString()
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
|
},
|
||||||
|
|
||||||
|
async unsilenceUser() {
|
||||||
|
const process = async () => {
|
||||||
|
await this.$root.api('admin/unsilence-user', { userId: this.user._id });
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'success',
|
||||||
|
splash: true
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
await process().catch(e => {
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'error',
|
||||||
|
text: e.toString()
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
},
|
},
|
||||||
|
|
||||||
async suspendUser() {
|
async suspendUser() {
|
||||||
|
if (!await this.getConfirmed(this.$t('suspend-confirm'))) return;
|
||||||
|
|
||||||
this.suspending = true;
|
this.suspending = true;
|
||||||
|
|
||||||
const process = async () => {
|
const process = async () => {
|
||||||
const user = await this.fetchUser();
|
await this.$root.api('admin/suspend-user', { userId: this.user._id });
|
||||||
await this.$root.api('admin/suspend-user', { userId: user.id });
|
|
||||||
this.$root.dialog({
|
this.$root.dialog({
|
||||||
type: 'success',
|
type: 'success',
|
||||||
text: this.$t('suspended')
|
text: this.$t('suspended')
|
||||||
@@ -230,14 +290,17 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.suspending = false;
|
this.suspending = false;
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
},
|
},
|
||||||
|
|
||||||
async unsuspendUser() {
|
async unsuspendUser() {
|
||||||
|
if (!await this.getConfirmed(this.$t('unsuspend-confirm'))) return;
|
||||||
|
|
||||||
this.unsuspending = true;
|
this.unsuspending = true;
|
||||||
|
|
||||||
const process = async () => {
|
const process = async () => {
|
||||||
const user = await this.fetchUser();
|
await this.$root.api('admin/unsuspend-user', { userId: this.user._id });
|
||||||
await this.$root.api('admin/unsuspend-user', { userId: user.id });
|
|
||||||
this.$root.dialog({
|
this.$root.dialog({
|
||||||
type: 'success',
|
type: 'success',
|
||||||
text: this.$t('unsuspended')
|
text: this.$t('unsuspended')
|
||||||
@@ -252,6 +315,30 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.unsuspending = false;
|
this.unsuspending = false;
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
|
},
|
||||||
|
|
||||||
|
async updateRemoteUser() {
|
||||||
|
this.$root.api('admin/update-remote-user', { userId: this.user._id }).then(res => {
|
||||||
|
this.$root.dialog({
|
||||||
|
type: 'success',
|
||||||
|
text: this.$t('remote-user-updated')
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.refreshUser();
|
||||||
|
},
|
||||||
|
|
||||||
|
async getConfirmed(text: string): Promise<Boolean> {
|
||||||
|
const confirm = await this.$root.dialog({
|
||||||
|
type: 'warning',
|
||||||
|
showCancelButton: true,
|
||||||
|
title: 'confirm',
|
||||||
|
text,
|
||||||
|
});
|
||||||
|
|
||||||
|
return !confirm.canceled;
|
||||||
},
|
},
|
||||||
|
|
||||||
fetchUsers() {
|
fetchUsers() {
|
||||||
@@ -277,42 +364,12 @@ export default Vue.extend({
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="stylus" scoped>
|
<style lang="stylus" scoped>
|
||||||
.kofvwchc
|
.target
|
||||||
display flex
|
margin-bottom 16px !important
|
||||||
padding 16px 0
|
|
||||||
border-top solid 1px var(--faceDivider)
|
|
||||||
|
|
||||||
> div:first-child
|
.user
|
||||||
> a
|
margin-top 32px
|
||||||
> .avatar
|
|
||||||
width 64px
|
|
||||||
height 64px
|
|
||||||
|
|
||||||
> div:last-child
|
> .actions
|
||||||
flex 1
|
margin-left 80px
|
||||||
padding-left 16px
|
|
||||||
|
|
||||||
@media (max-width 500px)
|
|
||||||
font-size 14px
|
|
||||||
|
|
||||||
> header
|
|
||||||
> .username
|
|
||||||
margin-left 8px
|
|
||||||
opacity 0.7
|
|
||||||
|
|
||||||
> .is-admin
|
|
||||||
> .is-moderator
|
|
||||||
flex-shrink 0
|
|
||||||
align-self center
|
|
||||||
margin 0 0 0 .5em
|
|
||||||
padding 1px 6px
|
|
||||||
font-size 80%
|
|
||||||
border-radius 3px
|
|
||||||
background var(--noteHeaderAdminBg)
|
|
||||||
color var(--noteHeaderAdminFg)
|
|
||||||
|
|
||||||
> .is-verified
|
|
||||||
> .is-suspended
|
|
||||||
margin 0 0 0 .5em
|
|
||||||
color #4dabf7
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -26,3 +26,16 @@
|
|||||||
transform: translateY(0);
|
transform: translateY(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@keyframes spin {
|
||||||
|
0% { transform: rotate(0deg); }
|
||||||
|
100% { transform: rotate(360deg); }
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes jump {
|
||||||
|
0% { transform: translateY(0); }
|
||||||
|
25% { transform: translateY(-16px); }
|
||||||
|
50% { transform: translateY(0); }
|
||||||
|
75% { transform: translateY(-8px); }
|
||||||
|
100% { transform: translateY(0); }
|
||||||
|
}
|
||||||
|
|||||||
@@ -72,47 +72,6 @@ body
|
|||||||
code
|
code
|
||||||
font-family Consolas, 'Courier New', Courier, Monaco, monospace
|
font-family Consolas, 'Courier New', Courier, Monaco, monospace
|
||||||
|
|
||||||
.comment
|
|
||||||
opacity 0.5
|
|
||||||
|
|
||||||
.string
|
|
||||||
color #e96900
|
|
||||||
|
|
||||||
.regexp
|
|
||||||
color #e9003f
|
|
||||||
|
|
||||||
.keyword
|
|
||||||
color #2973b7
|
|
||||||
|
|
||||||
&.true
|
|
||||||
&.false
|
|
||||||
&.null
|
|
||||||
&.nil
|
|
||||||
&.undefined
|
|
||||||
color #ae81ff
|
|
||||||
|
|
||||||
.symbol
|
|
||||||
color #42b983
|
|
||||||
|
|
||||||
.number
|
|
||||||
.nan
|
|
||||||
color #ae81ff
|
|
||||||
|
|
||||||
.var:not(.keyword)
|
|
||||||
font-weight bold
|
|
||||||
font-style italic
|
|
||||||
//text-decoration underline
|
|
||||||
|
|
||||||
.method
|
|
||||||
font-style italic
|
|
||||||
color #8964c1
|
|
||||||
|
|
||||||
.property
|
|
||||||
color #a71d5d
|
|
||||||
|
|
||||||
.label
|
|
||||||
color #e9003f
|
|
||||||
|
|
||||||
pre
|
pre
|
||||||
display block
|
display block
|
||||||
|
|
||||||
|
|||||||
@@ -62,23 +62,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (settings && settings.device.lang &&
|
if (settings && settings.device.lang &&
|
||||||
langs.includes(settings.device.lang)) {
|
langs.includes(settings.device.lang))
|
||||||
|
{
|
||||||
lang = settings.device.lang;
|
lang = settings.device.lang;
|
||||||
}
|
}
|
||||||
|
|
||||||
window.lang = lang;
|
localStorage.setItem('lang', lang);
|
||||||
//#endregion
|
//#endregion
|
||||||
|
|
||||||
let locale = localStorage.getItem('locale');
|
//#region Fetch locale data
|
||||||
|
const cachedLocale = localStorage.getItem('locale');
|
||||||
const localeKey = localStorage.getItem('localeKey');
|
const localeKey = localStorage.getItem('localeKey');
|
||||||
|
|
||||||
if (locale == null || localeKey != `${ver}.${lang}`) {
|
if (cachedLocale == null || localeKey != `${ver}.${lang}`) {
|
||||||
const locale = await fetch(`/assets/locales/${lang}.json?ver=${ver}`)
|
const locale = await fetch(`/assets/locales/${lang}.json?ver=${ver}`)
|
||||||
.then(response => response.json());
|
.then(response => response.json());
|
||||||
|
|
||||||
localStorage.setItem('locale', JSON.stringify(locale));
|
localStorage.setItem('locale', JSON.stringify(locale));
|
||||||
localStorage.setItem('localeKey', `${ver}.${lang}`);
|
localStorage.setItem('localeKey', `${ver}.${lang}`);
|
||||||
}
|
}
|
||||||
|
//#endregion
|
||||||
|
|
||||||
// Detect the user agent
|
// Detect the user agent
|
||||||
const ua = navigator.userAgent.toLowerCase();
|
const ua = navigator.userAgent.toLowerCase();
|
||||||
@@ -105,16 +108,11 @@
|
|||||||
app = isMobile ? 'mobile' : 'desktop';
|
app = isMobile ? 'mobile' : 'desktop';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get salt query
|
|
||||||
const salt = localStorage.getItem('salt')
|
|
||||||
? `?salt=${localStorage.getItem('salt')}`
|
|
||||||
: '';
|
|
||||||
|
|
||||||
// Load an app script
|
// Load an app script
|
||||||
// Note: 'async' make it possible to load the script asyncly.
|
// Note: 'async' make it possible to load the script asyncly.
|
||||||
// 'defer' make it possible to run the script when the dom loaded.
|
// 'defer' make it possible to run the script when the dom loaded.
|
||||||
const script = document.createElement('script');
|
const script = document.createElement('script');
|
||||||
script.setAttribute('src', `/assets/${app}.${ver}.js${salt}`);
|
script.setAttribute('src', `/assets/${app}.${ver}.js`);
|
||||||
script.setAttribute('async', 'true');
|
script.setAttribute('async', 'true');
|
||||||
script.setAttribute('defer', 'true');
|
script.setAttribute('defer', 'true');
|
||||||
head.appendChild(script);
|
head.appendChild(script);
|
||||||
@@ -135,8 +133,8 @@
|
|||||||
const meta = await res.json();
|
const meta = await res.json();
|
||||||
|
|
||||||
// Compare versions
|
// Compare versions
|
||||||
if (meta.clientVersion != ver) {
|
if (meta.version != ver) {
|
||||||
localStorage.setItem('v', meta.clientVersion);
|
localStorage.setItem('v', meta.version);
|
||||||
|
|
||||||
alert(
|
alert(
|
||||||
'Misskeyの新しいバージョンがあります。ページを再度読み込みします。' +
|
'Misskeyの新しいバージョンがあります。ページを再度読み込みします。' +
|
||||||
@@ -152,9 +150,6 @@
|
|||||||
|
|
||||||
localStorage.removeItem('locale');
|
localStorage.removeItem('locale');
|
||||||
|
|
||||||
// Random
|
|
||||||
localStorage.setItem('salt', Math.random().toString().substr(2, 8));
|
|
||||||
|
|
||||||
// Clear cache (service worker)
|
// Clear cache (service worker)
|
||||||
try {
|
try {
|
||||||
navigator.serviceWorker.controller.postMessage('clear');
|
navigator.serviceWorker.controller.postMessage('clear');
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { clientVersion as current } from '../../config';
|
import { version as current } from '../../config';
|
||||||
|
|
||||||
export default async function($root: any, force = false, silent = false) {
|
export default async function($root: any, force = false, silent = false) {
|
||||||
const meta = await $root.getMeta(force);
|
const meta = await $root.getMeta(force);
|
||||||
const newer = meta.clientVersion;
|
const newer = meta.version;
|
||||||
|
|
||||||
if (newer != current) {
|
if (newer != current) {
|
||||||
localStorage.setItem('should-refresh', 'true');
|
localStorage.setItem('should-refresh', 'true');
|
||||||
|
|||||||
@@ -2,12 +2,32 @@
|
|||||||
* Clipboardに値をコピー(TODO: 文字列以外も対応)
|
* Clipboardに値をコピー(TODO: 文字列以外も対応)
|
||||||
*/
|
*/
|
||||||
export default val => {
|
export default val => {
|
||||||
const form = document.createElement('textarea');
|
// 空div 生成
|
||||||
form.textContent = val;
|
const tmp = document.createElement('div');
|
||||||
document.body.appendChild(form);
|
// 選択用のタグ生成
|
||||||
form.select();
|
const pre = document.createElement('pre');
|
||||||
|
|
||||||
|
// 親要素のCSSで user-select: none だとコピーできないので書き換える
|
||||||
|
pre.style.webkitUserSelect = 'auto';
|
||||||
|
pre.style.userSelect = 'auto';
|
||||||
|
|
||||||
|
tmp.appendChild(pre).textContent = val;
|
||||||
|
|
||||||
|
// 要素を画面外へ
|
||||||
|
const s = tmp.style;
|
||||||
|
s.position = 'fixed';
|
||||||
|
s.right = '200%';
|
||||||
|
|
||||||
|
// body に追加
|
||||||
|
document.body.appendChild(tmp);
|
||||||
|
// 要素を選択
|
||||||
|
document.getSelection().selectAllChildren(tmp);
|
||||||
|
|
||||||
|
// クリップボードにコピー
|
||||||
const result = document.execCommand('copy');
|
const result = document.execCommand('copy');
|
||||||
document.body.removeChild(form);
|
|
||||||
|
// 要素削除
|
||||||
|
document.body.removeChild(tmp);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// スクリプトサイズがデカい
|
// スクリプトサイズがデカい
|
||||||
//const crypto = require('crypto');
|
//import * as crypto from 'crypto';
|
||||||
|
|
||||||
export default (data: ArrayBuffer) => {
|
export default (data: ArrayBuffer) => {
|
||||||
//const buf = new Buffer(data);
|
//const buf = new Buffer(data);
|
||||||
|
|||||||
11
src/client/app/common/scripts/get-static-image-url.ts
Normal file
11
src/client/app/common/scripts/get-static-image-url.ts
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
import { url as instanceUrl } from '../../config';
|
||||||
|
import * as url from '../../../../prelude/url';
|
||||||
|
|
||||||
|
export function getStaticImageUrl(baseUrl: string): string {
|
||||||
|
const u = new URL(baseUrl);
|
||||||
|
const dummy = `${u.host}${u.pathname}`; // 拡張子がないとキャッシュしてくれないCDNがあるので
|
||||||
|
return `${instanceUrl}/proxy/${dummy}?${url.query({
|
||||||
|
url: u.href,
|
||||||
|
static: '1'
|
||||||
|
})}`;
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
const NProgress = require('nprogress');
|
import * as NProgress from 'nprogress';
|
||||||
NProgress.configure({
|
NProgress.configure({
|
||||||
trickleSpeed: 500,
|
trickleSpeed: 500,
|
||||||
showSpinner: false
|
showSpinner: false
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import parse from '../../../../mfm/parse';
|
import { parse } from '../../../../mfm/parse';
|
||||||
import { sum, unique } from '../../../../prelude/array';
|
import { sum, unique } from '../../../../prelude/array';
|
||||||
import shouldMuteNote from './should-mute-note';
|
import shouldMuteNote from './should-mute-note';
|
||||||
import MkNoteMenu from '../views/components/note-menu.vue';
|
import MkNoteMenu from '../views/components/note-menu.vue';
|
||||||
|
|||||||
@@ -133,6 +133,7 @@ export default prop => ({
|
|||||||
|
|
||||||
case 'deleted': {
|
case 'deleted': {
|
||||||
Vue.set(this.$_ns_target, 'deletedAt', body.deletedAt);
|
Vue.set(this.$_ns_target, 'deletedAt', body.deletedAt);
|
||||||
|
Vue.set(this.$_ns_target, 'renote', null);
|
||||||
this.$_ns_target.text = null;
|
this.$_ns_target.text = null;
|
||||||
this.$_ns_target.tags = [];
|
this.$_ns_target.tags = [];
|
||||||
this.$_ns_target.fileIds = [];
|
this.$_ns_target.fileIds = [];
|
||||||
|
|||||||
@@ -4,7 +4,8 @@ export default function(me, settings, note) {
|
|||||||
|
|
||||||
const includesMutedWords = (text: string) =>
|
const includesMutedWords = (text: string) =>
|
||||||
text
|
text
|
||||||
? settings.mutedWords.some(q => q.length > 0 && !q.some(word => !text.includes(word)))
|
? settings.mutedWords.some(q => q.length > 0 && !q.some(word =>
|
||||||
|
word.startsWith('/') && word.endsWith('/') ? !(new RegExp(word.substr(1, word.length - 2)).test(text)) : !text.includes(word)))
|
||||||
: false;
|
: false;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
18
src/client/app/common/size.ts
Normal file
18
src/client/app/common/size.ts
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
export default {
|
||||||
|
install(Vue) {
|
||||||
|
Vue.directive('size', {
|
||||||
|
inserted(el, binding) {
|
||||||
|
const query = binding.value;
|
||||||
|
const width = el.clientWidth;
|
||||||
|
for (const q of query) {
|
||||||
|
if (q.lt && (width <= q.lt)) {
|
||||||
|
el.classList.add(q.class);
|
||||||
|
}
|
||||||
|
if (q.gt && (width >= q.gt)) {
|
||||||
|
el.classList.add(q.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -1,15 +1,25 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-activity">
|
<div>
|
||||||
<div ref="chart"></div>
|
<div ref="chart"></div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import * as ApexCharts from 'apexcharts';
|
import ApexCharts from 'apexcharts';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: ['user'],
|
props: {
|
||||||
|
user: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
limit: {
|
||||||
|
type: Number,
|
||||||
|
required: false,
|
||||||
|
default: 21
|
||||||
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
fetching: true,
|
fetching: true,
|
||||||
@@ -21,7 +31,7 @@ export default Vue.extend({
|
|||||||
this.$root.api('charts/user/notes', {
|
this.$root.api('charts/user/notes', {
|
||||||
userId: this.user.id,
|
userId: this.user.id,
|
||||||
span: 'day',
|
span: 'day',
|
||||||
limit: 21
|
limit: this.limit
|
||||||
}).then(stats => {
|
}).then(stats => {
|
||||||
const normal = [];
|
const normal = [];
|
||||||
const reply = [];
|
const reply = [];
|
||||||
@@ -32,7 +42,7 @@ export default Vue.extend({
|
|||||||
const m = now.getMonth();
|
const m = now.getMonth();
|
||||||
const d = now.getDate();
|
const d = now.getDate();
|
||||||
|
|
||||||
for (let i = 0; i < 21; i++) {
|
for (let i = 0; i < this.limit; i++) {
|
||||||
const x = new Date(y, m, d - i);
|
const x = new Date(y, m, d - i);
|
||||||
normal.push([
|
normal.push([
|
||||||
x,
|
x,
|
||||||
@@ -99,10 +109,3 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="stylus" scoped>
|
|
||||||
.mk-activity
|
|
||||||
max-width 600px
|
|
||||||
margin 0 auto
|
|
||||||
|
|
||||||
</style>
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa icon="key"/> API</div>
|
<template #title><fa icon="key"/> API</template>
|
||||||
|
|
||||||
<section class="fit-top">
|
<section class="fit-top">
|
||||||
<ui-input :value="$store.state.i.token" readonly>
|
<ui-input :value="$store.state.i.token" readonly>
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
</ui-input>
|
</ui-input>
|
||||||
<ui-textarea v-model="body">
|
<ui-textarea v-model="body">
|
||||||
<span>{{ $t('console.parameter') }} (JSON or JSON5)</span>
|
<span>{{ $t('console.parameter') }} (JSON or JSON5)</span>
|
||||||
<span slot="desc">{{ $t('console.credential-info') }}</span>
|
<template #desc>{{ $t('console.credential-info') }}</template>
|
||||||
</ui-textarea>
|
</ui-textarea>
|
||||||
<ui-button @click="send" :disabled="sending">
|
<ui-button @click="send" :disabled="sending">
|
||||||
<template v-if="sending">{{ $t('console.sending') }}</template>
|
<template v-if="sending">{{ $t('console.sending') }}</template>
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
|
import { getStaticImageUrl } from '../../../common/scripts/get-static-image-url';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: {
|
props: {
|
||||||
@@ -47,6 +48,11 @@ export default Vue.extend({
|
|||||||
borderRadius: this.$store.state.settings.circleIcons ? '100%' : null
|
borderRadius: this.$store.state.settings.circleIcons ? '100%' : null
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
url(): string {
|
||||||
|
return this.$store.state.device.disableShowingAnimatedImages
|
||||||
|
? getStaticImageUrl(this.user.avatarUrl)
|
||||||
|
: this.user.avatarUrl;
|
||||||
|
},
|
||||||
icon(): any {
|
icon(): any {
|
||||||
return {
|
return {
|
||||||
backgroundColor: this.lightmode
|
backgroundColor: this.lightmode
|
||||||
@@ -54,7 +60,7 @@ export default Vue.extend({
|
|||||||
: this.user.avatarColor && this.user.avatarColor.length == 3
|
: this.user.avatarColor && this.user.avatarColor.length == 3
|
||||||
? `rgb(${this.user.avatarColor.join(',')})`
|
? `rgb(${this.user.avatarColor.join(',')})`
|
||||||
: null,
|
: null,
|
||||||
backgroundImage: this.lightmode ? null : `url(${this.user.avatarUrl})`,
|
backgroundImage: this.lightmode ? null : `url(${this.url})`,
|
||||||
borderRadius: this.$store.state.settings.circleIcons ? '100%' : null
|
borderRadius: this.$store.state.settings.circleIcons ? '100%' : null
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
30
src/client/app/common/views/components/code-core.vue
Normal file
30
src/client/app/common/views/components/code-core.vue
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<template>
|
||||||
|
<prism :inline="inline" :language="lang || 'js'">{{ code }}</prism>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
import 'prismjs';
|
||||||
|
import 'prismjs/themes/prism-okaidia.css';
|
||||||
|
import Prism from 'vue-prism-component';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
components: {
|
||||||
|
Prism
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
code: {
|
||||||
|
type: String,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
lang: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
inline: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
28
src/client/app/common/views/components/code.vue
Normal file
28
src/client/app/common/views/components/code.vue
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
<template>
|
||||||
|
<x-code :code="code" :lang="lang" :inline="inline"/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
components: {
|
||||||
|
XCode: () => import('./code-core.vue').then(m => m.default)
|
||||||
|
},
|
||||||
|
|
||||||
|
props: {
|
||||||
|
code: {
|
||||||
|
type: String,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
lang: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
inline: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
<header v-if="title" v-html="title"></header>
|
<header v-if="title" v-html="title"></header>
|
||||||
<div class="body" v-if="text" v-html="text"></div>
|
<div class="body" v-if="text" v-html="text"></div>
|
||||||
<ui-input v-if="input" v-model="inputValue" autofocus :type="input.type || 'text'" :placeholder="input.placeholder" @keydown="onInputKeydown"></ui-input>
|
<ui-input v-if="input" v-model="inputValue" autofocus :type="input.type || 'text'" :placeholder="input.placeholder" @keydown="onInputKeydown"></ui-input>
|
||||||
<ui-input v-if="user" v-model="userInputValue" autofocus @keydown="onInputKeydown"><span slot="prefix">@</span></ui-input>
|
<ui-input v-if="user" v-model="userInputValue" autofocus @keydown="onInputKeydown"><template #prefix>@</template></ui-input>
|
||||||
<ui-select v-if="select" v-model="selectedValue">
|
<ui-select v-if="select" v-model="selectedValue">
|
||||||
<option v-for="item in select.items" :value="item.value">{{ item.text }}</option>
|
<option v-for="item in select.items" :value="item.value">{{ item.text }}</option>
|
||||||
</ui-select>
|
</ui-select>
|
||||||
@@ -128,15 +128,16 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
|
|
||||||
close() {
|
close() {
|
||||||
|
this.$el.style.pointerEvents = 'none';
|
||||||
(this.$refs.bg as any).style.pointerEvents = 'none';
|
(this.$refs.bg as any).style.pointerEvents = 'none';
|
||||||
|
(this.$refs.main as any).style.pointerEvents = 'none';
|
||||||
|
|
||||||
anime({
|
anime({
|
||||||
targets: this.$refs.bg,
|
targets: this.$refs.bg,
|
||||||
opacity: 0,
|
opacity: 0,
|
||||||
duration: 300,
|
duration: 300,
|
||||||
easing: 'linear'
|
easing: 'linear'
|
||||||
});
|
});
|
||||||
|
|
||||||
(this.$refs.main as any).style.pointerEvents = 'none';
|
|
||||||
anime({
|
anime({
|
||||||
targets: this.$refs.main,
|
targets: this.$refs.main,
|
||||||
opacity: 0,
|
opacity: 0,
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<ui-card>
|
<ui-card>
|
||||||
<div slot="title"><fa icon="cloud"/> {{ $t('@.drive') }}</div>
|
<template #title><fa icon="cloud"/> {{ $t('@.drive') }}</template>
|
||||||
|
|
||||||
<section v-if="!fetching" class="juakhbxthdewydyreaphkepoxgxvfogn">
|
<section v-if="!fetching" class="juakhbxthdewydyreaphkepoxgxvfogn">
|
||||||
<div class="meter"><div :style="meterStyle"></div></div>
|
<div class="meter"><div :style="meterStyle"></div></div>
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import i18n from '../../../i18n';
|
import i18n from '../../../i18n';
|
||||||
import * as tinycolor from 'tinycolor2';
|
import * as tinycolor from 'tinycolor2';
|
||||||
import * as ApexCharts from 'apexcharts';
|
import ApexCharts from 'apexcharts';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
i18n: i18n('common/views/components/drive-settings.vue'),
|
i18n: i18n('common/views/components/drive-settings.vue'),
|
||||||
|
|||||||
11
src/client/app/common/views/components/dummy.vue
Normal file
11
src/client/app/common/views/components/dummy.vue
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<slot></slot>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default Vue.extend({
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@@ -9,6 +9,7 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
// スクリプトサイズがデカい
|
// スクリプトサイズがデカい
|
||||||
//import { lib } from 'emojilib';
|
//import { lib } from 'emojilib';
|
||||||
|
import { getStaticImageUrl } from '../../../common/scripts/get-static-image-url';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: {
|
props: {
|
||||||
@@ -54,7 +55,9 @@ export default Vue.extend({
|
|||||||
const customEmoji = this.customEmojis.find(x => x.name == this.name);
|
const customEmoji = this.customEmojis.find(x => x.name == this.name);
|
||||||
if (customEmoji) {
|
if (customEmoji) {
|
||||||
this.customEmoji = customEmoji;
|
this.customEmoji = customEmoji;
|
||||||
this.url = customEmoji.url;
|
this.url = this.$store.state.device.disableShowingAnimatedImages
|
||||||
|
? getStaticImageUrl(customEmoji.url)
|
||||||
|
: customEmoji.url;
|
||||||
} else {
|
} else {
|
||||||
//const emoji = lib[this.name];
|
//const emoji = lib[this.name];
|
||||||
//if (emoji) {
|
//if (emoji) {
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<button class="wfliddvnhxvyusikowhxozkyxyenqxqr"
|
<button class="wfliddvnhxvyusikowhxozkyxyenqxqr"
|
||||||
:class="{ wait, block, mini, active: isFollowing || hasPendingFollowRequestFromYou }"
|
:class="{ wait, block, inline, mini, transparent, active: isFollowing || hasPendingFollowRequestFromYou }"
|
||||||
@click="onClick"
|
@click="onClick"
|
||||||
:disabled="wait"
|
:disabled="wait"
|
||||||
|
:inline="inline"
|
||||||
>
|
>
|
||||||
<template v-if="!wait">
|
<template v-if="!wait">
|
||||||
<fa :icon="iconAndText[0]"/> <template v-if="!mini">{{ iconAndText[1] }}</template>
|
<fa :icon="iconAndText[0]"/> <template v-if="!mini">{{ iconAndText[1] }}</template>
|
||||||
@@ -28,11 +29,21 @@ export default Vue.extend({
|
|||||||
required: false,
|
required: false,
|
||||||
default: false
|
default: false
|
||||||
},
|
},
|
||||||
|
inline: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
mini: {
|
mini: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
required: false,
|
required: false,
|
||||||
default: false
|
default: false
|
||||||
}
|
},
|
||||||
|
transparent: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: true
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
@@ -128,6 +139,12 @@ export default Vue.extend({
|
|||||||
border solid 1px var(--primary)
|
border solid 1px var(--primary)
|
||||||
border-radius 36px
|
border-radius 36px
|
||||||
|
|
||||||
|
&:not(.transparent)
|
||||||
|
background #fff
|
||||||
|
|
||||||
|
&.inline
|
||||||
|
display inline-block
|
||||||
|
|
||||||
&.mini
|
&.mini
|
||||||
padding 0
|
padding 0
|
||||||
min-width 0
|
min-width 0
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<span v-html="compiledFormula"></span>
|
<div v-if="block" v-html="compiledFormula"></div>
|
||||||
|
<span v-else v-html="compiledFormula"></span>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
@@ -11,6 +12,10 @@ export default Vue.extend({
|
|||||||
formula: {
|
formula: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true
|
required: true
|
||||||
|
},
|
||||||
|
block: {
|
||||||
|
type: Boolean,
|
||||||
|
required: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<x-formula :formula="formula"/>
|
<x-formula :formula="formula" :block="block" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
@@ -14,6 +14,10 @@ export default Vue.extend({
|
|||||||
formula: {
|
formula: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true
|
required: true
|
||||||
|
},
|
||||||
|
block: {
|
||||||
|
type: Boolean,
|
||||||
|
required: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user