Compare commits
1512 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0d1ffb581f | ||
|
|
4add44f3bd | ||
|
|
baae9f6f39 | ||
|
|
0a9958f45f | ||
|
|
7e5d25cf2c | ||
|
|
9666e6b4d3 | ||
|
|
c937cb94f9 | ||
|
|
5e54d093f5 | ||
|
|
c7f099276e | ||
|
|
ee4235ba71 | ||
|
|
71066d69fb | ||
|
|
4581376198 | ||
|
|
04ebde62bc | ||
|
|
fec47f05cf | ||
|
|
b9e2fb74ed | ||
|
|
a1d6637dd1 | ||
|
|
e6fa5a07ce | ||
|
|
eec6226c8d | ||
|
|
356fe8180e | ||
|
|
30c120596a | ||
|
|
c6e330ea8d | ||
|
|
dca55d12ac | ||
|
|
4426da6233 | ||
|
|
381fe2f436 | ||
|
|
28cd7a67de | ||
|
|
97f75cea52 | ||
|
|
5e788f0da4 | ||
|
|
1fc9d034d0 | ||
|
|
dc8f14c23a | ||
|
|
e9717da916 | ||
|
|
73c328f90b | ||
|
|
25a6f7041a | ||
|
|
ff278c8bea | ||
|
|
35dd6a5ac3 | ||
|
|
98ea238087 | ||
|
|
3830b0d831 | ||
|
|
b6de5a2268 | ||
|
|
77327c7a40 | ||
|
|
26664a8351 | ||
|
|
912964104b | ||
|
|
63653ccb01 | ||
|
|
5df54700b8 | ||
|
|
f952dde1d4 | ||
|
|
2c0aac5eed | ||
|
|
4e3a2c4bb8 | ||
|
|
17ccfcfb53 | ||
|
|
f2959ada85 | ||
|
|
e427c12ac2 | ||
|
|
874837666c | ||
|
|
c66532d18f | ||
|
|
2bc572b4cc | ||
|
|
2db01f3d5c | ||
|
|
a0a116b7bf | ||
|
|
aec7d53414 | ||
|
|
09416c9893 | ||
|
|
0e7fe670aa | ||
|
|
bd805f1d88 | ||
|
|
b984aecaf2 | ||
|
|
56efffffa3 | ||
|
|
2f92be1da0 | ||
|
|
baa52921a0 | ||
|
|
20e0c44f9a | ||
|
|
ebc83c8f60 | ||
|
|
2d48d9fd87 | ||
|
|
5eb06a3a52 | ||
|
|
9917a1c7e1 | ||
|
|
e9c886e871 | ||
|
|
0074f8da1b | ||
|
|
1c98b51e6a | ||
|
|
837bdb1b43 | ||
|
|
48e034be0e | ||
|
|
b067162ce6 | ||
|
|
db42d5b065 | ||
|
|
c41ccf7821 | ||
|
|
f5fd523ca7 | ||
|
|
5f9482e7d5 | ||
|
|
bb98ee27a1 | ||
|
|
3506dd3656 | ||
|
|
88d0b09c88 | ||
|
|
25b88f89a6 | ||
|
|
85343b80b7 | ||
|
|
6766fbdfb3 | ||
|
|
c488fca2f2 | ||
|
|
ea51460169 | ||
|
|
80e7af30d0 | ||
|
|
8f20edaed0 | ||
|
|
4d7b2d7215 | ||
|
|
d0993a8988 | ||
|
|
b68af344cb | ||
|
|
58fdeb50f3 | ||
|
|
1af3c42001 | ||
|
|
8ef066adda | ||
|
|
5cc7fa8e8b | ||
|
|
fc998ac57c | ||
|
|
9e4fe16f56 | ||
|
|
0cc00101dc | ||
|
|
227cfd6e2f | ||
|
|
876f659847 | ||
|
|
555501d534 | ||
|
|
eb392b1251 | ||
|
|
e32bf34830 | ||
|
|
94ff21649d | ||
|
|
35ff0ab2b6 | ||
|
|
c3e3007cd5 | ||
|
|
fadc80166b | ||
|
|
9201b5318b | ||
|
|
c94a9671a2 | ||
|
|
7b3f52505e | ||
|
|
313afbd6db | ||
|
|
0c4f02f288 | ||
|
|
b2d33fba66 | ||
|
|
a673393db5 | ||
|
|
9f55d4057d | ||
|
|
c00a58fc06 | ||
|
|
f49db22311 | ||
|
|
204f43e717 | ||
|
|
77a8894ced | ||
|
|
f85122b141 | ||
|
|
0cd07cd605 | ||
|
|
eb8604f926 | ||
|
|
8b3cb850a5 | ||
|
|
48d1b9444c | ||
|
|
fda0a991a2 | ||
|
|
bb61bd0c96 | ||
|
|
10e89e656a | ||
|
|
741756d114 | ||
|
|
4f36ff0233 | ||
|
|
5be69edf2e | ||
|
|
730cdceab1 | ||
|
|
fa0600afe0 | ||
|
|
fc7db7f23c | ||
|
|
e09429f932 | ||
|
|
947cd32e85 | ||
|
|
65a3c7dae4 | ||
|
|
0374f58a11 | ||
|
|
a7ff8678b5 | ||
|
|
b85ae2f77f | ||
|
|
9f93353519 | ||
|
|
37935ed467 | ||
|
|
8ed9e44a78 | ||
|
|
a796a68e8a | ||
|
|
f2b467c5e7 | ||
|
|
21d22b60b4 | ||
|
|
f76d204e09 | ||
|
|
6775d4da9b | ||
|
|
0264430831 | ||
|
|
76c1077b8e | ||
|
|
6efb4eeb6e | ||
|
|
f7eb7322fb | ||
|
|
cf8b8bad01 | ||
|
|
07fc3360b6 | ||
|
|
61f57e3f53 | ||
|
|
cd8696076e | ||
|
|
fb45e7148a | ||
|
|
404823eadb | ||
|
|
324822599a | ||
|
|
053530ed34 | ||
|
|
4f1cb005d7 | ||
|
|
f3d2183a23 | ||
|
|
cdac86d104 | ||
|
|
291627ac15 | ||
|
|
0025f3b526 | ||
|
|
678e80bb8b | ||
|
|
88c37cdcac | ||
|
|
8ed2ca9018 | ||
|
|
27c99ef894 | ||
|
|
41bed99b4c | ||
|
|
b127b772fe | ||
|
|
2698c2d3b5 | ||
|
|
7c984d20d7 | ||
|
|
844085d7a7 | ||
|
|
404cc016e2 | ||
|
|
98f643f98e | ||
|
|
9985f85aad | ||
|
|
959f2cd61d | ||
|
|
2a2ef53e4f | ||
|
|
3648b56fc1 | ||
|
|
d422fa58cd | ||
|
|
ee7e9b328d | ||
|
|
450c1224fd | ||
|
|
7885d73f80 | ||
|
|
7bdcdcc1ce | ||
|
|
d375588f7c | ||
|
|
2484894d43 | ||
|
|
d82fe69469 | ||
|
|
cb5657e15c | ||
|
|
16e2ee2759 | ||
|
|
5621b280ff | ||
|
|
8cd6efbc38 | ||
|
|
0f4f862840 | ||
|
|
14f74a561c | ||
|
|
bd970cf215 | ||
|
|
57052013bb | ||
|
|
8e11e2e3fc | ||
|
|
ef58503537 | ||
|
|
a46d230308 | ||
|
|
e85ac32c2d | ||
|
|
a7e27c2419 | ||
|
|
a4c9a93b6d | ||
|
|
1f3837a8c6 | ||
|
|
d92044cf6a | ||
|
|
aa4ef6745a | ||
|
|
865fd25af1 | ||
|
|
2cdcbcc80e | ||
|
|
5ea0f23389 | ||
|
|
196a93dc4d | ||
|
|
eb6d9d66cf | ||
|
|
142de603bd | ||
|
|
8ed710965f | ||
|
|
dc2a7ca2d5 | ||
|
|
32cdbb70d6 | ||
|
|
f2e168bd0a | ||
|
|
311a5cc9e3 | ||
|
|
878f2f9015 | ||
|
|
2923950d40 | ||
|
|
0cd1cd787a | ||
|
|
ae8a87c40b | ||
|
|
c3597941db | ||
|
|
d26524767d | ||
|
|
8d61a52eaa | ||
|
|
d5bad25c63 | ||
|
|
165e0a3d54 | ||
|
|
e74c1f2ac6 | ||
|
|
42d4e6610f | ||
|
|
4179685bb6 | ||
|
|
a81a34cd76 | ||
|
|
118db9b267 | ||
|
|
fd67d5cb4c | ||
|
|
cb0f95ee7d | ||
|
|
029b92935c | ||
|
|
bc13538167 | ||
|
|
9b41023c43 | ||
|
|
9f1ede0e3e | ||
|
|
fcfd9239c1 | ||
|
|
10e9d3f32f | ||
|
|
11439afde7 | ||
|
|
359d3b4392 | ||
|
|
d53d45f797 | ||
|
|
c6ea5419ff | ||
|
|
7dcb979983 | ||
|
|
034d529afa | ||
|
|
fb764abeae | ||
|
|
d0bce21993 | ||
|
|
5ba4d0a8c4 | ||
|
|
8864158d85 | ||
|
|
85b8749f02 | ||
|
|
b412b4a9ff | ||
|
|
081ad9adcf | ||
|
|
80f2cc6728 | ||
|
|
bc627da923 | ||
|
|
c1b77365a0 | ||
|
|
7994aa96e2 | ||
|
|
ccc79eac91 | ||
|
|
f0fbff824b | ||
|
|
7293baa1f9 | ||
|
|
20abea6744 | ||
|
|
b666fdcc1a | ||
|
|
70c3357f39 | ||
|
|
9d49636cd1 | ||
|
|
67afe968b4 | ||
|
|
09cc5afad6 | ||
|
|
ab53d80fcf | ||
|
|
1d520473ed | ||
|
|
4636768810 | ||
|
|
01e9402b2c | ||
|
|
947690870b | ||
|
|
dd93551ebf | ||
|
|
bf237c3dca | ||
|
|
7e108e9f5c | ||
|
|
75dbbd115b | ||
|
|
09ca24b032 | ||
|
|
f3d125a3f9 | ||
|
|
51a9666b91 | ||
|
|
2118fc1f0a | ||
|
|
4182e2bd6d | ||
|
|
c349711e0d | ||
|
|
810b4c7191 | ||
|
|
9f730f23e9 | ||
|
|
8a6c9a9e35 | ||
|
|
3a98f5a419 | ||
|
|
597784a3e8 | ||
|
|
48354ece42 | ||
|
|
be8624250d | ||
|
|
168f73e988 | ||
|
|
a4d62c7c7a | ||
|
|
83eab954f1 | ||
|
|
f934fb171a | ||
|
|
fe3d95f394 | ||
|
|
10e5caa766 | ||
|
|
5fb8f5a8c7 | ||
|
|
1673957aa6 | ||
|
|
91db717485 | ||
|
|
be90e179c6 | ||
|
|
3b1b8e9493 | ||
|
|
4a1ed5a3ca | ||
|
|
212db199e8 | ||
|
|
b57a43b26c | ||
|
|
a1ba5b1316 | ||
|
|
92457f91ae | ||
|
|
e84bae9e84 | ||
|
|
1b2682c228 | ||
|
|
6fa825f15d | ||
|
|
beae1c2860 | ||
|
|
6f975acbb6 | ||
|
|
5e7bed8db3 | ||
|
|
177510afdf | ||
|
|
d912cd3b75 | ||
|
|
c426748fe2 | ||
|
|
64d80f8f48 | ||
|
|
c1d767b0ae | ||
|
|
edeb09eee2 | ||
|
|
bdb5081c05 | ||
|
|
7dc410691d | ||
|
|
772b9d0ae7 | ||
|
|
b0ff4533e2 | ||
|
|
72a09434e3 | ||
|
|
87df50b7e7 | ||
|
|
d3d21be588 | ||
|
|
5b92ebfabd | ||
|
|
a9d1d8f034 | ||
|
|
436ded4f4f | ||
|
|
de55794761 | ||
|
|
a23ef386ea | ||
|
|
572aa662f6 | ||
|
|
8b10bee881 | ||
|
|
f492458d85 | ||
|
|
d2289039d6 | ||
|
|
019fbf5268 | ||
|
|
8d7b04b0e2 | ||
|
|
6e1f8d0533 | ||
|
|
b412d2a30a | ||
|
|
cbd9f57468 | ||
|
|
2e0ee21964 | ||
|
|
24b20b8d32 | ||
|
|
d1843e2e27 | ||
|
|
30e7aa23d8 | ||
|
|
9f5c22e7c2 | ||
|
|
4f88739b01 | ||
|
|
18c50c82bc | ||
|
|
0b87b16cba | ||
|
|
d454cf7493 | ||
|
|
66e5b36d16 | ||
|
|
f582cd5c71 | ||
|
|
bf731897a3 | ||
|
|
a823792d8d | ||
|
|
9e894dfd55 | ||
|
|
bd90ebeafd | ||
|
|
ee12027739 | ||
|
|
e02f3558eb | ||
|
|
f410e1c4fa | ||
|
|
e41bc54d43 | ||
|
|
1599e06ffb | ||
|
|
84c49a23c9 | ||
|
|
95c94758cb | ||
|
|
3bc5c5914b | ||
|
|
69d2cd3b6d | ||
|
|
4bca467bd3 | ||
|
|
20061ae5a1 | ||
|
|
78867c3cc9 | ||
|
|
f8911cad32 | ||
|
|
dd9a461cf5 | ||
|
|
1516ce86f4 | ||
|
|
58ab04f2f4 | ||
|
|
3e651e3ea2 | ||
|
|
b02c00eb41 | ||
|
|
a9ee45d977 | ||
|
|
156e66438a | ||
|
|
9ac34badad | ||
|
|
fdf145657d | ||
|
|
f93e0a624e | ||
|
|
c8e3af32be | ||
|
|
62b3a49b5f | ||
|
|
be88eee8f6 | ||
|
|
e7fb192f5d | ||
|
|
18e2ca89b7 | ||
|
|
ec8c388f99 | ||
|
|
a1518df41a | ||
|
|
312ef38d62 | ||
|
|
ed3e0a9d9c | ||
|
|
d7ca93b9fa | ||
|
|
910dfd6ad2 | ||
|
|
041415519b | ||
|
|
0ba877fef1 | ||
|
|
839c93961c | ||
|
|
30b1be97dd | ||
|
|
55be57ad21 | ||
|
|
58064ec633 | ||
|
|
d63044a15e | ||
|
|
5422697397 | ||
|
|
36c2f8fe5d | ||
|
|
2defddc153 | ||
|
|
fb9a219349 | ||
|
|
3b5e4276c8 | ||
|
|
fab2e08a0d | ||
|
|
19e9099a78 | ||
|
|
91c2b07cd8 | ||
|
|
fd00c7bd81 | ||
|
|
8919082179 | ||
|
|
2f7c191547 | ||
|
|
80519dc366 | ||
|
|
4d53c813e4 | ||
|
|
750f479d58 | ||
|
|
e9a7e99108 | ||
|
|
ebf10b3452 | ||
|
|
5d621f5318 | ||
|
|
35dedfc7e4 | ||
|
|
39094adfcf | ||
|
|
74a25bfaa0 | ||
|
|
04ef2f0c8d | ||
|
|
fb99906a8c | ||
|
|
da0d3e4129 | ||
|
|
3ffe90146c | ||
|
|
81cea41154 | ||
|
|
3ff4f53bbd | ||
|
|
a77f67fc32 | ||
|
|
47c45d48b1 | ||
|
|
cdd9585cb8 | ||
|
|
db60188847 | ||
|
|
21a2e5f415 | ||
|
|
2377c9b4cb | ||
|
|
296f6b1553 | ||
|
|
e15643ca46 | ||
|
|
9632ba40cc | ||
|
|
a2cdeeb6c7 | ||
|
|
a23857ce3c | ||
|
|
78677b3aa7 | ||
|
|
7dd264953f | ||
|
|
17af9c3ab6 | ||
|
|
4b49f8fbb8 | ||
|
|
e253225c66 | ||
|
|
6abb6f90f6 | ||
|
|
9fb2743a38 | ||
|
|
17792716a7 | ||
|
|
ae7282358e | ||
|
|
abc082f7c0 | ||
|
|
bf1163ae84 | ||
|
|
be74ca472a | ||
|
|
31b472fa47 | ||
|
|
b502627494 | ||
|
|
a8017369d0 | ||
|
|
3f0b5e4318 | ||
|
|
aea8f93e02 | ||
|
|
874411990b | ||
|
|
780268f70e | ||
|
|
3a8a374e87 | ||
|
|
488f36d491 | ||
|
|
4d48b0be99 | ||
|
|
44f3888c24 | ||
|
|
a76fb4c173 | ||
|
|
e4aa003157 | ||
|
|
247f334334 | ||
|
|
509cdae832 | ||
|
|
5ff59b3339 | ||
|
|
2b1a785f24 | ||
|
|
2c0b137848 | ||
|
|
ef68e633cf | ||
|
|
e9e63ba950 | ||
|
|
3fd6167e71 | ||
|
|
6b0573ded1 | ||
|
|
328dc80324 | ||
|
|
24d8617f81 | ||
|
|
e2c3d4f2fb | ||
|
|
60229d73c9 | ||
|
|
40235463bc | ||
|
|
c6cbadc514 | ||
|
|
3c3c67a34c | ||
|
|
72eedd2ff9 | ||
|
|
a7e9d5a60b | ||
|
|
c3d081b700 | ||
|
|
57f62c919c | ||
|
|
19bdd4fa2a | ||
|
|
9d8391583f | ||
|
|
6037b0acc5 | ||
|
|
09c5efc161 | ||
|
|
16c2aefe7b | ||
|
|
06cfa207fc | ||
|
|
0be8bbc19f | ||
|
|
bad85375de | ||
|
|
6c11a7a6c4 | ||
|
|
6f38c6f339 | ||
|
|
fb1d727db9 | ||
|
|
d98d286dc4 | ||
|
|
1be279dbaa | ||
|
|
90e6feeb4c | ||
|
|
f1f9f235c7 | ||
|
|
eb3f938281 | ||
|
|
d6ef923134 | ||
|
|
5b01577810 | ||
|
|
2a111d472a | ||
|
|
a8809e89b9 | ||
|
|
1ab9a49d01 | ||
|
|
f92c116564 | ||
|
|
b54539b647 | ||
|
|
87fc6522fb | ||
|
|
b0408d1d6e | ||
|
|
39779ca8d5 | ||
|
|
8c34f7559d | ||
|
|
740c7c2476 | ||
|
|
abd43dd471 | ||
|
|
c24b5410bc | ||
|
|
cde7d0f463 | ||
|
|
54548c3ed0 | ||
|
|
221d1edf0f | ||
|
|
02e75f9539 | ||
|
|
6bed2ff106 | ||
|
|
f3e1e4d1da | ||
|
|
370f6384d9 | ||
|
|
0105587d04 | ||
|
|
e327970ab9 | ||
|
|
9e247f39ff | ||
|
|
09f3a10b46 | ||
|
|
c3679a84e5 | ||
|
|
75f8d5e7d9 | ||
|
|
6ba4fa50b9 | ||
|
|
f5e130f2a6 | ||
|
|
cd5dcd87b0 | ||
|
|
54f319af0e | ||
|
|
96949059cf | ||
|
|
763368db99 | ||
|
|
f622ea654f | ||
|
|
70c4e6c287 | ||
|
|
d7692e875a | ||
|
|
0a94010668 | ||
|
|
50bd1d9a5d | ||
|
|
d45121a93b | ||
|
|
a55e3fb225 | ||
|
|
426b2f5858 | ||
|
|
3d10b5e538 | ||
|
|
b639599620 | ||
|
|
63c51c6ee0 | ||
|
|
f39934c274 | ||
|
|
adec1643bf | ||
|
|
229ea7d3ab | ||
|
|
03899f042d | ||
|
|
46d7cee639 | ||
|
|
eb0c378138 | ||
|
|
79d1bf30a4 | ||
|
|
5786434f37 | ||
|
|
3633d7ada1 | ||
|
|
b95d4aed11 | ||
|
|
c2f599a33c | ||
|
|
89361cfce4 | ||
|
|
278a6c504a | ||
|
|
e140ddf7be | ||
|
|
f00ba4e704 | ||
|
|
8128656a9e | ||
|
|
f2f7a6de6b | ||
|
|
8651d81b73 | ||
|
|
2458255e22 | ||
|
|
ea12c6e2c0 | ||
|
|
2e22bd2ecf | ||
|
|
777cb0033e | ||
|
|
127c126ef5 | ||
|
|
01ff8d171a | ||
|
|
457c23fffa | ||
|
|
b07911ec68 | ||
|
|
fb211d59a8 | ||
|
|
4e586d35a9 | ||
|
|
52f2461fe6 | ||
|
|
ac7dab8b6e | ||
|
|
5e171c2ad1 | ||
|
|
b4a139515c | ||
|
|
30219f6b6f | ||
|
|
d19e6bdd03 | ||
|
|
65ce0a5e54 | ||
|
|
c2659d68dc | ||
|
|
773c7ba14b | ||
|
|
93e617f488 | ||
|
|
f7959c073f | ||
|
|
6953970be7 | ||
|
|
1496fdaf80 | ||
|
|
0fc034b1ac | ||
|
|
c3312c918e | ||
|
|
5a13964ced | ||
|
|
fe07b1cb7f | ||
|
|
d805a70508 | ||
|
|
0f0009e0db | ||
|
|
4c4cb2bb17 | ||
|
|
fe319a529f | ||
|
|
91bea1f6c7 | ||
|
|
01745f7c65 | ||
|
|
5d3943ffa8 | ||
|
|
e66d7babc5 | ||
|
|
80e5645a84 | ||
|
|
a766faeae9 | ||
|
|
4d2d226446 | ||
|
|
61e83b10c3 | ||
|
|
ed675f0956 | ||
|
|
9cce8ab214 | ||
|
|
daa409cd82 | ||
|
|
9d65415fdc | ||
|
|
8c40917cc2 | ||
|
|
871f886702 | ||
|
|
f19075c50a | ||
|
|
71da205ab7 | ||
|
|
a34cc47a11 | ||
|
|
cbddaf1d19 | ||
|
|
1f1ed2da4c | ||
|
|
8d81bd0dc0 | ||
|
|
5773a5bfa6 | ||
|
|
7275a48102 | ||
|
|
8f84dd610c | ||
|
|
f1f466ed23 | ||
|
|
0ca5237139 | ||
|
|
20549bfdf0 | ||
|
|
d692bb3c52 | ||
|
|
44cd1e9223 | ||
|
|
f0fec654ff | ||
|
|
4e04e5e0c0 | ||
|
|
4991fb2769 | ||
|
|
4d90d554f8 | ||
|
|
e5468713ac | ||
|
|
77013f982d | ||
|
|
0460cdedd7 | ||
|
|
73f5bf69e8 | ||
|
|
750c0d7df2 | ||
|
|
2fcebdd281 | ||
|
|
e4e65a4cd5 | ||
|
|
e010ecb03f | ||
|
|
fc74db668d | ||
|
|
1bac3418b4 | ||
|
|
53df8c48b7 | ||
|
|
92702fe47e | ||
|
|
017c4c12cd | ||
|
|
830d246ba4 | ||
|
|
6b33afa916 | ||
|
|
69a3efd534 | ||
|
|
2d0adb8f4c | ||
|
|
da9d8cb138 | ||
|
|
2acaca8582 | ||
|
|
11cf82c6a4 | ||
|
|
1ef66c962a | ||
|
|
03f20599ba | ||
|
|
d150b10b3e | ||
|
|
c4f323aae3 | ||
|
|
8297f8ccd0 | ||
|
|
f336241576 | ||
|
|
f6d9a7e7c3 | ||
|
|
80d1ee7543 | ||
|
|
e55a254353 | ||
|
|
555a0f276c | ||
|
|
792632d726 | ||
|
|
9cac293efc | ||
|
|
cd8bfca29c | ||
|
|
b5b437b878 | ||
|
|
cc2947063a | ||
|
|
2864a9027f | ||
|
|
e11f547308 | ||
|
|
cdce7aa5e2 | ||
|
|
82cea185b2 | ||
|
|
f92a4bb195 | ||
|
|
9f4f88df9c | ||
|
|
e69803cbd1 | ||
|
|
f164661ef2 | ||
|
|
c9d993b838 | ||
|
|
65f35dc9f4 | ||
|
|
b600d462c1 | ||
|
|
fa5a82c9ab | ||
|
|
a9885be09e | ||
|
|
7b011f4a91 | ||
|
|
41c404abe6 | ||
|
|
2089a761cf | ||
|
|
0ee2df010d | ||
|
|
466844c016 | ||
|
|
bbf9a08649 | ||
|
|
c985c66652 | ||
|
|
f9dc96320e | ||
|
|
42552789fe | ||
|
|
1a2ffeb0b5 | ||
|
|
4f75493249 | ||
|
|
42193695fb | ||
|
|
02af0de21e | ||
|
|
5f8e10e524 | ||
|
|
cee93d746c | ||
|
|
08704a383f | ||
|
|
7c596be638 | ||
|
|
07265f594b | ||
|
|
392cb1ba89 | ||
|
|
e6f33e997f | ||
|
|
a44387f250 | ||
|
|
b1b1b7592b | ||
|
|
ca668898f4 | ||
|
|
fcd437c89f | ||
|
|
7f7d7edc7f | ||
|
|
bd827f946a | ||
|
|
ad8aa1c179 | ||
|
|
3ebaf83ce0 | ||
|
|
39b1978ff3 | ||
|
|
bddff17e5e | ||
|
|
0ac9120064 | ||
|
|
d90f75425f | ||
|
|
dec7d537dc | ||
|
|
11e95ea092 | ||
|
|
c5e9b69eb3 | ||
|
|
120c11b181 | ||
|
|
a1ae832129 | ||
|
|
3a4833818f | ||
|
|
8814fc9c9c | ||
|
|
e6e02ece89 | ||
|
|
9059c149dd | ||
|
|
7d8e70b2ac | ||
|
|
89105f5641 | ||
|
|
1813d17b4c | ||
|
|
ce27b36fd0 | ||
|
|
e635a87628 | ||
|
|
80c52433cc | ||
|
|
1472f0b141 | ||
|
|
4d914f5c0a | ||
|
|
0318f7344f | ||
|
|
413fbb3d0c | ||
|
|
8bc47baf4f | ||
|
|
e3f6d42a47 | ||
|
|
8230935fd3 | ||
|
|
f968d05ea0 | ||
|
|
d6e5dc2167 | ||
|
|
460147fea2 | ||
|
|
cea44834bb | ||
|
|
1af50fd7b8 | ||
|
|
b18013025f | ||
|
|
acdf7c244f | ||
|
|
399eb60809 | ||
|
|
ed67e3506b | ||
|
|
a72b6745aa | ||
|
|
24086e9023 | ||
|
|
c3d4b5ad38 | ||
|
|
cc618a83e5 | ||
|
|
9eaa0b27db | ||
|
|
a8835a679e | ||
|
|
656bc6df84 | ||
|
|
019aaf7d82 | ||
|
|
76bafbf398 | ||
|
|
030bcb99b1 | ||
|
|
d8ff37fc45 | ||
|
|
2fcc3bb1ea | ||
|
|
2e680c3d1e | ||
|
|
af0a0ef41b | ||
|
|
bbfccb0bbf | ||
|
|
c89eb5d69f | ||
|
|
ebde84214e | ||
|
|
03fbae7b6d | ||
|
|
f90e9596d4 | ||
|
|
944f9524e2 | ||
|
|
c61050244e | ||
|
|
90337adbbc | ||
|
|
7b67e41c5b | ||
|
|
91db24fcfc | ||
|
|
bb53db905f | ||
|
|
0e9a1efe46 | ||
|
|
289cd3e200 | ||
|
|
e0f847e539 | ||
|
|
c2842b486e | ||
|
|
7235ade42f | ||
|
|
850be2df1d | ||
|
|
d504501440 | ||
|
|
208392f12c | ||
|
|
0fe036c640 | ||
|
|
a40c41f0b0 | ||
|
|
4affa5b710 | ||
|
|
4eb574d991 | ||
|
|
2c1577ea24 | ||
|
|
b87e7e50b6 | ||
|
|
36215d50bd | ||
|
|
5ff1245d0c | ||
|
|
ebd189fb27 | ||
|
|
6f724827bd | ||
|
|
b6a0982012 | ||
|
|
c3e375e8a5 | ||
|
|
302409fd83 | ||
|
|
a2046461c1 | ||
|
|
6660c34120 | ||
|
|
b88ccf0ddd | ||
|
|
b898bbf94c | ||
|
|
787e89eb95 | ||
|
|
1022c2c438 | ||
|
|
ba21c62ed4 | ||
|
|
bfe66c919b | ||
|
|
3dacf7f661 | ||
|
|
c0a3ae2612 | ||
|
|
da612ef789 | ||
|
|
df9cb7cf6e | ||
|
|
9c1a26110e | ||
|
|
0883d18a6c | ||
|
|
c7246c61a5 | ||
|
|
c5a1431fc0 | ||
|
|
f0118a0dff | ||
|
|
cffe96e46f | ||
|
|
a9256578f0 | ||
|
|
05ed202904 | ||
|
|
963b63389a | ||
|
|
e04706dc74 | ||
|
|
04d4ce5ce1 | ||
|
|
24cf3730fa | ||
|
|
0700be86e2 | ||
|
|
7cca509eb3 | ||
|
|
7d7193cb63 | ||
|
|
1cf10d05ff | ||
|
|
2ec25a7729 | ||
|
|
2a9065a61e | ||
|
|
7518e30dcf | ||
|
|
dc3c80e3ce | ||
|
|
a25f61f6be | ||
|
|
e70fb71a04 | ||
|
|
f499630c2b | ||
|
|
43319a8588 | ||
|
|
d62b943c5d | ||
|
|
8baddf2ea3 | ||
|
|
600482660b | ||
|
|
72ab5c143e | ||
|
|
96ab0e7b4c | ||
|
|
b60903e2b4 | ||
|
|
b4f4d3f267 | ||
|
|
6e017c86e8 | ||
|
|
afcfc2dca5 | ||
|
|
59e22a12a9 | ||
|
|
b740ac3e01 | ||
|
|
9719f0df03 | ||
|
|
d4be599538 | ||
|
|
f88195c90a | ||
|
|
3b33f7e752 | ||
|
|
67a37294f7 | ||
|
|
fd88955696 | ||
|
|
9d248dbb5a | ||
|
|
20ec4104c6 | ||
|
|
6c232d116d | ||
|
|
2ef78bcd40 | ||
|
|
94ce658ab9 | ||
|
|
d8cf4cd341 | ||
|
|
0360337df9 | ||
|
|
119d38ea08 | ||
|
|
bee77afb7f | ||
|
|
16d4b16872 | ||
|
|
951b2346ab | ||
|
|
b29ff0e94b | ||
|
|
c8dd8341ca | ||
|
|
8bcf44bc16 | ||
|
|
50b37a8420 | ||
|
|
22df795733 | ||
|
|
7e3bf06db1 | ||
|
|
6630ca595c | ||
|
|
5d01e19ce7 | ||
|
|
56df89f8dd | ||
|
|
13de984ce3 | ||
|
|
15fc0e30d7 | ||
|
|
4289c11185 | ||
|
|
a3f564e702 | ||
|
|
f6734a0c98 | ||
|
|
72fb416239 | ||
|
|
833f5b09d2 | ||
|
|
b21b21f30a | ||
|
|
2f77a3f6d2 | ||
|
|
0bda655452 | ||
|
|
4f80bb7031 | ||
|
|
fbe7b3cc9b | ||
|
|
8402f0abd7 | ||
|
|
149b2ee5a7 | ||
|
|
f9d5af0600 | ||
|
|
72c4ccaee8 | ||
|
|
92999dcaf2 | ||
|
|
5bbd318518 | ||
|
|
8807894890 | ||
|
|
63b7820717 | ||
|
|
9e7e2d6977 | ||
|
|
89e4c280ae | ||
|
|
b6c9f29be4 | ||
|
|
74cbbc84ed | ||
|
|
ead4197670 | ||
|
|
4fc69ccdc8 | ||
|
|
f556cb44b9 | ||
|
|
45b540d375 | ||
|
|
af2d36a3c9 | ||
|
|
42a4f92cfa | ||
|
|
ccb9ed3489 | ||
|
|
773b2aa3d1 | ||
|
|
30d5b8d65b | ||
|
|
763676a18c | ||
|
|
e166ad6780 | ||
|
|
034c96d070 | ||
|
|
f34f8d304c | ||
|
|
944000c05c | ||
|
|
e2503cdb47 | ||
|
|
52db63bca2 | ||
|
|
55dfd9e2a1 | ||
|
|
d193cbf2b7 | ||
|
|
bdec56a543 | ||
|
|
e0a6d9740c | ||
|
|
0ce9c057e1 | ||
|
|
12a2fdbc20 | ||
|
|
57c294bc89 | ||
|
|
9758757805 | ||
|
|
f9350fa35f | ||
|
|
e120da4ecd | ||
|
|
328a10b70c | ||
|
|
1ed97c8deb | ||
|
|
91b970e2aa | ||
|
|
99af1bb479 | ||
|
|
11ddcbdee3 | ||
|
|
6e8a1086d8 | ||
|
|
c78945436e | ||
|
|
6eff8fde74 | ||
|
|
726d5a177e | ||
|
|
33495b5cb3 | ||
|
|
fe159a13a9 | ||
|
|
22a1dc0566 | ||
|
|
02e6b732e9 | ||
|
|
cc6fa135ac | ||
|
|
5747732156 | ||
|
|
581d1617d8 | ||
|
|
6152fd20bf | ||
|
|
19300ca65c | ||
|
|
2f3d744e19 | ||
|
|
724e812972 | ||
|
|
9a6246fd4e | ||
|
|
34f44de59c | ||
|
|
16e446c121 | ||
|
|
8f232a9da9 | ||
|
|
ebeb7f8578 | ||
|
|
f790673068 | ||
|
|
335ab5ab54 | ||
|
|
00e0d6ce2c | ||
|
|
414fb6d303 | ||
|
|
9c35a12211 | ||
|
|
bb4fe5174f | ||
|
|
3ffd6ff5a2 | ||
|
|
b05feb5bf7 | ||
|
|
fa171f237d | ||
|
|
f2ccb684eb | ||
|
|
ffea6522ac | ||
|
|
3d40a7df00 | ||
|
|
638c41476b | ||
|
|
c6d3088374 | ||
|
|
0f93be9dd4 | ||
|
|
f59982c9c5 | ||
|
|
dff67a5e54 | ||
|
|
6adcc3b2ed | ||
|
|
877ed3663c | ||
|
|
6000a82917 | ||
|
|
6805f9b3e0 | ||
|
|
1366c785f9 | ||
|
|
70540b4500 | ||
|
|
0967f23b6e | ||
|
|
1f7d66169c | ||
|
|
af501f5eeb | ||
|
|
60be60c923 | ||
|
|
48746101e0 | ||
|
|
af9c5c6ab7 | ||
|
|
602284d38c | ||
|
|
26898142c2 | ||
|
|
b0a8d7abe9 | ||
|
|
dc2b266b75 | ||
|
|
07bbd9506a | ||
|
|
14bb218287 | ||
|
|
29f238c929 | ||
|
|
a39a1d4fa5 | ||
|
|
15117c63f5 | ||
|
|
507ffb6fc6 | ||
|
|
6b2e0164cf | ||
|
|
02e06eb1de | ||
|
|
1b50f78733 | ||
|
|
ead629407c | ||
|
|
0abbc9e7dd | ||
|
|
37681e859e | ||
|
|
caabdc68f3 | ||
|
|
9e97eaf24d | ||
|
|
4cd06a789b | ||
|
|
a3ffd968de | ||
|
|
0cf40563aa | ||
|
|
3e7e7f864b | ||
|
|
6ae415e36a | ||
|
|
6cefa3ae26 | ||
|
|
70de3af3ea | ||
|
|
66ed814527 | ||
|
|
e12cc3b7a8 | ||
|
|
93ea19d7ad | ||
|
|
79d592b431 | ||
|
|
c9c3a0be82 | ||
|
|
f04be199dd | ||
|
|
f36cb1cc66 | ||
|
|
a5597e3df9 | ||
|
|
7f4c28053e | ||
|
|
ea24043b22 | ||
|
|
44ef60c8a2 | ||
|
|
bd68ff2cf3 | ||
|
|
0e8a592b26 | ||
|
|
d3b51bf94a | ||
|
|
cc137ee1cc | ||
|
|
c088482cef | ||
|
|
70e3febe0a | ||
|
|
f500cce293 | ||
|
|
c6b836b7be | ||
|
|
15485da1bb | ||
|
|
7195f55a44 | ||
|
|
176f8803eb | ||
|
|
5a3a925a3c | ||
|
|
29bfb9d19b | ||
|
|
86b0dfdd33 | ||
|
|
ab04f2fce0 | ||
|
|
be9f836b21 | ||
|
|
818bc96aab | ||
|
|
14d12c21f2 | ||
|
|
aa5250a37c | ||
|
|
2053a041e5 | ||
|
|
0534a0a41e | ||
|
|
d2f9a99beb | ||
|
|
9625047dc3 | ||
|
|
d6b18ce536 | ||
|
|
df00af1dfa | ||
|
|
3570ec0430 | ||
|
|
a111b014f8 | ||
|
|
50eebe834a | ||
|
|
f965e9f218 | ||
|
|
0ac5fdab49 | ||
|
|
39099909bf | ||
|
|
999ce8e366 | ||
|
|
8678e30cc8 | ||
|
|
8a59e9d9c8 | ||
|
|
dddace9d6a | ||
|
|
388cb7db3a | ||
|
|
46b74b3e1c | ||
|
|
d53e80c88a | ||
|
|
d8a8f36676 | ||
|
|
dafdbbf552 | ||
|
|
52bc52293b | ||
|
|
0733aefb64 | ||
|
|
aac6dec5da | ||
|
|
d44c59ea3e | ||
|
|
9b3c3881c4 | ||
|
|
cdd722dca0 | ||
|
|
9ad7a80496 | ||
|
|
b85597b15d | ||
|
|
ebb98d975b | ||
|
|
c1b320710b | ||
|
|
1201794bef | ||
|
|
dc58c9bd2f | ||
|
|
9787da7240 | ||
|
|
b0f989dbac | ||
|
|
a0ec6b8ea7 | ||
|
|
fac6868305 | ||
|
|
ed8fa59639 | ||
|
|
e8edda01a9 | ||
|
|
380a369eca | ||
|
|
781fffee42 | ||
|
|
69b5de3346 | ||
|
|
0d8c83f27c | ||
|
|
8ca58de2ba | ||
|
|
d8cd24fab0 | ||
|
|
f918081168 | ||
|
|
f88fb9bc1d | ||
|
|
062fbd7d27 | ||
|
|
6b6af008d0 | ||
|
|
4d35def548 | ||
|
|
b369d6bd5c | ||
|
|
63dfe2726c | ||
|
|
1002d29cc2 | ||
|
|
868240666a | ||
|
|
02a88fdc9c | ||
|
|
bc4adf7107 | ||
|
|
bd67785802 | ||
|
|
68c90e8ebe | ||
|
|
64519a9fd4 | ||
|
|
d21da0211c | ||
|
|
2e919b788f | ||
|
|
2d2056f2bd | ||
|
|
334dabc1de | ||
|
|
dfa2c951d6 | ||
|
|
e28d1c7569 | ||
|
|
9ce0f96de3 | ||
|
|
a408b19bbe | ||
|
|
f9a17b8021 | ||
|
|
5eeb200913 | ||
|
|
f87981eeee | ||
|
|
761ae807db | ||
|
|
643a0e6b13 | ||
|
|
e7e5f76e9e | ||
|
|
247acd81a9 | ||
|
|
a2457a6ac4 | ||
|
|
af7a320493 | ||
|
|
4dd8b7e85d | ||
|
|
3a4392af40 | ||
|
|
44f70f0009 | ||
|
|
238c4cf181 | ||
|
|
9171c49d85 | ||
|
|
5e967e24ff | ||
|
|
70ac07d60e | ||
|
|
81ee670dc2 | ||
|
|
faf215685b | ||
|
|
255c07d1ab | ||
|
|
83e9711274 | ||
|
|
0aa9201770 | ||
|
|
534e43f72d | ||
|
|
8f50080647 | ||
|
|
cdc70875e5 | ||
|
|
e6962d6fab | ||
|
|
3703563939 | ||
|
|
e81b145735 | ||
|
|
7f4145ee56 | ||
|
|
3967cf40b3 | ||
|
|
84b0d56c4c | ||
|
|
e081d8d4ca | ||
|
|
b6ad7149d8 | ||
|
|
0f36f60cb4 | ||
|
|
1284eef9e2 | ||
|
|
dec264ee6a | ||
|
|
e25e1d88d6 | ||
|
|
60a7f7f146 | ||
|
|
897f7a031d | ||
|
|
4feff8835c | ||
|
|
8dfd892b71 | ||
|
|
9e8cfd76c8 | ||
|
|
a6a4bb6599 | ||
|
|
5ca8a0d886 | ||
|
|
6840496791 | ||
|
|
0128831649 | ||
|
|
56fa24e401 | ||
|
|
e011870a60 | ||
|
|
8d78ee08c1 | ||
|
|
2752319e50 | ||
|
|
a26c19cbd2 | ||
|
|
f14571dc42 | ||
|
|
484d17f53f | ||
|
|
924119651a | ||
|
|
c6d49dacbc | ||
|
|
0be790fa31 | ||
|
|
b7f6eb8290 | ||
|
|
f1bda0b2e1 | ||
|
|
bae44b4708 | ||
|
|
35115607bc | ||
|
|
51255bb446 | ||
|
|
bd758a156e | ||
|
|
51929fb607 | ||
|
|
9599a31239 | ||
|
|
9fdb125960 | ||
|
|
534c0a6001 | ||
|
|
58bfcfda91 | ||
|
|
8d0802f05d | ||
|
|
5cd8c5d229 | ||
|
|
fa3c4436d9 | ||
|
|
d32d95918c | ||
|
|
34899757d5 | ||
|
|
111dbdcd7f | ||
|
|
0c38509f1c | ||
|
|
652aa1f69b | ||
|
|
dc380c38da | ||
|
|
8555e04f50 | ||
|
|
c23bbf81f1 | ||
|
|
7dd7de8ff6 | ||
|
|
2ca8bafde3 | ||
|
|
79f6c3f1ca | ||
|
|
fce0b315cf | ||
|
|
56c7a8f2e4 | ||
|
|
5ef2f157f2 | ||
|
|
738afbe475 | ||
|
|
791a81a4c7 | ||
|
|
aa82d7a2c9 | ||
|
|
f57d2e54d2 | ||
|
|
fea1a2e51b | ||
|
|
bda5347f1e | ||
|
|
98d9c37922 | ||
|
|
e3bde41a25 | ||
|
|
5fb2f7749d | ||
|
|
a56bdf2372 | ||
|
|
9d991df32f | ||
|
|
c4a3f89d1c | ||
|
|
ea223bab51 | ||
|
|
dd94392317 | ||
|
|
baa2845916 | ||
|
|
97ae4ea13e | ||
|
|
d1c5f0c70f | ||
|
|
95bff3005f | ||
|
|
c0b06496b1 | ||
|
|
2105e1f259 | ||
|
|
e546414c2f | ||
|
|
1f4660a930 | ||
|
|
a2165c2e01 | ||
|
|
1af920739f | ||
|
|
868e8228f0 | ||
|
|
2bbc74560d | ||
|
|
5d2caa456d | ||
|
|
9069a99a15 | ||
|
|
fa56a44d85 | ||
|
|
248acaee75 | ||
|
|
ef75f12abe | ||
|
|
854814c226 | ||
|
|
b6a322f447 | ||
|
|
161b9602f4 | ||
|
|
62669bff07 | ||
|
|
02bd299714 | ||
|
|
f71dabfbfa | ||
|
|
8d31cedafc | ||
|
|
a88d6c1c47 | ||
|
|
d35a13fc0b | ||
|
|
8e4029c1cd | ||
|
|
9a9f852540 | ||
|
|
c66497a4de | ||
|
|
1f9ecbf0be | ||
|
|
423a6f7013 | ||
|
|
ef0ca38362 | ||
|
|
ae9bfd69b0 | ||
|
|
3d231c3456 | ||
|
|
95d0d0047a | ||
|
|
d05aee19f2 | ||
|
|
125765faa6 | ||
|
|
70c0b1d8c0 | ||
|
|
72e8660ae3 | ||
|
|
2127bf32c2 | ||
|
|
2b9acc239e | ||
|
|
47a6188097 | ||
|
|
8abce1469a | ||
|
|
8a2bee2136 | ||
|
|
e7a532f0cc | ||
|
|
2cb1678577 | ||
|
|
d249bc6575 | ||
|
|
e409b45873 | ||
|
|
f2d26c1909 | ||
|
|
898e3d7138 | ||
|
|
78cc0f7b6f | ||
|
|
b14ca6a464 | ||
|
|
4691c1259a | ||
|
|
69f07cb015 | ||
|
|
a426f4c7bd | ||
|
|
3430a2d093 | ||
|
|
4ecc8c799d | ||
|
|
fa02a58fc4 | ||
|
|
2905d172b8 | ||
|
|
5f6e5e4c8b | ||
|
|
d68c2a0170 | ||
|
|
76c7ad5e24 | ||
|
|
1cf65a0145 | ||
|
|
0c8602f1d5 | ||
|
|
2dc4990804 | ||
|
|
47ecd2e900 | ||
|
|
01d8e9cf4e | ||
|
|
da52f980c4 | ||
|
|
366b7ef946 | ||
|
|
0e7c0fd528 | ||
|
|
fb28b238cf | ||
|
|
b375bbc75c | ||
|
|
74ebd6e4a0 | ||
|
|
72f2b92d4f | ||
|
|
178eeec041 | ||
|
|
7ff950b5e3 | ||
|
|
11409b723e | ||
|
|
a59c8b4f57 | ||
|
|
690e273257 | ||
|
|
0133a1ba97 | ||
|
|
809b0e67a6 | ||
|
|
a702271efd | ||
|
|
ec4f8ddd3e | ||
|
|
839f66c82f | ||
|
|
9ae2775452 | ||
|
|
c9818358ee | ||
|
|
6e3a88ffcb | ||
|
|
4c54d68fad | ||
|
|
c351ba7820 | ||
|
|
3c2d72f611 | ||
|
|
f557407589 | ||
|
|
a0a4ce4dd9 | ||
|
|
281971f4a4 | ||
|
|
12b13e974c | ||
|
|
9d27fa7eaa | ||
|
|
9f1385b03a | ||
|
|
8c019a6d0b | ||
|
|
87faf5942c | ||
|
|
8c9977c136 | ||
|
|
1ffa66af4f | ||
|
|
3d5d2de80b | ||
|
|
12c313235e | ||
|
|
c63acba0a5 | ||
|
|
5aaf8e6308 | ||
|
|
f7d6d41a90 | ||
|
|
0d79a41527 | ||
|
|
fef8c14586 | ||
|
|
1bfd4cfc34 | ||
|
|
a8e48e06a1 | ||
|
|
d59dd7e44a | ||
|
|
e5431648fd | ||
|
|
2ddbca4641 | ||
|
|
d944827f3d | ||
|
|
bd01d81d1d | ||
|
|
9d52bd9ae8 | ||
|
|
4f782ac219 | ||
|
|
77377ba63f | ||
|
|
6afb985121 | ||
|
|
47fb538311 | ||
|
|
5644a2ff0b | ||
|
|
c87aeb6cc4 | ||
|
|
37ce882337 | ||
|
|
afc2efee1b | ||
|
|
8f79f862b9 | ||
|
|
016386b350 | ||
|
|
ab16fb3a3f | ||
|
|
973b1e42ef | ||
|
|
bd1f3a2f01 | ||
|
|
5d82443389 | ||
|
|
43eb8bd99b | ||
|
|
06e77a4f16 | ||
|
|
0ca2c313ec | ||
|
|
c0b70e87bc | ||
|
|
5a76716b5a | ||
|
|
3f9e5fffbe | ||
|
|
90346a6b5f | ||
|
|
57fda16c9c | ||
|
|
ae409bdaea | ||
|
|
a560427b95 | ||
|
|
cd57d7035a | ||
|
|
7753e8f169 | ||
|
|
e352832096 | ||
|
|
63cc7b5a75 | ||
|
|
753176588f | ||
|
|
10c1296a7c | ||
|
|
76b5c32e31 | ||
|
|
abe14c1665 | ||
|
|
ba1b1a73b6 | ||
|
|
f0b86edb53 | ||
|
|
ce0f405d1e | ||
|
|
f1af362117 | ||
|
|
d2b1b30ef5 | ||
|
|
aa9b8a7ca5 | ||
|
|
e3bd8b1c21 | ||
|
|
3b67350e8c | ||
|
|
4db098d01d | ||
|
|
1133b340e9 | ||
|
|
4bf5a28804 | ||
|
|
1872fd4547 | ||
|
|
dc6c5104d4 | ||
|
|
3a3f3f7663 | ||
|
|
e8b14d5570 | ||
|
|
9aed2632f7 | ||
|
|
d1dd2d3c18 | ||
|
|
48a17629bb | ||
|
|
cc4a7c1a16 | ||
|
|
b57dd8de40 | ||
|
|
ce0c27b687 | ||
|
|
39d05b75db | ||
|
|
83bbd6b64f | ||
|
|
95e5800b36 | ||
|
|
f0c031ecdb | ||
|
|
858efafe77 | ||
|
|
0a7c0f30fd | ||
|
|
1a4b92a8a4 | ||
|
|
b9837ae7f3 | ||
|
|
0a05413e22 | ||
|
|
c264ec49e9 | ||
|
|
918cf2df28 | ||
|
|
28d46d0097 | ||
|
|
b54340c3dc | ||
|
|
c875401cd6 | ||
|
|
d02dfefd30 | ||
|
|
5ff8a9ab44 | ||
|
|
d6c3c0fa4f | ||
|
|
ceda2ca896 | ||
|
|
85114ebd74 | ||
|
|
fe30e4e3a5 | ||
|
|
623eb37b64 | ||
|
|
1a91b6d03e | ||
|
|
a92221e6f3 | ||
|
|
8004d6c46a | ||
|
|
b1731f9ab6 | ||
|
|
a8d280cfba | ||
|
|
ed86218817 | ||
|
|
ee09143676 | ||
|
|
79821f00fb | ||
|
|
e30e2fdf3e | ||
|
|
1c77fd93c0 | ||
|
|
725ba338a7 | ||
|
|
62c8435437 | ||
|
|
f2649e25b7 | ||
|
|
c5e1233d11 | ||
|
|
8bc276489d | ||
|
|
c2620629ba | ||
|
|
564cf5a413 | ||
|
|
5c4219fbd0 | ||
|
|
6d77178d61 | ||
|
|
45a44c137e | ||
|
|
269bb041bc | ||
|
|
c5ef18bc7a | ||
|
|
089fff7d0f | ||
|
|
7b92bfcdda | ||
|
|
34a18fe104 | ||
|
|
bfb312de44 | ||
|
|
41672a72c6 | ||
|
|
49d11a6986 | ||
|
|
59f3d775ce | ||
|
|
1dd58d9887 | ||
|
|
1193f1dba3 | ||
|
|
43c3bb61a3 | ||
|
|
22db8b7ae0 | ||
|
|
4ff95be53b | ||
|
|
0d6ccd489d | ||
|
|
746b9478b4 | ||
|
|
14dfd8fb04 | ||
|
|
4e49160f09 | ||
|
|
03ef7826c1 | ||
|
|
a1eca0ff65 | ||
|
|
7f190469fa | ||
|
|
d3d79b56b3 | ||
|
|
e2d297ebc0 | ||
|
|
33aad0f436 | ||
|
|
b5c93d87bc | ||
|
|
8989986ee7 | ||
|
|
beb8da9283 | ||
|
|
fd1eea21d2 | ||
|
|
46a953a9d8 | ||
|
|
46ef86e478 | ||
|
|
fa1a85f682 | ||
|
|
e477de6dd0 | ||
|
|
d5f92eed8c | ||
|
|
7cdb790f4e | ||
|
|
43f1a15970 | ||
|
|
c67c076ab3 | ||
|
|
3297639d09 | ||
|
|
20bb851c4e | ||
|
|
728dd446b3 | ||
|
|
f8abc8193b | ||
|
|
e7d1b6ec00 | ||
|
|
83c819a130 | ||
|
|
d29459fa37 | ||
|
|
100557e975 | ||
|
|
102aaeb390 | ||
|
|
67b3461c24 | ||
|
|
5e4a0fd4ec | ||
|
|
f840d491e5 | ||
|
|
521a203b06 | ||
|
|
8f175186bc | ||
|
|
ddb413ca52 | ||
|
|
5415b67baa | ||
|
|
454563c9df | ||
|
|
19f6af475a | ||
|
|
65a3bac543 | ||
|
|
f91a53d893 | ||
|
|
f848e3f226 | ||
|
|
bc94878225 | ||
|
|
bcf52bb2c3 | ||
|
|
2c25188f70 | ||
|
|
567aeacff5 | ||
|
|
4b9168e596 | ||
|
|
8b79b28916 | ||
|
|
45706cc0ef | ||
|
|
c1e3f4e68e | ||
|
|
6cbbc97893 | ||
|
|
fa09523821 | ||
|
|
7cb527d9ba | ||
|
|
5320f29fb0 | ||
|
|
7527af4656 | ||
|
|
6adb92b074 | ||
|
|
6dc3844682 | ||
|
|
bfb16c27ee | ||
|
|
ed1cc0b81c | ||
|
|
c66c1c9d2a | ||
|
|
1748fcf909 | ||
|
|
bdac8d58ae | ||
|
|
4e21801163 | ||
|
|
4929687956 | ||
|
|
4ba7ad8a4b | ||
|
|
800fdaeaef | ||
|
|
08a89a924d | ||
|
|
5b057d2275 | ||
|
|
bdc9bd1345 | ||
|
|
d8dc677906 | ||
|
|
9c312b0e26 | ||
|
|
8d28f68e0b | ||
|
|
317c9308cc | ||
|
|
01cd3de5b3 | ||
|
|
bc2774093a | ||
|
|
afb999187f | ||
|
|
54d0598d92 | ||
|
|
163e60e32e | ||
|
|
ccbcc2a738 | ||
|
|
07e1882401 | ||
|
|
e56589d19e | ||
|
|
bfb5367d27 | ||
|
|
712c0ef27d | ||
|
|
94b2ddef45 | ||
|
|
b84a83adf4 | ||
|
|
c8514f58c6 | ||
|
|
841ddb036b | ||
|
|
982a37a413 | ||
|
|
741af7cce5 | ||
|
|
9954080672 | ||
|
|
f47f4b4a5c | ||
|
|
1a3fab9cd9 | ||
|
|
b683bf6f18 | ||
|
|
976ae1bf44 | ||
|
|
ffc63383dc | ||
|
|
c6ea6de5c2 | ||
|
|
fe812530d8 | ||
|
|
75d07175ae | ||
|
|
544580bd8b | ||
|
|
d30d307f80 | ||
|
|
5ccdfe258c | ||
|
|
8f8b550608 | ||
|
|
7836d0b059 | ||
|
|
4b9cbe9ca7 | ||
|
|
034b223f8f | ||
|
|
f87326620b | ||
|
|
b4a526ed18 | ||
|
|
410cc171c6 | ||
|
|
558b897700 | ||
|
|
e804757d83 | ||
|
|
bd434ed02d | ||
|
|
df89f5c8b8 | ||
|
|
3aebd8311f | ||
|
|
f025296331 | ||
|
|
1a58a962bb | ||
|
|
079d6b0de8 | ||
|
|
321841101b | ||
|
|
8071ca0d66 | ||
|
|
c1141c5267 | ||
|
|
f1fdd4524d | ||
|
|
02dd2c7f1a | ||
|
|
fc3a323a21 | ||
|
|
d92f501b50 | ||
|
|
be408ba6ea |
@@ -1,3 +1,9 @@
|
|||||||
|
# インスタンス名
|
||||||
|
name:
|
||||||
|
|
||||||
|
# インスタンスの紹介
|
||||||
|
description:
|
||||||
|
|
||||||
# サーバーのメンテナ情報
|
# サーバーのメンテナ情報
|
||||||
maintainer:
|
maintainer:
|
||||||
# メンテナの名前
|
# メンテナの名前
|
||||||
@@ -6,13 +12,19 @@ maintainer:
|
|||||||
# メンテナの連絡先(URLかmailto形式のURL)
|
# メンテナの連絡先(URLかmailto形式のURL)
|
||||||
url:
|
url:
|
||||||
|
|
||||||
|
# レポジトリのURL
|
||||||
|
repository_url:
|
||||||
|
|
||||||
|
# フィードバックのURL(issueなど)
|
||||||
|
feedback_url:
|
||||||
|
|
||||||
# (Misskeyを動かす)URL
|
# (Misskeyを動かす)URL
|
||||||
url:
|
url:
|
||||||
|
|
||||||
# 待受ポート
|
# 待受ポート
|
||||||
port:
|
port:
|
||||||
|
|
||||||
# TLSの設定(利用しない場合は省略してください)
|
# TLSの設定(利用しない場合はフィールドごと削除してください)
|
||||||
https:
|
https:
|
||||||
# 証明書のパス...
|
# 証明書のパス...
|
||||||
key:
|
key:
|
||||||
@@ -37,7 +49,7 @@ recaptcha:
|
|||||||
site_key:
|
site_key:
|
||||||
secret_key:
|
secret_key:
|
||||||
|
|
||||||
# ServiceWrokerの設定
|
# ServiceWorkerの設定
|
||||||
sw:
|
sw:
|
||||||
# VAPIDの公開鍵
|
# VAPIDの公開鍵
|
||||||
public_key:
|
public_key:
|
||||||
@@ -55,3 +67,7 @@ twitter:
|
|||||||
|
|
||||||
# インテグレーション用アプリのコンシューマーシークレット
|
# インテグレーション用アプリのコンシューマーシークレット
|
||||||
consumer_secret:
|
consumer_secret:
|
||||||
|
|
||||||
|
# true にすると、リモートのファイルをキャッシュしなくなります(直リンクします)。
|
||||||
|
# ストレージ容量を節約することができますが、「リモートメディアを表示しない」設定をオンにしているユーザーは、リモートの画像などは見えなくなります。
|
||||||
|
preventCache: false
|
||||||
|
|||||||
2
.gitattributes
vendored
@@ -1,3 +1,5 @@
|
|||||||
*.svg -diff -text
|
*.svg -diff -text
|
||||||
*.psd -diff -text
|
*.psd -diff -text
|
||||||
*.ai -diff -text
|
*.ai -diff -text
|
||||||
|
yarn.lock -diff -text
|
||||||
|
package-lock.json -diff -text
|
||||||
|
|||||||
4
.gitignore
vendored
@@ -5,9 +5,9 @@
|
|||||||
/build
|
/build
|
||||||
/built
|
/built
|
||||||
/data
|
/data
|
||||||
|
/.cache-loader
|
||||||
npm-debug.log
|
npm-debug.log
|
||||||
*.pem
|
*.pem
|
||||||
run.bat
|
run.bat
|
||||||
api-docs.json
|
api-docs.json
|
||||||
package-lock.json
|
*.log
|
||||||
yarn.lock
|
|
||||||
|
|||||||
28
CHANGELOG.md
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
ChangeLog
|
||||||
|
=========
|
||||||
|
|
||||||
|
破壊的変更のみ記載。
|
||||||
|
|
||||||
|
This document describes breaking changes only.
|
||||||
|
|
||||||
|
4.0.0
|
||||||
|
-----
|
||||||
|
|
||||||
|
オセロがリバーシに変更されました。
|
||||||
|
|
||||||
|
Othello is now Reversi.
|
||||||
|
|
||||||
|
### Migration
|
||||||
|
|
||||||
|
MongoDBの、`othelloGames`と`othelloMatchings`コレクションをそれぞれ`reversiGames`と`reversiMatchings`にリネームしてください。
|
||||||
|
|
||||||
|
You need to rename `othelloGames` and `othelloMatchings` MongoDB collections to `reversiGames` and `reversiMatchings`.
|
||||||
|
|
||||||
|
3.0.0
|
||||||
|
-----
|
||||||
|
|
||||||
|
### Migration
|
||||||
|
|
||||||
|
起動する前に、`node cli/recount-stats`してください。
|
||||||
|
|
||||||
|
Please run `node cli/recount-stats` before launch.
|
||||||
59
README.md
@@ -5,27 +5,29 @@
|
|||||||
|
|
||||||
[![][travis-badge]][travis-link]
|
[![][travis-badge]][travis-link]
|
||||||
[![][dependencies-badge]][dependencies-link]
|
[![][dependencies-badge]][dependencies-link]
|
||||||
[![][himawari-badge]][himasaku]
|
[](http://makeapullrequest.com) [](https://greenkeeper.io/)
|
||||||
[![][sakurako-badge]][himasaku]
|
|
||||||
[](http://makeapullrequest.com)
|
|
||||||
|
|
||||||
> Lead Maintainer: [syuilo][syuilo-link]
|
> Lead Maintainer: [syuilo][syuilo-link]
|
||||||
|
|
||||||
**[Misskey](https://misskey.xyz)** is a completely open source,
|
**[Misskey](https://misskey.xyz)** is a completely open source,
|
||||||
ultimately sophisticated new type of mini-blog based SNS.
|
ultimately sophisticated professional microblogging software.
|
||||||
|
|
||||||
<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>
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
:sparkles: Features
|
:sparkles: Features
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
* Reactions
|
* Reactions
|
||||||
* User lists
|
* User lists
|
||||||
|
* Customizable column view (called MisskeyDeck)
|
||||||
|
* and widgets!
|
||||||
* Private messages
|
* Private messages
|
||||||
* Mute
|
* Mute
|
||||||
* Real time contents
|
* Real-time timelines
|
||||||
* ActivityPub compatible
|
* ActivityPub compatible
|
||||||
|
|
||||||
and more! You can touch with your own eyes at [misskey.xyz](https://misskey.xyz).
|
and more! You can see it with your own eyes at [misskey.xyz](https://misskey.xyz).
|
||||||
|
|
||||||
:package: Create your instance
|
:package: Create your instance
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
@@ -42,27 +44,15 @@ If you want to...
|
|||||||
|
|
||||||
:heart: Backers & Sponsors
|
:heart: Backers & Sponsors
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
[![Backers][backers-image]][support-url]
|
| ![][nagarus-icon] | ![][dansup-icon] |
|
||||||
[![Sponsors][sponsors-image]][support-url]
|
|:-:|:-:|
|
||||||
|
| [nagarus][nagarus-link] | [dansup][dansup-link] |
|
||||||
:mortar_board: Notable contributors
|
|
||||||
----------------------------------------------------------------
|
|
||||||
| ![syuilo][syuilo-icon] | ![Morisawa Aya][ayamorisawa-icon] | ![otofune][otofune-icon] | ![akihikodaki][akihikodaki-icon] | ![tamaina][tamaina-icon] | ![rinsuki][rinsuki-icon] |
|
|
||||||
|:-:|:-:|:-:|:-:|:-:|:-:|
|
|
||||||
| [syuilo][syuilo-link]<br>Owner | [Aya Morisawa][ayamorisawa-link]<br>Collaborator | [otofune][otofune-link]<br>Collaborator | [akihikodaki][akihikodaki-link] | [tamaina][tamaina-link] | [rinsuki][rinsuki-link] |
|
|
||||||
|
|
||||||
[List of all contributors](https://github.com/syuilo/misskey/graphs/contributors)
|
|
||||||
|
|
||||||
### :earth_americas: Translators
|
|
||||||
| ![][mirro-san-icon] | ![][Conan-kun-icon] | ![][m4sk1n-icon] |
|
|
||||||
|:-:|:-:|:-:|
|
|
||||||
| [Mirro][mirro-san-link]<br>English, French | [Asriel][Conan-kun-link]<br>English, French | [Marcin Mikołajczak][m4sk1n-link]<br>Polish |
|
|
||||||
|
|
||||||
:four_leaf_clover: Copyright
|
:four_leaf_clover: Copyright
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
> Copyright (c) 2014-2018 syuilo
|
> Copyright (c) 2014-2018 syuilo
|
||||||
|
|
||||||
Misskey is an open-source software licensed under [GNU AGPLv3](LICENSE).
|
Misskey is an open-source software licensed under the [GNU AGPLv3](LICENSE).
|
||||||
|
|
||||||
[![][agpl-3.0-badge]][AGPL-3.0]
|
[![][agpl-3.0-badge]][AGPL-3.0]
|
||||||
|
|
||||||
@@ -72,9 +62,6 @@ Misskey is an open-source software licensed under [GNU AGPLv3](LICENSE).
|
|||||||
[travis-badge]: http://img.shields.io/travis/syuilo/misskey/master.svg?style=flat-square
|
[travis-badge]: http://img.shields.io/travis/syuilo/misskey/master.svg?style=flat-square
|
||||||
[dependencies-link]: https://david-dm.org/syuilo/misskey
|
[dependencies-link]: https://david-dm.org/syuilo/misskey
|
||||||
[dependencies-badge]: https://img.shields.io/david/syuilo/misskey.svg?style=flat-square
|
[dependencies-badge]: https://img.shields.io/david/syuilo/misskey.svg?style=flat-square
|
||||||
[himasaku]: https://himasaku.net
|
|
||||||
[himawari-badge]: https://img.shields.io/badge/%E5%8F%A4%E8%B0%B7-%E5%90%91%E6%97%A5%E8%91%B5-1684c5.svg?style=flat-square
|
|
||||||
[sakurako-badge]: https://img.shields.io/badge/%E5%A4%A7%E5%AE%A4-%E6%AB%BB%E5%AD%90-efb02a.svg?style=flat-square
|
|
||||||
|
|
||||||
[backer-url]: #backers
|
[backer-url]: #backers
|
||||||
[backer-badge]: https://opencollective.com/misskey/backers/badge.svg
|
[backer-badge]: https://opencollective.com/misskey/backers/badge.svg
|
||||||
@@ -84,23 +71,11 @@ Misskey is an open-source software licensed under [GNU AGPLv3](LICENSE).
|
|||||||
[sponsors-image]: https://opencollective.com/misskey/sponsors.svg
|
[sponsors-image]: https://opencollective.com/misskey/sponsors.svg
|
||||||
[support-url]: https://opencollective.com/misskey#support
|
[support-url]: https://opencollective.com/misskey#support
|
||||||
|
|
||||||
<!-- Contributors Info -->
|
|
||||||
[syuilo-link]: https://syuilo.com
|
[syuilo-link]: https://syuilo.com
|
||||||
[syuilo-icon]: https://avatars2.githubusercontent.com/u/4439005?v=3&s=70
|
[syuilo-icon]: https://avatars2.githubusercontent.com/u/4439005?v=3&s=70
|
||||||
[ayamorisawa-link]: https://github.com/ayamorisawa
|
|
||||||
[ayamorisawa-icon]: https://avatars0.githubusercontent.com/u/10798641?v=3&s=70
|
|
||||||
[otofune-link]: https://github.com/otofune
|
|
||||||
[otofune-icon]: https://avatars0.githubusercontent.com/u/15062473?v=3&s=70
|
|
||||||
[akihikodaki-link]: https://github.com/akihikodaki
|
|
||||||
[akihikodaki-icon]: https://avatars2.githubusercontent.com/u/17036990?s=70&v=4
|
|
||||||
[rinsuki-link]: https://github.com/rinsuki
|
|
||||||
[rinsuki-icon]: https://avatars0.githubusercontent.com/u/6533808?s=70&v=4
|
|
||||||
[tamaina-link]: https://github.com/tamaina
|
|
||||||
[tamaina-icon]: https://avatars1.githubusercontent.com/u/7973572?s=70&v=4
|
|
||||||
|
|
||||||
[mirro-san-link]: https://github.com/mirro-san
|
[nagarus-link]: https://www.patreon.com/user/creators?u=11601413
|
||||||
[mirro-san-icon]: https://avatars1.githubusercontent.com/u/17948612?s=70&v=4
|
[nagarus-icon]: https://c10.patreonusercontent.com/3/eyJ2IjoiMSIsInciOjIwMH0%3D/patreon-media/user/11601413/20cb15f209924302b399b99d3c98b850?token-time=2145916800&token-hash=IO31nK6VZCMWBWU2VAk2c824BX2QZ4DNPKyHHZXS0iw%3D
|
||||||
[Conan-kun-link]: https://github.com/Conan-kun
|
[dansup-link]: https://www.patreon.com/dansup
|
||||||
[Conan-kun-icon]: https://avatars3.githubusercontent.com/u/30003708?s=70&v=4
|
[dansup-icon]: https://c10.patreonusercontent.com/3/eyJ2IjoiMSIsInciOjIwMH0%3D/patreon-media/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb?token-time=2145916800&token-hash=opXAM_pnhUTuN1jCA6p_Nn_YsaqohY465YFjWFqMEEE%3D
|
||||||
[m4sk1n-link]: https://github.com/m4sk1n
|
|
||||||
[m4sk1n-icon]: https://avatars3.githubusercontent.com/u/21127288?s=70&v=4
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 352 KiB After Width: | Height: | Size: 264 KiB |
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -1,161 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<svg
|
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
width="896"
|
|
||||||
height="896"
|
|
||||||
viewBox="0 0 237.06667 237.06667"
|
|
||||||
version="1.1"
|
|
||||||
id="svg8"
|
|
||||||
inkscape:version="0.92.1 r15371"
|
|
||||||
sodipodi:docname="128.svg"
|
|
||||||
inkscape:export-filename="C:\Users\syuilo\projects\misskey\assets\favicon\128.png"
|
|
||||||
inkscape:export-xdpi="13.714286"
|
|
||||||
inkscape:export-ydpi="13.714286">
|
|
||||||
<defs
|
|
||||||
id="defs2">
|
|
||||||
<inkscape:path-effect
|
|
||||||
effect="simplify"
|
|
||||||
id="path-effect5115"
|
|
||||||
is_visible="true"
|
|
||||||
steps="1"
|
|
||||||
threshold="0.000408163"
|
|
||||||
smooth_angles="360"
|
|
||||||
helper_size="0"
|
|
||||||
simplify_individual_paths="false"
|
|
||||||
simplify_just_coalesce="false"
|
|
||||||
simplifyindividualpaths="false"
|
|
||||||
simplifyJustCoalesce="false" />
|
|
||||||
<inkscape:path-effect
|
|
||||||
effect="simplify"
|
|
||||||
id="path-effect5111"
|
|
||||||
is_visible="true"
|
|
||||||
steps="1"
|
|
||||||
threshold="0.000408163"
|
|
||||||
smooth_angles="360"
|
|
||||||
helper_size="0"
|
|
||||||
simplify_individual_paths="false"
|
|
||||||
simplify_just_coalesce="false"
|
|
||||||
simplifyindividualpaths="false"
|
|
||||||
simplifyJustCoalesce="false" />
|
|
||||||
<inkscape:path-effect
|
|
||||||
effect="simplify"
|
|
||||||
id="path-effect5104"
|
|
||||||
is_visible="true"
|
|
||||||
steps="1"
|
|
||||||
threshold="0.000408163"
|
|
||||||
smooth_angles="360"
|
|
||||||
helper_size="0"
|
|
||||||
simplify_individual_paths="false"
|
|
||||||
simplify_just_coalesce="false"
|
|
||||||
simplifyindividualpaths="false"
|
|
||||||
simplifyJustCoalesce="false" />
|
|
||||||
</defs>
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="base"
|
|
||||||
pagecolor="#ffffff"
|
|
||||||
bordercolor="#666666"
|
|
||||||
borderopacity="1.0"
|
|
||||||
inkscape:pageopacity="0.0"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:zoom="0.7071068"
|
|
||||||
inkscape:cx="908.16505"
|
|
||||||
inkscape:cy="468.2779"
|
|
||||||
inkscape:document-units="px"
|
|
||||||
inkscape:current-layer="g4502"
|
|
||||||
showgrid="true"
|
|
||||||
units="px"
|
|
||||||
inkscape:snap-bbox="true"
|
|
||||||
inkscape:bbox-nodes="true"
|
|
||||||
inkscape:snap-bbox-edge-midpoints="true"
|
|
||||||
inkscape:snap-smooth-nodes="true"
|
|
||||||
inkscape:snap-center="true"
|
|
||||||
inkscape:snap-page="true"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="1017"
|
|
||||||
inkscape:window-x="-8"
|
|
||||||
inkscape:window-y="1072"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:snap-object-midpoints="true"
|
|
||||||
inkscape:snap-midpoints="true"
|
|
||||||
inkscape:object-paths="true"
|
|
||||||
fit-margin-top="0"
|
|
||||||
fit-margin-left="0"
|
|
||||||
fit-margin-right="0"
|
|
||||||
fit-margin-bottom="0"
|
|
||||||
objecttolerance="1"
|
|
||||||
guidetolerance="1"
|
|
||||||
inkscape:snap-nodes="true"
|
|
||||||
inkscape:snap-others="false"
|
|
||||||
inkscape:bbox-paths="true"
|
|
||||||
inkscape:snap-bbox-midpoints="true">
|
|
||||||
<inkscape:grid
|
|
||||||
type="xygrid"
|
|
||||||
id="grid4504"
|
|
||||||
spacingx="4.2333334"
|
|
||||||
spacingy="4.2333334"
|
|
||||||
empcolor="#ff3fff"
|
|
||||||
empopacity="0.25098039"
|
|
||||||
empspacing="4" />
|
|
||||||
</sodipodi:namedview>
|
|
||||||
<metadata
|
|
||||||
id="metadata5">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work
|
|
||||||
rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
||||||
<dc:title></dc:title>
|
|
||||||
</cc:Work>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<g
|
|
||||||
inkscape:label="レイヤー 1"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer1"
|
|
||||||
transform="translate(-30.809093,-10.18601)">
|
|
||||||
<g
|
|
||||||
id="g4502"
|
|
||||||
transform="matrix(1.096096,0,0,1.096096,47.839369,-94.823577)"
|
|
||||||
inkscape:export-xdpi="6"
|
|
||||||
inkscape:export-ydpi="6">
|
|
||||||
<rect
|
|
||||||
style="opacity:1;fill:#2fa1bb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.96554804;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97647059"
|
|
||||||
id="rect4506"
|
|
||||||
width="216.28276"
|
|
||||||
height="216.28278"
|
|
||||||
x="-15.537212"
|
|
||||||
y="95.803268" />
|
|
||||||
<g
|
|
||||||
style="fill:#ffffff;fill-opacity:1"
|
|
||||||
transform="translate(-1.3333333e-6,-1.3439941e-6)"
|
|
||||||
id="g5125">
|
|
||||||
<g
|
|
||||||
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)"
|
|
||||||
id="text4489"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
aria-label="Mi">
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="zccssscssccscczzzccsccsscscsccz"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path5210"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#ffffff;fill-opacity:1;stroke-width:0.28950602px"
|
|
||||||
d="m 75.196381,231.17126 c -5.855419,0.0202 -10.885068,-3.50766 -13.2572,-7.61584 -1.266603,-1.79454 -3.772419,-2.43291 -3.807919,0 v 11.2332 c 0,4.51309 -1.645397,8.41504 -4.936191,11.70583 -3.196772,3.19677 -7.098714,4.79516 -11.705826,4.79516 -4.513089,0 -8.415031,-1.59839 -11.705825,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -61.7729 c 0,-3.47884 0.987238,-6.6286 2.961715,-9.44928 2.068499,-2.91471 4.701135,-4.9362 7.897906,-6.06447 1.786431,-0.65816 3.666885,-0.98724 5.641362,-0.98724 5.077225,0 9.308247,1.97448 12.693064,5.92343 1.786431,1.97448 2.820681,3.00873 3.102749,3.10275 0,0 13.408119,16.21319 13.78421,16.49526 0.376091,0.28206 1.480789,2.43848 4.127113,2.43848 2.646324,0 3.89218,-2.15642 4.26827,-2.43848 0.376091,-0.28207 13.784088,-16.49526 13.784088,-16.49526 0.09402,0.094 1.081261,-0.94022 2.961715,-3.10275 3.478837,-3.94895 7.756866,-5.92343 12.834096,-5.92343 1.88045,0 3.76091,0.32908 5.64136,0.98724 3.19677,1.12827 5.7824,3.14976 7.75688,6.06447 2.06849,2.82068 3.10274,5.97044 3.10274,9.44928 v 61.7729 c 0,4.51309 -1.6454,8.41504 -4.93619,11.70583 -3.19677,3.19677 -7.09871,4.79516 -11.70582,4.79516 -4.51309,0 -8.41504,-1.59839 -11.705828,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -11.2332 c -0.277898,-3.06563 -2.987588,-1.13379 -3.948953,0 -2.538613,4.70114 -7.401781,7.59567 -13.2572,7.61584 z" />
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path5212"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#ffffff;fill-opacity:1;stroke-width:0.28950602px"
|
|
||||||
d="m 145.83461,185.00361 q -5.92343,0 -10.15445,-4.08999 -4.08999,-4.23102 -4.08999,-10.15445 0,-5.92343 4.08999,-10.01342 4.23102,-4.23102 10.15445,-4.23102 5.92343,0 10.15445,4.23102 4.23102,4.08999 4.23102,10.01342 0,5.92343 -4.23102,10.15445 -4.23102,4.08999 -10.15445,4.08999 z m 0.14103,2.82068 q 5.92343,0 10.01342,4.23102 4.23102,4.23102 4.23102,10.15445 v 34.83541 q 0,5.92343 -4.23102,10.15445 -4.08999,4.08999 -10.01342,4.08999 -5.92343,0 -10.15445,-4.08999 -4.23102,-4.23102 -4.23102,-10.15445 v -34.83541 q 0,-5.92343 4.23102,-10.15445 4.23102,-4.23102 10.15445,-4.23102 z" />
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 7.5 KiB |
|
Before Width: | Height: | Size: 518 B |
@@ -1,161 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<svg
|
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
width="896"
|
|
||||||
height="896"
|
|
||||||
viewBox="0 0 237.06667 237.06667"
|
|
||||||
version="1.1"
|
|
||||||
id="svg8"
|
|
||||||
inkscape:version="0.92.1 r15371"
|
|
||||||
sodipodi:docname="256.svg"
|
|
||||||
inkscape:export-filename="C:\Users\syuilo\projects\misskey\assets\favicon\256.png"
|
|
||||||
inkscape:export-xdpi="27.428572"
|
|
||||||
inkscape:export-ydpi="27.428572">
|
|
||||||
<defs
|
|
||||||
id="defs2">
|
|
||||||
<inkscape:path-effect
|
|
||||||
effect="simplify"
|
|
||||||
id="path-effect5115"
|
|
||||||
is_visible="true"
|
|
||||||
steps="1"
|
|
||||||
threshold="0.000408163"
|
|
||||||
smooth_angles="360"
|
|
||||||
helper_size="0"
|
|
||||||
simplify_individual_paths="false"
|
|
||||||
simplify_just_coalesce="false"
|
|
||||||
simplifyindividualpaths="false"
|
|
||||||
simplifyJustCoalesce="false" />
|
|
||||||
<inkscape:path-effect
|
|
||||||
effect="simplify"
|
|
||||||
id="path-effect5111"
|
|
||||||
is_visible="true"
|
|
||||||
steps="1"
|
|
||||||
threshold="0.000408163"
|
|
||||||
smooth_angles="360"
|
|
||||||
helper_size="0"
|
|
||||||
simplify_individual_paths="false"
|
|
||||||
simplify_just_coalesce="false"
|
|
||||||
simplifyindividualpaths="false"
|
|
||||||
simplifyJustCoalesce="false" />
|
|
||||||
<inkscape:path-effect
|
|
||||||
effect="simplify"
|
|
||||||
id="path-effect5104"
|
|
||||||
is_visible="true"
|
|
||||||
steps="1"
|
|
||||||
threshold="0.000408163"
|
|
||||||
smooth_angles="360"
|
|
||||||
helper_size="0"
|
|
||||||
simplify_individual_paths="false"
|
|
||||||
simplify_just_coalesce="false"
|
|
||||||
simplifyindividualpaths="false"
|
|
||||||
simplifyJustCoalesce="false" />
|
|
||||||
</defs>
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="base"
|
|
||||||
pagecolor="#ffffff"
|
|
||||||
bordercolor="#666666"
|
|
||||||
borderopacity="1.0"
|
|
||||||
inkscape:pageopacity="0.0"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:zoom="0.7071068"
|
|
||||||
inkscape:cx="908.16505"
|
|
||||||
inkscape:cy="468.2779"
|
|
||||||
inkscape:document-units="px"
|
|
||||||
inkscape:current-layer="g4502"
|
|
||||||
showgrid="true"
|
|
||||||
units="px"
|
|
||||||
inkscape:snap-bbox="true"
|
|
||||||
inkscape:bbox-nodes="true"
|
|
||||||
inkscape:snap-bbox-edge-midpoints="true"
|
|
||||||
inkscape:snap-smooth-nodes="true"
|
|
||||||
inkscape:snap-center="true"
|
|
||||||
inkscape:snap-page="true"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="1017"
|
|
||||||
inkscape:window-x="-8"
|
|
||||||
inkscape:window-y="1072"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:snap-object-midpoints="true"
|
|
||||||
inkscape:snap-midpoints="true"
|
|
||||||
inkscape:object-paths="true"
|
|
||||||
fit-margin-top="0"
|
|
||||||
fit-margin-left="0"
|
|
||||||
fit-margin-right="0"
|
|
||||||
fit-margin-bottom="0"
|
|
||||||
objecttolerance="1"
|
|
||||||
guidetolerance="1"
|
|
||||||
inkscape:snap-nodes="true"
|
|
||||||
inkscape:snap-others="false"
|
|
||||||
inkscape:bbox-paths="true"
|
|
||||||
inkscape:snap-bbox-midpoints="true">
|
|
||||||
<inkscape:grid
|
|
||||||
type="xygrid"
|
|
||||||
id="grid4504"
|
|
||||||
spacingx="4.2333334"
|
|
||||||
spacingy="4.2333334"
|
|
||||||
empcolor="#ff3fff"
|
|
||||||
empopacity="0.25098039"
|
|
||||||
empspacing="4" />
|
|
||||||
</sodipodi:namedview>
|
|
||||||
<metadata
|
|
||||||
id="metadata5">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work
|
|
||||||
rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
||||||
<dc:title></dc:title>
|
|
||||||
</cc:Work>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<g
|
|
||||||
inkscape:label="レイヤー 1"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer1"
|
|
||||||
transform="translate(-30.809093,-10.18601)">
|
|
||||||
<g
|
|
||||||
id="g4502"
|
|
||||||
transform="matrix(1.096096,0,0,1.096096,47.839369,-94.823577)"
|
|
||||||
inkscape:export-xdpi="6"
|
|
||||||
inkscape:export-ydpi="6">
|
|
||||||
<rect
|
|
||||||
style="opacity:1;fill:#2fa1bb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.96554804;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.97647059"
|
|
||||||
id="rect4506"
|
|
||||||
width="216.28276"
|
|
||||||
height="216.28278"
|
|
||||||
x="-15.537212"
|
|
||||||
y="95.803268" />
|
|
||||||
<g
|
|
||||||
style="fill:#ffffff;fill-opacity:1"
|
|
||||||
transform="translate(-1.3333333e-6,-1.3439941e-6)"
|
|
||||||
id="g5125">
|
|
||||||
<g
|
|
||||||
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)"
|
|
||||||
id="text4489"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
aria-label="Mi">
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="zccssscssccscczzzccsccsscscsccz"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path5210"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#ffffff;fill-opacity:1;stroke-width:0.28950602px"
|
|
||||||
d="m 75.196381,231.17126 c -5.855419,0.0202 -10.885068,-3.50766 -13.2572,-7.61584 -1.266603,-1.79454 -3.772419,-2.43291 -3.807919,0 v 11.2332 c 0,4.51309 -1.645397,8.41504 -4.936191,11.70583 -3.196772,3.19677 -7.098714,4.79516 -11.705826,4.79516 -4.513089,0 -8.415031,-1.59839 -11.705825,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -61.7729 c 0,-3.47884 0.987238,-6.6286 2.961715,-9.44928 2.068499,-2.91471 4.701135,-4.9362 7.897906,-6.06447 1.786431,-0.65816 3.666885,-0.98724 5.641362,-0.98724 5.077225,0 9.308247,1.97448 12.693064,5.92343 1.786431,1.97448 2.820681,3.00873 3.102749,3.10275 0,0 13.408119,16.21319 13.78421,16.49526 0.376091,0.28206 1.480789,2.43848 4.127113,2.43848 2.646324,0 3.89218,-2.15642 4.26827,-2.43848 0.376091,-0.28207 13.784088,-16.49526 13.784088,-16.49526 0.09402,0.094 1.081261,-0.94022 2.961715,-3.10275 3.478837,-3.94895 7.756866,-5.92343 12.834096,-5.92343 1.88045,0 3.76091,0.32908 5.64136,0.98724 3.19677,1.12827 5.7824,3.14976 7.75688,6.06447 2.06849,2.82068 3.10274,5.97044 3.10274,9.44928 v 61.7729 c 0,4.51309 -1.6454,8.41504 -4.93619,11.70583 -3.19677,3.19677 -7.09871,4.79516 -11.70582,4.79516 -4.51309,0 -8.41504,-1.59839 -11.705828,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -11.2332 c -0.277898,-3.06563 -2.987588,-1.13379 -3.948953,0 -2.538613,4.70114 -7.401781,7.59567 -13.2572,7.61584 z" />
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path5212"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#ffffff;fill-opacity:1;stroke-width:0.28950602px"
|
|
||||||
d="m 145.83461,185.00361 q -5.92343,0 -10.15445,-4.08999 -4.08999,-4.23102 -4.08999,-10.15445 0,-5.92343 4.08999,-10.01342 4.23102,-4.23102 10.15445,-4.23102 5.92343,0 10.15445,4.23102 4.23102,4.08999 4.23102,10.01342 0,5.92343 -4.23102,10.15445 -4.23102,4.08999 -10.15445,4.08999 z m 0.14103,2.82068 q 5.92343,0 10.01342,4.23102 4.23102,4.23102 4.23102,10.15445 v 34.83541 q 0,5.92343 -4.23102,10.15445 -4.08999,4.08999 -10.01342,4.08999 -5.92343,0 -10.15445,-4.08999 -4.23102,-4.23102 -4.23102,-10.15445 v -34.83541 q 0,-5.92343 4.23102,-10.15445 4.23102,-4.23102 10.15445,-4.23102 z" />
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 7.5 KiB |
|
Before Width: | Height: | Size: 761 B |
|
Before Width: | Height: | Size: 1.2 KiB |
BIN
assets/favicon/favicon.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
@@ -15,7 +15,7 @@
|
|||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg8"
|
id="svg8"
|
||||||
inkscape:version="0.92.1 r15371"
|
inkscape:version="0.92.1 r15371"
|
||||||
sodipodi:docname="16.svg"
|
sodipodi:docname="favicon.svg"
|
||||||
inkscape:export-filename="C:\Users\syuilo\projects\misskey\assets\favicon\16.png"
|
inkscape:export-filename="C:\Users\syuilo\projects\misskey\assets\favicon\16.png"
|
||||||
inkscape:export-xdpi="3"
|
inkscape:export-xdpi="3"
|
||||||
inkscape:export-ydpi="3">
|
inkscape:export-ydpi="3">
|
||||||
@@ -66,7 +66,7 @@
|
|||||||
inkscape:pageopacity="0.0"
|
inkscape:pageopacity="0.0"
|
||||||
inkscape:pageshadow="2"
|
inkscape:pageshadow="2"
|
||||||
inkscape:zoom="1.4142136"
|
inkscape:zoom="1.4142136"
|
||||||
inkscape:cx="110.21885"
|
inkscape:cx="15.466544"
|
||||||
inkscape:cy="235.92965"
|
inkscape:cy="235.92965"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
inkscape:current-layer="g4502"
|
inkscape:current-layer="g4502"
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
inkscape:snap-center="true"
|
inkscape:snap-center="true"
|
||||||
inkscape:snap-page="true"
|
inkscape:snap-page="true"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="1017"
|
inkscape:window-height="1027"
|
||||||
inkscape:window-x="-8"
|
inkscape:window-x="-8"
|
||||||
inkscape:window-y="1072"
|
inkscape:window-y="1072"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
@@ -111,7 +111,7 @@
|
|||||||
<dc:format>image/svg+xml</dc:format>
|
<dc:format>image/svg+xml</dc:format>
|
||||||
<dc:type
|
<dc:type
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
<dc:title />
|
<dc:title></dc:title>
|
||||||
</cc:Work>
|
</cc:Work>
|
||||||
</rdf:RDF>
|
</rdf:RDF>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
BIN
assets/icons/128.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
assets/icons/16.png
Normal file
|
After Width: | Height: | Size: 446 B |
BIN
assets/icons/192.png
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
BIN
assets/icons/32.png
Normal file
|
After Width: | Height: | Size: 774 B |
BIN
assets/icons/64.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
@@ -69,7 +69,7 @@
|
|||||||
inkscape:cx="232.39583"
|
inkscape:cx="232.39583"
|
||||||
inkscape:cy="251.50613"
|
inkscape:cy="251.50613"
|
||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
inkscape:current-layer="layer1"
|
inkscape:current-layer="g4502"
|
||||||
showgrid="true"
|
showgrid="true"
|
||||||
units="px"
|
units="px"
|
||||||
inkscape:snap-bbox="true"
|
inkscape:snap-bbox="true"
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
inkscape:snap-center="true"
|
inkscape:snap-center="true"
|
||||||
inkscape:snap-page="true"
|
inkscape:snap-page="true"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="1017"
|
inkscape:window-height="1027"
|
||||||
inkscape:window-x="-8"
|
inkscape:window-x="-8"
|
||||||
inkscape:window-y="1072"
|
inkscape:window-y="1072"
|
||||||
inkscape:window-maximized="1"
|
inkscape:window-maximized="1"
|
||||||
@@ -111,7 +111,7 @@
|
|||||||
<dc:format>image/svg+xml</dc:format>
|
<dc:format>image/svg+xml</dc:format>
|
||||||
<dc:type
|
<dc:type
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
<dc:title></dc:title>
|
<dc:title />
|
||||||
</cc:Work>
|
</cc:Work>
|
||||||
</rdf:RDF>
|
</rdf:RDF>
|
||||||
</metadata>
|
</metadata>
|
||||||
@@ -124,25 +124,19 @@
|
|||||||
id="g4502"
|
id="g4502"
|
||||||
transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)">
|
transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)">
|
||||||
<g
|
<g
|
||||||
style="fill:#2fa1bb;fill-opacity:0.94117647"
|
style="fill:#000000;fill-opacity:1"
|
||||||
transform="translate(-1.3333333e-6,-1.3439941e-6)"
|
transform="translate(-1.3333333e-6,-1.3439941e-6)"
|
||||||
id="g5125">
|
id="g5125">
|
||||||
<g
|
<g
|
||||||
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)"
|
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)"
|
||||||
id="text4489"
|
id="text4489"
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#2fa1bb;fill-opacity:0.94117647;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||||
aria-label="Mi">
|
aria-label="Mi">
|
||||||
<path
|
<path
|
||||||
sodipodi:nodetypes="zccssscssccscczzzccsccsscscsccz"
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#000000;fill-opacity:1;stroke-width:1.09609616px"
|
||||||
inkscape:connector-curvature="0"
|
d="M 62.474609 76.585938 C 54.999059 76.585938 47.878825 77.832365 41.115234 80.324219 C 29.011968 84.595952 19.044417 92.249798 11.212891 103.28516 C 3.7373405 113.96451 0 125.88934 0 139.06055 L 0 372.93945 C 0 390.02642 6.0510264 404.79858 18.154297 417.25781 C 30.613543 429.36108 45.387643 435.41406 62.474609 435.41406 C 79.917556 435.41406 94.689698 429.36108 106.79297 417.25781 C 119.25222 404.79858 125.48242 390.02642 125.48242 372.93945 L 125.48242 330.4082 C 125.61683 321.19698 135.10492 323.61391 139.90039 330.4082 C 148.8815 345.96215 167.92265 359.32062 190.0918 359.24414 C 212.26095 359.16778 230.67374 348.20715 240.28516 330.4082 C 243.92497 326.11557 254.18418 318.80145 255.23633 330.4082 L 255.23633 372.93945 C 255.23633 390.02642 261.28735 404.79858 273.39062 417.25781 C 285.84985 429.36108 300.62397 435.41406 317.71094 435.41406 C 335.15388 435.41406 349.92603 429.36108 362.0293 417.25781 C 374.48853 404.79858 380.71875 390.02642 380.71875 372.93945 L 380.71875 139.06055 C 380.71875 125.88934 376.80415 113.96451 368.97266 103.28516 C 361.49709 92.249798 351.70678 84.595952 339.60352 80.324219 C 332.48396 77.832365 325.3637 76.585938 318.24414 76.585938 C 299.02128 76.585938 282.82549 84.062587 269.6543 99.013672 C 262.53473 107.20121 258.79542 111.11761 258.43945 110.76172 C 258.43945 110.76172 207.67587 172.14495 206.25195 173.21289 C 204.82804 174.2808 200.11102 182.44531 190.0918 182.44531 C 180.07257 182.44531 175.89071 174.2808 174.4668 173.21289 C 173.04288 172.14495 122.2793 110.76172 122.2793 110.76172 C 121.21136 110.40575 117.29484 106.48923 110.53125 99.013672 C 97.716024 84.062587 81.697447 76.585938 62.474609 76.585938 z M 457.53516 76.585938 C 442.58406 76.585937 429.7692 81.926117 419.08984 92.605469 C 408.76646 102.92885 403.60547 115.56648 403.60547 130.51758 C 403.60547 145.46868 408.76646 158.28354 419.08984 168.96289 C 429.7692 179.28627 442.58406 184.44922 457.53516 184.44922 C 472.48625 184.44922 485.30112 179.28627 495.98047 168.96289 C 506.65982 158.28354 512 145.46868 512 130.51758 C 512 115.56648 506.65982 102.92885 495.98047 92.605469 C 485.30112 81.926117 472.48625 76.585938 457.53516 76.585938 z M 458.06836 195.12695 C 443.11726 195.12695 430.3024 200.46713 419.62305 211.14648 C 408.94369 221.82584 403.60547 234.6407 403.60547 249.5918 L 403.60547 381.48242 C 403.60547 396.43352 408.94369 409.24838 419.62305 419.92773 C 430.3024 430.25112 443.11726 435.41406 458.06836 435.41406 C 473.01946 435.41406 485.65709 430.25112 495.98047 419.92773 C 506.65982 409.24838 512 396.43352 512 381.48242 L 512 249.5918 C 512 234.6407 506.65982 221.82584 495.98047 211.14648 C 485.65709 200.46713 473.01946 195.12695 458.06836 195.12695 z "
|
||||||
id="path5210"
|
transform="matrix(0.26412464,0,0,0.26412464,24.988264,136.28626)"
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#2fa1bb;fill-opacity:0.94117647;stroke-width:0.28950602px"
|
id="path5210" />
|
||||||
d="m 75.196381,231.17126 c -5.855419,0.0202 -10.885068,-3.50766 -13.2572,-7.61584 -1.266603,-1.79454 -3.772419,-2.43291 -3.807919,0 v 11.2332 c 0,4.51309 -1.645397,8.41504 -4.936191,11.70583 -3.196772,3.19677 -7.098714,4.79516 -11.705826,4.79516 -4.513089,0 -8.415031,-1.59839 -11.705825,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -61.7729 c 0,-3.47884 0.987238,-6.6286 2.961715,-9.44928 2.068499,-2.91471 4.701135,-4.9362 7.897906,-6.06447 1.786431,-0.65816 3.666885,-0.98724 5.641362,-0.98724 5.077225,0 9.308247,1.97448 12.693064,5.92343 1.786431,1.97448 2.820681,3.00873 3.102749,3.10275 0,0 13.408119,16.21319 13.78421,16.49526 0.376091,0.28206 1.480789,2.43848 4.127113,2.43848 2.646324,0 3.89218,-2.15642 4.26827,-2.43848 0.376091,-0.28207 13.784088,-16.49526 13.784088,-16.49526 0.09402,0.094 1.081261,-0.94022 2.961715,-3.10275 3.478837,-3.94895 7.756866,-5.92343 12.834096,-5.92343 1.88045,0 3.76091,0.32908 5.64136,0.98724 3.19677,1.12827 5.7824,3.14976 7.75688,6.06447 2.06849,2.82068 3.10274,5.97044 3.10274,9.44928 v 61.7729 c 0,4.51309 -1.6454,8.41504 -4.93619,11.70583 -3.19677,3.19677 -7.09871,4.79516 -11.70582,4.79516 -4.51309,0 -8.41504,-1.59839 -11.705828,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -11.2332 c -0.277898,-3.06563 -2.987588,-1.13379 -3.948953,0 -2.538613,4.70114 -7.401781,7.59567 -13.2572,7.61584 z" />
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path5212"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#2fa1bb;fill-opacity:0.94117647;stroke-width:0.28950602px"
|
|
||||||
d="m 145.83461,185.00361 q -5.92343,0 -10.15445,-4.08999 -4.08999,-4.23102 -4.08999,-10.15445 0,-5.92343 4.08999,-10.01342 4.23102,-4.23102 10.15445,-4.23102 5.92343,0 10.15445,4.23102 4.23102,4.08999 4.23102,10.01342 0,5.92343 -4.23102,10.15445 -4.23102,4.08999 -10.15445,4.08999 z m 0.14103,2.82068 q 5.92343,0 10.01342,4.23102 4.23102,4.23102 4.23102,10.15445 v 34.83541 q 0,5.92343 -4.23102,10.15445 -4.08999,4.08999 -10.01342,4.08999 -5.92343,0 -10.15445,-4.08999 -4.23102,-4.23102 -4.23102,-10.15445 v -34.83541 q 0,-5.92343 4.23102,-10.15445 4.23102,-4.23102 10.15445,-4.23102 z" />
|
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 7.0 KiB After Width: | Height: | Size: 7.3 KiB |
@@ -8,7 +8,8 @@ const { default: User } = require('../built/models/user');
|
|||||||
const q = {
|
const q = {
|
||||||
'metadata._user.host': {
|
'metadata._user.host': {
|
||||||
$ne: null
|
$ne: null
|
||||||
}
|
},
|
||||||
|
'metadata.isMetaOnly': false
|
||||||
};
|
};
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
@@ -56,8 +57,7 @@ async function main() {
|
|||||||
|
|
||||||
DriveFile.update({ _id: file._id }, {
|
DriveFile.update({ _id: file._id }, {
|
||||||
$set: {
|
$set: {
|
||||||
'metadata.deletedAt': new Date(),
|
'metadata.isMetaOnly': true
|
||||||
'metadata.isExpired': true
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
]).then(async () => {
|
]).then(async () => {
|
||||||
|
|||||||
42
cli/recount-stats.js
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
const { default: Note } = require('../built/models/note');
|
||||||
|
const { default: Meta } = require('../built/models/meta');
|
||||||
|
const { default: User } = require('../built/models/user');
|
||||||
|
|
||||||
|
async function main() {
|
||||||
|
const meta = await Meta.findOne({});
|
||||||
|
|
||||||
|
const notesCount = await Note.count();
|
||||||
|
|
||||||
|
const usersCount = await User.count();
|
||||||
|
|
||||||
|
const originalNotesCount = await Note.count({
|
||||||
|
'_user.host': null
|
||||||
|
});
|
||||||
|
|
||||||
|
const originalUsersCount = await User.count({
|
||||||
|
host: null
|
||||||
|
});
|
||||||
|
|
||||||
|
const stats = {
|
||||||
|
notesCount,
|
||||||
|
usersCount,
|
||||||
|
originalNotesCount,
|
||||||
|
originalUsersCount
|
||||||
|
};
|
||||||
|
|
||||||
|
if (meta) {
|
||||||
|
await Meta.update({}, {
|
||||||
|
$set: {
|
||||||
|
stats
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
await Meta.insert({
|
||||||
|
stats
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
main().then(() => {
|
||||||
|
console.log('done');
|
||||||
|
}).catch(console.error);
|
||||||
@@ -3,16 +3,21 @@ const User = require('../built/models/user').default;
|
|||||||
|
|
||||||
const args = process.argv.slice(2);
|
const args = process.argv.slice(2);
|
||||||
|
|
||||||
const userId = new mongo.ObjectID(args[0]);
|
const user = args[0];
|
||||||
|
|
||||||
console.log(`Suspending ${userId}...`);
|
const q = user.startsWith('@') ? {
|
||||||
|
username: user.split('@')[1],
|
||||||
|
host: user.split('@')[2] || null
|
||||||
|
} : { _id: new mongo.ObjectID(user) };
|
||||||
|
|
||||||
User.update({ _id: userId }, {
|
console.log(`Suspending ${user}...`);
|
||||||
|
|
||||||
|
User.update(q, {
|
||||||
$set: {
|
$set: {
|
||||||
isSuspended: true
|
isSuspended: true
|
||||||
}
|
}
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
console.log(`Suspended ${userId}`);
|
console.log(`Suspended ${user}`);
|
||||||
}, e => {
|
}, e => {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
});
|
});
|
||||||
|
|||||||
12
cli/update-remote-user.js
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
const updatePerson = require('../built/remote/activitypub/models/person').updatePerson;
|
||||||
|
|
||||||
|
const args = process.argv.slice(2);
|
||||||
|
const user = args[0];
|
||||||
|
|
||||||
|
console.log(`Updating ${user}...`);
|
||||||
|
|
||||||
|
updatePerson(user).then(() => {
|
||||||
|
console.log(`Updated ${user}`);
|
||||||
|
}, e => {
|
||||||
|
console.error(e);
|
||||||
|
});
|
||||||
@@ -23,7 +23,3 @@ The list of people who have sent donation for Misskey.
|
|||||||
---
|
---
|
||||||
|
|
||||||
If your name is missing, please contact us!
|
If your name is missing, please contact us!
|
||||||
|
|
||||||
If you want to donate to Misskey, please get in touch with [@syuilo][syuilo-link].
|
|
||||||
|
|
||||||
[syuilo-link]: https://syuilo.com
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
# Misskeyにカンパする方法
|
|
||||||
Misskeyのサポートにご興味をお持ちいただきありがとうございます!
|
|
||||||
Misskeyにカンパをしていただくと、貴方のお名前と好きなURLなどをMisskeyのリポジトリに刻む権利がもらえます。
|
|
||||||
|
|
||||||
Misskeyにカンパして開発・運営をサポートするには、次のいくつかの方法があります:
|
|
||||||
|
|
||||||
## ConoHaカードを購入する
|
|
||||||
(本家)Misskeyは、ConoHaというVPSサービスを利用しています。ConoHaカードを購入して、
|
|
||||||
カードに記載されているクーポンコードを syuilotan@yahoo.co.jp までお送りいただければ、
|
|
||||||
そのクーポンをチャージしてサーバーの運営費に充てることができます。
|
|
||||||
|
|
||||||
ConoHaカードについてはこちらをご覧ください: https://www.conoha.jp/conohacard/
|
|
||||||
|
|
||||||
Amazonでも買えます: https://www.amazon.co.jp/dp/B01N9E3416
|
|
||||||
|
|
||||||
## Amazonギフトカード
|
|
||||||
これは間接的な方法です。
|
|
||||||
|
|
||||||
## 銀行振込
|
|
||||||
syuilotan@yahoo.co.jp までお問い合わせください。
|
|
||||||
|
|
||||||
## 手渡し
|
|
||||||
オフ会を行ったときなどに行使できる方法です。
|
|
||||||
|
|
||||||
## その他
|
|
||||||
なにかいいアイデアがあればお教えください。
|
|
||||||
@@ -47,7 +47,14 @@ You need to generate config file via `npm run config` command.
|
|||||||
|
|
||||||
*5.* Build Misskey
|
*5.* Build Misskey
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------
|
||||||
We need to use `node-gyp` to build the `crypto` module.
|
|
||||||
|
Build misskey with the following:
|
||||||
|
|
||||||
|
`npm run build`
|
||||||
|
|
||||||
|
If you're on Debian, you will need to install the `build-essential` package.
|
||||||
|
|
||||||
|
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`
|
||||||
|
|||||||
@@ -4,19 +4,19 @@ Misskey's Translation
|
|||||||
If you find an untranslated part on Misskey:
|
If you find an untranslated part on Misskey:
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
1. Look for untranslated parts in the miskey's source code.
|
1. Look for untranslated parts in the misskey's source code.
|
||||||
- For instance, if you find an untranslated part in: `src/client/app/mobile/views/pages/home.vue`.
|
- For instance, if you find an untranslated part in: `src/client/app/mobile/views/pages/home.vue`.
|
||||||
|
|
||||||
2. Replace the untranslated portion with a character string of the form `%i18n:@foo%`.
|
2. Replace the untranslated portion with a character string of the form `%i18n:@foo%`.
|
||||||
- In fact, `foo` should be a word that is appropriate for the situation and is easy to understand in English.
|
- In fact, `foo` should be a word that is appropriate for the situation and is easy to understand in English.
|
||||||
- For example, if the untranslated portion is the following "タイムライン" you must write: `%i18n:@timeline%`.
|
- For example, if the untranslated portion is the following "タイムライン" you must write: `%i18n:@timeline%`.
|
||||||
|
|
||||||
3. Open each language file in /locales, check whether the <strong>file name (path)</strong> found in step 1 exists, if not, create it.
|
3. Open the `locales/ja.yml`, check whether the <strong>file name (path)</strong> found in step 1 exists, if not, create it.
|
||||||
- Do not put the beginning of the path `src/client/app/` in the locale file.
|
- Do not put the beginning of the path `src/client/app/` in the locale file.
|
||||||
- For example, in this case we want to modify untranslated parts of `src/client/app/mobile/views/pages/home.vue`, so the key is `mobile/views/pages/home.vue`.
|
- For example, in this case we want to modify untranslated parts of `src/client/app/mobile/views/pages/home.vue`, so the key is `mobile/views/pages/home.vue`.
|
||||||
|
|
||||||
4. Add the translated text property using the `foo` keyword below the path that you found or created in step 2. Make sure to type your text in quotation marks. Text should always be inside of quotes.
|
4. Add the text property using the `foo` keyword below the path that you found or created in step 2. Make sure to type your text in quotation marks. Text should always be inside of quotes.
|
||||||
- For example, in this case we add timeline: `timeline: "Timeline"` to `locales/en.yml`, and `timeline: "タイムライン"` to `locales/ja.yml`.
|
- For example, in this case we add timeline: `timeline: "タイムライン"` to `locales/ja.yml`.
|
||||||
|
|
||||||
5. And done!
|
5. And done!
|
||||||
|
|
||||||
|
|||||||
@@ -11,12 +11,12 @@ Misskey内の未翻訳箇所を見つけたら
|
|||||||
- `foo`は実際にはその場に適したわかりやすい(英語の)名前にしてください。
|
- `foo`は実際にはその場に適したわかりやすい(英語の)名前にしてください。
|
||||||
- 例えば未翻訳箇所が「タイムライン」というテキストだった場合、`%i18n:@timeline%`のようにします。
|
- 例えば未翻訳箇所が「タイムライン」というテキストだった場合、`%i18n:@timeline%`のようにします。
|
||||||
|
|
||||||
3. /locales 内にあるそれぞれの言語ファイルを開き、1.で見つけた<strong>ファイル名(パス)</strong>のキーが存在するか確認し、無ければ作成してください。
|
3. `locales/ja.yml`を開き、1.で見つけた<strong>ファイル名(パス)</strong>のキーが存在するか確認し、無ければ作成してください。
|
||||||
- パスの`src/client/app/`は省略してください。
|
- パスの`src/client/app/`は省略してください。
|
||||||
- 例えば、今回の例では`src/client/app/mobile/views/pages/home.vue`の未翻訳箇所を修正したいので、キーは`mobile/views/pages/home.vue`になります。
|
- 例えば、今回の例では`src/client/app/mobile/views/pages/home.vue`の未翻訳箇所を修正したいので、キーは`mobile/views/pages/home.vue`になります。
|
||||||
|
|
||||||
4. そのキーの直下に2.で置換した`foo`の部分をキーとし、翻訳後のテキストを値とするプロパティを追加します。
|
4. そのキーの直下に2.で置換した`foo`の部分をキーとし、テキストを値とするプロパティを追加します。
|
||||||
- 例えば、今回の例で言うと`locales/ja.yml`に`timeline: "タイムライン"`、`locales/en.yml`に`timeline: "Timeline"`を追加します。
|
- 例えば、今回の例で言うと`locales/ja.yml`に`timeline: "タイムライン"`を追加します。
|
||||||
|
|
||||||
5. 完了です!
|
5. 完了です!
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
How to create indexes
|
|
||||||
=====================
|
|
||||||
|
|
||||||
``` shell
|
|
||||||
curl -XPOST localhost:9200/misskey -d @path/to/mappings.json
|
|
||||||
```
|
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
{
|
|
||||||
"settings": {
|
|
||||||
"analysis": {
|
|
||||||
"analyzer": {
|
|
||||||
"bigram": {
|
|
||||||
"tokenizer": "bigram_tokenizer"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tokenizer": {
|
|
||||||
"bigram_tokenizer": {
|
|
||||||
"type": "nGram",
|
|
||||||
"min_gram": 2,
|
|
||||||
"max_gram": 2,
|
|
||||||
"token_chars": [
|
|
||||||
"letter",
|
|
||||||
"digit"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": {
|
|
||||||
"user": {
|
|
||||||
"properties": {
|
|
||||||
"username": {
|
|
||||||
"type": "string",
|
|
||||||
"index": "analyzed",
|
|
||||||
"analyzer": "bigram"
|
|
||||||
},
|
|
||||||
"name": {
|
|
||||||
"type": "string",
|
|
||||||
"index": "analyzed",
|
|
||||||
"analyzer": "bigram"
|
|
||||||
},
|
|
||||||
"bio": {
|
|
||||||
"type": "string",
|
|
||||||
"index": "analyzed",
|
|
||||||
"analyzer": "kuromoji"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"post": {
|
|
||||||
"properties": {
|
|
||||||
"text": {
|
|
||||||
"type": "string",
|
|
||||||
"index": "analyzed",
|
|
||||||
"analyzer": "kuromoji"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"drive_file": {
|
|
||||||
"properties": {
|
|
||||||
"name": {
|
|
||||||
"type": "string",
|
|
||||||
"index": "analyzed",
|
|
||||||
"analyzer": "kuromoji"
|
|
||||||
},
|
|
||||||
"user": {
|
|
||||||
"type": "string",
|
|
||||||
"index": "not_analyzed"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -8,20 +8,20 @@ import * as gutil from 'gulp-util';
|
|||||||
import * as ts from 'gulp-typescript';
|
import * as ts from 'gulp-typescript';
|
||||||
const sourcemaps = require('gulp-sourcemaps');
|
const sourcemaps = require('gulp-sourcemaps');
|
||||||
import tslint from 'gulp-tslint';
|
import tslint from 'gulp-tslint';
|
||||||
import cssnano = require('gulp-cssnano');
|
const cssnano = require('gulp-cssnano');
|
||||||
import * as uglifyComposer from 'gulp-uglify/composer';
|
import * as uglifyComposer from 'gulp-uglify/composer';
|
||||||
import pug = require('gulp-pug');
|
import pug = require('gulp-pug');
|
||||||
import * as rimraf from 'rimraf';
|
import * as rimraf from 'rimraf';
|
||||||
import chalk from 'chalk';
|
import chalk from 'chalk';
|
||||||
import imagemin = require('gulp-imagemin');
|
const imagemin = require('gulp-imagemin');
|
||||||
import * as rename from 'gulp-rename';
|
import * as rename from 'gulp-rename';
|
||||||
import * as mocha from 'gulp-mocha';
|
import * as mocha from 'gulp-mocha';
|
||||||
import * as replace from 'gulp-replace';
|
import * as replace from 'gulp-replace';
|
||||||
import * as htmlmin from 'gulp-htmlmin';
|
import * as htmlmin from 'gulp-htmlmin';
|
||||||
const uglifyes = require('uglify-es');
|
const uglifyes = require('uglify-es');
|
||||||
|
|
||||||
import locales from './locales';
|
const locales = require('./locales');
|
||||||
import { fa } from './src/build/fa';
|
import { fa } from './src/misc/fa';
|
||||||
const client = require('./built/client/meta.json');
|
const client = require('./built/client/meta.json');
|
||||||
import config from './src/config';
|
import config from './src/config';
|
||||||
|
|
||||||
|
|||||||
941
locales/ca.yml
Normal file
@@ -0,0 +1,941 @@
|
|||||||
|
---
|
||||||
|
meta:
|
||||||
|
lang: "日本語"
|
||||||
|
divider: ""
|
||||||
|
common:
|
||||||
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
|
time:
|
||||||
|
unknown: "なぞのじかん"
|
||||||
|
future: "未来"
|
||||||
|
just_now: "たった今"
|
||||||
|
seconds_ago: "{}秒前"
|
||||||
|
minutes_ago: "{}分前"
|
||||||
|
hours_ago: "{}時間前"
|
||||||
|
days_ago: "{}日前"
|
||||||
|
weeks_ago: "{}週間前"
|
||||||
|
months_ago: "{}ヶ月前"
|
||||||
|
years_ago: "{}年前"
|
||||||
|
weekday-short:
|
||||||
|
sunday: "日"
|
||||||
|
monday: "月"
|
||||||
|
tuesday: "火"
|
||||||
|
wednesday: "水"
|
||||||
|
thursday: "木"
|
||||||
|
friday: "金"
|
||||||
|
saturday: "土"
|
||||||
|
reactions:
|
||||||
|
like: "いいね"
|
||||||
|
love: "しゅき"
|
||||||
|
laugh: "笑"
|
||||||
|
hmm: "ふぅ~む"
|
||||||
|
surprise: "わお"
|
||||||
|
congrats: "おめでとう"
|
||||||
|
angry: "おこ"
|
||||||
|
confused: "こまこまのこまり"
|
||||||
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
search: "検索"
|
||||||
|
delete: "削除"
|
||||||
|
loading: "読み込み中"
|
||||||
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
|
common/views/components/connect-failed.vue:
|
||||||
|
title: "サーバーに接続できません"
|
||||||
|
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
||||||
|
thanks: "いつもMisskeyをご利用いただきありがとうございます。"
|
||||||
|
troubleshoot: "トラブルシュート"
|
||||||
|
common/views/components/connect-failed.troubleshooter.vue:
|
||||||
|
title: "トラブルシューティング"
|
||||||
|
network: "ネットワーク接続"
|
||||||
|
checking-network: "ネットワーク接続を確認中"
|
||||||
|
internet: "インターネット接続"
|
||||||
|
checking-internet: "インターネット接続を確認中"
|
||||||
|
server: "サーバー接続"
|
||||||
|
checking-server: "サーバー接続を確認中"
|
||||||
|
finding: "問題を調べています"
|
||||||
|
no-network: "ネットワークに接続されていません"
|
||||||
|
no-network-desc: "お使いのPCのネットワーク接続が正常か確認してください。"
|
||||||
|
no-internet: "インターネットに接続されていません"
|
||||||
|
no-internet-desc: "ネットワークには接続されていますが、インターネットには接続されていないようです。お使いのPCのインターネット接続が正常か確認してください。"
|
||||||
|
no-server: "Misskeyのサーバーに接続できません"
|
||||||
|
no-server-desc: "お使いのPCのインターネット接続は正常ですが、Misskeyのサーバーには接続できませんでした。サーバーがダウンまたはメンテナンスしている可能性があるので、しばらくしてから再度御アクセスください。"
|
||||||
|
success: "Misskeyのサーバーに接続できました"
|
||||||
|
success-desc: "正常に接続できるようです。ページを再度読み込みしてください。"
|
||||||
|
flush: "キャッシュの削除"
|
||||||
|
set-version: "バージョン指定"
|
||||||
|
common/views/components/messaging.vue:
|
||||||
|
search-user: "ユーザーを探す"
|
||||||
|
you: "あなた"
|
||||||
|
no-history: "履歴はありません"
|
||||||
|
common/views/components/messaging-room.vue:
|
||||||
|
empty: "このユーザーと話したことはありません"
|
||||||
|
more: "もっと読む"
|
||||||
|
no-history: "これより過去の履歴はありません"
|
||||||
|
resize-form: "ドラッグしてフォームの広さを調整"
|
||||||
|
new-message: "新しいメッセージがあります"
|
||||||
|
common/views/components/messaging-room.form.vue:
|
||||||
|
input-message-here: "ここにメッセージを入力"
|
||||||
|
send: "送信"
|
||||||
|
attach-from-local: "PCからファイルを添付する"
|
||||||
|
attach-from-drive: "ドライブからファイルを添付する"
|
||||||
|
common/views/components/messaging-room.message.vue:
|
||||||
|
is-read: "既読"
|
||||||
|
deleted: "このメッセージは削除されました"
|
||||||
|
common/views/components/nav.vue:
|
||||||
|
about: "Misskeyについて"
|
||||||
|
stats: "統計"
|
||||||
|
status: "ステータス"
|
||||||
|
wiki: "Wiki"
|
||||||
|
donors: "ドナー"
|
||||||
|
repository: "リポジトリ"
|
||||||
|
develop: "開発者"
|
||||||
|
feedback: "フィードバック"
|
||||||
|
common/views/components/note-menu.vue:
|
||||||
|
favorite: "お気に入り"
|
||||||
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
|
remote: "投稿元で見る"
|
||||||
|
common/views/components/poll.vue:
|
||||||
|
vote-to: "「{}」に投票する"
|
||||||
|
vote-count: "{}票"
|
||||||
|
total-users: "{}人が投票"
|
||||||
|
vote: "投票する"
|
||||||
|
show-result: "結果を見る"
|
||||||
|
voted: "投票済み"
|
||||||
|
common/views/components/poll-editor.vue:
|
||||||
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
|
choice-n: "選択肢{}"
|
||||||
|
remove: "この選択肢を削除"
|
||||||
|
add: "+選択肢を追加"
|
||||||
|
destroy: "アンケートを破棄"
|
||||||
|
common/views/components/reaction-picker.vue:
|
||||||
|
choose-reaction: "リアクションを選択"
|
||||||
|
common/views/components/signin.vue:
|
||||||
|
username: "ユーザー名"
|
||||||
|
password: "パスワード"
|
||||||
|
token: "トークン"
|
||||||
|
signing-in: "やってます..."
|
||||||
|
signin: "サインイン"
|
||||||
|
common/views/components/signup.vue:
|
||||||
|
username: "ユーザー名"
|
||||||
|
checking: "確認しています..."
|
||||||
|
available: "利用できます"
|
||||||
|
unavailable: "既に利用されています"
|
||||||
|
error: "通信エラー"
|
||||||
|
invalid-format: "a~z、A~Z、0~9、_が使えます"
|
||||||
|
too-short: "1文字以上でお願いします!"
|
||||||
|
too-long: "20文字以内でお願いします"
|
||||||
|
password: "パスワード"
|
||||||
|
password-placeholder: "8文字以上を推奨します"
|
||||||
|
weak-password: "弱いパスワード"
|
||||||
|
normal-password: "まあまあのパスワード"
|
||||||
|
strong-password: "強いパスワード"
|
||||||
|
retype: "再入力"
|
||||||
|
retype-placeholder: "確認のため再入力してください"
|
||||||
|
password-matched: "確認されました"
|
||||||
|
password-not-matched: "一致していません"
|
||||||
|
recaptcha: "認証"
|
||||||
|
create: "アカウント作成"
|
||||||
|
some-error: "何らかの原因によりアカウントの作成に失敗しました。再度お試しください。"
|
||||||
|
common/views/components/special-message.vue:
|
||||||
|
new-year: "Happy New Year!"
|
||||||
|
christmas: "Merry Christmas!"
|
||||||
|
common/views/components/stream-indicator.vue:
|
||||||
|
connecting: "接続中"
|
||||||
|
reconnecting: "再接続中"
|
||||||
|
connected: "接続完了"
|
||||||
|
common/views/components/twitter-setting.vue:
|
||||||
|
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。"
|
||||||
|
connected-to: "次のTwitterアカウントに接続されています"
|
||||||
|
detail: "詳細..."
|
||||||
|
reconnect: "再接続する"
|
||||||
|
connect: "Twitterと接続する"
|
||||||
|
disconnect: "切断する"
|
||||||
|
common/views/components/uploader.vue:
|
||||||
|
waiting: "待機中"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
|
common/views/widgets/broadcast.vue:
|
||||||
|
fetching: "確認中"
|
||||||
|
no-broadcasts: "お知らせはありません"
|
||||||
|
have-a-nice-day: "良い一日を!"
|
||||||
|
next: "次"
|
||||||
|
common/views/widgets/donation.vue:
|
||||||
|
title: "寄付のお願い"
|
||||||
|
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
|
||||||
|
common/views/widgets/photo-stream.vue:
|
||||||
|
title: "フォトストリーム"
|
||||||
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
|
common/views/widgets/server.vue:
|
||||||
|
title: "サーバー情報"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/memo.vue:
|
||||||
|
title: "付箋"
|
||||||
|
memo: "ここに書いて!"
|
||||||
|
save: "保存"
|
||||||
|
common/views/pages/follow.vue:
|
||||||
|
signed-in-as: "{}としてサインイン中"
|
||||||
|
following: "フォロー中"
|
||||||
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
desktop/views/components/activity.chart.vue:
|
||||||
|
total: "Black ... Total"
|
||||||
|
notes: "Blue ... Notes"
|
||||||
|
replies: "Red ... Replies"
|
||||||
|
renotes: "Green ... Renotes"
|
||||||
|
desktop/views/components/activity.vue:
|
||||||
|
title: "アクティビティ"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
desktop/views/components/calendar.vue:
|
||||||
|
title: "{1}年 {2}月"
|
||||||
|
prev: "前の月"
|
||||||
|
next: "次の月"
|
||||||
|
go: "クリックして時間遡行"
|
||||||
|
desktop/views/components/choose-file-from-drive-window.vue:
|
||||||
|
choose-file: "ファイル選択中"
|
||||||
|
upload: "PCからドライブにファイルをアップロード"
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
choose-prompt: "ファイルを選択"
|
||||||
|
desktop/views/components/choose-folder-from-drive-window.vue:
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
choose-prompt: "フォルダを選択"
|
||||||
|
desktop/views/components/crop-window.vue:
|
||||||
|
skip: "クロップをスキップ"
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
desktop/views/components/drive-window.vue:
|
||||||
|
used: "使用中"
|
||||||
|
drive: "ドライブ"
|
||||||
|
desktop/views/components/drive.file.vue:
|
||||||
|
avatar: "アイコン"
|
||||||
|
banner: "バナー"
|
||||||
|
contextmenu:
|
||||||
|
rename: "名前を変更"
|
||||||
|
copy-url: "URLをコピー"
|
||||||
|
download: "ダウンロード"
|
||||||
|
else-files: "その他..."
|
||||||
|
set-as-avatar: "アイコンに設定"
|
||||||
|
set-as-banner: "バナーに設定"
|
||||||
|
open-in-app: "アプリで開く"
|
||||||
|
add-app: "アプリを追加"
|
||||||
|
rename-file: "ファイル名の変更"
|
||||||
|
input-new-file-name: "新しいファイル名を入力してください"
|
||||||
|
copied: "コピー完了"
|
||||||
|
copied-url-to-clipboard: "URLをクリップボードにコピーしました"
|
||||||
|
desktop/views/components/drive.folder.vue:
|
||||||
|
unable-to-process: "操作を完了できません"
|
||||||
|
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
||||||
|
unhandled-error: "不明なエラー"
|
||||||
|
contextmenu:
|
||||||
|
move-to-this-folder: "このフォルダへ移動"
|
||||||
|
show-in-new-window: "新しいウィンドウで表示"
|
||||||
|
rename: "名前を変更"
|
||||||
|
rename-folder: "フォルダ名の変更"
|
||||||
|
input-new-folder-name: "新しいフォルダ名を入力してください"
|
||||||
|
desktop/views/components/drive.nav-folder.vue:
|
||||||
|
drive: "ドライブ"
|
||||||
|
desktop/views/components/drive.vue:
|
||||||
|
search: "検索"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
empty-draghover: "ドロップですか?いいですよ、ボクはカワイイですからね"
|
||||||
|
empty-drive: "ドライブには何もありません。"
|
||||||
|
empty-drive-description: "右クリックして「ファイルをアップロード」を選んだり、ファイルをドラッグ&ドロップすることでもアップロードできます。"
|
||||||
|
empty-folder: "このフォルダーは空です"
|
||||||
|
unable-to-process: "操作を完了できません"
|
||||||
|
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
||||||
|
unhandled-error: "不明なエラー"
|
||||||
|
url-upload: "URLアップロード"
|
||||||
|
url-of-file: "アップロードしたいファイルのURL"
|
||||||
|
url-upload-requested: "アップロードをリクエストしました"
|
||||||
|
may-take-time: "アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
create-folder: "フォルダー作成"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
contextmenu:
|
||||||
|
create-folder: "フォルダーを作成"
|
||||||
|
upload: "ファイルをアップロード"
|
||||||
|
url-upload: "URLからアップロード"
|
||||||
|
desktop/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
desktop/views/components/followers-window.vue:
|
||||||
|
followers: "{} のフォロワー"
|
||||||
|
desktop/views/components/followers.vue:
|
||||||
|
empty: "フォロワーはいないようです。"
|
||||||
|
desktop/views/components/following-window.vue:
|
||||||
|
following: "{} のフォロー"
|
||||||
|
desktop/views/components/following.vue:
|
||||||
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
|
desktop/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー:"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
|
desktop/views/components/game-window.vue:
|
||||||
|
game: "リバーシ"
|
||||||
|
desktop/views/components/home.vue:
|
||||||
|
done: "完了"
|
||||||
|
add-widget: "ウィジェットを追加:"
|
||||||
|
add: "追加"
|
||||||
|
desktop/views/input-dialog.vue:
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
desktop/views/components/messaging-room-window.vue:
|
||||||
|
title: "メッセージ:"
|
||||||
|
desktop/views/components/messaging-window.vue:
|
||||||
|
title: "メッセージ"
|
||||||
|
desktop/views/components/note-detail.vue:
|
||||||
|
more: "会話をもっと読み込む"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
location: "位置情報"
|
||||||
|
renote: "Renote"
|
||||||
|
add-reaction: "リアクション"
|
||||||
|
desktop/views/components/notes.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
reply: "返信"
|
||||||
|
renote: "Renote"
|
||||||
|
add-reaction: "リアクション"
|
||||||
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
desktop/views/components/notes.vue:
|
||||||
|
error: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
desktop/views/components/notifications.vue:
|
||||||
|
more: "もっと見る"
|
||||||
|
empty: "ありません!"
|
||||||
|
desktop/views/components/post-form.vue:
|
||||||
|
reply-placeholder: "この投稿への返信..."
|
||||||
|
quote-placeholder: "この投稿を引用..."
|
||||||
|
submit: "投稿"
|
||||||
|
reply: "返信"
|
||||||
|
renote: "Renote"
|
||||||
|
posted: "投稿しました!"
|
||||||
|
replied: "返信しました!"
|
||||||
|
reposted: "Renoteしました!"
|
||||||
|
note-failed: "投稿に失敗しました"
|
||||||
|
reply-failed: "返信に失敗しました"
|
||||||
|
renote-failed: "Renoteに失敗しました"
|
||||||
|
posting: "投稿中"
|
||||||
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
|
attach-cancel: "添付取り消し"
|
||||||
|
insert-a-kao: "v('ω')v"
|
||||||
|
create-poll: "アンケートを作成"
|
||||||
|
text-remain: "残り{}文字"
|
||||||
|
desktop/views/components/post-form-window.vue:
|
||||||
|
note: "新規投稿"
|
||||||
|
reply: "返信"
|
||||||
|
attaches: "添付: {}メディア"
|
||||||
|
uploading-media: "{}個のメディアをアップロード中"
|
||||||
|
desktop/views/components/progress-dialog.vue:
|
||||||
|
waiting: "待機中"
|
||||||
|
desktop/views/components/renote-form.vue:
|
||||||
|
quote: "引用する..."
|
||||||
|
cancel: "キャンセル"
|
||||||
|
renote: "Renote"
|
||||||
|
reposting: "しています..."
|
||||||
|
success: "Renoteしました!"
|
||||||
|
failure: "Renoteに失敗しました"
|
||||||
|
desktop/views/components/renote-form-window.vue:
|
||||||
|
title: "この投稿をRenoteしますか?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
|
desktop/views/components/settings.vue:
|
||||||
|
profile: "プロフィール"
|
||||||
|
notification: "通知"
|
||||||
|
apps: "アプリ"
|
||||||
|
mute: "ミュート"
|
||||||
|
drive: "ドライブ"
|
||||||
|
security: "セキュリティ"
|
||||||
|
signin: "サインイン履歴"
|
||||||
|
password: "パスワード"
|
||||||
|
2fa: "二段階認証"
|
||||||
|
other: "その他"
|
||||||
|
license: "ライセンス"
|
||||||
|
behaviour: "動作"
|
||||||
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
fetch-on-scroll-desc: "ページを下までスクロールしたときに自動で追加のコンテンツを読み込みます。"
|
||||||
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
|
advanced: "詳細設定"
|
||||||
|
api-via-stream: "ストリームを経由したAPIリクエスト"
|
||||||
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
|
display: "デザインと表示"
|
||||||
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
|
dark-mode: "ダークモード"
|
||||||
|
circle-icons: "円形のアイコンを使用"
|
||||||
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
|
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
||||||
|
show-reply-target: "リプライ先を表示する"
|
||||||
|
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
||||||
|
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
||||||
|
show-maps: "マップの自動展開"
|
||||||
|
show-maps-desc: "位置情報が添付された投稿のマップを自動的に展開します。"
|
||||||
|
sound: "サウンド"
|
||||||
|
enable-sounds: "サウンドを有効にする"
|
||||||
|
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
||||||
|
volume: "ボリューム"
|
||||||
|
test: "テスト"
|
||||||
|
mobile: "モバイル"
|
||||||
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
language: "言語"
|
||||||
|
pick-language: "言語を選択"
|
||||||
|
recommended: "推奨"
|
||||||
|
auto: "自動"
|
||||||
|
specify-language: "言語を指定"
|
||||||
|
language-desc: "変更はページの再度読み込み後に反映されます。"
|
||||||
|
cache: "キャッシュ"
|
||||||
|
clean-cache: "クリーンアップ"
|
||||||
|
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
||||||
|
cache-cleared: "キャッシュを削除しました"
|
||||||
|
cache-cleared-desc: "ページを再度読み込みしてください。"
|
||||||
|
auto-watch: "投稿の自動ウォッチ"
|
||||||
|
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
|
||||||
|
about: "Misskeyについて"
|
||||||
|
operator: "このサーバーの運営者"
|
||||||
|
update: "Misskey Update"
|
||||||
|
version: "バージョン:"
|
||||||
|
latest-version: "最新のバージョン:"
|
||||||
|
update-checking: "アップデートを確認中"
|
||||||
|
do-update: "アップデートを確認"
|
||||||
|
update-settings: "詳細設定"
|
||||||
|
prevent-update: "アップデートを延期する(非推奨)"
|
||||||
|
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。"
|
||||||
|
no-updates: "利用可能な更新はありません"
|
||||||
|
no-updates-desc: "お使いのMisskeyは最新です。"
|
||||||
|
update-available: "新しいバージョンが利用可能です"
|
||||||
|
update-available-desc: "ページを再度読み込みすると更新が適用されます。"
|
||||||
|
advanced-settings: "高度な設定"
|
||||||
|
debug-mode: "デバッグモードを有効にする"
|
||||||
|
debug-mode-desc: "この設定はブラウザに記憶されます。"
|
||||||
|
experimental: "実験的機能を有効にする"
|
||||||
|
experimental-desc: "実験的機能を有効にするとMisskeyの動作が不安定になる可能性があります。この設定はブラウザに記憶されます。"
|
||||||
|
tools: "ツール"
|
||||||
|
task-manager: "タスクマネージャ"
|
||||||
|
third-parties: "サードパーティ"
|
||||||
|
desktop/views/components/settings.2fa.vue:
|
||||||
|
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
|
||||||
|
detail: "詳細..."
|
||||||
|
url: "https://www.google.co.jp/intl/ja/landing/2step/"
|
||||||
|
caution: "登録したデバイスを紛失するなどした場合、Misskeyにサインインできなくなりますのでご注意ください。"
|
||||||
|
register: "デバイスを登録する"
|
||||||
|
already-registered: "既に設定は完了しています。"
|
||||||
|
unregister: "設定を解除"
|
||||||
|
unregistered: "二段階認証が無効になりました。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
|
||||||
|
howtoinstall: "インストール方法はこちら"
|
||||||
|
scan: "次に、表示されているQRコードをスキャンします:"
|
||||||
|
done: "お使いのデバイスに表示されているトークンを入力して完了します:"
|
||||||
|
submit: "完了"
|
||||||
|
success: "設定が完了しました!"
|
||||||
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
desktop/views/components/settings.api.vue:
|
||||||
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
|
regeneration-of-token: "万が一このトークンが漏れたりその可能性がある場合はトークンを再生成できます。"
|
||||||
|
regenerate-token: "トークンを再生成"
|
||||||
|
token: "Token:"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
desktop/views/components/settings.apps.vue:
|
||||||
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
|
desktop/views/components/settings.mute.vue:
|
||||||
|
no-users: "ミュートしているユーザーはいません"
|
||||||
|
desktop/views/components/settings.password.vue:
|
||||||
|
reset: "パスワードを変更する"
|
||||||
|
enter-current-password: "現在のパスワードを入力してください"
|
||||||
|
enter-new-password: "新しいパスワードを入力してください"
|
||||||
|
enter-new-password-again: "もう一度新しいパスワードを入力してください"
|
||||||
|
not-match: "新しいパスワードが一致しません"
|
||||||
|
changed: "パスワードを変更しました"
|
||||||
|
desktop/views/components/settings.profile.vue:
|
||||||
|
avatar: "アイコン"
|
||||||
|
choice-avatar: "画像を選択"
|
||||||
|
name: "名前"
|
||||||
|
location: "場所"
|
||||||
|
description: "自己紹介"
|
||||||
|
birthday: "誕生日"
|
||||||
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
|
is-cat: "このアカウントはCatです"
|
||||||
|
desktop/views/components/sub-note-content.vue:
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
|
desktop/views/components/taskmanager.vue:
|
||||||
|
title: "タスクマネージャ"
|
||||||
|
desktop/views/components/timeline.vue:
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
|
desktop/views/components/ui.header.account.vue:
|
||||||
|
profile: "プロフィール"
|
||||||
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
lists: "リスト"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
|
settings: "設定"
|
||||||
|
signout: "サインアウト"
|
||||||
|
dark: "闇に飲まれる"
|
||||||
|
desktop/views/components/ui.header.nav.vue:
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
game: "ゲーム"
|
||||||
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
|
title: "通知"
|
||||||
|
desktop/views/components/ui.header.post.vue:
|
||||||
|
post: "新規投稿"
|
||||||
|
desktop/views/components/ui.header.search.vue:
|
||||||
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
|
create-list: "リストを作成"
|
||||||
|
desktop/views/components/user-preview.vue:
|
||||||
|
notes: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
desktop/views/components/users-list.vue:
|
||||||
|
all: "すべて"
|
||||||
|
iknow: "知り合い"
|
||||||
|
load-more: "もっと"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
desktop/views/components/users-list-item.vue:
|
||||||
|
followed: "フォローされています"
|
||||||
|
desktop/views/components/window.vue:
|
||||||
|
popout: "ポップアウト"
|
||||||
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
desktop/views/pages/drive.vue:
|
||||||
|
title: "Misskey Drive"
|
||||||
|
desktop/views/pages/favorites.vue:
|
||||||
|
more: "さらに読み込む"
|
||||||
|
desktop/views/pages/home-customize.vue:
|
||||||
|
title: "ホームのカスタマイズ"
|
||||||
|
desktop/views/pages/note.vue:
|
||||||
|
prev: "前の投稿"
|
||||||
|
next: "次の投稿"
|
||||||
|
desktop/views/pages/selectdrive.vue:
|
||||||
|
title: "ファイルを選択してください"
|
||||||
|
ok: "決定"
|
||||||
|
cancel: "キャンセル"
|
||||||
|
upload: "PCからドライブにファイルをアップロード"
|
||||||
|
desktop/views/pages/user-list.users.vue:
|
||||||
|
users: "ユーザー"
|
||||||
|
add-user: "ユーザーを追加"
|
||||||
|
username: "ユーザー名"
|
||||||
|
desktop/views/pages/user/user.followers-you-know.vue:
|
||||||
|
title: "知り合いのフォロワー"
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "知り合いのフォロワーはいません"
|
||||||
|
desktop/views/pages/user/user.friends.vue:
|
||||||
|
title: "よく話すユーザー"
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "よく話すユーザーはいません"
|
||||||
|
desktop/views/pages/user/user.vue:
|
||||||
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
|
view-remote: "正確な情報を見る"
|
||||||
|
desktop/views/pages/user/user.home.vue:
|
||||||
|
last-used-at: "最終アクセス"
|
||||||
|
desktop/views/pages/user/user.photos.vue:
|
||||||
|
title: "フォト"
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-photos: "写真はありません"
|
||||||
|
desktop/views/pages/user/user.profile.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
|
stalk: "ストークする"
|
||||||
|
stalking: "ストーキングしています"
|
||||||
|
unstalk: "ストーク解除"
|
||||||
|
mute: "ミュートする"
|
||||||
|
muted: "ミュートしています"
|
||||||
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
|
default: "投稿"
|
||||||
|
with-replies: "投稿と返信"
|
||||||
|
with-media: "メディア"
|
||||||
|
empty: "このユーザーはまだ何も投稿していないようです。"
|
||||||
|
desktop/views/widgets/messaging.vue:
|
||||||
|
title: "メッセージ"
|
||||||
|
desktop/views/widgets/notifications.vue:
|
||||||
|
title: "通知"
|
||||||
|
settings: "通知の設定"
|
||||||
|
desktop/views/widgets/polls.vue:
|
||||||
|
title: "アンケート"
|
||||||
|
refresh: "他を見る"
|
||||||
|
nothing: "ありません!"
|
||||||
|
desktop/views/widgets/post-form.vue:
|
||||||
|
title: "投稿"
|
||||||
|
note: "投稿"
|
||||||
|
desktop/views/widgets/profile.vue:
|
||||||
|
update-banner: "クリックでバナー編集"
|
||||||
|
update-avatar: "クリックでアバター編集"
|
||||||
|
desktop/views/widgets/trends.vue:
|
||||||
|
title: "トレンド"
|
||||||
|
refresh: "他を見る"
|
||||||
|
nothing: "ありません!"
|
||||||
|
desktop/views/widgets/users.vue:
|
||||||
|
title: "おすすめユーザー"
|
||||||
|
refresh: "他を見る"
|
||||||
|
no-one: "いません!"
|
||||||
|
mobile/views/components/drive.vue:
|
||||||
|
drive: "ドライブ"
|
||||||
|
used: "使用中"
|
||||||
|
folder-count: "フォルダ"
|
||||||
|
count-separator: "、"
|
||||||
|
file-count: "ファイル"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
|
select-file: "ファイルを選択"
|
||||||
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
|
select-folder: "フォルダーを選択"
|
||||||
|
mobile/views/components/drive.file-detail.vue:
|
||||||
|
download: "ダウンロード"
|
||||||
|
rename: "名前を変更"
|
||||||
|
move: "移動"
|
||||||
|
hash: "ハッシュ (md5)"
|
||||||
|
exif: "EXIF"
|
||||||
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
|
mobile/views/components/note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-detail.vue:
|
||||||
|
reply: "返信"
|
||||||
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
|
mobile/views/components/notifications.vue:
|
||||||
|
more: "もっと見る"
|
||||||
|
empty: "ありません!"
|
||||||
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
|
submit: "投稿"
|
||||||
|
reply: "返信"
|
||||||
|
renote: "Renote"
|
||||||
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
|
reply-placeholder: "この投稿への返信..."
|
||||||
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
|
mobile/views/components/sub-note-content.vue:
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
|
mobile/views/components/timeline.vue:
|
||||||
|
empty: "投稿がありません"
|
||||||
|
load-more: "もっと"
|
||||||
|
mobile/views/components/ui.nav.vue:
|
||||||
|
timeline: "タイムライン"
|
||||||
|
notifications: "通知"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
|
search: "検索"
|
||||||
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
|
settings: "設定"
|
||||||
|
about: "Misskeyについて"
|
||||||
|
mobile/views/components/user-timeline.vue:
|
||||||
|
no-notes: "このユーザーは投稿していないようです。"
|
||||||
|
no-notes-with-media: "メディア付き投稿はありません。"
|
||||||
|
load-more: "もっと"
|
||||||
|
mobile/views/components/users-list.vue:
|
||||||
|
all: "すべて"
|
||||||
|
known: "知り合い"
|
||||||
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
|
mobile/views/pages/drive.vue:
|
||||||
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
|
mobile/views/pages/followers.vue:
|
||||||
|
followers-of: "{}のフォロワー"
|
||||||
|
mobile/views/pages/following.vue:
|
||||||
|
following-of: "{}のフォロー"
|
||||||
|
mobile/views/pages/home.vue:
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
mobile/views/pages/messaging.vue:
|
||||||
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/messaging-room.vue:
|
||||||
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
|
mobile/views/pages/note.vue:
|
||||||
|
title: "投稿"
|
||||||
|
prev: "前の投稿"
|
||||||
|
next: "次の投稿"
|
||||||
|
mobile/views/pages/notifications.vue:
|
||||||
|
notifications: "通知"
|
||||||
|
read-all: "すべての通知を既読にしますか?"
|
||||||
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
|
title: "プロフィール"
|
||||||
|
name: "名前"
|
||||||
|
account: "アカウント"
|
||||||
|
location: "場所"
|
||||||
|
description: "自己紹介"
|
||||||
|
birthday: "誕生日"
|
||||||
|
avatar: "アイコン"
|
||||||
|
banner: "バナー"
|
||||||
|
is-cat: "このアカウントはCatです"
|
||||||
|
save: "保存"
|
||||||
|
saved: "プロフィールを保存しました"
|
||||||
|
uploading: "アップロード中"
|
||||||
|
upload-failed: "アップロードに失敗しました"
|
||||||
|
mobile/views/pages/search.vue:
|
||||||
|
search: "検索"
|
||||||
|
empty: "「{}」に関する投稿は見つかりませんでした。"
|
||||||
|
mobile/views/pages/selectdrive.vue:
|
||||||
|
select-file: "ファイルを選択"
|
||||||
|
mobile/views/pages/settings.vue:
|
||||||
|
signed-in-as: "{}としてサインイン中"
|
||||||
|
lang: "言語"
|
||||||
|
lang-tip: "変更はページの再読み込み後に反映されます。"
|
||||||
|
recommended: "推奨"
|
||||||
|
auto: "自動"
|
||||||
|
specify-language: "言語を指定"
|
||||||
|
design: "デザインと表示"
|
||||||
|
dark-mode: "ダークモード"
|
||||||
|
i-am-under-limited-internet: "私は通信を制限されている"
|
||||||
|
circle-icons: "円形のアイコンを使用"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
show-reply-target: "リプライ先を表示する"
|
||||||
|
show-my-renotes: "自分の行ったRenoteを表示する"
|
||||||
|
show-renoted-my-notes: "Renoteされた自分の投稿を表示する"
|
||||||
|
post-style: "投稿の表示スタイル"
|
||||||
|
post-style-standard: "標準"
|
||||||
|
post-style-smart: "スマート"
|
||||||
|
behavior: "動作"
|
||||||
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
|
twitter: "Twitter連携"
|
||||||
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
|
twitter-reconnect: "再接続する"
|
||||||
|
twitter-disconnect: "切断する"
|
||||||
|
update: "Misskey Update"
|
||||||
|
version: "バージョン:"
|
||||||
|
latest-version: "最新のバージョン:"
|
||||||
|
update-checking: "アップデートを確認中"
|
||||||
|
check-for-updates: "アップデートを確認"
|
||||||
|
no-updates: "利用可能な更新はありません"
|
||||||
|
no-updates-desc: "お使いのMisskeyは最新です。"
|
||||||
|
update-available: "新しいバージョンが利用可能です"
|
||||||
|
update-available-desc: "ページを再度読み込みすると更新が適用されます。"
|
||||||
|
settings: "設定"
|
||||||
|
signout: "サインアウト"
|
||||||
|
mobile/views/pages/user.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
notes: "投稿"
|
||||||
|
overview: "概要"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
media: "メディア"
|
||||||
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
|
view-remote: "正確な情報を見る"
|
||||||
|
mobile/views/pages/user/home.vue:
|
||||||
|
recent-notes: "最近の投稿"
|
||||||
|
images: "画像"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
keywords: "キーワード"
|
||||||
|
domains: "頻出ドメイン"
|
||||||
|
frequently-replied-users: "よく会話するユーザー"
|
||||||
|
followers-you-know: "知り合いのフォロワー"
|
||||||
|
last-used-at: "最終ログイン"
|
||||||
|
mobile/views/pages/user/home.followers-you-know.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "知り合いのユーザーはいません"
|
||||||
|
mobile/views/pages/user/home.friends.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "よく会話するユーザーはいません"
|
||||||
|
mobile/views/pages/user/home.notes.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-notes: "投稿はありません"
|
||||||
|
mobile/views/pages/user/home.photos.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-photos: "写真はありません"
|
||||||
|
docs:
|
||||||
|
edit-this-page-on-github: "間違いや改善点を見つけましたか?"
|
||||||
|
edit-this-page-on-github-link: "このページをGitHubで編集"
|
||||||
|
api:
|
||||||
|
entities:
|
||||||
|
properties: "プロパティ"
|
||||||
|
endpoints:
|
||||||
|
params: "パラメータ"
|
||||||
|
res: "レスポンス"
|
||||||
|
props:
|
||||||
|
name: "名前"
|
||||||
|
type: "型"
|
||||||
|
description: "説明"
|
||||||
462
locales/de.yml
@@ -1,9 +1,11 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "Deutsch"
|
lang: "Deutsch"
|
||||||
divider: " "
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Teile alles mit anderen mithilfe von Misskey"
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
time:
|
time:
|
||||||
unknown: "Unbekannt"
|
unknown: "Unbekannt"
|
||||||
future: "Zukunft"
|
future: "Zukunft"
|
||||||
@@ -33,11 +35,69 @@ common:
|
|||||||
angry: "Wütend"
|
angry: "Wütend"
|
||||||
confused: "Verwirrt"
|
confused: "Verwirrt"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "Was machst du gerade?"
|
||||||
|
b: "Was ist so passiert?"
|
||||||
|
c: "Was geht dir durch den Kopf?"
|
||||||
|
d: "Willst du etwas sagen?"
|
||||||
|
e: "Schreib hier etwas!"
|
||||||
|
f: "Warte darauf, das du schreibst."
|
||||||
|
search: "検索"
|
||||||
delete: "Löschen"
|
delete: "Löschen"
|
||||||
loading: "Laden"
|
loading: "Laden"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
|
update-available-title: "更新があります"
|
||||||
update-available: "Eine neue Version von Misskey ist verfügbar ({newer}, aktuell ist {current}). Lade die Seite neu um die aktuelle Version zu laden"
|
update-available: "Eine neue Version von Misskey ist verfügbar ({newer}, aktuell ist {current}). Lade die Seite neu um die aktuelle Version zu laden"
|
||||||
my-token-regenerated: "Dein Token wurde generiert. Du wirst jetzt abgemeldet."
|
my-token-regenerated: "Dein Token wurde generiert. Du wirst jetzt abgemeldet."
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "Analoge Uhr"
|
||||||
|
profile: "Profil"
|
||||||
|
calendar: "Kalender"
|
||||||
|
timemachine: "Kalender (Zeitmaschiene)"
|
||||||
|
activity: "Aktivitäten"
|
||||||
|
rss: "RSS Leser"
|
||||||
|
memo: "Notizen"
|
||||||
|
trends: "Trends"
|
||||||
|
photo-stream: "Bilder"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "Diashow"
|
||||||
|
version: "Version"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "Benachrichtigungen"
|
||||||
|
users: "Empfohlene Benutzer"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "Beitragsform"
|
||||||
|
messaging: "Nachrichten"
|
||||||
|
server: "Server-Info"
|
||||||
|
donation: "Spenden"
|
||||||
|
nav: "Navigation"
|
||||||
|
tips: "Tipps"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "Widget hinzufügen:"
|
||||||
|
home: "Startseite"
|
||||||
|
local: "Lokal"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "Global"
|
||||||
|
notifications: "Mitteilungen"
|
||||||
|
list: "Listen"
|
||||||
|
swap-left: "Nach links"
|
||||||
|
swap-right: "Nach rechts"
|
||||||
|
swap-up: "Nach oben"
|
||||||
|
swap-down: "Nach unten"
|
||||||
|
remove: "Spalte löschen"
|
||||||
|
add-column: "Eine Spalte hinzufügen"
|
||||||
|
rename: "Umbenennen"
|
||||||
|
stack-left: "Nach links schichten"
|
||||||
|
pop-right: "右に出す"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "Verbindung zum Server ist fehlgeschlagen"
|
title: "Verbindung zum Server ist fehlgeschlagen"
|
||||||
description: "Es gibt entweder ein Problem mit deiner Internetverbindung, der Server ist nicht erreichbar oder wird gerade gewartet. Bitte versuche es später noch einmal."
|
description: "Es gibt entweder ein Problem mit deiner Internetverbindung, der Server ist nicht erreichbar oder wird gerade gewartet. Bitte versuche es später noch einmal."
|
||||||
@@ -92,6 +152,8 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "Diese Anmerkung favorisieren"
|
favorite: "Diese Anmerkung favorisieren"
|
||||||
pin: "An die Profilseite pinnen"
|
pin: "An die Profilseite pinnen"
|
||||||
|
delete: "Löschen"
|
||||||
|
delete-confirm: "Diesen Post löschen?"
|
||||||
remote: "Auf Quelle anzeigen"
|
remote: "Auf Quelle anzeigen"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Stimme für '{}'"
|
vote-to: "Stimme für '{}'"
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "Trennen"
|
disconnect: "Trennen"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "Warten"
|
waiting: "Warten"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "Öffentlich"
|
||||||
|
home: "Home"
|
||||||
|
home-desc: "Nur auf die Startseite posten"
|
||||||
|
followers: "Folgende"
|
||||||
|
followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
|
||||||
|
specified: "Direkt"
|
||||||
|
specified-desc: "Poste nur für bestimmte Benutzer"
|
||||||
|
private: "Privat"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "Laden"
|
fetching: "Laden"
|
||||||
no-broadcasts: "Keine Broadcasts"
|
no-broadcasts: "Keine Broadcasts"
|
||||||
@@ -162,18 +233,26 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "Fotostream"
|
title: "Fotostream"
|
||||||
no-photos: "Keine Fotos"
|
no-photos: "Keine Fotos"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "Serverinformationen"
|
title: "Serverinformationen"
|
||||||
toggle: "Sicht umschalten"
|
toggle: "Sicht umschalten"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "Notizen"
|
||||||
home: "ホーム"
|
memo: "Schreib hier!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "Speichern"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified: "ダイレクト"
|
following: "フォロー中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "フォロー"
|
||||||
private: "非公開"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Schwarz ... komplett"
|
total: "Schwarz ... komplett"
|
||||||
notes: "Blau ... Hinweise"
|
notes: "Blau ... Hinweise"
|
||||||
@@ -211,30 +290,30 @@ desktop/views/components/drive.file.vue:
|
|||||||
rename: "Umbenennen"
|
rename: "Umbenennen"
|
||||||
copy-url: "URL kopieren"
|
copy-url: "URL kopieren"
|
||||||
download: "Download"
|
download: "Download"
|
||||||
else-files: "その他..."
|
else-files: "Anderes…"
|
||||||
set-as-avatar: "アイコンに設定"
|
set-as-avatar: "Als Avatar festlegen"
|
||||||
set-as-banner: "バナーに設定"
|
set-as-banner: "Setze als Banner"
|
||||||
open-in-app: "アプリで開く"
|
open-in-app: "In der App öffnen"
|
||||||
add-app: "アプリを追加"
|
add-app: "App hinzufügen"
|
||||||
rename-file: "ファイル名の変更"
|
rename-file: "Datei umbennen"
|
||||||
input-new-file-name: "新しいファイル名を入力してください"
|
input-new-file-name: "Geben Sie den neuen Dateinamen an"
|
||||||
copied: "コピー完了"
|
copied: "Kopieren erfolgreich"
|
||||||
copied-url-to-clipboard: "URLをクリップボードにコピーしました"
|
copied-url-to-clipboard: "URL wurde in die Zwischenablage kopiert"
|
||||||
desktop/views/components/drive.folder.vue:
|
desktop/views/components/drive.folder.vue:
|
||||||
unable-to-process: "操作を完了できません"
|
unable-to-process: "Der Vorgang konnte nicht beendet werden"
|
||||||
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
circular-reference-detected: "Das Zielverzeichnis ist ein Unterverzeichnis des Verzeichnisses welches du verschieben möchtest"
|
||||||
unhandled-error: "不明なエラー"
|
unhandled-error: "Unbekannter Fehler"
|
||||||
contextmenu:
|
contextmenu:
|
||||||
move-to-this-folder: "このフォルダへ移動"
|
move-to-this-folder: "Verschiebe in diesen Ordner"
|
||||||
show-in-new-window: "新しいウィンドウで表示"
|
show-in-new-window: "In einem neuen Fenster anzeigen"
|
||||||
rename: "名前を変更"
|
rename: "Umbenennen"
|
||||||
rename-folder: "フォルダ名の変更"
|
rename-folder: "Ordner umbenennen"
|
||||||
input-new-folder-name: "新しいフォルダ名を入力してください"
|
input-new-folder-name: "Namen für neuen Ordner eingeben"
|
||||||
desktop/views/components/drive.nav-folder.vue:
|
desktop/views/components/drive.nav-folder.vue:
|
||||||
drive: "ドライブ"
|
drive: "Laufwerk"
|
||||||
desktop/views/components/drive.vue:
|
desktop/views/components/drive.vue:
|
||||||
search: "検索"
|
search: "Suchen"
|
||||||
load-more: "もっと読み込む"
|
load-more: "Mehr laden"
|
||||||
empty-draghover: "Herzlich Willkommen!"
|
empty-draghover: "Herzlich Willkommen!"
|
||||||
empty-drive: "Dein Speicher ist leer"
|
empty-drive: "Dein Speicher ist leer"
|
||||||
empty-drive-description: "Du kannst rechts klicken und \"Datei hochladen\" auswählen oder eine Datei per Drag and Drop auf das Fenster ziehen."
|
empty-drive-description: "Du kannst rechts klicken und \"Datei hochladen\" auswählen oder eine Datei per Drag and Drop auf das Fenster ziehen."
|
||||||
@@ -253,46 +332,29 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "Eine Datei hochladen"
|
upload: "Eine Datei hochladen"
|
||||||
url-upload: "Von einer URL hochladen"
|
url-upload: "Von einer URL hochladen"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "Folge ich"
|
||||||
follow: "フォローする"
|
follow: "Folgen"
|
||||||
|
request-pending: "Ausstehend"
|
||||||
|
follow-request: "Follower-Anfragen"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
empty: "フォロワーはいないようです。"
|
empty: "Dir scheint niemand zu folgen."
|
||||||
desktop/views/components/following-window.vue:
|
desktop/views/components/following-window.vue:
|
||||||
following: "{} のフォロー"
|
following: "{} のフォロー"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "Du folgst niemanden"
|
||||||
desktop/views/components/friends-maker.vue:
|
desktop/views/components/friends-maker.vue:
|
||||||
title: "気になるユーザーをフォロー:"
|
title: "Wem folgen?"
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
empty: "Der ausgewählte Benutzer konnte nicht gefunden werden."
|
||||||
fetching: "読み込んでいます"
|
fetching: "Lade…"
|
||||||
refresh: "もっと見る"
|
refresh: "Mehr"
|
||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "Verbunden"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "Widget hinzufügen:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "Spende"
|
|
||||||
nav: "Navigation"
|
|
||||||
tips: "Tipps"
|
|
||||||
add: "Hinzufügen"
|
add: "Hinzufügen"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "Abbrechen"
|
cancel: "Abbrechen"
|
||||||
@@ -303,30 +365,31 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "Nachrichten"
|
title: "Nachrichten"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "Lade weitere Konversationen"
|
more: "Lade weitere Konversationen"
|
||||||
private: "(Dieser Post ist privat)"
|
private: "Dieser Post ist privat"
|
||||||
is-renote: "がRenote"
|
deleted: "Dieser Beitrag wurde entfernt"
|
||||||
|
reposted-by: "Repostet von {}"
|
||||||
location: "Ort"
|
location: "Ort"
|
||||||
renote: "Anmerkung"
|
renote: "Anmerkung"
|
||||||
add-reaction: "Reaktion hinzufügen"
|
add-reaction: "Reaktion hinzufügen"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(Dieser Post ist privat)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "Auch geteilt von"
|
reposted-by: "Auch geteilt von"
|
||||||
reply: "Antworten"
|
reply: "Antworten"
|
||||||
renote: "Anmerken"
|
renote: "Anmerken"
|
||||||
add-reaction: "Eine Reaktion hinzufügen"
|
add-reaction: "Eine Reaktion hinzufügen"
|
||||||
detail: "Zeige Details"
|
detail: "Zeige Details"
|
||||||
|
private: "Dieser Beitrag ist eine privat"
|
||||||
|
deleted: "Dieser Beitrag wurde entfernt"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "Laden fehlgeschlagen."
|
error: "Laden fehlgeschlagen."
|
||||||
retry: "Erneut versuchen"
|
retry: "Erneut versuchen"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "Mehr"
|
more: "Mehr"
|
||||||
empty: "Keine Benachrichtigungen"
|
empty: "Keine Benachrichtigungen"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "Was ist bei dir los?"
|
|
||||||
reply-placeholder: "Antworte auf diese Anmerkung..."
|
reply-placeholder: "Antworte auf diese Anmerkung..."
|
||||||
quote-placeholder: "Zitiere diese Anmerkung..."
|
quote-placeholder: "Zitiere diese Anmerkung..."
|
||||||
note: "Post"
|
submit: "Beitragsform"
|
||||||
reply: "Antworten"
|
reply: "Antworten"
|
||||||
renote: "Anmerkung"
|
renote: "Anmerkung"
|
||||||
posted: "Gepostet!"
|
posted: "Gepostet!"
|
||||||
@@ -339,7 +402,7 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "Medien von deinem PC hinzufügen"
|
attach-media-from-local: "Medien von deinem PC hinzufügen"
|
||||||
attach-media-from-drive: "Medien von deinem Speicher hinzufügen"
|
attach-media-from-drive: "Medien von deinem Speicher hinzufügen"
|
||||||
attach-cancel: "Hinzufügen abbrechen"
|
attach-cancel: "Hinzufügen abbrechen"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "Eine Abstimmung erstellen"
|
create-poll: "Eine Abstimmung erstellen"
|
||||||
text-remain: "{} Zeichen verbleibend"
|
text-remain: "{} Zeichen verbleibend"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
@@ -357,54 +420,58 @@ desktop/views/components/renote-form.vue:
|
|||||||
success: "Weitergesagt!"
|
success: "Weitergesagt!"
|
||||||
failure: "Weitersagen fehlgeschlagen"
|
failure: "Weitersagen fehlgeschlagen"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "Bist du dir sicher, dass du das reposten willst?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "Experimentelles"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "Profil"
|
||||||
notification: "通知"
|
notification: "Mitteilungen"
|
||||||
apps: "アプリ"
|
apps: "In App öffnen"
|
||||||
mute: "ミュート"
|
mute: "Stummschalten"
|
||||||
drive: "ドライブ"
|
drive: "Dateien vom Drive anfügen"
|
||||||
security: "セキュリティ"
|
security: "Sicherheit"
|
||||||
signin: "サインイン履歴"
|
signin: "サインイン履歴"
|
||||||
password: "パスワード"
|
password: "Passwort"
|
||||||
2fa: "二段階認証"
|
2fa: "Zwei-Faktor-Authentifizierung"
|
||||||
other: "その他"
|
other: "Anderes"
|
||||||
license: "ライセンス"
|
license: "Lizenz"
|
||||||
behaviour: "動作"
|
behaviour: "Verhalten"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "Aktualisieren beim scrollen"
|
||||||
fetch-on-scroll-desc: "ページを下までスクロールしたときに自動で追加のコンテンツを読み込みます。"
|
fetch-on-scroll-desc: "Wenn du runterscrollst empfängt die Seite automatisch zusätzliche Inhalte."
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "Automatische Pop-out Fenster"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "Pop-out ein offenes Fenster wenn möglich. Diese Einstellung wird im Browser gespeichert."
|
||||||
advanced: "詳細設定"
|
advanced: "Erweiterte Einstellungen"
|
||||||
api-via-stream: "ストリームを経由したAPIリクエスト"
|
api-via-stream: "API-Anfrage via stream"
|
||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "API-Anfrage über WebSocket statt native Aktualisierungs-API (für bessere Leistung). Diese Einstellung wird im Browser gespeichert."
|
||||||
display: "デザインと表示"
|
display: "Erscheinungsbild und Anzeige"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "Startseite anpassen"
|
||||||
dark-mode: "ダークモード"
|
choose-wallpaper: "壁紙を選択"
|
||||||
circle-icons: "円形のアイコンを使用"
|
delete-wallpaper: "壁紙を削除"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
dark-mode: "Nacht Modus"
|
||||||
|
circle-icons: "Kreisförmige Icons"
|
||||||
|
gradient-window-header: "Übergang in Fensterköpfen"
|
||||||
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
||||||
show-reply-target: "リプライ先を表示する"
|
show-reply-target: "Zeige Antworten"
|
||||||
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
show-my-renotes: "Zeige meine Reposts auf der Zeitleiste"
|
||||||
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
show-renoted-my-notes: "Zeige meine Reposts, die geteilt wurden, auf der Zeitleiste"
|
||||||
show-maps: "マップの自動展開"
|
show-maps: "Karte anzeigen"
|
||||||
show-maps-desc: "位置情報が添付された投稿のマップを自動的に展開します。"
|
show-maps-desc: "Zeige den Standort zu diesem Beitrag automatisch an."
|
||||||
sound: "サウンド"
|
sound: "Ton"
|
||||||
enable-sounds: "サウンドを有効にする"
|
enable-sounds: "Ton aktivieren"
|
||||||
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
enable-sounds-desc: "Spiel einen Ton ab beim Erhalten eines Beitrags bzw. einer Nachricht. Diese Einstellung wird im Browser gespeichert."
|
||||||
volume: "ボリューム"
|
volume: "Lautstärke"
|
||||||
test: "テスト"
|
test: "Test"
|
||||||
mobile: "モバイル"
|
mobile: "Mobil"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "Diesen Beitrag nicht mit 'vom Handy' absenden"
|
||||||
language: "言語"
|
language: "Sprache"
|
||||||
pick-language: "言語を選択"
|
pick-language: "Sprache auswählen"
|
||||||
recommended: "推奨"
|
recommended: "Empfohlen"
|
||||||
auto: "自動"
|
auto: "Automatisch"
|
||||||
specify-language: "言語を指定"
|
specify-language: "Sprache auswählen"
|
||||||
language-desc: "変更はページの再度読み込み後に反映されます。"
|
language-desc: "変更はページの再度読み込み後に反映されます。"
|
||||||
cache: "キャッシュ"
|
cache: "キャッシュ"
|
||||||
clean-cache: "クリーンアップ"
|
clean-cache: "クリーンアップ"
|
||||||
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
cache-warn: "Der Cache deines Benutzerkontos (Info, Beiträge, Antworten, Direktnachrichten, Einstellungen), die lokal im Browser gespeichert sind werden gelöscht.\nDu musst die Seite aktualisieren nachdem du aufgeräumt hast."
|
||||||
cache-cleared: "キャッシュを削除しました"
|
cache-cleared: "キャッシュを削除しました"
|
||||||
cache-cleared-desc: "ページを再度読み込みしてください。"
|
cache-cleared-desc: "ページを再度読み込みしてください。"
|
||||||
auto-watch: "投稿の自動ウォッチ"
|
auto-watch: "投稿の自動ウォッチ"
|
||||||
@@ -413,9 +480,9 @@ desktop/views/components/settings.vue:
|
|||||||
operator: "このサーバーの運営者"
|
operator: "このサーバーの運営者"
|
||||||
update: "Misskey Update"
|
update: "Misskey Update"
|
||||||
version: "バージョン:"
|
version: "バージョン:"
|
||||||
latest-version: "最新のバージョン:"
|
latest-version: "Neuste Version:"
|
||||||
update-checking: "アップデートを確認中"
|
update-checking: "Suche nach Updates"
|
||||||
do-update: "アップデートを確認"
|
do-update: "Suche nach Updates"
|
||||||
update-settings: "詳細設定"
|
update-settings: "詳細設定"
|
||||||
prevent-update: "アップデートを延期する(非推奨)"
|
prevent-update: "アップデートを延期する(非推奨)"
|
||||||
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。"
|
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。"
|
||||||
@@ -427,20 +494,20 @@ desktop/views/components/settings.vue:
|
|||||||
debug-mode: "デバッグモードを有効にする"
|
debug-mode: "デバッグモードを有効にする"
|
||||||
debug-mode-desc: "この設定はブラウザに記憶されます。"
|
debug-mode-desc: "この設定はブラウザに記憶されます。"
|
||||||
experimental: "実験的機能を有効にする"
|
experimental: "実験的機能を有効にする"
|
||||||
experimental-desc: "実験的機能を有効にするとMisskeyの動作が不安定になる可能性があります。この設定はブラウザに記憶されます。"
|
experimental-desc: "Experimentelle Funktionen können die Stabilität von Misskey beeinträchtigen. Diese Einstellung wird im Browser gespeichert."
|
||||||
tools: "ツール"
|
tools: "Werkzeuge"
|
||||||
task-manager: "タスクマネージャ"
|
task-manager: "Taskmanager"
|
||||||
third-parties: "サードパーティ"
|
third-parties: "サードパーティ"
|
||||||
desktop/views/components/settings.2fa.vue:
|
desktop/views/components/settings.2fa.vue:
|
||||||
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
|
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
|
||||||
detail: "詳細..."
|
detail: "詳細..."
|
||||||
url: "https://www.google.co.jp/intl/ja/landing/2step/"
|
url: "https://www.google.de/intl/de/landing/2step/"
|
||||||
caution: "登録したデバイスを紛失するなどした場合、Misskeyにサインインできなくなりますのでご注意ください。"
|
caution: "登録したデバイスを紛失するなどした場合、Misskeyにサインインできなくなりますのでご注意ください。"
|
||||||
register: "デバイスを登録する"
|
register: "Ein Gerät registrieren"
|
||||||
already-registered: "既に設定は完了しています。"
|
already-registered: "Das Gerät wurde bereits registriert"
|
||||||
unregister: "設定を解除"
|
unregister: "Abschalten"
|
||||||
unregistered: "二段階認証が無効になりました。"
|
unregistered: "Zwei-Faktor-Authentifizierung wurde deaktiviert."
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "Bitte Passwort eingeben"
|
||||||
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
|
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
|
||||||
howtoinstall: "インストール方法はこちら"
|
howtoinstall: "インストール方法はこちら"
|
||||||
scan: "次に、表示されているQRコードをスキャンします:"
|
scan: "次に、表示されているQRコードをスキャンします:"
|
||||||
@@ -455,16 +522,16 @@ desktop/views/components/settings.api.vue:
|
|||||||
regeneration-of-token: "万が一このトークンが漏れたりその可能性がある場合はトークンを再生成できます。"
|
regeneration-of-token: "万が一このトークンが漏れたりその可能性がある場合はトークンを再生成できます。"
|
||||||
regenerate-token: "トークンを再生成"
|
regenerate-token: "トークンを再生成"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "Bitte Passwort eingeben"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "ミュートしているユーザーはいません"
|
no-users: "ミュートしているユーザーはいません"
|
||||||
desktop/views/components/settings.password.vue:
|
desktop/views/components/settings.password.vue:
|
||||||
reset: "パスワードを変更する"
|
reset: "パスワードを変更する"
|
||||||
enter-current-password: "現在のパスワードを入力してください"
|
enter-current-password: "Derzeitiges Passwort eingeben"
|
||||||
enter-new-password: "新しいパスワードを入力してください"
|
enter-new-password: "Neues Passwort eingeben"
|
||||||
enter-new-password-again: "もう一度新しいパスワードを入力してください"
|
enter-new-password-again: "Neues Passwort erneut eingeben"
|
||||||
not-match: "新しいパスワードが一致しません"
|
not-match: "新しいパスワードが一致しません"
|
||||||
changed: "パスワードを変更しました"
|
changed: "パスワードを変更しました"
|
||||||
desktop/views/components/settings.profile.vue:
|
desktop/views/components/settings.profile.vue:
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "Profil aktualisieren"
|
save: "Profil aktualisieren"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "Taskmanager"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "Home"
|
home: "Home"
|
||||||
local: "Lokal"
|
local: "Lokal"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "Global"
|
global: "Global"
|
||||||
list: "Listen"
|
list: "Listen"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "Dein Profil"
|
profile: "Dein Profil"
|
||||||
drive: "Speicher"
|
drive: "Speicher"
|
||||||
favorites: "Favoriten"
|
favorites: "Favoriten"
|
||||||
lists: "Listen"
|
lists: "Listen"
|
||||||
customize: "Anpassen"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
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"
|
home: "Home"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "Nachrichten"
|
messaging: "Nachrichten"
|
||||||
game: "Spielen"
|
game: "Spielen"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "Einen neuen Post erstellen"
|
post: "Einen neuen Post erstellen"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "Suchen"
|
placeholder: "Suchen"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
@@ -517,13 +598,23 @@ desktop/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
iknow: "知り合い"
|
iknow: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
fetching: "読み込んでいます"
|
fetching: "Lade…"
|
||||||
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: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "よく話すユーザー"
|
title: "よく話すユーザー"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -573,6 +664,11 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "ミュートする"
|
mute: "ミュートする"
|
||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -584,13 +680,12 @@ desktop/views/widgets/notifications.vue:
|
|||||||
title: "通知"
|
title: "通知"
|
||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "クリックでアバター編集"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "ハッシュ (md5)"
|
hash: "ハッシュ (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "Lade…"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -681,7 +838,7 @@ mobile/views/pages/notifications.vue:
|
|||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
read-all: "すべての通知を既読にしますか?"
|
read-all: "すべての通知を既読にしますか?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "Profil"
|
||||||
name: "名前"
|
name: "名前"
|
||||||
account: "アカウント"
|
account: "アカウント"
|
||||||
location: "場所"
|
location: "場所"
|
||||||
@@ -691,7 +848,7 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
banner: "バナー"
|
banner: "バナー"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "Profil wurde aktualisiert"
|
||||||
uploading: "アップロード中"
|
uploading: "アップロード中"
|
||||||
upload-failed: "アップロードに失敗しました"
|
upload-failed: "アップロードに失敗しました"
|
||||||
mobile/views/pages/search.vue:
|
mobile/views/pages/search.vue:
|
||||||
@@ -705,7 +862,7 @@ mobile/views/pages/settings.vue:
|
|||||||
lang-tip: "変更はページの再読み込み後に反映されます。"
|
lang-tip: "変更はページの再読み込み後に反映されます。"
|
||||||
recommended: "推奨"
|
recommended: "推奨"
|
||||||
auto: "自動"
|
auto: "自動"
|
||||||
specify-language: "言語を指定"
|
specify-language: "Sprache auswählen"
|
||||||
design: "デザインと表示"
|
design: "デザインと表示"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "ダークモード"
|
||||||
i-am-under-limited-internet: "私は通信を制限されている"
|
i-am-under-limited-internet: "私は通信を制限されている"
|
||||||
@@ -720,15 +877,17 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
twitter-disconnect: "切断する"
|
twitter-disconnect: "切断する"
|
||||||
update: "Misskey Update"
|
update: "Misskey Update"
|
||||||
version: "バージョン:"
|
version: "バージョン:"
|
||||||
latest-version: "最新のバージョン:"
|
latest-version: "Neuste Version:"
|
||||||
update-checking: "アップデートを確認中"
|
update-checking: "Suche nach Updates"
|
||||||
check-for-updates: "アップデートを確認"
|
check-for-updates: "Suche nach Updates"
|
||||||
no-updates: "利用可能な更新はありません"
|
no-updates: "利用可能な更新はありません"
|
||||||
no-updates-desc: "お使いのMisskeyは最新です。"
|
no-updates-desc: "お使いのMisskeyは最新です。"
|
||||||
update-available: "新しいバージョンが利用可能です"
|
update-available: "新しいバージョンが利用可能です"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
534
locales/en.yml
@@ -3,11 +3,13 @@ meta:
|
|||||||
lang: "English"
|
lang: "English"
|
||||||
divider: ""
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Share everything with others using Misskey."
|
misskey: "A ⭐ of the fediverse"
|
||||||
|
about-title: "A ⭐ of the fediverse."
|
||||||
|
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?"
|
||||||
time:
|
time:
|
||||||
unknown: "unknown"
|
unknown: "unknown"
|
||||||
future: "future"
|
future: "future"
|
||||||
just_now: "just now"
|
just_now: "now"
|
||||||
seconds_ago: "{}s ago"
|
seconds_ago: "{}s ago"
|
||||||
minutes_ago: "{}m ago"
|
minutes_ago: "{}m ago"
|
||||||
hours_ago: "{}h ago"
|
hours_ago: "{}h ago"
|
||||||
@@ -33,14 +35,72 @@ common:
|
|||||||
angry: "Angry"
|
angry: "Angry"
|
||||||
confused: "Confused"
|
confused: "Confused"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "What are you doing?"
|
||||||
|
b: "What's happening?"
|
||||||
|
c: "What’s on your mind?"
|
||||||
|
d: "What do you wish to say?"
|
||||||
|
e: "Write here"
|
||||||
|
f: "Waiting for your writing..."
|
||||||
|
search: "Search"
|
||||||
delete: "Delete"
|
delete: "Delete"
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
update-available: "A new version of Misskey is now available({newer}, current is {current}). Reload the page to apply the update."
|
update-available-title: "Update available"
|
||||||
my-token-regenerated: "Your token has been generated. You will now get logged out."
|
update-available: "A new version of Misskey is now available({newer}, the current version is {current}). Reload the page to apply updates."
|
||||||
|
my-token-regenerated: "Your token has been regenerated, so you will be signed out."
|
||||||
|
i-like-sushi: "I prefer sushi rather than pudding"
|
||||||
|
show-reversi-board-labels: "Show row and column labels in Reversi"
|
||||||
|
reversi:
|
||||||
|
drawn: "Draw"
|
||||||
|
my-turn: "Your turn"
|
||||||
|
opponent-turn: "Opponent's turn"
|
||||||
|
turn-of: "{}'s turn"
|
||||||
|
past-turn-of: "{}'s turn"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "Analog clock"
|
||||||
|
profile: "Profile"
|
||||||
|
calendar: "Calendar"
|
||||||
|
timemachine: "Calendar (Time Machine)"
|
||||||
|
activity: "Activity"
|
||||||
|
rss: "RSS reader"
|
||||||
|
memo: "Sticky note"
|
||||||
|
trends: "Trends"
|
||||||
|
photo-stream: "Photostream"
|
||||||
|
posts-monitor: "Chart of posts"
|
||||||
|
slideshow: "Slideshow"
|
||||||
|
version: "Version"
|
||||||
|
broadcast: "Broadcast"
|
||||||
|
notifications: "Notifications"
|
||||||
|
users: "Recommended users"
|
||||||
|
polls: "Polls"
|
||||||
|
post-form: "Post form"
|
||||||
|
messaging: "Messages"
|
||||||
|
server: "Server info"
|
||||||
|
donation: "Request for donations"
|
||||||
|
nav: "Navigation"
|
||||||
|
tips: "Tips"
|
||||||
|
hashtags: "Hashtags"
|
||||||
|
deck:
|
||||||
|
widgets: "Widgets"
|
||||||
|
home: "Home"
|
||||||
|
local: "Local"
|
||||||
|
hybrid: "Social"
|
||||||
|
global: "Global"
|
||||||
|
notifications: "Notifications"
|
||||||
|
list: "Lists"
|
||||||
|
swap-left: "Move to the left"
|
||||||
|
swap-right: "Move to the right"
|
||||||
|
swap-up: "Move upward"
|
||||||
|
swap-down: "Move downward"
|
||||||
|
remove: "Remove"
|
||||||
|
add-column: "Add a column"
|
||||||
|
rename: "Rename"
|
||||||
|
stack-left: "Stack to the left"
|
||||||
|
pop-right: "Dock on the right"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "Unable to connect to the server"
|
title: "Unable to connect to the server"
|
||||||
description: "There is a problem either with your internet connection, or the server may be down or under maintenance. Please {try again} later."
|
description: "There is a problem with your Internet connection, or the server may be down or under maintenance. Please try again later."
|
||||||
thanks: "Thank you for using Misskey."
|
thanks: "Thank you for using Misskey."
|
||||||
troubleshoot: "Troubleshoot"
|
troubleshoot: "Troubleshoot"
|
||||||
common/views/components/connect-failed.troubleshooter.vue:
|
common/views/components/connect-failed.troubleshooter.vue:
|
||||||
@@ -48,34 +108,34 @@ common/views/components/connect-failed.troubleshooter.vue:
|
|||||||
network: "Network connection"
|
network: "Network connection"
|
||||||
checking-network: "Checking network connection"
|
checking-network: "Checking network connection"
|
||||||
internet: "Internet connection"
|
internet: "Internet connection"
|
||||||
checking-internet: "Checking internet connection"
|
checking-internet: "Checking Internet connection"
|
||||||
server: "Server connection"
|
server: "Server connection"
|
||||||
checking-server: "Checking server connection"
|
checking-server: "Checking server connection"
|
||||||
finding: "Finding a problem"
|
finding: "Searching for issues"
|
||||||
no-network: "There is no Network connection"
|
no-network: "No connection"
|
||||||
no-network-desc: "Please make sure you are connected to the Network."
|
no-network-desc: "Please make sure that you have a network connection."
|
||||||
no-internet: "There is no Internet connection"
|
no-internet: "There is no Internet connection"
|
||||||
no-internet-desc: "Please make sure you are connected to the Internet."
|
no-internet-desc: "Please make sure you are connected to the Internet."
|
||||||
no-server: "Unable to connect to the Misskey server"
|
no-server: "Unable to connect to the Misskey server"
|
||||||
no-server-desc: "The network connection of your PC is normal, but you could not connect to the Misskey server. There is a possibility that the server is either down or under maintenance, please try again later."
|
no-server-desc: "The network connection of your device is normal, but you could not connect to the Misskey server. There is a possibility that the server is either down, or under maintenance, please try again later."
|
||||||
success: "Successfully connected to the Misskey server"
|
success: "Successfully connected to the Misskey server"
|
||||||
success-desc: "It seems to be able to connect. Please reload the page."
|
success-desc: "It seems to be able to connect. Please reload the page."
|
||||||
flush: "Clean cache"
|
flush: "Clean cache"
|
||||||
set-version: "Specify version"
|
set-version: "Specify version"
|
||||||
common/views/components/messaging.vue:
|
common/views/components/messaging.vue:
|
||||||
search-user: "Find an user"
|
search-user: "Find a user"
|
||||||
you: "You"
|
you: "You"
|
||||||
no-history: "No history"
|
no-history: "Without history"
|
||||||
common/views/components/messaging-room.vue:
|
common/views/components/messaging-room.vue:
|
||||||
empty: "No conversations"
|
empty: "No conversations"
|
||||||
more: "More"
|
more: "Read more"
|
||||||
no-history: "There is no more history"
|
no-history: "There is no further history"
|
||||||
resize-form: "Drag to resize"
|
resize-form: "Drag to resize"
|
||||||
new-message: "New message"
|
new-message: "New message"
|
||||||
common/views/components/messaging-room.form.vue:
|
common/views/components/messaging-room.form.vue:
|
||||||
input-message-here: "Enter message here"
|
input-message-here: "Enter message here"
|
||||||
send: "Send"
|
send: "Send"
|
||||||
attach-from-local: "Attach files from your pc"
|
attach-from-local: "Attach files from your device"
|
||||||
attach-from-drive: "Attach files from your Drive"
|
attach-from-drive: "Attach files from your Drive"
|
||||||
common/views/components/messaging-room.message.vue:
|
common/views/components/messaging-room.message.vue:
|
||||||
is-read: "Read"
|
is-read: "Read"
|
||||||
@@ -91,8 +151,10 @@ common/views/components/nav.vue:
|
|||||||
feedback: "Feedback"
|
feedback: "Feedback"
|
||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "Favorite this note"
|
favorite: "Favorite this note"
|
||||||
pin: "Pin to profile page"
|
pin: "Pin to your profile page"
|
||||||
remote: "Show on origin"
|
delete: "Delete"
|
||||||
|
delete-confirm: "Delete this post for sure?"
|
||||||
|
remote: "Show the originating note"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Vote for '{}'"
|
vote-to: "Vote for '{}'"
|
||||||
vote-count: "{} votes"
|
vote-count: "{} votes"
|
||||||
@@ -101,13 +163,13 @@ common/views/components/poll.vue:
|
|||||||
show-result: "Show results"
|
show-result: "Show results"
|
||||||
voted: "Voted"
|
voted: "Voted"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "You need to enter two or more choices."
|
no-only-one-choice: "At least two choices are required for this survey."
|
||||||
choice-n: "Choice {}"
|
choice-n: "Choice {}"
|
||||||
remove: "Remove this choice"
|
remove: "Delete this choice"
|
||||||
add: "+ Add a choice"
|
add: "+ Add a choice"
|
||||||
destroy: "Destroy this poll"
|
destroy: "Discard the poll"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "Choose a reaction"
|
choose-reaction: "Express a reaction"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
username: "Username"
|
username: "Username"
|
||||||
password: "Password"
|
password: "Password"
|
||||||
@@ -125,16 +187,16 @@ common/views/components/signup.vue:
|
|||||||
too-long: "Please enter up to 20 characters."
|
too-long: "Please enter up to 20 characters."
|
||||||
password: "Password"
|
password: "Password"
|
||||||
password-placeholder: "We recommend more than 8 characters."
|
password-placeholder: "We recommend more than 8 characters."
|
||||||
weak-password: "Weak"
|
weak-password: "Weak password"
|
||||||
normal-password: "So so"
|
normal-password: "Fair password"
|
||||||
strong-password: "Strong"
|
strong-password: "Strong password"
|
||||||
retype: "Type again"
|
retype: "Re-enter"
|
||||||
retype-placeholder: "Confirm your password"
|
retype-placeholder: "Confirm your password"
|
||||||
password-matched: "OK"
|
password-matched: "OK"
|
||||||
password-not-matched: "Doesn't match"
|
password-not-matched: "Doesn't match"
|
||||||
recaptcha: "Verify"
|
recaptcha: "Verification"
|
||||||
create: "Create an Account"
|
create: "Create an Account"
|
||||||
some-error: "Account creation failed for some reason. Please try again."
|
some-error: "An attempt at account creation has failed for some reason. Please try again."
|
||||||
common/views/components/special-message.vue:
|
common/views/components/special-message.vue:
|
||||||
new-year: "Happy New Year!"
|
new-year: "Happy New Year!"
|
||||||
christmas: "Merry Christmas!"
|
christmas: "Merry Christmas!"
|
||||||
@@ -143,29 +205,15 @@ common/views/components/stream-indicator.vue:
|
|||||||
reconnecting: "Reconnecting"
|
reconnecting: "Reconnecting"
|
||||||
connected: "Connected"
|
connected: "Connected"
|
||||||
common/views/components/twitter-setting.vue:
|
common/views/components/twitter-setting.vue:
|
||||||
description: "If you connect your Twitter account to your Misskey account, you will be able to see your Twitter account information on your profile and you can sign-in using Twitter."
|
description: "Once you connect your Twitter account to your Misskey account, you will be able to see information about your Twitter account on your profile, and you will be able to sign-in using Twitter."
|
||||||
connected-to: "You are connected to this Twitter account"
|
connected-to: "You are connected to this Twitter account"
|
||||||
detail: "Detail..."
|
detail: "Details..."
|
||||||
reconnect: "Reconnect"
|
reconnect: "Reconnect"
|
||||||
connect: "Link your twitter account"
|
connect: "Link your Twitter account"
|
||||||
disconnect: "Disconnect"
|
disconnect: "Disconnect"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "Waiting"
|
waiting: "Waiting"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/components/visibility-chooser.vue:
|
||||||
fetching: "Fetching"
|
|
||||||
no-broadcasts: "No broadcasts"
|
|
||||||
have-a-nice-day: "Have a nice day!"
|
|
||||||
next: "Next"
|
|
||||||
common/views/widgets/donation.vue:
|
|
||||||
title: "Donation"
|
|
||||||
text: "To keep Misskey up and running we spend money for our domain name, servers and so on.. We don't get any money from it, and we would really appreciate it if you could donate. If you're interested contact {}. Thank you for your contribution!"
|
|
||||||
common/views/widgets/photo-stream.vue:
|
|
||||||
title: "Photostream"
|
|
||||||
no-photos: "No photos"
|
|
||||||
common/views/widgets/server.vue:
|
|
||||||
title: "Server info"
|
|
||||||
toggle: "Toggle views"
|
|
||||||
common/views/widgets/visibility-chooser.vue:
|
|
||||||
public: "Public"
|
public: "Public"
|
||||||
home: "Home"
|
home: "Home"
|
||||||
home-desc: "Post to the home timeline only"
|
home-desc: "Post to the home timeline only"
|
||||||
@@ -174,11 +222,42 @@ common/views/widgets/visibility-chooser.vue:
|
|||||||
specified: "Direct"
|
specified: "Direct"
|
||||||
specified-desc: "Post to specified users only"
|
specified-desc: "Post to specified users only"
|
||||||
private: "Private"
|
private: "Private"
|
||||||
|
common/views/widgets/broadcast.vue:
|
||||||
|
fetching: "Fetching"
|
||||||
|
no-broadcasts: "No announcements"
|
||||||
|
have-a-nice-day: "Have a nice day!"
|
||||||
|
next: "Next"
|
||||||
|
common/views/widgets/donation.vue:
|
||||||
|
title: "Request for donations"
|
||||||
|
text: "To keep Misskey up and running, we have to spend money on our domain name, the server costs and so on. Since we don't receive money from advertisements, we count on donations from all of you. If you're interested in helping, contact {}. Thank you for your contribution!"
|
||||||
|
common/views/widgets/photo-stream.vue:
|
||||||
|
title: "Photo stream"
|
||||||
|
no-photos: "No photos"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "Chart of posts"
|
||||||
|
toggle: "Toggle views"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "Hashtags"
|
||||||
|
count: "{} users mentioned"
|
||||||
|
empty: "No popular hashtag trends"
|
||||||
|
common/views/widgets/server.vue:
|
||||||
|
title: "Server info"
|
||||||
|
toggle: "Toggle views"
|
||||||
|
common/views/widgets/memo.vue:
|
||||||
|
title: "Sticky note"
|
||||||
|
memo: "Write here!"
|
||||||
|
save: "Save"
|
||||||
|
common/views/pages/follow.vue:
|
||||||
|
signed-in-as: "Signed in as {}"
|
||||||
|
following: "Following"
|
||||||
|
follow: "Follow"
|
||||||
|
request-pending: "Pending follow request"
|
||||||
|
follow-request: "Follow request"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
replies: "Red ... Replies"
|
replies: "Red ... Replies"
|
||||||
renotes: "Green ... Renotes"
|
renotes: "Green ... Repost"
|
||||||
desktop/views/components/activity.vue:
|
desktop/views/components/activity.vue:
|
||||||
title: "Activity"
|
title: "Activity"
|
||||||
toggle: "Toggle views"
|
toggle: "Toggle views"
|
||||||
@@ -186,24 +265,24 @@ desktop/views/components/calendar.vue:
|
|||||||
title: "{1} / {2}"
|
title: "{1} / {2}"
|
||||||
prev: "Previous month"
|
prev: "Previous month"
|
||||||
next: "Next month"
|
next: "Next month"
|
||||||
go: "Click to naviguate"
|
go: "Click to navigate"
|
||||||
desktop/views/components/choose-file-from-drive-window.vue:
|
desktop/views/components/choose-file-from-drive-window.vue:
|
||||||
choose-file: "Choosing files"
|
choose-file: "Choose files"
|
||||||
upload: "Upload files from your PC"
|
upload: "Upload files from your device"
|
||||||
cancel: "Cancel"
|
cancel: "Cancel"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
choose-prompt: "Choose a file"
|
choose-prompt: "Choose a file"
|
||||||
desktop/views/components/choose-folder-from-drive-window.vue:
|
desktop/views/components/choose-folder-from-drive-window.vue:
|
||||||
cancel: "Cancel"
|
cancel: "Cancel"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
choose-prompt: "Choose a Folder"
|
choose-prompt: "Choose a folder"
|
||||||
desktop/views/components/crop-window.vue:
|
desktop/views/components/crop-window.vue:
|
||||||
skip: "Skip cropping"
|
skip: "Skip cropping"
|
||||||
cancel: "Cancel"
|
cancel: "Cancel"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
desktop/views/components/drive-window.vue:
|
desktop/views/components/drive-window.vue:
|
||||||
used: "used"
|
used: "used"
|
||||||
drive: "Drive"
|
drive: "Media storage"
|
||||||
desktop/views/components/drive.file.vue:
|
desktop/views/components/drive.file.vue:
|
||||||
avatar: "Avatar"
|
avatar: "Avatar"
|
||||||
banner: "Banner"
|
banner: "Banner"
|
||||||
@@ -231,13 +310,13 @@ desktop/views/components/drive.folder.vue:
|
|||||||
rename-folder: "Rename folder"
|
rename-folder: "Rename folder"
|
||||||
input-new-folder-name: "Enter new name"
|
input-new-folder-name: "Enter new name"
|
||||||
desktop/views/components/drive.nav-folder.vue:
|
desktop/views/components/drive.nav-folder.vue:
|
||||||
drive: "Drive"
|
drive: "Media storage"
|
||||||
desktop/views/components/drive.vue:
|
desktop/views/components/drive.vue:
|
||||||
search: "Search"
|
search: "Search"
|
||||||
load-more: "Load more"
|
load-more: "Load more"
|
||||||
empty-draghover: "Drop Welcome!"
|
empty-draghover: "Drop it here, don't I look cute?"
|
||||||
empty-drive: "Your drive is empty"
|
empty-drive: "Your media storage is empty"
|
||||||
empty-drive-description: "You can also upload by right clicking and selecting \"Upload file\" or you can drag and drop a file onto the window."
|
empty-drive-description: "Right-click to open the menu, or drag and drop a file onto here for uploading."
|
||||||
empty-folder: "This folder is empty"
|
empty-folder: "This folder is empty"
|
||||||
unable-to-process: "The operation could not be completed."
|
unable-to-process: "The operation could not be completed."
|
||||||
circular-reference-detected: "The destination folder is a subfolder of the folder you wish to move."
|
circular-reference-detected: "The destination folder is a subfolder of the folder you wish to move."
|
||||||
@@ -253,46 +332,29 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "Upload a file"
|
upload: "Upload a file"
|
||||||
url-upload: "Upload from a URL"
|
url-upload: "Upload from a URL"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "Unfollow"
|
following: "Following"
|
||||||
follow: "Follow"
|
follow: "Follow"
|
||||||
|
request-pending: "Pending follow request"
|
||||||
|
follow-request: "Follow request"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "Followers of {}"
|
followers: "{}'s followers"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
empty: "Seems that you don’t have any followers."
|
empty: "Seems like you don’t have any followers."
|
||||||
desktop/views/components/following-window.vue:
|
desktop/views/components/following-window.vue:
|
||||||
following: "Following {}"
|
following: "Following {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "You don’t follow anyone."
|
empty: "You don’t follow anyone."
|
||||||
desktop/views/components/friends-maker.vue:
|
desktop/views/components/friends-maker.vue:
|
||||||
title: "Recommended users:"
|
title: "Recommended users:"
|
||||||
empty: "Similar users weren’t found."
|
empty: "Couldn't find any recommended users."
|
||||||
fetching: "Loading…"
|
fetching: "Loading"
|
||||||
refresh: "More"
|
refresh: "More"
|
||||||
close: "Close"
|
close: "Close"
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Othello"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
done: "Submit"
|
done: "Done"
|
||||||
add-widget: "Add widget:"
|
add-widget: "Add widget:"
|
||||||
profile: "Profile"
|
|
||||||
calendar: "Calendar"
|
|
||||||
timemachine: "Calendar (Time Machine)"
|
|
||||||
activity: "Activity"
|
|
||||||
rss: "RSS reader"
|
|
||||||
trends: "Trends"
|
|
||||||
photostream: "Photostream"
|
|
||||||
slideshow: "Slideshow"
|
|
||||||
version: "Version"
|
|
||||||
broadcast: "Broadcast"
|
|
||||||
notifications: "Notifications"
|
|
||||||
users: "Recommended users"
|
|
||||||
polls: "Polls"
|
|
||||||
post-form: "Post form"
|
|
||||||
messaging: "Messaging"
|
|
||||||
server: "Server info"
|
|
||||||
donation: "Donation"
|
|
||||||
nav: "Navigation"
|
|
||||||
tips: "Tips"
|
|
||||||
add: "Add"
|
add: "Add"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "Cancel"
|
cancel: "Cancel"
|
||||||
@@ -303,45 +365,46 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "Messaging"
|
title: "Messaging"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "Load more conversations"
|
more: "Load more conversations"
|
||||||
private: "(this post is private)"
|
private: "This post is private"
|
||||||
is-renote: "がRenote"
|
deleted: "This post has been removed"
|
||||||
|
reposted-by: "Reposted by {}"
|
||||||
location: "Location"
|
location: "Location"
|
||||||
renote: "Renote"
|
renote: "Repost"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "Add a reaction"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(this post is private)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "Reposted by {}"
|
reposted-by: "Reposted by {}"
|
||||||
reply: "Reply"
|
reply: "Reply"
|
||||||
renote: "Renote"
|
renote: "Repost"
|
||||||
add-reaction: "Add a reaction"
|
add-reaction: "Add a reaction"
|
||||||
detail: "Show detail"
|
detail: "Show details"
|
||||||
|
private: "This post is private"
|
||||||
|
deleted: "The post has been deleted"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "Loading failed."
|
error: "Loading failed."
|
||||||
retry: "Retry"
|
retry: "Retry"
|
||||||
|
load-more: "Read more"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "More"
|
more: "More"
|
||||||
empty: "No notifications"
|
empty: "No notifications!"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "What's happening?"
|
|
||||||
reply-placeholder: "Reply to this note..."
|
reply-placeholder: "Reply to this note..."
|
||||||
quote-placeholder: "Quote this note..."
|
quote-placeholder: "Quote this note..."
|
||||||
note: "Post"
|
submit: "Post"
|
||||||
reply: "Reply"
|
reply: "Reply"
|
||||||
renote: "Renote"
|
renote: "Repost"
|
||||||
posted: "Posted!"
|
posted: "Posted!"
|
||||||
replied: "Replied!"
|
replied: "Replied!"
|
||||||
reposted: "Reposted!"
|
reposted: "Reposted!"
|
||||||
note-failed: "Failed to note"
|
note-failed: "Failed to post the note"
|
||||||
reply-failed: "Failed to reply"
|
reply-failed: "Failed to reply"
|
||||||
renote-failed: "Failed to renote"
|
renote-failed: "Failed to repost"
|
||||||
posting: "Posting"
|
posting: "Posting"
|
||||||
attach-media-from-local: "Attach media from your pc"
|
attach-media-from-local: "Attach media from your device"
|
||||||
attach-media-from-drive: "Attach media from your Drive"
|
attach-media-from-drive: "Attach media from your Drive"
|
||||||
attach-cancel: "Cancel attachment"
|
attach-cancel: "Cancel attachment"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "Create a poll"
|
create-poll: "Create a poll"
|
||||||
text-remain: "{} chars remaining"
|
text-remain: "{} characters remaining"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "New note"
|
note: "New note"
|
||||||
reply: "Reply"
|
reply: "Reply"
|
||||||
@@ -352,12 +415,14 @@ desktop/views/components/progress-dialog.vue:
|
|||||||
desktop/views/components/renote-form.vue:
|
desktop/views/components/renote-form.vue:
|
||||||
quote: "Quote..."
|
quote: "Quote..."
|
||||||
cancel: "Cancel"
|
cancel: "Cancel"
|
||||||
renote: "Renote"
|
renote: "Repost"
|
||||||
reposting: "Reposting..."
|
reposting: "Reposting..."
|
||||||
success: "Reposted!"
|
success: "Reposted!"
|
||||||
failure: "Failed to Renote"
|
failure: "Repost failed"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "Are you sure you want to renote this note?"
|
title: "Are you sure you want to repost this?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "Settings"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "Profile"
|
profile: "Profile"
|
||||||
notification: "Notification"
|
notification: "Notification"
|
||||||
@@ -371,43 +436,45 @@ desktop/views/components/settings.vue:
|
|||||||
other: "Other"
|
other: "Other"
|
||||||
license: "License"
|
license: "License"
|
||||||
behaviour: "Behavior"
|
behaviour: "Behavior"
|
||||||
fetch-on-scroll: "Fetch on scroll"
|
fetch-on-scroll: "Endless loading on scroll"
|
||||||
fetch-on-scroll-desc: "When you scroll down the page automatically fetches additional content."
|
fetch-on-scroll-desc: "When you scroll down the page, it automatically fetches additional content."
|
||||||
auto-popout: "Auto pop-out window"
|
auto-popout: "Auto pop-out window"
|
||||||
auto-popout-desc: "Pop-out an opened window if possible. This setting is stored in the browser."
|
auto-popout-desc: "Pops-out a newly opened window (onto a new tab), if possible. This setting is stored in the browser."
|
||||||
advanced: "Advanced settings"
|
advanced: "Advanced settings"
|
||||||
api-via-stream: "API request via stream"
|
api-via-stream: "API request via stream"
|
||||||
api-via-stream-desc: "API request is performed via the WebSocket connection instead of native fetch API (for better performance). This setting is stored in the browser."
|
api-via-stream-desc: "API request is performed via the WebSocket connection instead of native fetch API (for better performance). This setting is stored in the browser."
|
||||||
display: "Design and display"
|
display: "Design and display"
|
||||||
customize: "Customize Home"
|
customize: "Customize home layout"
|
||||||
|
choose-wallpaper: "Choose a background"
|
||||||
|
delete-wallpaper: "Remove background"
|
||||||
dark-mode: "Dark Mode"
|
dark-mode: "Dark Mode"
|
||||||
circle-icons: "Use circle icons"
|
circle-icons: "Use circle icons"
|
||||||
gradient-window-header: "Use gradients on window headers"
|
gradient-window-header: "Use gradients on window headers"
|
||||||
post-form-on-timeline: "Display post form at the top of the timeline"
|
post-form-on-timeline: "Display post form at the top of the timeline"
|
||||||
show-reply-target: "Display reply target"
|
show-reply-target: "Display reply target"
|
||||||
show-my-renotes: "Show my renote in the timeline"
|
show-my-renotes: "Show my reposts in the timeline"
|
||||||
show-renoted-my-notes: "Show renoted my post in the timeline"
|
show-renoted-my-notes: "Show my posts that have been shared in the timeline"
|
||||||
show-maps: "Show the map"
|
show-maps: "Show the map"
|
||||||
show-maps-desc: "Show the map of the location attached to the post."
|
show-maps-desc: "Automatically show the location on the map attached to this post."
|
||||||
sound: "Sound"
|
sound: "Sound"
|
||||||
enable-sounds: "Enable sound"
|
enable-sounds: "Enable sound"
|
||||||
enable-sounds-desc: "Play a sound when you received a post/message. This setting is stored in the browser."
|
enable-sounds-desc: "Play a sound when you receive a post/message. This setting is stored in the browser."
|
||||||
volume: "Volume"
|
volume: "Volume"
|
||||||
test: "Test"
|
test: "Test"
|
||||||
mobile: "Mobile"
|
mobile: "Mobile"
|
||||||
disable-via-mobile: "Not mark the post as 'from mobile'"
|
disable-via-mobile: "Don't mark the post as 'from mobile'"
|
||||||
language: "Language"
|
language: "Language"
|
||||||
pick-language: "Select a language"
|
pick-language: "Select a language"
|
||||||
recommended: "Recommended"
|
recommended: "Recommended"
|
||||||
auto: "Auto"
|
auto: "Automatic"
|
||||||
specify-language: "Specify the language"
|
specify-language: "Specify language"
|
||||||
language-desc: "You need to reload the page for the changes to take effect."
|
language-desc: "You need to reload the page for the changes to take effect."
|
||||||
cache: "Cache"
|
cache: "Cache"
|
||||||
clean-cache: "Cleanup"
|
clean-cache: "Clear cache"
|
||||||
cache-warn: "The cache of account info/posts/replies/messages/settings stored in the browser will be deleted. You need to reload the page after cleaning up."
|
cache-warn: "The cache of account info/posts/replies/messages/settings stored in the browser will be deleted. You need to reload the page after cleaning up."
|
||||||
cache-cleared: "Cache cleared"
|
cache-cleared: "Cache cleared"
|
||||||
cache-cleared-desc: "Please reload the page."
|
cache-cleared-desc: "Please reload the page."
|
||||||
auto-watch: "Auto watch"
|
auto-watch: "Automatic watch"
|
||||||
auto-watch-desc: "Receive notifications about the post/reply/reaction automatically."
|
auto-watch-desc: "Receive notifications about the post/reply/reaction automatically."
|
||||||
about: "About Misskey"
|
about: "About Misskey"
|
||||||
operator: "The admin of this instance"
|
operator: "The admin of this instance"
|
||||||
@@ -415,58 +482,58 @@ desktop/views/components/settings.vue:
|
|||||||
version: "Version:"
|
version: "Version:"
|
||||||
latest-version: "Latest version:"
|
latest-version: "Latest version:"
|
||||||
update-checking: "Checking for updates"
|
update-checking: "Checking for updates"
|
||||||
do-update: "Check for update"
|
do-update: "Check for updates"
|
||||||
update-settings: "Advanced settings"
|
update-settings: "Advanced settings"
|
||||||
prevent-update: "Postpone updates (not recommended)"
|
prevent-update: "Postpone updates (not recommended)"
|
||||||
prevent-update-desc: "You may reflect updates even if you select this setting. This setting is valid only this device."
|
prevent-update-desc: "Even if you turn this setting on, updates may apply. This setting is enabled only for this device."
|
||||||
no-updates: "No updates available"
|
no-updates: "No updates available"
|
||||||
no-updates-desc: "Your Misskey is up to date."
|
no-updates-desc: "Your Misskey is up to date."
|
||||||
update-available: "New version is available!"
|
update-available: "A new version is available"
|
||||||
update-available-desc: "To reload the page and updates are applied."
|
update-available-desc: "The updates will apply if you reload the page again."
|
||||||
advanced-settings: "Advanced"
|
advanced-settings: "Advanced"
|
||||||
debug-mode: "Enable the debug mode"
|
debug-mode: "Enable the debug mode"
|
||||||
debug-mode-desc: "This setting is stored in the browser."
|
debug-mode-desc: "This setting is stored in the browser."
|
||||||
experimental: "Enable experimental features"
|
experimental: "Enable experimental features"
|
||||||
experimental-desc: "It would make Misskey client unstable. This setting is stored in the browser."
|
experimental-desc: "Activating this might make the Misskey client unstable. This setting is stored in the browser."
|
||||||
tools: "Tools"
|
tools: "Tools"
|
||||||
task-manager: "Task Manager"
|
task-manager: "Task Manager"
|
||||||
third-parties: "Third-party"
|
third-parties: "Third-parties"
|
||||||
desktop/views/components/settings.2fa.vue:
|
desktop/views/components/settings.2fa.vue:
|
||||||
intro: "If you set up 2-step verification, you will need not only a password at sign-in but also a pre-registered physical device (such as your smartphone), which will improve security. "
|
intro: "If you set up 2-step verification, you will not only need a password at sign-in, but also a pre-registered physical device (such as your smartphone), which will improve security."
|
||||||
detail: "See details..."
|
detail: "See details..."
|
||||||
url: "https://www.google.com/landing/2step/"
|
url: "https://www.google.com/landing/2step/"
|
||||||
caution: "If you lose access to your device, you won't be able to connect to Misskey anymore!"
|
caution: "If you lose access to your device, you won't be able to connect to Misskey anymore!"
|
||||||
register: "Register a device"
|
register: "Register a device"
|
||||||
already-registered: "A device is already registered"
|
already-registered: "A device is already registered"
|
||||||
unregister: "Disable"
|
unregister: "Disable"
|
||||||
unregistered: "Two-step authentication has been disabled."
|
unregistered: "Two-factor authentication has been disabled."
|
||||||
enter-password: "Enter the password"
|
enter-password: "Enter the password"
|
||||||
authenticator: "First, you need install Google Authenticator on your device:"
|
authenticator: "First, you need to install Google Authenticator on your device:"
|
||||||
howtoinstall: "How to install"
|
howtoinstall: "How to install"
|
||||||
scan: "And then, scan the QR code:"
|
scan: "And then, scan the QR code:"
|
||||||
done: "Please enter the token displaying on your device:"
|
done: "Please enter the token displaying on your device:"
|
||||||
submit: "Submit"
|
submit: "Submit"
|
||||||
success: "Setup completed successfully!"
|
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 now on, enter the token that is displayed on your device in addition to your password when signing-in to Misskey."
|
info: "From now on, enter the token that is displayed on your device in addition to your password when signing-in to Misskey."
|
||||||
desktop/views/components/settings.api.vue:
|
desktop/views/components/settings.api.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: "Please do not show this token to third parties (do not enter it somewhere else other than here) otherwise your account could get compromised."
|
caution: "Please do not show this token to third parties (do not enter it somewhere else other than here) otherwise your account could get compromised."
|
||||||
regeneration-of-token: "In the unlikely event that this token leaks out you can regenerate it."
|
regeneration-of-token: "In the unlikely event that this token leaks out, you can regenerate it."
|
||||||
regenerate-token: "Regenerate the token"
|
regenerate-token: "Regenerate the token"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "Please enter the password"
|
enter-password: "Please enter the password"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "No authorized apps"
|
no-apps: "No linked applications"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "No muted users"
|
no-users: "No muted users"
|
||||||
desktop/views/components/settings.password.vue:
|
desktop/views/components/settings.password.vue:
|
||||||
reset: "Change your password"
|
reset: "Change password"
|
||||||
enter-current-password: "Enter the current password"
|
enter-current-password: "Enter the current password"
|
||||||
enter-new-password: "Enter the new password"
|
enter-new-password: "Enter the new password"
|
||||||
enter-new-password-again: "Enter the new password again"
|
enter-new-password-again: "Enter new password again"
|
||||||
not-match: "New password doesn't match"
|
not-match: "The new passwords do not match"
|
||||||
changed: "Password updated successfully"
|
changed: "Password updated"
|
||||||
desktop/views/components/settings.profile.vue:
|
desktop/views/components/settings.profile.vue:
|
||||||
avatar: "Avatar"
|
avatar: "Avatar"
|
||||||
choice-avatar: "Choose an image"
|
choice-avatar: "Choose an image"
|
||||||
@@ -475,40 +542,54 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "Description"
|
description: "Description"
|
||||||
birthday: "Birthday"
|
birthday: "Birthday"
|
||||||
save: "Update profile"
|
save: "Update profile"
|
||||||
|
locked-account: "Protect your account"
|
||||||
|
is-locked: "Make a note private"
|
||||||
|
other: "Other"
|
||||||
is-bot: "This account is a Bot"
|
is-bot: "This account is a Bot"
|
||||||
is-cat: "This account is a Cat"
|
is-cat: "This account is a Cat"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(this post is private)"
|
private: "This post is private"
|
||||||
media: " media"
|
deleted: "This post has been deleted"
|
||||||
poll: "Polls"
|
media-count: "{} media attached"
|
||||||
|
poll: "Poll"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "Task Manager"
|
title: "Task Manager"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "Home"
|
home: "Home"
|
||||||
local: "Local"
|
local: "Local"
|
||||||
|
hybrid: "Social"
|
||||||
global: "Global"
|
global: "Global"
|
||||||
list: "Lists"
|
list: "Lists"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "Welcome back,"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "Your profile"
|
profile: "Your profile"
|
||||||
drive: "Drive"
|
drive: "Media storage"
|
||||||
favorites: "Favorites"
|
favorites: "Favorites"
|
||||||
lists: "Lists"
|
lists: "Lists"
|
||||||
customize: "Customize"
|
follow-requests: "Follow requests"
|
||||||
|
customize: "Customize home layout"
|
||||||
settings: "Settings"
|
settings: "Settings"
|
||||||
signout: "Sign out"
|
signout: "Sign out"
|
||||||
dark: "Fall in dark"
|
dark: "Submerge in dark"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "Home"
|
home: "Home"
|
||||||
|
deck: "Deck"
|
||||||
messaging: "Messages"
|
messaging: "Messages"
|
||||||
game: "Play Othello"
|
game: "Games"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
title: "Notifications"
|
title: "Notifications"
|
||||||
desktop/views/components/ui.header.post.vue:
|
desktop/views/components/ui.header.post.vue:
|
||||||
post: "Compose new Post"
|
post: "Compose new Post"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "Search"
|
placeholder: "Search"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "Follow requests"
|
||||||
|
accept: "Accept"
|
||||||
|
reject: "Reject"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
create-list: "Create list"
|
title: "User lists"
|
||||||
|
create-list: "Create new list"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "Posts"
|
notes: "Posts"
|
||||||
following: "Following"
|
following: "Following"
|
||||||
@@ -521,20 +602,30 @@ desktop/views/components/users-list.vue:
|
|||||||
desktop/views/components/users-list-item.vue:
|
desktop/views/components/users-list-item.vue:
|
||||||
followed: "Follows you"
|
followed: "Follows you"
|
||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "Popout"
|
popout: "Pop-out"
|
||||||
close: "Close"
|
close: "Close"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "Only media posts"
|
||||||
|
is-media-view: "Media view"
|
||||||
|
edit: "Options"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "Reposted by {}"
|
||||||
|
private: "This post is private"
|
||||||
|
deleted: "This post has been deleted"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "More details..."
|
||||||
|
gotit: "Got it!"
|
||||||
signin: "Log In"
|
signin: "Log In"
|
||||||
signup: "Sign up"
|
signup: "Sign up"
|
||||||
signin-button: "Log in"
|
signin-button: "Log in"
|
||||||
signup-button: "Sign up"
|
signup-button: "Sign up"
|
||||||
timeline: "Timeline"
|
timeline: "Timeline"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Misskey storage"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
more: "Load More"
|
more: "Load more"
|
||||||
desktop/views/pages/home-customize.vue:
|
desktop/views/pages/home-customize.vue:
|
||||||
title: "Customize home"
|
title: "Customize home layout"
|
||||||
desktop/views/pages/note.vue:
|
desktop/views/pages/note.vue:
|
||||||
prev: "Previous note"
|
prev: "Previous note"
|
||||||
next: "Next note"
|
next: "Next note"
|
||||||
@@ -542,7 +633,7 @@ desktop/views/pages/selectdrive.vue:
|
|||||||
title: "Choose file(s)"
|
title: "Choose file(s)"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
cancel: "Cancel"
|
cancel: "Cancel"
|
||||||
upload: "Upload files from you PC"
|
upload: "Upload files from your device"
|
||||||
desktop/views/pages/user-list.users.vue:
|
desktop/views/pages/user-list.users.vue:
|
||||||
users: "User"
|
users: "User"
|
||||||
add-user: "Add a user"
|
add-user: "Add a user"
|
||||||
@@ -550,17 +641,17 @@ desktop/views/pages/user-list.users.vue:
|
|||||||
desktop/views/pages/user/user.followers-you-know.vue:
|
desktop/views/pages/user/user.followers-you-know.vue:
|
||||||
title: "Followers you know"
|
title: "Followers you know"
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
no-users: "No users"
|
no-users: "No followers you know"
|
||||||
desktop/views/pages/user/user.friends.vue:
|
desktop/views/pages/user/user.friends.vue:
|
||||||
title: "Frequently replied"
|
title: "Frequent mentions"
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
no-users: "No users"
|
no-users: "No users"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "This account has been suspended."
|
is-suspended: "This account has been suspended."
|
||||||
is-remote: "This user is a remote user, so the information is not accurate. "
|
is-remote: "This user is a remote user, so the information about them that you see here is not complete. "
|
||||||
view-remote: "See accurate information"
|
view-remote: "See their complete profile"
|
||||||
desktop/views/pages/user/user.home.vue:
|
desktop/views/pages/user/user.home.vue:
|
||||||
last-used-at: "Last active: "
|
last-used-at: "Last active:"
|
||||||
desktop/views/pages/user/user.photos.vue:
|
desktop/views/pages/user/user.photos.vue:
|
||||||
title: "Photos"
|
title: "Photos"
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
@@ -573,11 +664,16 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "Mute"
|
mute: "Mute"
|
||||||
muted: "Muting"
|
muted: "Muting"
|
||||||
unmute: "Unmute"
|
unmute: "Unmute"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "Notes"
|
||||||
|
following: "Following"
|
||||||
|
followers: "Followers"
|
||||||
|
is-bot: "This account is a Bot"
|
||||||
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: "Notes and replies"
|
||||||
with-media: "Media"
|
with-media: "Media"
|
||||||
empty: "This user has never posted yet."
|
empty: "This user doesn't seem to have posted anything yet."
|
||||||
desktop/views/widgets/messaging.vue:
|
desktop/views/widgets/messaging.vue:
|
||||||
title: "Messaging"
|
title: "Messaging"
|
||||||
desktop/views/widgets/notifications.vue:
|
desktop/views/widgets/notifications.vue:
|
||||||
@@ -585,32 +681,40 @@ desktop/views/widgets/notifications.vue:
|
|||||||
settings: "Settings"
|
settings: "Settings"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "Polls"
|
title: "Polls"
|
||||||
refresh: "Show others"
|
refresh: "refresh"
|
||||||
nothing: "Nothing"
|
nothing: "Nothing"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "Post"
|
title: "Post"
|
||||||
note: "Post"
|
note: "Post"
|
||||||
placeholder: "What's happening?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "Click to edit your banner"
|
update-banner: "Click to edit your banner"
|
||||||
update-avatar: "Click to edit your avatar"
|
update-avatar: "Click to edit your avatar"
|
||||||
desktop/views/widgets/trends.vue:
|
desktop/views/widgets/trends.vue:
|
||||||
title: "Trend"
|
title: "Trend"
|
||||||
refresh: "Show others"
|
refresh: "refresh"
|
||||||
nothing: "Nothing"
|
nothing: "Nothing"
|
||||||
desktop/views/widgets/users.vue:
|
desktop/views/widgets/users.vue:
|
||||||
title: "Recommended users"
|
title: "Recommended users"
|
||||||
refresh: "Show others"
|
refresh: "refresh"
|
||||||
no-one: "No one"
|
no-one: "No one"
|
||||||
mobile/views/components/drive.vue:
|
mobile/views/components/drive.vue:
|
||||||
drive: "Drive"
|
drive: "Media storage"
|
||||||
used: "used"
|
used: "used"
|
||||||
folder-count: "Folder(s)"
|
folder-count: "Folder(s)"
|
||||||
count-separator: ", "
|
count-separator: ", "
|
||||||
file-count: "File(s)"
|
file-count: "File(s)"
|
||||||
load-more: "Load more"
|
load-more: "Load more"
|
||||||
nothing-in-drive: "Nothing"
|
nothing-in-drive: "There's nothing stored."
|
||||||
folder-is-empty: "This folder is empty"
|
folder-is-empty: "This folder is empty"
|
||||||
|
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."
|
||||||
|
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."
|
||||||
|
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"
|
||||||
|
uploading: "Upload requested. It may take a while for the upload to finish."
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "Rename"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "Choose a file"
|
select-file: "Choose a file"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,78 +726,131 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "Hash (md5)"
|
hash: "Hash (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "Following"
|
||||||
follow: "Follow"
|
follow: "Follow"
|
||||||
unfollow: "Unfollow"
|
request-pending: "Pending follow request"
|
||||||
|
follow-request: "Follow request"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "Let's follow users"
|
||||||
|
empty: "Featured user was not found."
|
||||||
|
fetching: "Loading"
|
||||||
|
refresh: "See more"
|
||||||
|
close: "Close"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "Renoted by {}"
|
reposted-by: "Reposted by {}"
|
||||||
|
more: "See more"
|
||||||
|
less: "Hide"
|
||||||
|
private: "This post is private"
|
||||||
|
deleted: "This post has been deleted"
|
||||||
|
location: "Location"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "Reply"
|
reply: "Reply"
|
||||||
reaction: "Reaction"
|
reaction: "Reaction"
|
||||||
|
reposted-by: "Reposted by {}"
|
||||||
|
private: "This post is private"
|
||||||
|
deleted: "This post has been deleted"
|
||||||
|
location: "Location"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "Failed to load"
|
||||||
|
retry: "Retry"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "More"
|
more: "More"
|
||||||
empty: "No notifications"
|
empty: "No notifications"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "Add a user"
|
||||||
submit: "Post"
|
submit: "Post"
|
||||||
reply: "Reply"
|
reply: "Reply"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "Quote this post. (optional)"
|
quote-placeholder: "Quote this post... (optional)"
|
||||||
reply-placeholder: "Reply to this note..."
|
reply-placeholder: "Reply to this note..."
|
||||||
note-placeholder: "What's happening?"
|
cw-placeholder: "Comments about content (optional)"
|
||||||
|
location-alert: "Your device does not provide location services"
|
||||||
|
error: "Error"
|
||||||
|
username-prompt: "Enter user name"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{} media"
|
private: "This post is private"
|
||||||
|
deleted: "This post has been deleted"
|
||||||
|
media-count: "{} media attached"
|
||||||
poll: "Poll"
|
poll: "Poll"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "No notes"
|
empty: "No notes"
|
||||||
load-more: "More"
|
load-more: "More"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "Home"
|
timeline: "Timeline"
|
||||||
notifications: "Notifications"
|
notifications: "Notifications"
|
||||||
messaging: "Messages"
|
messaging: "Messages"
|
||||||
|
follow-requests: "Follow requests"
|
||||||
search: "Search"
|
search: "Search"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
|
favorites: "Favorites"
|
||||||
|
user-lists: "Lists"
|
||||||
|
widgets: "Widgets"
|
||||||
|
game: "Games"
|
||||||
|
darkmode: "Dark mode"
|
||||||
settings: "Settings"
|
settings: "Settings"
|
||||||
about: "About Misskey"
|
about: "About Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
no-notes: "It seems this user hasn't posted yet"
|
no-notes: "It seems this user hasn't posted anything yet."
|
||||||
no-notes-with-media: "There is no notes with attached media"
|
no-notes-with-media: "There are no notes with media attachments"
|
||||||
load-more: "More"
|
load-more: "More"
|
||||||
mobile/views/components/users-list.vue:
|
mobile/views/components/users-list.vue:
|
||||||
all: "All"
|
all: "All"
|
||||||
known: "You know"
|
known: "You know"
|
||||||
load-more: "More"
|
load-more: "More"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "Favorites"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "Lists"
|
||||||
|
enter-list-name: "Enter list name"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
|
more: "Load more"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "Followers of {}"
|
followers-of: "Followers of {}"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "Following of {}"
|
following-of: "Following of {}"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "Timeline"
|
home: "Home"
|
||||||
|
local: "Local"
|
||||||
|
hybrid: "Social"
|
||||||
|
global: "Global"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "Messaging"
|
messaging: "Messaging"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "Messaging"
|
messaging: "Messaging"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "Follow requests"
|
||||||
|
accept: "Accept"
|
||||||
|
reject: "Reject"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "Post"
|
title: "Post"
|
||||||
prev: "Previous note"
|
prev: "Previous note"
|
||||||
next: "Next note"
|
next: "Next note"
|
||||||
mobile/views/pages/notifications.vue:
|
mobile/views/pages/notifications.vue:
|
||||||
notifications: "Notifications"
|
notifications: "Notifications"
|
||||||
read-all: "Are you sure you want to mark all unread notifications as read?"
|
read-all: "Do you wish to mark all notifications as read?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "Profile"
|
title: "Profile"
|
||||||
name: "Name"
|
name: "Name"
|
||||||
account: "Account"
|
account: "Account"
|
||||||
location: "Location"
|
location: "Location"
|
||||||
description: "Description"
|
description: "Biography"
|
||||||
birthday: "Birthday"
|
birthday: "Birthday"
|
||||||
avatar: "Avatar"
|
avatar: "Avatar"
|
||||||
banner: "Banner"
|
banner: "Banner"
|
||||||
is-cat: "This account is a Cat"
|
is-cat: "This account is a Cat"
|
||||||
save: "Update profile"
|
save: "Update profile"
|
||||||
saved: "Profile updated successfully"
|
saved: "Profile updated"
|
||||||
uploading: "Uploading"
|
uploading: "Uploading"
|
||||||
upload-failed: "Upload failed"
|
upload-failed: "Failed to upload"
|
||||||
mobile/views/pages/search.vue:
|
mobile/views/pages/search.vue:
|
||||||
search: "Search"
|
search: "Search"
|
||||||
empty: "No posts were found for '{}'"
|
empty: "No posts were found for '{}'"
|
||||||
@@ -705,21 +862,23 @@ mobile/views/pages/settings.vue:
|
|||||||
lang-tip: "You will need to reload the page for the changes to take effect."
|
lang-tip: "You will need to reload the page for the changes to take effect."
|
||||||
recommended: "Recommended"
|
recommended: "Recommended"
|
||||||
auto: "Auto"
|
auto: "Auto"
|
||||||
specify-language: "Specify the language"
|
specify-language: "Select your language"
|
||||||
design: "Design and display"
|
design: "Design and display"
|
||||||
dark-mode: "Dark Mode"
|
dark-mode: "Dark Mode"
|
||||||
i-am-under-limited-internet: "I'm under limited internet"
|
i-am-under-limited-internet: "I'm under limited internet"
|
||||||
circle-icons: "Use circle icons"
|
circle-icons: "Use circle icons"
|
||||||
timeline: "Timeline"
|
timeline: "Timeline"
|
||||||
show-reply-target: "Show reply target"
|
show-reply-target: "Show reply target"
|
||||||
show-my-renotes: "Show my renotes"
|
show-my-renotes: "Show my reposts"
|
||||||
show-renoted-my-notes: "Show renoted my notes"
|
show-renoted-my-notes: "Show my reposted posts"
|
||||||
post-style: "Post design"
|
post-style: "Post design"
|
||||||
post-style-standard: "Standard"
|
post-style-standard: "Standard"
|
||||||
post-style-smart: "Smart"
|
post-style-smart: "Smart"
|
||||||
behavior: "Behavior"
|
behavior: "Behavior"
|
||||||
fetch-on-scroll: "Fetch on scroll"
|
fetch-on-scroll: "Endless loading on scroll"
|
||||||
disable-via-mobile: "Without the \"mobile posts\" flag"
|
disable-via-mobile: "Don't mark the post as 'from mobile'"
|
||||||
|
load-raw-images: "Show attached images in high-quality"
|
||||||
|
load-remote-media: "Show media from a remote server"
|
||||||
twitter: "Twitter integration"
|
twitter: "Twitter integration"
|
||||||
twitter-connect: "Connect to your Twitter account"
|
twitter-connect: "Connect to your Twitter account"
|
||||||
twitter-reconnect: "Reconnect"
|
twitter-reconnect: "Reconnect"
|
||||||
@@ -728,39 +887,39 @@ mobile/views/pages/settings.vue:
|
|||||||
version: "Current version:"
|
version: "Current version:"
|
||||||
latest-version: "Latest version:"
|
latest-version: "Latest version:"
|
||||||
update-checking: "Checking for updates"
|
update-checking: "Checking for updates"
|
||||||
check-for-updates: "Check for update"
|
check-for-updates: "Check for updates"
|
||||||
no-updates: "No updates available"
|
no-updates: "No updates available"
|
||||||
no-updates-desc: "Your Misskey is up to date."
|
no-updates-desc: "Your Misskey is up to date."
|
||||||
update-available: "New version is available!"
|
update-available: "A new version is available"
|
||||||
update-available-desc: "To reload the page and updates are applied."
|
update-available-desc: "Updates will be applied after reloading the page"
|
||||||
settings: "Settings"
|
settings: "Settings"
|
||||||
signout: "Sign out"
|
signout: "Sign out"
|
||||||
mobile/views/pages/user.vue:
|
mobile/views/pages/user.vue:
|
||||||
follows-you: "Follows you"
|
follows-you: "Follows you"
|
||||||
following: "Following"
|
following: "Following"
|
||||||
followers: "Followers"
|
followers: "Followers"
|
||||||
notes: "Posts"
|
notes: "Notes"
|
||||||
overview: "Overview"
|
overview: "Overview"
|
||||||
timeline: "Timeline"
|
timeline: "Timeline"
|
||||||
media: "Media"
|
media: "Media"
|
||||||
is-suspended: "This account has been suspended."
|
is-suspended: "This account has been suspended."
|
||||||
is-remote: "This user is a remote user, so the information is not accurate. "
|
is-remote: "This user is a remote user, so the information you see here is not complete."
|
||||||
view-remote: "See accurate information"
|
view-remote: "See their complete profile"
|
||||||
mobile/views/pages/user/home.vue:
|
mobile/views/pages/user/home.vue:
|
||||||
recent-notes: "Recent notes"
|
recent-notes: "Recent notes"
|
||||||
images: "Images"
|
images: "Images"
|
||||||
activity: "Activity"
|
activity: "Activity"
|
||||||
keywords: "Keywords"
|
keywords: "Keywords"
|
||||||
domains: "Domains"
|
domains: "Domains"
|
||||||
frequently-replied-users: "Frequently talking users"
|
frequently-replied-users: "Frequently mentioned users"
|
||||||
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:
|
mobile/views/pages/user/home.followers-you-know.vue:
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
no-users: "No users"
|
no-users: "No users you know"
|
||||||
mobile/views/pages/user/home.friends.vue:
|
mobile/views/pages/user/home.friends.vue:
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
no-users: "No users"
|
no-users: "There are no users that you know"
|
||||||
mobile/views/pages/user/home.notes.vue:
|
mobile/views/pages/user/home.notes.vue:
|
||||||
loading: "Loading"
|
loading: "Loading"
|
||||||
no-notes: "No notes"
|
no-notes: "No notes"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "Name"
|
name: "Name"
|
||||||
type: "Type"
|
type: "Type"
|
||||||
optional: "Optional"
|
|
||||||
description: "Description"
|
description: "Description"
|
||||||
yes: "Yes"
|
|
||||||
no: "No"
|
|
||||||
|
|||||||
708
locales/es.yml
@@ -1,179 +1,258 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "日本語"
|
lang: "Español"
|
||||||
divider: ""
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "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?"
|
||||||
time:
|
time:
|
||||||
unknown: "なぞのじかん"
|
unknown: "Desconocido"
|
||||||
future: "未来"
|
future: "Futuro"
|
||||||
just_now: "たった今"
|
just_now: "Ahora mismo"
|
||||||
seconds_ago: "{}秒前"
|
seconds_ago: "Hace {}"
|
||||||
minutes_ago: "{}分前"
|
minutes_ago: "Hace {} minuto(s)"
|
||||||
hours_ago: "{}時間前"
|
hours_ago: "Hace {} hora(s)"
|
||||||
days_ago: "{}日前"
|
days_ago: "Hace {} dia(s)"
|
||||||
weeks_ago: "{}週間前"
|
weeks_ago: "Hace {} semana(s)"
|
||||||
months_ago: "{}ヶ月前"
|
months_ago: "Hace {} mes(es)"
|
||||||
years_ago: "{}年前"
|
years_ago: "Hace {} año(s)"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "日"
|
sunday: "domingo"
|
||||||
monday: "月"
|
monday: "lunes"
|
||||||
tuesday: "火"
|
tuesday: "martes"
|
||||||
wednesday: "水"
|
wednesday: "miércoles"
|
||||||
thursday: "木"
|
thursday: "jueves"
|
||||||
friday: "金"
|
friday: "viernes"
|
||||||
saturday: "土"
|
saturday: "sábado"
|
||||||
reactions:
|
reactions:
|
||||||
like: "いいね"
|
like: "me gusta"
|
||||||
love: "しゅき"
|
love: "amor"
|
||||||
laugh: "笑"
|
laugh: "risa"
|
||||||
hmm: "ふぅ~む"
|
hmm: "hmm"
|
||||||
surprise: "わお"
|
surprise: "sorpresa"
|
||||||
congrats: "おめでとう"
|
congrats: "felicidades"
|
||||||
angry: "おこ"
|
angry: "enfadado"
|
||||||
confused: "こまこまのこまり"
|
confused: "confundido"
|
||||||
pudding: "Pudding"
|
pudding: "Chafado"
|
||||||
delete: "削除"
|
note-placeholders:
|
||||||
loading: "読み込み中"
|
a: "¿Qué haces?"
|
||||||
ok: "わかった"
|
b: "¿Qué está pasando?"
|
||||||
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
c: "¿Qué te pasa por la cabeza?"
|
||||||
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
d: "¿Quieres decir algo?"
|
||||||
|
e: "¡Escribe aquí!"
|
||||||
|
f: "Esperando a que escribas algo..."
|
||||||
|
search: "検索"
|
||||||
|
delete: "eliminar"
|
||||||
|
loading: "cargando"
|
||||||
|
ok: "OK"
|
||||||
|
update-available-title: "更新があります"
|
||||||
|
update-available: "Hay disponible una nueva versión de Misskey ({newer}, la versión actual es {current}). Refresca la página para aplicar las actualizaciones."
|
||||||
|
my-token-regenerated: "Tu token se ha regenerado vas a ser desconectado."
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "Reloj analógico"
|
||||||
|
profile: "Perfil"
|
||||||
|
calendar: "Calendario"
|
||||||
|
timemachine: "Calendario (máquina del tiempo)"
|
||||||
|
activity: "Actividad"
|
||||||
|
rss: "Lector RSS"
|
||||||
|
memo: "Notas adhesivas"
|
||||||
|
trends: "Tendencias"
|
||||||
|
photo-stream: "Secuencia de fotos"
|
||||||
|
posts-monitor: "Gráfico de publicaciones"
|
||||||
|
slideshow: "Diapositivas"
|
||||||
|
version: "Versión"
|
||||||
|
broadcast: "Transmisión"
|
||||||
|
notifications: "Notificaciones"
|
||||||
|
users: "Usuarios destacados"
|
||||||
|
polls: "Encuestas"
|
||||||
|
post-form: "Formulario"
|
||||||
|
messaging: "Mensajes"
|
||||||
|
server: "Información del servidor"
|
||||||
|
donation: "Donaciones"
|
||||||
|
nav: "Navegación"
|
||||||
|
tips: "Consejos"
|
||||||
|
hashtags: "Etiquetas"
|
||||||
|
deck:
|
||||||
|
widgets: "Accesorios"
|
||||||
|
home: "Inicio"
|
||||||
|
local: "Local"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "Global"
|
||||||
|
notifications: "Notificaciones"
|
||||||
|
list: "Listado"
|
||||||
|
swap-left: "Desplazar a la izq."
|
||||||
|
swap-right: "Desplazar a la dcha."
|
||||||
|
swap-up: "Desplazar arriba"
|
||||||
|
swap-down: "Desplazar abajo"
|
||||||
|
remove: "Borrar"
|
||||||
|
add-column: "Añadir columna"
|
||||||
|
rename: "Renombrar"
|
||||||
|
stack-left: "A la izqda."
|
||||||
|
pop-right: "A la dcha."
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "サーバーに接続できません"
|
title: "Imposible conectar al servidor"
|
||||||
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
description: "Hay un problema en tu conexió o puede que el servidor esté caido o en mantenimiento. Por favor {try again} más tarde."
|
||||||
thanks: "いつもMisskeyをご利用いただきありがとうございます。"
|
thanks: "Gracias por usar Misskey."
|
||||||
troubleshoot: "トラブルシュート"
|
troubleshoot: "Problemas más frecuentes"
|
||||||
common/views/components/connect-failed.troubleshooter.vue:
|
common/views/components/connect-failed.troubleshooter.vue:
|
||||||
title: "トラブルシューティング"
|
title: "Resolución de problemas"
|
||||||
network: "ネットワーク接続"
|
network: "Conexión de red"
|
||||||
checking-network: "ネットワーク接続を確認中"
|
checking-network: "Verificar la conexión a la red"
|
||||||
internet: "インターネット接続"
|
internet: "Conexión a Internet"
|
||||||
checking-internet: "インターネット接続を確認中"
|
checking-internet: "Comprobando la conexión a Internet"
|
||||||
server: "サーバー接続"
|
server: "Conexión al servidor"
|
||||||
checking-server: "サーバー接続を確認中"
|
checking-server: "Probando la conexión al servidor"
|
||||||
finding: "問題を調べています"
|
finding: "Buscando cualquier problema"
|
||||||
no-network: "ネットワークに接続されていません"
|
no-network: "Sin conexión"
|
||||||
no-network-desc: "お使いのPCのネットワーク接続が正常か確認してください。"
|
no-network-desc: "Por favor, asegurate que estás conectado a una red"
|
||||||
no-internet: "インターネットに接続されていません"
|
no-internet: "Sin conexión a Internet"
|
||||||
no-internet-desc: "ネットワークには接続されていますが、インターネットには接続されていないようです。お使いのPCのインターネット接続が正常か確認してください。"
|
no-internet-desc: "Por favor, asegurate de estar conectado a Internet."
|
||||||
no-server: "Misskeyのサーバーに接続できません"
|
no-server: "Imposible conectarse al servidor de Misskey"
|
||||||
no-server-desc: "お使いのPCのインターネット接続は正常ですが、Misskeyのサーバーには接続できませんでした。サーバーがダウンまたはメンテナンスしている可能性があるので、しばらくしてから再度御アクセスください。"
|
no-server-desc: "La conexión de red de tu PC es correcta, aún así no puedes conectarte al servidor de Misskey. Es posible que el servidor esté caido o en mantenimiento. Por favor vuelve a intentarlo más tarde."
|
||||||
success: "Misskeyのサーバーに接続できました"
|
success: "Conectado al servidor de Misskey de manera correcta"
|
||||||
success-desc: "正常に接続できるようです。ページを再度読み込みしてください。"
|
success-desc: "Parece que la conexión ha sido posible. Por favor refresca la página."
|
||||||
flush: "キャッシュの削除"
|
flush: "Limpiar la memoria caché"
|
||||||
set-version: "バージョン指定"
|
set-version: "Escoge la versión"
|
||||||
common/views/components/messaging.vue:
|
common/views/components/messaging.vue:
|
||||||
search-user: "ユーザーを探す"
|
search-user: "Encuentra un usuario"
|
||||||
you: "あなた"
|
you: "Tu"
|
||||||
no-history: "履歴はありません"
|
no-history: "Sin historial"
|
||||||
common/views/components/messaging-room.vue:
|
common/views/components/messaging-room.vue:
|
||||||
empty: "このユーザーと話したことはありません"
|
empty: "Sin conversaciones"
|
||||||
more: "もっと読む"
|
more: "Leer más"
|
||||||
no-history: "これより過去の履歴はありません"
|
no-history: "El historial se ha acabado"
|
||||||
resize-form: "ドラッグしてフォームの広さを調整"
|
resize-form: "Arrastra para redimensionar"
|
||||||
new-message: "新しいメッセージがあります"
|
new-message: "Nuevo mensaje"
|
||||||
common/views/components/messaging-room.form.vue:
|
common/views/components/messaging-room.form.vue:
|
||||||
input-message-here: "ここにメッセージを入力"
|
input-message-here: "Escribe el mensaje aquí"
|
||||||
send: "送信"
|
send: "Enviar"
|
||||||
attach-from-local: "PCからファイルを添付する"
|
attach-from-local: "Adjunta ficheros desde tu PC"
|
||||||
attach-from-drive: "ドライブからファイルを添付する"
|
attach-from-drive: "Adjunta ficheros desde tu disco"
|
||||||
common/views/components/messaging-room.message.vue:
|
common/views/components/messaging-room.message.vue:
|
||||||
is-read: "既読"
|
is-read: "Leer"
|
||||||
deleted: "このメッセージは削除されました"
|
deleted: "El mensaje se ha borrado"
|
||||||
common/views/components/nav.vue:
|
common/views/components/nav.vue:
|
||||||
about: "Misskeyについて"
|
about: "Sobre"
|
||||||
stats: "統計"
|
stats: "Estadísticas"
|
||||||
status: "ステータス"
|
status: "Estado"
|
||||||
wiki: "Wiki"
|
wiki: "Wiki"
|
||||||
donors: "ドナー"
|
donors: "Donantes"
|
||||||
repository: "リポジトリ"
|
repository: "Repositorio"
|
||||||
develop: "開発者"
|
develop: "Desarrolladores"
|
||||||
feedback: "フィードバック"
|
feedback: "Opiniones"
|
||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "お気に入り"
|
favorite: "Me gusta esta nota"
|
||||||
pin: "ピン留め"
|
pin: "Fijar en el perfil"
|
||||||
remote: "投稿元で見る"
|
delete: "Borrar"
|
||||||
|
delete-confirm: "¿Seguro que quieres borrar la publicación?"
|
||||||
|
remote: "Ver el original"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "'{}' para votar"
|
||||||
vote-count: "{}票"
|
vote-count: "{} votos"
|
||||||
total-users: "{}人が投票"
|
total-users: "{} usuario(s) que ha(n) votado"
|
||||||
vote: "投票する"
|
vote: "Vota"
|
||||||
show-result: "結果を見る"
|
show-result: "Mostrar resultados"
|
||||||
voted: "投票済み"
|
voted: "Votado"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "投票には、選択肢が最低2つ必要です"
|
no-only-one-choice: "Selecciona dos o más opciones."
|
||||||
choice-n: "選択肢{}"
|
choice-n: "{} opcion(es)"
|
||||||
remove: "この選択肢を削除"
|
remove: "Borra la opción"
|
||||||
add: "+選択肢を追加"
|
add: "+ Añade una opción"
|
||||||
destroy: "投票を破棄"
|
destroy: "Cancelar la encuesta"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "リアクションを選択"
|
choose-reaction: "Escoge una reacción"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
username: "ユーザー名"
|
username: "Usuario"
|
||||||
password: "パスワード"
|
password: "Contraseña"
|
||||||
token: "トークン"
|
token: "Identificador"
|
||||||
signing-in: "やってます..."
|
signing-in: "Entrando..."
|
||||||
signin: "サインイン"
|
signin: "Entra"
|
||||||
common/views/components/signup.vue:
|
common/views/components/signup.vue:
|
||||||
username: "ユーザー名"
|
username: "Usuario"
|
||||||
checking: "確認しています..."
|
checking: "Comprobando..."
|
||||||
available: "利用できます"
|
available: "Disponible"
|
||||||
unavailable: "既に利用されています"
|
unavailable: "Utilizado"
|
||||||
error: "通信エラー"
|
error: "Error de conexión"
|
||||||
invalid-format: "a~z、A~Z、0~9、_が使えます"
|
invalid-format: "utiliza letras, números y/o -."
|
||||||
too-short: "1文字以上でお願いします!"
|
too-short: "¡Mínimo tienes que introducir un caracter!"
|
||||||
too-long: "20文字以内でお願いします"
|
too-long: "No puedes usar más de 20 caracteres."
|
||||||
password: "パスワード"
|
password: "Contraseña"
|
||||||
password-placeholder: "8文字以上を推奨します"
|
password-placeholder: "Te recomendamos más de 8 caracteres"
|
||||||
weak-password: "弱いパスワード"
|
weak-password: "Contraseña débil"
|
||||||
normal-password: "まあまあのパスワード"
|
normal-password: "No está mal"
|
||||||
strong-password: "強いパスワード"
|
strong-password: "Muy buena contraseña"
|
||||||
retype: "再入力"
|
retype: "Inténtalo otra vez"
|
||||||
retype-placeholder: "確認のため再入力してください"
|
retype-placeholder: "Confirma la contraseña"
|
||||||
password-matched: "確認されました"
|
password-matched: "OK"
|
||||||
password-not-matched: "一致していません"
|
password-not-matched: "Las contraseñas no son las mismas"
|
||||||
recaptcha: "認証"
|
recaptcha: "Verificar"
|
||||||
create: "アカウント作成"
|
create: "Crea una cuenta"
|
||||||
some-error: "何らかの原因によりアカウントの作成に失敗しました。再度お試しください。"
|
some-error: "Por algún motivo no se ha podido crear la cuenta. Por favor inténtalo de nuevo."
|
||||||
common/views/components/special-message.vue:
|
common/views/components/special-message.vue:
|
||||||
new-year: "Happy New Year!"
|
new-year: "¡Feliz Año Nuevo!"
|
||||||
christmas: "Merry Christmas!"
|
christmas: "¡Feliz Navidad!"
|
||||||
common/views/components/stream-indicator.vue:
|
common/views/components/stream-indicator.vue:
|
||||||
connecting: "接続中"
|
connecting: "Conectando"
|
||||||
reconnecting: "再接続中"
|
reconnecting: "Reconectando"
|
||||||
connected: "接続完了"
|
connected: "Conectado"
|
||||||
common/views/components/twitter-setting.vue:
|
common/views/components/twitter-setting.vue:
|
||||||
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。"
|
description: "Si comectas tu cuenta de Twitter con tu cuenta de Misskey podrás ver la información de tu cuemta de Twitter en tu perfil y además podrás entrar usando Twitter."
|
||||||
connected-to: "次のTwitterアカウントに接続されています"
|
connected-to: "Estas comectado con las siguientes cuentas de Twitter"
|
||||||
detail: "詳細..."
|
detail: "Detalles..."
|
||||||
reconnect: "再接続する"
|
reconnect: "Conectar de nuevo"
|
||||||
connect: "Twitterと接続する"
|
connect: "Conectate usando Twitter"
|
||||||
disconnect: "切断する"
|
disconnect: "Desconectado"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "待機中"
|
waiting: "Un momento"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "Público"
|
||||||
|
home: "Inicio"
|
||||||
|
home-desc: "Publica solo en la página de inicio"
|
||||||
|
followers: "Seguidores"
|
||||||
|
followers-desc: "Piblica solo para tus seguidores"
|
||||||
|
specified: "Directo"
|
||||||
|
specified-desc: "Publica solo para los seguidores que quieras"
|
||||||
|
private: "Privada"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "確認中"
|
fetching: "Recuperando"
|
||||||
no-broadcasts: "お知らせはありません"
|
no-broadcasts: "Sin emisión"
|
||||||
have-a-nice-day: "良い一日を!"
|
have-a-nice-day: "¡Buenos dias!"
|
||||||
next: "次"
|
next: "Siguiente"
|
||||||
common/views/widgets/donation.vue:
|
common/views/widgets/donation.vue:
|
||||||
title: "寄付のお願い"
|
title: "Donaciones"
|
||||||
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
|
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
|
||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "フォトストリーム"
|
title: "フォトストリーム"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "サーバー情報"
|
title: "サーバー情報"
|
||||||
toggle: "表示を切り替え"
|
toggle: "表示を切り替え"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "付箋"
|
||||||
home: "ホーム"
|
memo: "ここに書いて!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "保存"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified: "ダイレクト"
|
following: "フォロー中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "フォロー"
|
||||||
private: "非公開"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
@@ -196,65 +275,67 @@ desktop/views/components/choose-file-from-drive-window.vue:
|
|||||||
desktop/views/components/choose-folder-from-drive-window.vue:
|
desktop/views/components/choose-folder-from-drive-window.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "キャンセル"
|
||||||
ok: "決定"
|
ok: "決定"
|
||||||
choose-prompt: "フォルダを選択"
|
choose-prompt: "Escoge una Carpeta"
|
||||||
desktop/views/components/crop-window.vue:
|
desktop/views/components/crop-window.vue:
|
||||||
skip: "クロップをスキップ"
|
skip: "クロップをスキップ"
|
||||||
cancel: "キャンセル"
|
cancel: "Cancelar"
|
||||||
ok: "決定"
|
ok: "OK"
|
||||||
desktop/views/components/drive-window.vue:
|
desktop/views/components/drive-window.vue:
|
||||||
used: "使用中"
|
used: "usado"
|
||||||
drive: "ドライブ"
|
drive: "Disco"
|
||||||
desktop/views/components/drive.file.vue:
|
desktop/views/components/drive.file.vue:
|
||||||
avatar: "アイコン"
|
avatar: "Avatar"
|
||||||
banner: "バナー"
|
banner: "Banner"
|
||||||
contextmenu:
|
contextmenu:
|
||||||
rename: "名前を変更"
|
rename: "Renombrar"
|
||||||
copy-url: "URLをコピー"
|
copy-url: "Copia la URL"
|
||||||
download: "ダウンロード"
|
download: "Descargar"
|
||||||
else-files: "その他..."
|
else-files: "Otros"
|
||||||
set-as-avatar: "アイコンに設定"
|
set-as-avatar: "Utilizar como avatar"
|
||||||
set-as-banner: "バナーに設定"
|
set-as-banner: "Utilizar como banner"
|
||||||
open-in-app: "アプリで開く"
|
open-in-app: "Abrir en la aplicación"
|
||||||
add-app: "アプリを追加"
|
add-app: "Añadir aplicación"
|
||||||
rename-file: "ファイル名の変更"
|
rename-file: "Renombra el fichero"
|
||||||
input-new-file-name: "新しいファイル名を入力してください"
|
input-new-file-name: "Escribe el nombre nuevo"
|
||||||
copied: "コピー完了"
|
copied: "Copiado"
|
||||||
copied-url-to-clipboard: "URLをクリップボードにコピーしました"
|
copied-url-to-clipboard: "URL copiada al porta papeles"
|
||||||
desktop/views/components/drive.folder.vue:
|
desktop/views/components/drive.folder.vue:
|
||||||
unable-to-process: "操作を完了できません"
|
unable-to-process: "La operación no se puede llevar a cabo"
|
||||||
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
circular-reference-detected: "La carpeta de destino es una sub-carpeta de la carpeta que quieres mover."
|
||||||
unhandled-error: "不明なエラー"
|
unhandled-error: "Error desconocido"
|
||||||
contextmenu:
|
contextmenu:
|
||||||
move-to-this-folder: "このフォルダへ移動"
|
move-to-this-folder: "Mover a esta carpeta"
|
||||||
show-in-new-window: "新しいウィンドウで表示"
|
show-in-new-window: "Abrir en una ventana nueva"
|
||||||
rename: "名前を変更"
|
rename: "Renombrar"
|
||||||
rename-folder: "フォルダ名の変更"
|
rename-folder: "Renombrar carpeta"
|
||||||
input-new-folder-name: "新しいフォルダ名を入力してください"
|
input-new-folder-name: "Escribe el nombre nuevo"
|
||||||
desktop/views/components/drive.nav-folder.vue:
|
desktop/views/components/drive.nav-folder.vue:
|
||||||
drive: "ドライブ"
|
drive: "Disco"
|
||||||
desktop/views/components/drive.vue:
|
desktop/views/components/drive.vue:
|
||||||
search: "検索"
|
search: "Buscar"
|
||||||
load-more: "もっと読み込む"
|
load-more: "Cargar más"
|
||||||
empty-draghover: "ドロップですか?いいですよ、ボクはカワイイですからね"
|
empty-draghover: "¡Saluda!"
|
||||||
empty-drive: "ドライブには何もありません。"
|
empty-drive: "Tu disco está vacio"
|
||||||
empty-drive-description: "右クリックして「ファイルをアップロード」を選んだり、ファイルをドラッグ&ドロップすることでもアップロードできます。"
|
empty-drive-description: "También puedes subir archivos seleccionándolos y con el botón derecho selecciona \"Subir fichero\" o puedes arrastrarlo hasta la ventana."
|
||||||
empty-folder: "このフォルダーは空です"
|
empty-folder: "La carpeta está vacia"
|
||||||
unable-to-process: "操作を完了できません"
|
unable-to-process: "La operación no se puede llevar a cabo."
|
||||||
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
circular-reference-detected: "La carpeta de destino es una sub-carpeta de la carpeta que quieres mover."
|
||||||
unhandled-error: "不明なエラー"
|
unhandled-error: "Errer desconocido"
|
||||||
url-upload: "URLアップロード"
|
url-upload: "Subir desde una URL"
|
||||||
url-of-file: "アップロードしたいファイルのURL"
|
url-of-file: "URL del fichero que quieres subir"
|
||||||
url-upload-requested: "アップロードをリクエストしました"
|
url-upload-requested: "Subida solicitada"
|
||||||
may-take-time: "アップロードが完了するまで時間がかかる場合があります。"
|
may-take-time: "Subir el fichero puede tardar un tiempo."
|
||||||
create-folder: "フォルダー作成"
|
create-folder: "Crear una carpeta"
|
||||||
folder-name: "フォルダー名"
|
folder-name: "Nombre de la carpeta"
|
||||||
contextmenu:
|
contextmenu:
|
||||||
create-folder: "フォルダーを作成"
|
create-folder: "Crear una carpeta"
|
||||||
upload: "ファイルをアップロード"
|
upload: "Subir fichero"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "Subir desde una URL"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "Siguiendo"
|
||||||
follow: "フォローする"
|
follow: "Sigue"
|
||||||
|
request-pending: "Pendiente de aprobación"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
@@ -270,29 +351,10 @@ desktop/views/components/friends-maker.vue:
|
|||||||
refresh: "もっと見る"
|
refresh: "もっと見る"
|
||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "完了"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "ウィジェットを追加:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
add: "追加"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "キャンセル"
|
||||||
@@ -303,30 +365,31 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "会話をもっと読み込む"
|
||||||
private: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
is-renote: "がRenote"
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
location: "位置情報"
|
location: "位置情報"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "読み込みに失敗しました。"
|
||||||
retry: "リトライ"
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "いまどうしてる?"
|
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
quote-placeholder: "この投稿を引用..."
|
quote-placeholder: "この投稿を引用..."
|
||||||
note: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
posted: "投稿しました!"
|
posted: "投稿しました!"
|
||||||
@@ -337,53 +400,57 @@ desktop/views/components/post-form.vue:
|
|||||||
renote-failed: "Renoteに失敗しました"
|
renote-failed: "Renoteに失敗しました"
|
||||||
posting: "投稿中"
|
posting: "投稿中"
|
||||||
attach-media-from-local: "PCからメディアを添付"
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
attach-media-from-drive: "ドライブからメディアを添付"
|
attach-media-from-drive: "Adjunta multimedia desde tu Disco"
|
||||||
attach-cancel: "添付取り消し"
|
attach-cancel: "Quitar el archivo adjunto"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "投票を作成"
|
create-poll: "Crea una encuesta"
|
||||||
text-remain: "残り{}文字"
|
text-remain: "quedan {} caracteres"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "新規投稿"
|
note: "Nota nueva"
|
||||||
reply: "返信"
|
reply: "Responder"
|
||||||
attaches: "添付: {}メディア"
|
attaches: "{} archivo(s) multimedia adjuntados"
|
||||||
uploading-media: "{}個のメディアをアップロード中"
|
uploading-media: "Subiendo {} archivo(s) multimedia"
|
||||||
desktop/views/components/progress-dialog.vue:
|
desktop/views/components/progress-dialog.vue:
|
||||||
waiting: "待機中"
|
waiting: "Un momento"
|
||||||
desktop/views/components/renote-form.vue:
|
desktop/views/components/renote-form.vue:
|
||||||
quote: "引用する..."
|
quote: "Cita..."
|
||||||
cancel: "キャンセル"
|
cancel: "Cancelar"
|
||||||
renote: "Renote"
|
renote: "Volver a publicar"
|
||||||
reposting: "しています..."
|
reposting: "Publicando de nuevo..."
|
||||||
success: "Renoteしました!"
|
success: "¡Publicado!"
|
||||||
failure: "Renoteに失敗しました"
|
failure: "La publicación ha fallado"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "¿Seguro qué quieres volver a publicarlo?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "Configuración"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "Perfil"
|
||||||
notification: "通知"
|
notification: "Notificación"
|
||||||
apps: "アプリ"
|
apps: "Aplicaciones"
|
||||||
mute: "ミュート"
|
mute: "Silenciar"
|
||||||
drive: "ドライブ"
|
drive: "Disco"
|
||||||
security: "セキュリティ"
|
security: "Seguridad"
|
||||||
signin: "サインイン履歴"
|
signin: "Historial de inicios de sesión"
|
||||||
password: "パスワード"
|
password: "Contraseña"
|
||||||
2fa: "二段階認証"
|
2fa: "Autenticación de Doble-Factor"
|
||||||
other: "その他"
|
other: "Otros"
|
||||||
license: "ライセンス"
|
license: "Licencia"
|
||||||
behaviour: "動作"
|
behaviour: "Acciones"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "Desplazamiento infinito"
|
||||||
fetch-on-scroll-desc: "ページを下までスクロールしたときに自動で追加のコンテンツを読み込みます。"
|
fetch-on-scroll-desc: "Cuando te deslizas al final de la página nuevo contenido se carga automáticamente."
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "Ventana emergente automática"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "Muestra una ventana emergente si es posible. Esta configuración depende del navegador."
|
||||||
advanced: "詳細設定"
|
advanced: "Configuración avanzada"
|
||||||
api-via-stream: "ストリームを経由したAPIリクエスト"
|
api-via-stream: "Solicitar API por medio de un stream"
|
||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "Las peticiones de las API se realizan por conexiones WebSocket en lugar de las tradicionales (para una mejora en el rendimiento). Esta función depende del navegador."
|
||||||
display: "デザインと表示"
|
display: "Diseño y pantalla"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "Personaliza la página principal"
|
||||||
dark-mode: "ダークモード"
|
choose-wallpaper: "壁紙を選択"
|
||||||
circle-icons: "円形のアイコンを使用"
|
delete-wallpaper: "壁紙を削除"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
dark-mode: "Modo Nocturno"
|
||||||
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
circle-icons: "Usar iconos circulares"
|
||||||
|
gradient-window-header: "Usar degradados en las cabeceras de las páginas"
|
||||||
|
post-form-on-timeline: "Mostrar el formulario de las entradas encima de la línea de tiempo"
|
||||||
show-reply-target: "リプライ先を表示する"
|
show-reply-target: "リプライ先を表示する"
|
||||||
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
||||||
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
||||||
@@ -456,7 +523,7 @@ desktop/views/components/settings.api.vue:
|
|||||||
regenerate-token: "トークンを再生成"
|
regenerate-token: "トークンを再生成"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "ミュートしているユーザーはいません"
|
no-users: "ミュートしているユーザーはいません"
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
local: "ローカル"
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "グローバル"
|
global: "グローバル"
|
||||||
list: "リスト"
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
customize: "カスタマイズ"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "新規投稿"
|
post: "新規投稿"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "検索"
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
@@ -523,7 +604,17 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "よく話すユーザー"
|
title: "よく話すユーザー"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -573,6 +664,11 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "ミュートする"
|
mute: "ミュートする"
|
||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -584,13 +680,12 @@ desktop/views/widgets/notifications.vue:
|
|||||||
title: "通知"
|
title: "通知"
|
||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "クリックでアバター編集"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "ハッシュ (md5)"
|
hash: "ハッシュ (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -720,6 +877,8 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
654
locales/fr.yml
@@ -1,20 +1,22 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "Français"
|
lang: "Français"
|
||||||
divider: " "
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Partagez avec les autres en utilisant Misskey"
|
misskey: "Une ⭐ du fédiverse"
|
||||||
|
about-title: "Une ⭐ du fédiverse."
|
||||||
|
about: "Merci d'avoir découvert Misskey. Misskey est une <b>plateforme de micro-blogging distribuée</b> née sur Terre. Parce qu'il fait partie du Fédiverse (un univers composé de diverses plateformes de réseaux sociaux organisées), il est mutuellement connecté avec d'autres plateformes de réseaux sociaux. Désirez-vous prendre une pause, pendant un instant, loin de l'agitation de la ville et plonger dans un nouvel Internet ?"
|
||||||
time:
|
time:
|
||||||
unknown: "inconnu"
|
unknown: "inconnu"
|
||||||
future: "future"
|
future: "future"
|
||||||
just_now: "maintenant"
|
just_now: "à l'instant"
|
||||||
seconds_ago: "Il y a {}seconde(s)"
|
seconds_ago: "Il y a {} seconde·s"
|
||||||
minutes_ago: "Il y a {}minute(s)"
|
minutes_ago: "Il y a {} minute·s"
|
||||||
hours_ago: "Il y a {}heure(s)"
|
hours_ago: "Il y a {} heure·s"
|
||||||
days_ago: "Il y a {}jour(s)"
|
days_ago: "Il y a {} jour·s"
|
||||||
weeks_ago: "Il y a{}semaines(s)"
|
weeks_ago: "Il y a {} semaines·s"
|
||||||
months_ago: "Il y a {}mois"
|
months_ago: "Il y a {} mois"
|
||||||
years_ago: "Il y a {}an(s)"
|
years_ago: "Il y a {} an·s"
|
||||||
weekday-short:
|
weekday-short:
|
||||||
sunday: "D"
|
sunday: "D"
|
||||||
monday: "L"
|
monday: "L"
|
||||||
@@ -22,22 +24,80 @@ common:
|
|||||||
wednesday: "M"
|
wednesday: "M"
|
||||||
thursday: "J"
|
thursday: "J"
|
||||||
friday: "V"
|
friday: "V"
|
||||||
saturday: "土"
|
saturday: "S"
|
||||||
reactions:
|
reactions:
|
||||||
like: "Aime"
|
like: "Aime"
|
||||||
love: "Adore"
|
love: "Adore"
|
||||||
laugh: "Rire"
|
laugh: "Rire"
|
||||||
hmm: "Hmm...?"
|
hmm: "Hmm ... ?"
|
||||||
surprise: "Wow"
|
surprise: "Wow"
|
||||||
congrats: "Félicitations!"
|
congrats: "Félicitations !"
|
||||||
angry: "En Colère"
|
angry: "En colère"
|
||||||
confused: "Confus"
|
confused: "Confus"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "Que faîtes vous maintenant ?"
|
||||||
|
b: "Quoi de neuf ?"
|
||||||
|
c: "Qu'avez-vous en tête ?"
|
||||||
|
d: "Voulez-vous exprimer quelque chose ?"
|
||||||
|
e: "Écrivez ici"
|
||||||
|
f: "En attente de vos écrits"
|
||||||
|
search: "Recherche"
|
||||||
delete: "Supprimer"
|
delete: "Supprimer"
|
||||||
loading: "Chargement"
|
loading: "Chargement"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
update-available: "Une nouvelle version de Misskey est disponible({newer}, version actuelle: {current}). Recharger la page pour appliquer la mise à jour."
|
update-available-title: "Mise à jour disponible"
|
||||||
|
update-available: "Une nouvelle version de Misskey est disponible ({newer}, version actuelle: {current}). Veuillez recharger la page pour appliquer la mise à jour."
|
||||||
my-token-regenerated: "Votre token vient d'être généré, vous allez maintenant être déconnecté."
|
my-token-regenerated: "Votre token vient d'être généré, vous allez maintenant être déconnecté."
|
||||||
|
i-like-sushi: "Je préfère les sushis (au pudding)"
|
||||||
|
show-reversi-board-labels: "Afficher les étiquettes des lignes et colonnes dans Reversi"
|
||||||
|
reversi:
|
||||||
|
drawn: "Partie nulle"
|
||||||
|
my-turn: "C’est votre tour"
|
||||||
|
opponent-turn: "Tour de l’adversaire"
|
||||||
|
turn-of: "C’est le tour de {}"
|
||||||
|
past-turn-of: "C'est au tour de {}"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "Horloge analogique"
|
||||||
|
profile: "Profil"
|
||||||
|
calendar: "Calendrier"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "Activité"
|
||||||
|
rss: "Lecteur de flux RSS"
|
||||||
|
memo: "Pense-bête"
|
||||||
|
trends: "Tendances"
|
||||||
|
photo-stream: "Flux de photos"
|
||||||
|
posts-monitor: "Graph des publications"
|
||||||
|
slideshow: "Diaporama"
|
||||||
|
version: "Version"
|
||||||
|
broadcast: "Diffusion"
|
||||||
|
notifications: "Notifications"
|
||||||
|
users: "Utilisateurs"
|
||||||
|
polls: "Sondages"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "Messagerie"
|
||||||
|
server: "Info sur le serveur"
|
||||||
|
donation: "Dons"
|
||||||
|
nav: "Navigation"
|
||||||
|
tips: "Conseils"
|
||||||
|
hashtags: "Étiquettes"
|
||||||
|
deck:
|
||||||
|
widgets: "Widgets"
|
||||||
|
home: "Accueil"
|
||||||
|
local: "Local"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "Global"
|
||||||
|
notifications: "Notifications"
|
||||||
|
list: "Liste"
|
||||||
|
swap-left: "Déplacer à gauche"
|
||||||
|
swap-right: "Déplacer à droite"
|
||||||
|
swap-up: "Vers le haut"
|
||||||
|
swap-down: "Vers le bas"
|
||||||
|
remove: "Supprimer"
|
||||||
|
add-column: "Ajouter une colonne"
|
||||||
|
rename: "Renommer"
|
||||||
|
stack-left: "Vers la gauche"
|
||||||
|
pop-right: "Vers la droite"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "Impossible de se connecter au server."
|
title: "Impossible de se connecter au server."
|
||||||
description: "Il y a soit un problème avec votre connexion internet, soit le serveur est hors-ligne ou en maintenance. Veuillez {ressayer} plus tard."
|
description: "Il y a soit un problème avec votre connexion internet, soit le serveur est hors-ligne ou en maintenance. Veuillez {ressayer} plus tard."
|
||||||
@@ -60,8 +120,8 @@ common/views/components/connect-failed.troubleshooter.vue:
|
|||||||
no-server-desc: "Votre connexion est OK, mais il a été impossible de vous connecter au serveur de Misskey. Il y a des chances que le serveur soit hors-ligne ou en maintenance, veuillez ressayer plus tard."
|
no-server-desc: "Votre connexion est OK, mais il a été impossible de vous connecter au serveur de Misskey. Il y a des chances que le serveur soit hors-ligne ou en maintenance, veuillez ressayer plus tard."
|
||||||
success: "Connexion au serveur de Misskey reussie!"
|
success: "Connexion au serveur de Misskey reussie!"
|
||||||
success-desc: "La connexion au serveur a été reussie. Veuillez recharger la page."
|
success-desc: "La connexion au serveur a été reussie. Veuillez recharger la page."
|
||||||
flush: "キャッシュの削除"
|
flush: "Vider le cache"
|
||||||
set-version: "バージョン指定"
|
set-version: "Choisissez une version"
|
||||||
common/views/components/messaging.vue:
|
common/views/components/messaging.vue:
|
||||||
search-user: "Trouver un utilisateur"
|
search-user: "Trouver un utilisateur"
|
||||||
you: "Vous"
|
you: "Vous"
|
||||||
@@ -88,11 +148,13 @@ common/views/components/nav.vue:
|
|||||||
donors: "Donateurs"
|
donors: "Donateurs"
|
||||||
repository: "Repo"
|
repository: "Repo"
|
||||||
develop: "Développeurs"
|
develop: "Développeurs"
|
||||||
feedback: "フィードバック"
|
feedback: "Remarques"
|
||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "Favorite this note"
|
favorite: "Favorite this note"
|
||||||
pin: "Épingler sur votre profile"
|
pin: "Épingler sur votre profile"
|
||||||
remote: "投稿元で見る"
|
delete: "Supprimer"
|
||||||
|
delete-confirm: "Supprimer cette publication ?"
|
||||||
|
remote: "Afficher les note originale"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "Voter pour '{}'"
|
vote-to: "Voter pour '{}'"
|
||||||
vote-count: "{} votes"
|
vote-count: "{} votes"
|
||||||
@@ -101,11 +163,11 @@ common/views/components/poll.vue:
|
|||||||
show-result: "Montrer les résultats"
|
show-result: "Montrer les résultats"
|
||||||
voted: "Voté"
|
voted: "Voté"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "Vous devez entrer au moins deux choix"
|
no-only-one-choice: "Vous devez saisir au moins deux choix."
|
||||||
choice-n: "Choix {}"
|
choice-n: "Choix {}"
|
||||||
remove: "Supprimer ce choix"
|
remove: "Supprimer ce choix"
|
||||||
add: "+ Ajouter un choix"
|
add: "+ Ajouter un choix"
|
||||||
destroy: "Supprimer ce sondage"
|
destroy: "Annuler ce sondage"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "Choisissez votre réaction"
|
choose-reaction: "Choisissez votre réaction"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "Deconnecter"
|
disconnect: "Deconnecter"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "En attente"
|
waiting: "En attente"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "Public"
|
||||||
|
home: "Accueil"
|
||||||
|
home-desc: "Publier sur le fil d'Accueil uniquement"
|
||||||
|
followers: "Abonnés"
|
||||||
|
followers-desc: "Publier à vos abonnés uniquement"
|
||||||
|
specified: "Direct"
|
||||||
|
specified-desc: "Publier aux utilisateurs mentionnés"
|
||||||
|
private: "Privé"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "Récuperation"
|
fetching: "Récuperation"
|
||||||
no-broadcasts: "No broadcasts"
|
no-broadcasts: "No broadcasts"
|
||||||
@@ -162,23 +233,31 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "Flux de photo"
|
title: "Flux de photo"
|
||||||
no-photos: "Pas de photos"
|
no-photos: "Pas de photos"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "Graph des publications"
|
||||||
|
toggle: "Basculer les vues"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "Étiquettes"
|
||||||
|
count: "{} utilisateurs mentionnés"
|
||||||
|
empty: "Aucune tendance"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "Info sur le serveur"
|
title: "Info sur le serveur"
|
||||||
toggle: "Afficher les vues"
|
toggle: "Afficher les vues"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "Pense-bête"
|
||||||
home: "ホーム"
|
memo: "Écrivez ici !"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "Enregistrer"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "Connecté en tant que {}"
|
||||||
specified: "ダイレクト"
|
following: "Suit"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "Suivre"
|
||||||
private: "非公開"
|
request-pending: "Demande d'abonnement en attente"
|
||||||
|
follow-request: "Demande d'abonnement"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Noir ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Bleu ... Notes"
|
||||||
replies: "Red ... Replies"
|
replies: "Rouge ... Réponses"
|
||||||
renotes: "Green ... Renotes"
|
renotes: "Vert ... Partages"
|
||||||
desktop/views/components/activity.vue:
|
desktop/views/components/activity.vue:
|
||||||
title: "Activitié"
|
title: "Activitié"
|
||||||
toggle: "Afficher les vues"
|
toggle: "Afficher les vues"
|
||||||
@@ -188,19 +267,19 @@ desktop/views/components/calendar.vue:
|
|||||||
next: "Mois prochain"
|
next: "Mois prochain"
|
||||||
go: "Cliquer pour naviguer"
|
go: "Cliquer pour naviguer"
|
||||||
desktop/views/components/choose-file-from-drive-window.vue:
|
desktop/views/components/choose-file-from-drive-window.vue:
|
||||||
choose-file: "ファイル選択中"
|
choose-file: "Sélection de fichiers"
|
||||||
upload: "PCからドライブにファイルをアップロード"
|
upload: "Téléverser des fichiers à partir de votre PC"
|
||||||
cancel: "キャンセル"
|
cancel: "Annuler"
|
||||||
ok: "決定"
|
ok: "OK"
|
||||||
choose-prompt: "ファイルを選択"
|
choose-prompt: "Choisir un fichier"
|
||||||
desktop/views/components/choose-folder-from-drive-window.vue:
|
desktop/views/components/choose-folder-from-drive-window.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "Annuler"
|
||||||
ok: "決定"
|
ok: "OK"
|
||||||
choose-prompt: "フォルダを選択"
|
choose-prompt: "Choisir un dossier"
|
||||||
desktop/views/components/crop-window.vue:
|
desktop/views/components/crop-window.vue:
|
||||||
skip: "クロップをスキップ"
|
skip: "Ignorer la découpe"
|
||||||
cancel: "キャンセル"
|
cancel: "Annuler"
|
||||||
ok: "決定"
|
ok: "OK"
|
||||||
desktop/views/components/drive-window.vue:
|
desktop/views/components/drive-window.vue:
|
||||||
used: "utilisé"
|
used: "utilisé"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
@@ -253,82 +332,66 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "Uploader un fichier"
|
upload: "Uploader un fichier"
|
||||||
url-upload: "Uploader d'un URL"
|
url-upload: "Uploader d'un URL"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "Abonnements"
|
||||||
follow: "フォローする"
|
follow: "Suivre"
|
||||||
|
request-pending: "En attente d'approbation"
|
||||||
|
follow-request: "Demande d'abonnement"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} abonnés"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
empty: "フォロワーはいないようです。"
|
empty: "Il semble que vous n'avez pas encore d'abonnés."
|
||||||
desktop/views/components/following-window.vue:
|
desktop/views/components/following-window.vue:
|
||||||
following: "{} のフォロー"
|
following: "Suit {}"
|
||||||
desktop/views/components/following.vue:
|
desktop/views/components/following.vue:
|
||||||
empty: "フォロー中のユーザーはいないようです。"
|
empty: "Vous ne suivez aucun compte."
|
||||||
desktop/views/components/friends-maker.vue:
|
desktop/views/components/friends-maker.vue:
|
||||||
title: "気になるユーザーをフォロー:"
|
title: "Utilisateurs recommandés :"
|
||||||
empty: "おすすめのユーザーは見つかりませんでした。"
|
empty: "Impossible de trouver des utilisateurs à recommander."
|
||||||
fetching: "読み込んでいます"
|
fetching: "Chargement"
|
||||||
refresh: "もっと見る"
|
refresh: "Plus"
|
||||||
close: "閉じる"
|
close: "Fermer"
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "オセロ"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
done: "完了"
|
done: "Envoyer"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "Ajouter un widget"
|
||||||
profile: "プロフィール"
|
add: "Ajouter"
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "Annuler"
|
||||||
ok: "決定"
|
ok: "OK"
|
||||||
desktop/views/components/messaging-room-window.vue:
|
desktop/views/components/messaging-room-window.vue:
|
||||||
title: "メッセージ:"
|
title: "Messages :"
|
||||||
desktop/views/components/messaging-window.vue:
|
desktop/views/components/messaging-window.vue:
|
||||||
title: "Messagerie"
|
title: "Messagerie"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "Charger davantage de conversations"
|
||||||
private: "(この投稿は非公開です)"
|
private: "cette publication est privée"
|
||||||
is-renote: "がRenote"
|
deleted: "cette publication a été supprimée"
|
||||||
location: "位置情報"
|
reposted-by: "Republié par {}"
|
||||||
renote: "Renote"
|
location: "Géolocalisation"
|
||||||
add-reaction: "リアクション"
|
renote: "Republier"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
add-reaction: "Ajouter votre reaction"
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "Reposté par {}"
|
reposted-by: "Reposté par {}"
|
||||||
reply: "Répondre"
|
reply: "Répondre"
|
||||||
renote: "Renote"
|
renote: "Republier"
|
||||||
add-reaction: "Ajouter votre reaction"
|
add-reaction: "Ajouter votre reaction"
|
||||||
detail: "Afficher les détails"
|
detail: "Afficher les détails"
|
||||||
|
private: "cette publication est privée"
|
||||||
|
deleted: "cette publication a été supprimée"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "Échec du chargement."
|
||||||
retry: "リトライ"
|
retry: "Réessayer"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "Plus"
|
more: "Plus"
|
||||||
empty: "Pas de notifications"
|
empty: "Pas de notifications"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "Qu'est-ce qui se passe?"
|
|
||||||
reply-placeholder: "Répondre à cette note"
|
reply-placeholder: "Répondre à cette note"
|
||||||
quote-placeholder: "Citer cette note"
|
quote-placeholder: "Citer cette note"
|
||||||
note: "Poster"
|
submit: "Poster"
|
||||||
reply: "Répondre"
|
reply: "Répondre"
|
||||||
renote: "Renote"
|
renote: "Republier"
|
||||||
posted: "Posté!"
|
posted: "Posté!"
|
||||||
replied: "Répondu!"
|
replied: "Répondu!"
|
||||||
reposted: "Reposté!"
|
reposted: "Reposté!"
|
||||||
@@ -339,7 +402,7 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "Joindre un media depuis votre PC"
|
attach-media-from-local: "Joindre un media depuis votre PC"
|
||||||
attach-media-from-drive: "Joindre un media depuis votre Drive"
|
attach-media-from-drive: "Joindre un media depuis votre Drive"
|
||||||
attach-cancel: "Annuler la jointure de fichier"
|
attach-cancel: "Annuler la jointure de fichier"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "Créer un sondage"
|
create-poll: "Créer un sondage"
|
||||||
text-remain: "{} charactères restants"
|
text-remain: "{} charactères restants"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
@@ -348,16 +411,18 @@ desktop/views/components/post-form-window.vue:
|
|||||||
attaches: "{} media joint(s)"
|
attaches: "{} media joint(s)"
|
||||||
uploading-media: "Upload du media {}"
|
uploading-media: "Upload du media {}"
|
||||||
desktop/views/components/progress-dialog.vue:
|
desktop/views/components/progress-dialog.vue:
|
||||||
waiting: "待機中"
|
waiting: "En attente"
|
||||||
desktop/views/components/renote-form.vue:
|
desktop/views/components/renote-form.vue:
|
||||||
quote: "Citer..."
|
quote: "Citer..."
|
||||||
cancel: "Annuler"
|
cancel: "Annuler"
|
||||||
renote: "Renote"
|
renote: "Republier"
|
||||||
reposting: "Repost en cours..."
|
reposting: "Repost en cours..."
|
||||||
success: "Reposté!"
|
success: "Reposté!"
|
||||||
failure: "La renote a échoué"
|
failure: "La renote a échoué"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "Êtes vous sûr de vouloir renote cette note?"
|
title: "Êtes vous sûr de vouloir renote cette note?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "Paramètres"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "Profil"
|
profile: "Profil"
|
||||||
notification: "Notification"
|
notification: "Notification"
|
||||||
@@ -365,72 +430,74 @@ desktop/views/components/settings.vue:
|
|||||||
mute: "Mettre en sourdine"
|
mute: "Mettre en sourdine"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
security: "Sécurité"
|
security: "Sécurité"
|
||||||
signin: "サインイン履歴"
|
signin: "Historique de connexion"
|
||||||
password: "Mot de Passe"
|
password: "Mot de Passe"
|
||||||
2fa: "Vérification en deux étapes"
|
2fa: "Vérification en deux étapes"
|
||||||
other: "Autres"
|
other: "Autres"
|
||||||
license: "License"
|
license: "License"
|
||||||
behaviour: "動作"
|
behaviour: "Comportement"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "Chargement lors du défilement"
|
||||||
fetch-on-scroll-desc: "ページを下までスクロールしたときに自動で追加のコンテンツを読み込みます。"
|
fetch-on-scroll-desc: "Chargement automatique du contenu lors du défilement de la page."
|
||||||
auto-popout: "ウィンドウの自動ポップアウト"
|
auto-popout: "Fenêtre contextuelle automatique"
|
||||||
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
advanced: "詳細設定"
|
advanced: "Paramètres avancés"
|
||||||
api-via-stream: "ストリームを経由したAPIリクエスト"
|
api-via-stream: "Requête API via le flux"
|
||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
display: "デザインと表示"
|
display: "Affichage et design"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "Personnaliser l'Accueil"
|
||||||
dark-mode: "ダークモード"
|
choose-wallpaper: "壁紙を選択"
|
||||||
circle-icons: "円形のアイコンを使用"
|
delete-wallpaper: "壁紙を削除"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
dark-mode: "Mode nuit"
|
||||||
|
circle-icons: "Utiliser des icônes circulaires"
|
||||||
|
gradient-window-header: "Utiliser les dégradés sur la barre de titre de la fenêtre"
|
||||||
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
||||||
show-reply-target: "リプライ先を表示する"
|
show-reply-target: "リプライ先を表示する"
|
||||||
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
show-my-renotes: "Afficher mes republications dans le fil"
|
||||||
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
||||||
show-maps: "マップの自動展開"
|
show-maps: "Afficher la carte"
|
||||||
show-maps-desc: "位置情報が添付された投稿のマップを自動的に展開します。"
|
show-maps-desc: "位置情報が添付された投稿のマップを自動的に展開します。"
|
||||||
sound: "サウンド"
|
sound: "Son"
|
||||||
enable-sounds: "サウンドを有効にする"
|
enable-sounds: "Activer le son"
|
||||||
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
||||||
volume: "ボリューム"
|
volume: "Volume"
|
||||||
test: "テスト"
|
test: "Test"
|
||||||
mobile: "モバイル"
|
mobile: "Mobile"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "Enlever la mention publié via 'un périphérique mobile'"
|
||||||
language: "言語"
|
language: "Langue"
|
||||||
pick-language: "言語を選択"
|
pick-language: "Sélectionner une langue"
|
||||||
recommended: "推奨"
|
recommended: "Recommandé"
|
||||||
auto: "自動"
|
auto: "Automatique"
|
||||||
specify-language: "言語を指定"
|
specify-language: "Spécifier la langue"
|
||||||
language-desc: "変更はページの再度読み込み後に反映されます。"
|
language-desc: "Le rechargement de la page est requis afin d'appliquer les modifications."
|
||||||
cache: "キャッシュ"
|
cache: "Cache"
|
||||||
clean-cache: "クリーンアップ"
|
clean-cache: "Nettoyage"
|
||||||
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
||||||
cache-cleared: "キャッシュを削除しました"
|
cache-cleared: "Cache nettoyé"
|
||||||
cache-cleared-desc: "ページを再度読み込みしてください。"
|
cache-cleared-desc: "Veuillez recharger la page."
|
||||||
auto-watch: "投稿の自動ウォッチ"
|
auto-watch: "投稿の自動ウォッチ"
|
||||||
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
|
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
|
||||||
about: "Misskeyについて"
|
about: "À propose de Misskey"
|
||||||
operator: "このサーバーの運営者"
|
operator: "L'admin de cette instance"
|
||||||
update: "Misskey Update"
|
update: "Mise à jour de Misskey"
|
||||||
version: "バージョン:"
|
version: "Version :"
|
||||||
latest-version: "最新のバージョン:"
|
latest-version: "Dernière version :"
|
||||||
update-checking: "アップデートを確認中"
|
update-checking: "Recherche de mises à jour"
|
||||||
do-update: "アップデートを確認"
|
do-update: "Rechercher des mises à jour"
|
||||||
update-settings: "詳細設定"
|
update-settings: "Paramètres avancés"
|
||||||
prevent-update: "アップデートを延期する(非推奨)"
|
prevent-update: "Reporter les mises à jour (non recommandé)"
|
||||||
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。"
|
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。"
|
||||||
no-updates: "利用可能な更新はありません"
|
no-updates: "Aucune mise à jour disponible"
|
||||||
no-updates-desc: "お使いのMisskeyは最新です。"
|
no-updates-desc: "Votre Misskey est à jour."
|
||||||
update-available: "新しいバージョンが利用可能です"
|
update-available: "Nouvelle version disponible !"
|
||||||
update-available-desc: "ページを再度読み込みすると更新が適用されます。"
|
update-available-desc: "Les mises à jour seront appliquées une fois la page est rechargée."
|
||||||
advanced-settings: "高度な設定"
|
advanced-settings: "Réglages avancés"
|
||||||
debug-mode: "デバッグモードを有効にする"
|
debug-mode: "Activer le mode debug"
|
||||||
debug-mode-desc: "この設定はブラウザに記憶されます。"
|
debug-mode-desc: "Ce paramètre est stocké dans le navigateur."
|
||||||
experimental: "実験的機能を有効にする"
|
experimental: "Activer les fonctionnalités expérimentales"
|
||||||
experimental-desc: "実験的機能を有効にするとMisskeyの動作が不安定になる可能性があります。この設定はブラウザに記憶されます。"
|
experimental-desc: "実験的機能を有効にするとMisskeyの動作が不安定になる可能性があります。この設定はブラウザに記憶されます。"
|
||||||
tools: "ツール"
|
tools: "Outils"
|
||||||
task-manager: "タスクマネージャ"
|
task-manager: "Gestionnaire de tâches"
|
||||||
third-parties: "サードパーティ"
|
third-parties: "Services tiers"
|
||||||
desktop/views/components/settings.2fa.vue:
|
desktop/views/components/settings.2fa.vue:
|
||||||
intro: "Si vous configurez la vérication en deux étapes vous aurez non seulement besoin de votre mot de passe mais aussi un appareil déjà pré-enregistré(tel que votre smartphone) ce qui ameliora grandement la sécurité de votre compte."
|
intro: "Si vous configurez la vérication en deux étapes vous aurez non seulement besoin de votre mot de passe mais aussi un appareil déjà pré-enregistré(tel que votre smartphone) ce qui ameliora grandement la sécurité de votre compte."
|
||||||
detail: "Voir les détails..."
|
detail: "Voir les détails..."
|
||||||
@@ -454,10 +521,10 @@ desktop/views/components/settings.api.vue:
|
|||||||
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
regeneration-of-token: "万が一このトークンが漏れたりその可能性がある場合はトークンを再生成できます。"
|
regeneration-of-token: "万が一このトークンが漏れたりその可能性がある場合はトークンを再生成できます。"
|
||||||
regenerate-token: "Regenerer le token"
|
regenerate-token: "Regenerer le token"
|
||||||
token: "Token:"
|
token: "Jeton :"
|
||||||
enter-password: "Veuillez entrer le mot de passe"
|
enter-password: "Veuillez entrer le mot de passe"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "Aucune application authorisée"
|
no-apps: "Aucune application autorisée"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "Aucun utilisateurs mis en sourdine"
|
no-users: "Aucun utilisateurs mis en sourdine"
|
||||||
desktop/views/components/settings.password.vue:
|
desktop/views/components/settings.password.vue:
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "Description"
|
description: "Description"
|
||||||
birthday: "Date de naissance"
|
birthday: "Date de naissance"
|
||||||
save: "Mettre à jour le profil"
|
save: "Mettre à jour le profil"
|
||||||
is-bot: "このアカウントはBotです"
|
locked-account: "アカウントの保護"
|
||||||
is-cat: "このアカウントはCatです"
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
|
is-bot: "Ce compte est un Bot"
|
||||||
|
is-cat: "Ce compte est un Chat"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "cette publication est privée"
|
||||||
media: "つのメディア"
|
deleted: "cette publication a été supprimée"
|
||||||
poll: "投票"
|
media-count: "{} médias attachés"
|
||||||
|
poll: "Sondage"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "Gestionnaire de tâches"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "Accueil"
|
||||||
local: "ローカル"
|
local: "Local"
|
||||||
global: "グローバル"
|
hybrid: "ソーシャル"
|
||||||
list: "リスト"
|
global: "Global"
|
||||||
|
list: "Listes"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "Vous êtes de retour !"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "Votre profil"
|
profile: "Votre profil"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
favorites: "Favorites"
|
favorites: "Favorites"
|
||||||
lists: "リスト"
|
lists: "Listes"
|
||||||
customize: "Modifications"
|
follow-requests: "Demandes de suivi"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
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"
|
home: "Accueil"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "Messages"
|
messaging: "Messages"
|
||||||
game: "Jeux"
|
game: "Jeux"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,34 +583,49 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "Composer un nouveau post"
|
post: "Composer un nouveau post"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "Chercher"
|
placeholder: "Chercher"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "Demandes de suivi"
|
||||||
|
accept: "Approuver"
|
||||||
|
reject: "Refuser"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
create-list: "リストを作成"
|
title: "Listes de l'utilisateur"
|
||||||
|
create-list: "Créer une liste"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "Publications"
|
||||||
following: "フォロー"
|
following: "Abonné à"
|
||||||
followers: "フォロワー"
|
followers: "Abonnés"
|
||||||
desktop/views/components/users-list.vue:
|
desktop/views/components/users-list.vue:
|
||||||
all: "すべて"
|
all: "Tout"
|
||||||
iknow: "知り合い"
|
iknow: "Vous connaissez"
|
||||||
load-more: "もっと"
|
load-more: "Afficher plus"
|
||||||
fetching: "読み込んでいます"
|
fetching: "Chargement ..."
|
||||||
desktop/views/components/users-list-item.vue:
|
desktop/views/components/users-list-item.vue:
|
||||||
followed: "フォローされています"
|
followed: "vous suit"
|
||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "Fermer"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "Les publications médias uniquement"
|
||||||
|
is-media-view: "Vue média"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "Reposté par {}"
|
||||||
|
private: "cette publication est privée"
|
||||||
|
deleted: "cette publication a été supprimée"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
signin: "ログイン"
|
about: "à propos"
|
||||||
signup: "新規登録"
|
gotit: "J'ai compris !"
|
||||||
signin-button: "やってる"
|
signin: "Connexion"
|
||||||
signup-button: "やる"
|
signup: "S'enregistrer"
|
||||||
timeline: "タイムライン"
|
signin-button: "Se connecter"
|
||||||
|
signup-button: "S'inscrire"
|
||||||
|
timeline: "Fil d'actualité"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Misskey Drive"
|
title: "Lecteur de Misskey"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
more: "さらに読み込む"
|
more: "Plus de résultats"
|
||||||
desktop/views/pages/home-customize.vue:
|
desktop/views/pages/home-customize.vue:
|
||||||
title: "ホームのカスタマイズ"
|
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"
|
||||||
@@ -544,9 +635,9 @@ desktop/views/pages/selectdrive.vue:
|
|||||||
cancel: "Annuler"
|
cancel: "Annuler"
|
||||||
upload: "Uploader un ou plusieurs fichier(s) depuis votre PC"
|
upload: "Uploader un ou plusieurs fichier(s) depuis votre PC"
|
||||||
desktop/views/pages/user-list.users.vue:
|
desktop/views/pages/user-list.users.vue:
|
||||||
users: "ユーザー"
|
users: "Utilisateurs"
|
||||||
add-user: "ユーザーを追加"
|
add-user: "Ajouter un utilisateur"
|
||||||
username: "ユーザー名"
|
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és que vous connaissez"
|
||||||
loading: "Chargement en cours"
|
loading: "Chargement en cours"
|
||||||
@@ -555,9 +646,9 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "Personnes qui répondent le plus"
|
title: "Personnes qui répondent le plus"
|
||||||
loading: "Chargement en cours"
|
loading: "Chargement en cours"
|
||||||
no-users: "Pas d'utilisateurs"
|
no-users: "Pas d'utilisateurs"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "This account has been suspended."
|
is-suspended: "Ce compte a été suspendu."
|
||||||
is-remote: "Cet utilisateur n'est pas un utilisateur de Misskey. Certaines informations peuvent être erronées "
|
is-remote: "Cet utilisateur n'est pas un utilisateur de Misskey. Certaines informations peuvent être erronées"
|
||||||
view-remote: "Voir les informations détaillées"
|
view-remote: "Voir les informations détaillées"
|
||||||
desktop/views/pages/user/user.home.vue:
|
desktop/views/pages/user/user.home.vue:
|
||||||
last-used-at: "Last used at"
|
last-used-at: "Last used at"
|
||||||
@@ -573,11 +664,16 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "Mettre en sourdine"
|
mute: "Mettre en sourdine"
|
||||||
muted: "Muting"
|
muted: "Muting"
|
||||||
unmute: "Enlever la sourdine"
|
unmute: "Enlever la sourdine"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "Suit"
|
||||||
|
followers: "Abonnés"
|
||||||
|
is-bot: "Ce compte est un Bot"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "Publications"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "Publications et réponses"
|
||||||
with-media: "メディア"
|
with-media: "Média"
|
||||||
empty: "このユーザーはまだ何も投稿していないようです。"
|
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:
|
||||||
@@ -590,10 +686,9 @@ desktop/views/widgets/polls.vue:
|
|||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "Post"
|
title: "Post"
|
||||||
note: "Post"
|
note: "Post"
|
||||||
placeholder: "Qu'est-ce qu'il se passe?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "Cliquer pour éditer votre bannière"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "Cliquer pour éditer votre avatar"
|
||||||
desktop/views/widgets/trends.vue:
|
desktop/views/widgets/trends.vue:
|
||||||
title: "Tendances"
|
title: "Tendances"
|
||||||
refresh: "Afficher d'autres"
|
refresh: "Afficher d'autres"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "Charger plus"
|
load-more: "Charger plus"
|
||||||
nothing-in-drive: "Rien"
|
nothing-in-drive: "Rien"
|
||||||
folder-is-empty: "Ce dossier est vide"
|
folder-is-empty: "Ce dossier est vide"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "Désolé ! La suppression d’un dossier n’est pas encore implémentée."
|
||||||
|
folder-name: "Nom du dossier"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "URL du fichier que vous souhaitez téléverser"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "Renommer"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "Choisissez un fichier"
|
select-file: "Choisissez un fichier"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "Hash (md5)"
|
hash: "Hash (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "Abonnements"
|
||||||
follow: "Suivre"
|
follow: "Suivre"
|
||||||
unfollow: "Ne plus suivre"
|
request-pending: "En attente d'approbation"
|
||||||
|
follow-request: "Demande d'abonnement"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "Abonnez-vous aux utilisateurs"
|
||||||
|
empty: "Impossible de trouver des utilisateurs à recommander."
|
||||||
|
fetching: "Chargement"
|
||||||
|
refresh: "Voir plus"
|
||||||
|
close: "Fermer"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "Renoté par {}"
|
reposted-by: "Renoté par {}"
|
||||||
|
more: "Voir plus"
|
||||||
|
less: "Masquer"
|
||||||
|
private: "cette publication est privée"
|
||||||
|
deleted: "cette publication a été supprimée"
|
||||||
|
location: "Géolocalisation"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "Répondre"
|
reply: "Répondre"
|
||||||
reaction: "Réaction"
|
reaction: "Réaction"
|
||||||
|
reposted-by: "Republié par {}"
|
||||||
|
private: "cette publication est privée"
|
||||||
|
deleted: "cette publication a été supprimée"
|
||||||
|
location: "Lieu"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "chat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "chat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "Échec du chargement."
|
||||||
|
retry: "Réessayer"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "Plus"
|
more: "Plus"
|
||||||
empty: "Pas de notifications"
|
empty: "Pas de notifications"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "Ajouter un utilisateur"
|
||||||
submit: "Poster"
|
submit: "Poster"
|
||||||
reply: "返信"
|
reply: "Répondre"
|
||||||
renote: "Renote"
|
renote: "Republier"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "Citer ce billet ... (Facultatif)"
|
||||||
reply-placeholder: "Répondre à cette note"
|
reply-placeholder: "Répondre à cette note"
|
||||||
note-placeholder: "Qu'est-ce qu'il se passe?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "Votre appareil ne prend pas en charge les services de localisation"
|
||||||
|
error: "Erreur"
|
||||||
|
username-prompt: "Saisir un nom d'utilisateur"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{} media"
|
private: "cette publication est privée"
|
||||||
|
deleted: "cette publication a été supprimée"
|
||||||
|
media-count: "{} médias attachés"
|
||||||
poll: "Sondage"
|
poll: "Sondage"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "Pas de notes"
|
empty: "Pas de notes"
|
||||||
load-more: "Afficher plus"
|
load-more: "Afficher plus"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "Accueil"
|
timeline: "Fil d'actualité"
|
||||||
notifications: "Notifications"
|
notifications: "Notifications"
|
||||||
messaging: "Messages"
|
messaging: "Messages"
|
||||||
|
follow-requests: "Demandes d'abonnement"
|
||||||
search: "Rechercher"
|
search: "Rechercher"
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
|
favorites: "Favoris"
|
||||||
|
user-lists: "Listes"
|
||||||
|
widgets: "Modules"
|
||||||
|
game: "Jeux"
|
||||||
|
darkmode: "Mode nuit"
|
||||||
settings: "Réglages"
|
settings: "Réglages"
|
||||||
about: "À propose de Misskey"
|
about: "À propose de Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "Tout"
|
all: "Tout"
|
||||||
known: "Vous connaissez"
|
known: "Vous connaissez"
|
||||||
load-more: "Afficher plus"
|
load-more: "Afficher plus"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "Favoris"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "Listes"
|
||||||
|
enter-list-name: "Nom de la liste"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "Drive"
|
drive: "Drive"
|
||||||
|
more: "Afficher plus ..."
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "Abonnés de {}"
|
followers-of: "Abonnés de {}"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "Abonnements de {}"
|
following-of: "Abonnements de {}"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "Fil d'actualité"
|
home: "Accueil"
|
||||||
|
local: "Local"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "Global"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "Messagerie"
|
messaging: "Messagerie"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "Messagerie"
|
messaging: "Messagerie"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "Demandes d'abonnement"
|
||||||
|
accept: "Approuver"
|
||||||
|
reject: "Refuser"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "Post"
|
title: "Post"
|
||||||
prev: "Note précedante"
|
prev: "Note précedante"
|
||||||
@@ -681,19 +838,19 @@ mobile/views/pages/notifications.vue:
|
|||||||
notifications: "Notifications"
|
notifications: "Notifications"
|
||||||
read-all: "Êtes vous sûr de vouloir marqués toutes les notifications non-lus en tant que lus?"
|
read-all: "Êtes vous sûr de vouloir marqués toutes les notifications non-lus en tant que lus?"
|
||||||
mobile/views/pages/settings/settings.profile.vue:
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
title: "プロフィール"
|
title: "Profil"
|
||||||
name: "名前"
|
name: "Nom"
|
||||||
account: "アカウント"
|
account: "Compte"
|
||||||
location: "場所"
|
location: "Lieu"
|
||||||
description: "自己紹介"
|
description: "Description"
|
||||||
birthday: "誕生日"
|
birthday: "Date de naissance"
|
||||||
avatar: "アイコン"
|
avatar: "Avatar"
|
||||||
banner: "バナー"
|
banner: "Bannière"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "Ce compte est un Bot"
|
||||||
save: "保存"
|
save: "Mettre à jour le profil"
|
||||||
saved: "プロフィールを保存しました"
|
saved: "Profil mis à jour avec succès"
|
||||||
uploading: "アップロード中"
|
uploading: "En cours d'envoi"
|
||||||
upload-failed: "アップロードに失敗しました"
|
upload-failed: "Échec de l'envoi"
|
||||||
mobile/views/pages/search.vue:
|
mobile/views/pages/search.vue:
|
||||||
search: "Chercher"
|
search: "Chercher"
|
||||||
empty: "Aucun message trouvé pour '{}' "
|
empty: "Aucun message trouvé pour '{}' "
|
||||||
@@ -701,38 +858,40 @@ 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é en tant que {}"
|
||||||
lang: "言語"
|
lang: "Langue"
|
||||||
lang-tip: "変更はページの再読み込み後に反映されます。"
|
lang-tip: "Le rechargement de la page est requis afin d'appliquer les modifications."
|
||||||
recommended: "推奨"
|
recommended: "Recommandé"
|
||||||
auto: "自動"
|
auto: "Automatique"
|
||||||
specify-language: "言語を指定"
|
specify-language: "Spécifier la langue"
|
||||||
design: "デザインと表示"
|
design: "Affichage et design"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "Mode nuit"
|
||||||
i-am-under-limited-internet: "私は通信を制限されている"
|
i-am-under-limited-internet: "J'ai un accès Internet limité"
|
||||||
circle-icons: "円形のアイコンを使用"
|
circle-icons: "Utiliser des icônes circulaires"
|
||||||
timeline: "タイムライン"
|
timeline: "Fil d'actualité"
|
||||||
show-reply-target: "リプライ先を表示する"
|
show-reply-target: "リプライ先を表示する"
|
||||||
show-my-renotes: "自分の行ったRenoteを表示する"
|
show-my-renotes: "Afficher mes republications"
|
||||||
show-renoted-my-notes: "Renoteされた自分の投稿を表示する"
|
show-renoted-my-notes: "Renoteされた自分の投稿を表示する"
|
||||||
post-style: "投稿の表示スタイル"
|
post-style: "Style de la publication"
|
||||||
post-style-standard: "標準"
|
post-style-standard: "Standard"
|
||||||
post-style-smart: "スマート"
|
post-style-smart: "Intelligent"
|
||||||
behavior: "動作"
|
behavior: "Comportement"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "Chargement lors du défilement"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "Ne pas mentionner que ma publication provient d'un 'périphérique mobile'"
|
||||||
twitter: "Twitter連携"
|
load-raw-images: "Afficher les photos jointes en haute qualité"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
load-remote-media: "Afficher les médias sur le serveur distant"
|
||||||
twitter-reconnect: "再接続する"
|
twitter: "Intégration à Twitter"
|
||||||
twitter-disconnect: "切断する"
|
twitter-connect: "Se connecter à votre compte Twitter"
|
||||||
update: "Misskey Update"
|
twitter-reconnect: "Reconnecter"
|
||||||
version: "バージョン:"
|
twitter-disconnect: "Déconnexion"
|
||||||
latest-version: "最新のバージョン:"
|
update: "Mise à jour de Misskey"
|
||||||
update-checking: "アップデートを確認中"
|
version: "Version :"
|
||||||
check-for-updates: "アップデートを確認"
|
latest-version: "Dernière version :"
|
||||||
no-updates: "利用可能な更新はありません"
|
update-checking: "Recherche de mises à jour"
|
||||||
no-updates-desc: "お使いのMisskeyは最新です。"
|
check-for-updates: "Fréquence de vérification"
|
||||||
update-available: "新しいバージョンが利用可能です"
|
no-updates: "Aucune mise à jour disponible"
|
||||||
update-available-desc: "ページを再度読み込みすると更新が適用されます。"
|
no-updates-desc: "Votre Misskey est à jour."
|
||||||
|
update-available: "Nouvelle version disponible !"
|
||||||
|
update-available-desc: "Les mises à jour seront appliquées une fois la page est rechargée."
|
||||||
settings: "Réglages"
|
settings: "Réglages"
|
||||||
signout: "Déconnexion"
|
signout: "Déconnexion"
|
||||||
mobile/views/pages/user.vue:
|
mobile/views/pages/user.vue:
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "Nom"
|
name: "Nom"
|
||||||
type: "Type"
|
type: "Type"
|
||||||
optional: "Optionel"
|
|
||||||
description: "Description"
|
description: "Description"
|
||||||
yes: "Oui"
|
|
||||||
no: "Non"
|
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
* Languages Loader
|
* Languages Loader
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import * as fs from 'fs';
|
const fs = require('fs');
|
||||||
import * as yaml from 'js-yaml';
|
const yaml = require('js-yaml');
|
||||||
|
|
||||||
const loadLang = lang => yaml.safeLoad(
|
const loadLang = lang => yaml.safeLoad(
|
||||||
fs.readFileSync(`./locales/${lang}.yml`, 'utf-8'));
|
fs.readFileSync(`${__dirname}/${lang}.yml`, 'utf-8'));
|
||||||
|
|
||||||
const native = loadLang('ja');
|
const native = loadLang('ja');
|
||||||
|
|
||||||
@@ -15,7 +15,8 @@ const langs = {
|
|||||||
'en': loadLang('en'),
|
'en': loadLang('en'),
|
||||||
'fr': loadLang('fr'),
|
'fr': loadLang('fr'),
|
||||||
'ja': native,
|
'ja': native,
|
||||||
'pl': loadLang('pl')
|
'pl': loadLang('pl'),
|
||||||
|
'es': loadLang('es')
|
||||||
};
|
};
|
||||||
|
|
||||||
Object.entries(langs).map(([, locale]) => {
|
Object.entries(langs).map(([, locale]) => {
|
||||||
@@ -23,4 +24,4 @@ Object.entries(langs).map(([, locale]) => {
|
|||||||
locale = Object.assign({}, native, locale);
|
locale = Object.assign({}, native, locale);
|
||||||
});
|
});
|
||||||
|
|
||||||
export default langs;
|
module.exports = langs;
|
||||||
276
locales/it.yml
@@ -3,7 +3,9 @@ meta:
|
|||||||
lang: "日本語"
|
lang: "日本語"
|
||||||
divider: ""
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
time:
|
time:
|
||||||
unknown: "なぞのじかん"
|
unknown: "なぞのじかん"
|
||||||
future: "未来"
|
future: "未来"
|
||||||
@@ -33,11 +35,69 @@ common:
|
|||||||
angry: "おこ"
|
angry: "おこ"
|
||||||
confused: "こまこまのこまり"
|
confused: "こまこまのこまり"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
search: "検索"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
ok: "わかった"
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "サーバーに接続できません"
|
title: "サーバーに接続できません"
|
||||||
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
||||||
@@ -92,6 +152,8 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
remote: "投稿元で見る"
|
remote: "投稿元で見る"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
@@ -101,11 +163,11 @@ common/views/components/poll.vue:
|
|||||||
show-result: "結果を見る"
|
show-result: "結果を見る"
|
||||||
voted: "投票済み"
|
voted: "投票済み"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "投票には、選択肢が最低2つ必要です"
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
choice-n: "選択肢{}"
|
choice-n: "選択肢{}"
|
||||||
remove: "この選択肢を削除"
|
remove: "この選択肢を削除"
|
||||||
add: "+選択肢を追加"
|
add: "+選択肢を追加"
|
||||||
destroy: "投票を破棄"
|
destroy: "アンケートを破棄"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "リアクションを選択"
|
choose-reaction: "リアクションを選択"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "切断する"
|
disconnect: "切断する"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "待機中"
|
waiting: "待機中"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "確認中"
|
fetching: "確認中"
|
||||||
no-broadcasts: "お知らせはありません"
|
no-broadcasts: "お知らせはありません"
|
||||||
@@ -162,18 +233,26 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "フォトストリーム"
|
title: "フォトストリーム"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "サーバー情報"
|
title: "サーバー情報"
|
||||||
toggle: "表示を切り替え"
|
toggle: "表示を切り替え"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "付箋"
|
||||||
home: "ホーム"
|
memo: "ここに書いて!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "保存"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified: "ダイレクト"
|
following: "フォロー中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "フォロー"
|
||||||
private: "非公開"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
@@ -253,8 +332,10 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "フォロー中"
|
||||||
follow: "フォローする"
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
@@ -270,29 +351,10 @@ desktop/views/components/friends-maker.vue:
|
|||||||
refresh: "もっと見る"
|
refresh: "もっと見る"
|
||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "完了"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "ウィジェットを追加:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
add: "追加"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "キャンセル"
|
||||||
@@ -303,30 +365,31 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "会話をもっと読み込む"
|
||||||
private: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
is-renote: "がRenote"
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
location: "位置情報"
|
location: "位置情報"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "読み込みに失敗しました。"
|
||||||
retry: "リトライ"
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "いまどうしてる?"
|
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
quote-placeholder: "この投稿を引用..."
|
quote-placeholder: "この投稿を引用..."
|
||||||
note: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
posted: "投稿しました!"
|
posted: "投稿しました!"
|
||||||
@@ -339,8 +402,8 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "PCからメディアを添付"
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
attach-media-from-drive: "ドライブからメディアを添付"
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
attach-cancel: "添付取り消し"
|
attach-cancel: "添付取り消し"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "投票を作成"
|
create-poll: "アンケートを作成"
|
||||||
text-remain: "残り{}文字"
|
text-remain: "残り{}文字"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "新規投稿"
|
note: "新規投稿"
|
||||||
@@ -358,6 +421,8 @@ desktop/views/components/renote-form.vue:
|
|||||||
failure: "Renoteに失敗しました"
|
failure: "Renoteに失敗しました"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "この投稿をRenoteしますか?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
notification: "通知"
|
notification: "通知"
|
||||||
@@ -380,6 +445,8 @@ desktop/views/components/settings.vue:
|
|||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "ダークモード"
|
||||||
circle-icons: "円形のアイコンを使用"
|
circle-icons: "円形のアイコンを使用"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
@@ -456,7 +523,7 @@ desktop/views/components/settings.api.vue:
|
|||||||
regenerate-token: "トークンを再生成"
|
regenerate-token: "トークンを再生成"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "ミュートしているユーザーはいません"
|
no-users: "ミュートしているユーザーはいません"
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
local: "ローカル"
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "グローバル"
|
global: "グローバル"
|
||||||
list: "リスト"
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
customize: "カスタマイズ"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "新規投稿"
|
post: "新規投稿"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "検索"
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
@@ -523,7 +604,17 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "よく話すユーザー"
|
title: "よく話すユーザー"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -573,6 +664,11 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "ミュートする"
|
mute: "ミュートする"
|
||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -584,13 +680,12 @@ desktop/views/widgets/notifications.vue:
|
|||||||
title: "通知"
|
title: "通知"
|
||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "クリックでアバター編集"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "ハッシュ (md5)"
|
hash: "ハッシュ (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -720,6 +877,8 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
299
locales/ja.yml
@@ -3,7 +3,9 @@ meta:
|
|||||||
divider: ""
|
divider: ""
|
||||||
|
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
|
|
||||||
time:
|
time:
|
||||||
unknown: "なぞのじかん"
|
unknown: "なぞのじかん"
|
||||||
@@ -37,11 +39,73 @@ common:
|
|||||||
confused: "こまこまのこまり"
|
confused: "こまこまのこまり"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
|
||||||
|
search: "検索"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
ok: "わかった"
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
|
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "サーバーに接続できません"
|
title: "サーバーに接続できません"
|
||||||
@@ -104,6 +168,8 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
remote: "投稿元で見る"
|
remote: "投稿元で見る"
|
||||||
|
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
@@ -115,11 +181,11 @@ common/views/components/poll.vue:
|
|||||||
voted: "投票済み"
|
voted: "投票済み"
|
||||||
|
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "投票には、選択肢が最低2つ必要です"
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
choice-n: "選択肢{}"
|
choice-n: "選択肢{}"
|
||||||
remove: "この選択肢を削除"
|
remove: "この選択肢を削除"
|
||||||
add: "+選択肢を追加"
|
add: "+選択肢を追加"
|
||||||
destroy: "投票を破棄"
|
destroy: "アンケートを破棄"
|
||||||
|
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "リアクションを選択"
|
choose-reaction: "リアクションを選択"
|
||||||
@@ -173,6 +239,16 @@ common/views/components/twitter-setting.vue:
|
|||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "待機中"
|
waiting: "待機中"
|
||||||
|
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
|
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "確認中"
|
fetching: "確認中"
|
||||||
no-broadcasts: "お知らせはありません"
|
no-broadcasts: "お知らせはありません"
|
||||||
@@ -187,19 +263,30 @@ common/views/widgets/photo-stream.vue:
|
|||||||
title: "フォトストリーム"
|
title: "フォトストリーム"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
|
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "サーバー情報"
|
title: "サーバー情報"
|
||||||
toggle: "表示を切り替え"
|
toggle: "表示を切り替え"
|
||||||
|
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "付箋"
|
||||||
home: "ホーム"
|
memo: "ここに書いて!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "保存"
|
||||||
followers: "フォロワー"
|
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
common/views/pages/follow.vue:
|
||||||
specified: "ダイレクト"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
following: "フォロー中"
|
||||||
private: "非公開"
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
@@ -291,8 +378,10 @@ desktop/views/components/drive.vue:
|
|||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
|
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "フォロー中"
|
||||||
follow: "フォローする"
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
@@ -314,30 +403,11 @@ desktop/views/components/friends-maker.vue:
|
|||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "完了"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "ウィジェットを追加:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
add: "追加"
|
||||||
|
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
@@ -352,35 +422,35 @@ desktop/views/components/messaging-window.vue:
|
|||||||
|
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "会話をもっと読み込む"
|
||||||
private: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
is-renote: "がRenote"
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
location: "位置情報"
|
location: "位置情報"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
|
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "読み込みに失敗しました。"
|
||||||
retry: "リトライ"
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
|
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "いまどうしてる?"
|
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
quote-placeholder: "この投稿を引用..."
|
quote-placeholder: "この投稿を引用..."
|
||||||
note: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
posted: "投稿しました!"
|
posted: "投稿しました!"
|
||||||
@@ -393,8 +463,8 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "PCからメディアを添付"
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
attach-media-from-drive: "ドライブからメディアを添付"
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
attach-cancel: "添付取り消し"
|
attach-cancel: "添付取り消し"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "投票を作成"
|
create-poll: "アンケートを作成"
|
||||||
text-remain: "残り{}文字"
|
text-remain: "残り{}文字"
|
||||||
|
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
@@ -417,6 +487,9 @@ desktop/views/components/renote-form.vue:
|
|||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "この投稿をRenoteしますか?"
|
||||||
|
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
|
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
notification: "通知"
|
notification: "通知"
|
||||||
@@ -441,6 +514,8 @@ desktop/views/components/settings.vue:
|
|||||||
|
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "ダークモード"
|
||||||
circle-icons: "円形のアイコンを使用"
|
circle-icons: "円形のアイコンを使用"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
@@ -528,7 +603,7 @@ desktop/views/components/settings.api.vue:
|
|||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
|
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
|
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
@@ -550,13 +625,17 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
|
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
|
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
@@ -564,21 +643,27 @@ desktop/views/components/taskmanager.vue:
|
|||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
local: "ローカル"
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "グローバル"
|
global: "グローバル"
|
||||||
list: "リスト"
|
list: "リスト"
|
||||||
|
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
|
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
customize: "カスタマイズ"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
|
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
|
|
||||||
@@ -591,7 +676,13 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "検索"
|
placeholder: "検索"
|
||||||
|
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
|
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
|
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
@@ -612,7 +703,19 @@ desktop/views/components/window.vue:
|
|||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -653,7 +756,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
|
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -675,6 +778,12 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
|
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -689,14 +798,13 @@ desktop/views/widgets/notifications.vue:
|
|||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
|
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
|
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
@@ -721,6 +829,16 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
|
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
@@ -736,42 +854,86 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
|
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
|
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
|
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
|
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
|
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
|
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
|
|
||||||
@@ -785,8 +947,16 @@ mobile/views/components/users-list.vue:
|
|||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
|
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
|
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
@@ -795,7 +965,10 @@ mobile/views/pages/following.vue:
|
|||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
|
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
@@ -803,6 +976,11 @@ mobile/views/pages/messaging.vue:
|
|||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
|
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -855,6 +1033,8 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
@@ -922,7 +1102,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
276
locales/ko.yml
@@ -3,7 +3,9 @@ meta:
|
|||||||
lang: "日本語"
|
lang: "日本語"
|
||||||
divider: ""
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
time:
|
time:
|
||||||
unknown: "なぞのじかん"
|
unknown: "なぞのじかん"
|
||||||
future: "未来"
|
future: "未来"
|
||||||
@@ -33,11 +35,69 @@ common:
|
|||||||
angry: "おこ"
|
angry: "おこ"
|
||||||
confused: "こまこまのこまり"
|
confused: "こまこまのこまり"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
search: "検索"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
ok: "わかった"
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "サーバーに接続できません"
|
title: "サーバーに接続できません"
|
||||||
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
||||||
@@ -92,6 +152,8 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
remote: "投稿元で見る"
|
remote: "投稿元で見る"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
@@ -101,11 +163,11 @@ common/views/components/poll.vue:
|
|||||||
show-result: "結果を見る"
|
show-result: "結果を見る"
|
||||||
voted: "投票済み"
|
voted: "投票済み"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "投票には、選択肢が最低2つ必要です"
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
choice-n: "選択肢{}"
|
choice-n: "選択肢{}"
|
||||||
remove: "この選択肢を削除"
|
remove: "この選択肢を削除"
|
||||||
add: "+選択肢を追加"
|
add: "+選択肢を追加"
|
||||||
destroy: "投票を破棄"
|
destroy: "アンケートを破棄"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "リアクションを選択"
|
choose-reaction: "リアクションを選択"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "切断する"
|
disconnect: "切断する"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "待機中"
|
waiting: "待機中"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "確認中"
|
fetching: "確認中"
|
||||||
no-broadcasts: "お知らせはありません"
|
no-broadcasts: "お知らせはありません"
|
||||||
@@ -162,18 +233,26 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "フォトストリーム"
|
title: "フォトストリーム"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "サーバー情報"
|
title: "サーバー情報"
|
||||||
toggle: "表示を切り替え"
|
toggle: "表示を切り替え"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "付箋"
|
||||||
home: "ホーム"
|
memo: "ここに書いて!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "保存"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified: "ダイレクト"
|
following: "フォロー中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "フォロー"
|
||||||
private: "非公開"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
@@ -253,8 +332,10 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "フォロー中"
|
||||||
follow: "フォローする"
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
@@ -270,29 +351,10 @@ desktop/views/components/friends-maker.vue:
|
|||||||
refresh: "もっと見る"
|
refresh: "もっと見る"
|
||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "完了"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "ウィジェットを追加:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
add: "追加"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "キャンセル"
|
||||||
@@ -303,30 +365,31 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "会話をもっと読み込む"
|
||||||
private: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
is-renote: "がRenote"
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
location: "位置情報"
|
location: "位置情報"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "読み込みに失敗しました。"
|
||||||
retry: "リトライ"
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "いまどうしてる?"
|
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
quote-placeholder: "この投稿を引用..."
|
quote-placeholder: "この投稿を引用..."
|
||||||
note: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
posted: "投稿しました!"
|
posted: "投稿しました!"
|
||||||
@@ -339,8 +402,8 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "PCからメディアを添付"
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
attach-media-from-drive: "ドライブからメディアを添付"
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
attach-cancel: "添付取り消し"
|
attach-cancel: "添付取り消し"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "投票を作成"
|
create-poll: "アンケートを作成"
|
||||||
text-remain: "残り{}文字"
|
text-remain: "残り{}文字"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "新規投稿"
|
note: "新規投稿"
|
||||||
@@ -358,6 +421,8 @@ desktop/views/components/renote-form.vue:
|
|||||||
failure: "Renoteに失敗しました"
|
failure: "Renoteに失敗しました"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "この投稿をRenoteしますか?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
notification: "通知"
|
notification: "通知"
|
||||||
@@ -380,6 +445,8 @@ desktop/views/components/settings.vue:
|
|||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "ダークモード"
|
||||||
circle-icons: "円形のアイコンを使用"
|
circle-icons: "円形のアイコンを使用"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
@@ -456,7 +523,7 @@ desktop/views/components/settings.api.vue:
|
|||||||
regenerate-token: "トークンを再生成"
|
regenerate-token: "トークンを再生成"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "ミュートしているユーザーはいません"
|
no-users: "ミュートしているユーザーはいません"
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
local: "ローカル"
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "グローバル"
|
global: "グローバル"
|
||||||
list: "リスト"
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
customize: "カスタマイズ"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "新規投稿"
|
post: "新規投稿"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "検索"
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
@@ -523,7 +604,17 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "よく話すユーザー"
|
title: "よく話すユーザー"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -573,6 +664,11 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "ミュートする"
|
mute: "ミュートする"
|
||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -584,13 +680,12 @@ desktop/views/widgets/notifications.vue:
|
|||||||
title: "通知"
|
title: "通知"
|
||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "クリックでアバター編集"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "ハッシュ (md5)"
|
hash: "ハッシュ (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -720,6 +877,8 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
338
locales/pl.yml
@@ -1,9 +1,11 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "język polski"
|
lang: "język polski"
|
||||||
divider: " "
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Dziel się zawartością z innymi korzystając z Misskey."
|
misskey: "⭐ Fediwersum"
|
||||||
|
about-title: "⭐ Fediwersum"
|
||||||
|
about: "Dziękujemy za znalezienie Misskey. Misskey jest <b>zdecentralizowaną platformą mikroblogową</b> powstałą na Ziemi. Ponieważ działa ona w Fediwersum (uniwersum, w którego skład wchodzi wiele sieci społecznościowych), jest ona połączona z innymi platformami społecznościowymi. Spróbujesz odpocząć od zatłoczoneo miasta i zanurzyć się w nowym Internecie?"
|
||||||
time:
|
time:
|
||||||
unknown: "nieznany"
|
unknown: "nieznany"
|
||||||
future: "w przyszłości"
|
future: "w przyszłości"
|
||||||
@@ -33,11 +35,69 @@ common:
|
|||||||
angry: "Wściekły"
|
angry: "Wściekły"
|
||||||
confused: "Zmieszany"
|
confused: "Zmieszany"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "Co robisz?"
|
||||||
|
b: "Co się wydarzyło?"
|
||||||
|
c: "Co Ci chodzi po głowie?"
|
||||||
|
d: "Czy masz coś do powiedzenia?"
|
||||||
|
e: "Napisz coś tutaj!"
|
||||||
|
f: "Czekamy, aż coś napiszesz."
|
||||||
|
search: "Szukaj"
|
||||||
delete: "Usuń"
|
delete: "Usuń"
|
||||||
loading: "Ładowanie"
|
loading: "Ładowanie"
|
||||||
ok: "OK"
|
ok: "OK"
|
||||||
|
update-available-title: "Aktualizacja jest dostępna"
|
||||||
update-available: "Nowa wersja Misskey jest dostępna ({newer}, obecna to {current}). Odśwież stronę, aby zastosować aktualizację."
|
update-available: "Nowa wersja Misskey jest dostępna ({newer}, obecna to {current}). Odśwież stronę, aby zastosować aktualizację."
|
||||||
my-token-regenerated: "Twój token został wygenerowany. Zostaniesz wylogowany."
|
my-token-regenerated: "Twój token został wygenerowany. Zostaniesz wylogowany."
|
||||||
|
i-like-sushi: "Wolę sushi od puddingu"
|
||||||
|
show-reversi-board-labels: "Pokazuj podpisy wierszy i kolumn w Reversi"
|
||||||
|
reversi:
|
||||||
|
drawn: "Remis"
|
||||||
|
my-turn: "Twoja kolej"
|
||||||
|
opponent-turn: "Kolej na przeciwnika"
|
||||||
|
turn-of: "Kolej na {}"
|
||||||
|
past-turn-of: "Kolej {}"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "Zegar analogowy"
|
||||||
|
profile: "Profil"
|
||||||
|
calendar: "Kalendarz"
|
||||||
|
timemachine: "Kalendarz (wehikuł czasu)"
|
||||||
|
activity: "Aktywność"
|
||||||
|
rss: "Czytnik RSS"
|
||||||
|
memo: "Notatka"
|
||||||
|
trends: "Na czasie"
|
||||||
|
photo-stream: "Photostream"
|
||||||
|
posts-monitor: "Wykres wpisów"
|
||||||
|
slideshow: "Pokaz slajdów"
|
||||||
|
version: "Wersja"
|
||||||
|
broadcast: "Transmisja"
|
||||||
|
notifications: "Powiadomienia"
|
||||||
|
users: "Polecani użytkownicy"
|
||||||
|
polls: "Ankiety"
|
||||||
|
post-form: "Formularz tworzenia"
|
||||||
|
messaging: "Wiadomości"
|
||||||
|
server: "Informacje o serwerze"
|
||||||
|
donation: "Dotacje"
|
||||||
|
nav: "Nawigacja"
|
||||||
|
tips: "Wskazówki"
|
||||||
|
hashtags: "Hashtagi"
|
||||||
|
deck:
|
||||||
|
widgets: "Widżety"
|
||||||
|
home: "Strona główna"
|
||||||
|
local: "Lokalne"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "Globalne"
|
||||||
|
notifications: "Powiadomienia"
|
||||||
|
list: "Listy"
|
||||||
|
swap-left: "Przesuń w lewo"
|
||||||
|
swap-right: "Przesuń w prawo"
|
||||||
|
swap-up: "Przenieś w górę"
|
||||||
|
swap-down: "Przenieś w dół"
|
||||||
|
remove: "Usuń"
|
||||||
|
add-column: "Dodaj kolumnę"
|
||||||
|
rename: "Zmień nazwę"
|
||||||
|
stack-left: "Przypnij do lewej"
|
||||||
|
pop-right: "Odepnij w prawo"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "Nie udało się połączyć z serwerem"
|
title: "Nie udało się połączyć z serwerem"
|
||||||
description: "Wystąpił problem z Twoim połączeniem z Internetem, lub z serwerem. {Spróbuj ponownie} wkrótce."
|
description: "Wystąpił problem z Twoim połączeniem z Internetem, lub z serwerem. {Spróbuj ponownie} wkrótce."
|
||||||
@@ -92,7 +152,9 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "Dodaj do ulubionych"
|
favorite: "Dodaj do ulubionych"
|
||||||
pin: "Przypnij do profilu"
|
pin: "Przypnij do profilu"
|
||||||
remote: "投稿元で見る"
|
delete: "Usuń"
|
||||||
|
delete-confirm: "Czy na pewno chcesz usunąć ten wpis?"
|
||||||
|
remote: "Pokaż oryginał"
|
||||||
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"
|
||||||
@@ -101,11 +163,11 @@ common/views/components/poll.vue:
|
|||||||
show-result: "Pokaż wyniki"
|
show-result: "Pokaż wyniki"
|
||||||
voted: "Zagłosowano"
|
voted: "Zagłosowano"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "Musisz wprowadzić dwie lub więcej opcji."
|
no-only-one-choice: "Musisz wprowadzić przynajmniej dwie opcje."
|
||||||
choice-n: "Opcja {}"
|
choice-n: "Opcja {}"
|
||||||
remove: "Usuń tą opcję"
|
remove: "Usuń tą opcję"
|
||||||
add: "+ Dodaj opcję"
|
add: "+ Dodaj opcję"
|
||||||
destroy: "Usuń ankietę"
|
destroy: "Usuń tę ankietę"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "Wybierz reakcję"
|
choose-reaction: "Wybierz reakcję"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "Rozłącz"
|
disconnect: "Rozłącz"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "Oczekiwanie"
|
waiting: "Oczekiwanie"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "Publiczny"
|
||||||
|
home: "Lokalny"
|
||||||
|
home-desc: "Widoczny tylko na tej instancji"
|
||||||
|
followers: "Dla śledzących"
|
||||||
|
followers-desc: "Widoczny tylko dla osób, które Cię śledzą"
|
||||||
|
specified: "Bezpośredni"
|
||||||
|
specified-desc: "Tylko dla określonych użytkowników"
|
||||||
|
private: "Prywatny"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "Sprawdzanie"
|
fetching: "Sprawdzanie"
|
||||||
no-broadcasts: "Brak transmisji"
|
no-broadcasts: "Brak transmisji"
|
||||||
@@ -162,18 +233,26 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "Photostream"
|
title: "Photostream"
|
||||||
no-photos: "Brak zdjęć"
|
no-photos: "Brak zdjęć"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "Wykres wpisów"
|
||||||
|
toggle: "Przełącz widok"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "Hashtagi"
|
||||||
|
count: "Wspomniany przez {} użytkowników"
|
||||||
|
empty: "Brak popularnych hashtagów"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "Informacje o serwerze"
|
title: "Informacje o serwerze"
|
||||||
toggle: "Przełącz widok"
|
toggle: "Przełącz widok"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "Publiczny"
|
title: "Notatka"
|
||||||
home: "Lokalny"
|
memo: "Napisz tutaj!"
|
||||||
home-desc: "Widoczny tylko na tej instancji"
|
save: "Zapisz"
|
||||||
followers: "Dla śledzących"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "Widoczny tylko dla osób, które Cię śledzą"
|
signed-in-as: "Zalogowany jako {}"
|
||||||
specified: "Bezpośredni"
|
following: "Śledzisz"
|
||||||
specified-desc: "Tylko dla określonych użytkowników"
|
follow: "Śledź"
|
||||||
private: "Prywatny"
|
request-pending: "Oczekiwanie na pozwolenie"
|
||||||
|
follow-request: "Poproś o śledzenie"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Czarny … Łącznie"
|
total: "Czarny … Łącznie"
|
||||||
notes: "Niebieski … Wpisy"
|
notes: "Niebieski … Wpisy"
|
||||||
@@ -235,7 +314,7 @@ desktop/views/components/drive.nav-folder.vue:
|
|||||||
desktop/views/components/drive.vue:
|
desktop/views/components/drive.vue:
|
||||||
search: "Szukaj"
|
search: "Szukaj"
|
||||||
load-more: "Załaduj więcej"
|
load-more: "Załaduj więcej"
|
||||||
empty-draghover: "ドロップですか?いいですよ、ボクはカワイイですからね"
|
empty-draghover: "Przeciągnij tutaj!"
|
||||||
empty-drive: "Twój dysk jest pusty"
|
empty-drive: "Twój dysk jest pusty"
|
||||||
empty-drive-description: "Możesz wysłać plik klikając prawym przyciskiem myszy i wybierając \"Wyślij plik\" lub przeciągnąć plik i upuścić w tym oknie."
|
empty-drive-description: "Możesz wysłać plik klikając prawym przyciskiem myszy i wybierając \"Wyślij plik\" lub przeciągnąć plik i upuścić w tym oknie."
|
||||||
empty-folder: "Ten katalog jest posty"
|
empty-folder: "Ten katalog jest posty"
|
||||||
@@ -253,8 +332,10 @@ desktop/views/components/drive.vue:
|
|||||||
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/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "Przestań śledzić"
|
following: "Śledzisz"
|
||||||
follow: "Śledź"
|
follow: "Śledź"
|
||||||
|
request-pending: "Oczekiwanie na pozwolenie"
|
||||||
|
follow-request: "Poproś o śledzenie"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "Śledzący"
|
followers: "Śledzący"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
@@ -270,29 +351,10 @@ desktop/views/components/friends-maker.vue:
|
|||||||
refresh: "Więcej"
|
refresh: "Więcej"
|
||||||
close: "Zamknij"
|
close: "Zamknij"
|
||||||
desktop/views/components/game-window.vue:
|
desktop/views/components/game-window.vue:
|
||||||
game: "Othello"
|
game: "Reversi"
|
||||||
desktop/views/components/home.vue:
|
desktop/views/components/home.vue:
|
||||||
done: "Wyślij"
|
done: "Wyślij"
|
||||||
add-widget: "Dodaj widżet:"
|
add-widget: "Dodaj widżet:"
|
||||||
profile: "Profil"
|
|
||||||
calendar: "Kalendarz"
|
|
||||||
timemachine: "Kalendarz (wehikuł czasu)"
|
|
||||||
activity: "Aktywność"
|
|
||||||
rss: "Czytnik RSS"
|
|
||||||
trends: "Na czasie"
|
|
||||||
photostream: "Photostream"
|
|
||||||
slideshow: "Pokaz slajdów"
|
|
||||||
version: "Wersja"
|
|
||||||
broadcast: "Transmisja"
|
|
||||||
notifications: "Powiadomienia"
|
|
||||||
users: "Polecani użytkownicy"
|
|
||||||
polls: "Ankiety"
|
|
||||||
post-form: "Formularz tworzenia"
|
|
||||||
messaging: "Wiadomości"
|
|
||||||
server: "Informacje o serwerze"
|
|
||||||
donation: "Dotacje"
|
|
||||||
nav: "Nawigacja"
|
|
||||||
tips: "Wskazówki"
|
|
||||||
add: "Dodaj"
|
add: "Dodaj"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "Anuluj"
|
cancel: "Anuluj"
|
||||||
@@ -303,43 +365,44 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "Wiadomości"
|
title: "Wiadomości"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "Załaduj więcej konwersacji"
|
more: "Załaduj więcej konwersacji"
|
||||||
private: "(ten wpis jest prywatny)"
|
private: "ten wpis jest prywatny"
|
||||||
is-renote: "がRenote"
|
deleted: "ten wpis został usunięty"
|
||||||
|
reposted-by: "Udostępniono przez {}"
|
||||||
location: "Informacje o lokalizacji"
|
location: "Informacje o lokalizacji"
|
||||||
renote: "Przeredaguj"
|
renote: "Udostępnienie"
|
||||||
add-reaction: "Dodaj reakcję"
|
add-reaction: "Dodaj reakcję"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(ten wpis jest prywatny)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "Udostępniono przez {}"
|
reposted-by: "Udostępniono przez {}"
|
||||||
reply: "Odpowiedz"
|
reply: "Odpowiedz"
|
||||||
renote: "Przeredaguj"
|
renote: "Udostępnij"
|
||||||
add-reaction: "Dodaj reakcję"
|
add-reaction: "Dodaj reakcję"
|
||||||
detail: "Pokaż szczegóły"
|
detail: "Pokaż szczegóły"
|
||||||
|
private: "ten wpis jest prywatny"
|
||||||
|
deleted: "ten wpis został usunięty"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "Ładowanie nie powiodło się."
|
error: "Ładowanie nie powiodło się."
|
||||||
retry: "Spróbuj ponownie"
|
retry: "Spróbuj ponownie"
|
||||||
|
load-more: "Załaduj więcej"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "Więcej"
|
more: "Więcej"
|
||||||
empty: "Brak powiadomień"
|
empty: "Brak powiadomień"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "Co się dzieje?"
|
|
||||||
reply-placeholder: "Odpowiedz na ten wpis…"
|
reply-placeholder: "Odpowiedz na ten wpis…"
|
||||||
quote-placeholder: "Zacytuj ten wpis…"
|
quote-placeholder: "Zacytuj ten wpis…"
|
||||||
note: "Wyślij"
|
submit: "Wyślij"
|
||||||
reply: "Odpowiedz"
|
reply: "Odpowiedz"
|
||||||
renote: "Przeredaguj"
|
renote: "Udostępnienie"
|
||||||
posted: "Opublikowano!"
|
posted: "Opublikowano!"
|
||||||
replied: "Odpowiedziano!"
|
replied: "Odpowiedziano!"
|
||||||
reposted: "Udostępniono!"
|
reposted: "Udostępniono!"
|
||||||
note-failed: "Nie udało się wysłać"
|
note-failed: "Nie udało się wysłać"
|
||||||
reply-failed: "Nie udało się odpowiedzieć"
|
reply-failed: "Nie udało się odpowiedzieć"
|
||||||
renote-failed: "Nie udało się przeredagować"
|
renote-failed: "Nie udało się udostępnić"
|
||||||
posting: "Wysyłanie"
|
posting: "Wysyłanie"
|
||||||
attach-media-from-local: "Załącz zawartość multimedialną z komputera"
|
attach-media-from-local: "Załącz zawartość multimedialną z komputera"
|
||||||
attach-media-from-drive: "Załącz zawartość multimedialną z dysku"
|
attach-media-from-drive: "Załącz zawartość multimedialną z dysku"
|
||||||
attach-cancel: "Usuń załącznik"
|
attach-cancel: "Usuń załącznik"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "Utwórz ankietę"
|
create-poll: "Utwórz ankietę"
|
||||||
text-remain: "pozostałe znaki: {}"
|
text-remain: "pozostałe znaki: {}"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
@@ -352,12 +415,14 @@ desktop/views/components/progress-dialog.vue:
|
|||||||
desktop/views/components/renote-form.vue:
|
desktop/views/components/renote-form.vue:
|
||||||
quote: "Cytuj…"
|
quote: "Cytuj…"
|
||||||
cancel: "Anuluj"
|
cancel: "Anuluj"
|
||||||
renote: "Przeredaguj"
|
renote: "Udostępnij"
|
||||||
reposting: "Udostępnianie…"
|
reposting: "Udostępnianie…"
|
||||||
success: "Udostępniono!"
|
success: "Udostępniono!"
|
||||||
failure: "Nie udało się przeredagować"
|
failure: "Nie udało się udostępnić"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "Czy na pewno chcesz przeredagować ten wpis?"
|
title: "Czy na pewno chcesz udostępnić ten wpis?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "Ustawienia"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "Profil"
|
profile: "Profil"
|
||||||
notification: "Powiadomienia"
|
notification: "Powiadomienia"
|
||||||
@@ -380,13 +445,15 @@ desktop/views/components/settings.vue:
|
|||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
display: "Wygląd i wyświetlanie"
|
display: "Wygląd i wyświetlanie"
|
||||||
customize: "Dostosuj stronę główną"
|
customize: "Dostosuj stronę główną"
|
||||||
|
choose-wallpaper: "Wybierz tło"
|
||||||
|
delete-wallpaper: "Usuń tło"
|
||||||
dark-mode: "Tryb ciemny"
|
dark-mode: "Tryb ciemny"
|
||||||
circle-icons: "Używaj okrągłych ikon"
|
circle-icons: "Używaj okrągłych ikon"
|
||||||
gradient-window-header: "Używaj gradientów na pasku tytułu okna"
|
gradient-window-header: "Używaj gradientów na pasku tytułu okna"
|
||||||
post-form-on-timeline: "Wyświetlaj formularz tworzenia wpisu w górnej części osi czasu"
|
post-form-on-timeline: "Wyświetlaj formularz tworzenia wpisu w górnej części osi czasu"
|
||||||
show-reply-target: "Pokazuj cel odpowiedzi"
|
show-reply-target: "Pokazuj cel odpowiedzi"
|
||||||
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
show-my-renotes: "Pokazuj moje udostępnienia na osi czasu"
|
||||||
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
show-renoted-my-notes: "Pokazuj udostępnienia moich wpisów na osi czasu"
|
||||||
show-maps: "Automatycznie pokazuj mapę"
|
show-maps: "Automatycznie pokazuj mapę"
|
||||||
show-maps-desc: "Mapa będzie automatycznie rozwijana dla wpisów zawierających informacje o lokalizacji."
|
show-maps-desc: "Mapa będzie automatycznie rozwijana dla wpisów zawierających informacje o lokalizacji."
|
||||||
sound: "Dźwięk"
|
sound: "Dźwięk"
|
||||||
@@ -404,11 +471,11 @@ desktop/views/components/settings.vue:
|
|||||||
language-desc: "Aby zmiany zostały uwzględnione, odśwież stronę."
|
language-desc: "Aby zmiany zostały uwzględnione, odśwież stronę."
|
||||||
cache: "Pamięć podręczna"
|
cache: "Pamięć podręczna"
|
||||||
clean-cache: "Wyczyść"
|
clean-cache: "Wyczyść"
|
||||||
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
cache-warn: "Pamięć podręczna informacji o koncie/wpisów/odpowiedzi/wiadomości/ustawień przechowywanych w przeglądarce zostanie usunięta. Będziesz musiał odświeżyć stronę po wyczyszczeniu."
|
||||||
cache-cleared: "Wyczyszczono pamięć podręczną"
|
cache-cleared: "Wyczyszczono pamięć podręczną"
|
||||||
cache-cleared-desc: "Proszę odświeżyć stronę."
|
cache-cleared-desc: "Proszę odświeżyć stronę."
|
||||||
auto-watch: "投稿の自動ウォッチ"
|
auto-watch: "Automatycznie nasłuchuj"
|
||||||
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
|
auto-watch-desc: "Otrzymuj natychmiastowo informacje o wpisach/odpowiedziach/reakcjach."
|
||||||
about: "O Misskey"
|
about: "O Misskey"
|
||||||
operator: "Administrator instancji"
|
operator: "Administrator instancji"
|
||||||
update: "Aktualizacja Misskey"
|
update: "Aktualizacja Misskey"
|
||||||
@@ -430,7 +497,7 @@ desktop/views/components/settings.vue:
|
|||||||
experimental-desc: "Aktywowanie eksperymentalnych funkcji może spowodować niestabilność Misskey. Opcja ta jest przechowywana w przeglądarce."
|
experimental-desc: "Aktywowanie eksperymentalnych funkcji może spowodować niestabilność Misskey. Opcja ta jest przechowywana w przeglądarce."
|
||||||
tools: "Narzędzia"
|
tools: "Narzędzia"
|
||||||
task-manager: "Menedżer zadań"
|
task-manager: "Menedżer zadań"
|
||||||
third-parties: "サードパーティ"
|
third-parties: "Autorzy trzeci"
|
||||||
desktop/views/components/settings.2fa.vue:
|
desktop/views/components/settings.2fa.vue:
|
||||||
intro: "Jeżeli skonfigurujesz uwierzytelnianie dwuetapowe, aby zablokować się będziesz potrzebować (oprócz hasła) kodu ze skonfigurowanego urządzenia (np. smartfonu), co zwiększy bezpieczeństwo."
|
intro: "Jeżeli skonfigurujesz uwierzytelnianie dwuetapowe, aby zablokować się będziesz potrzebować (oprócz hasła) kodu ze skonfigurowanego urządzenia (np. smartfonu), co zwiększy bezpieczeństwo."
|
||||||
detail: "Zobacz szczegóły…"
|
detail: "Zobacz szczegóły…"
|
||||||
@@ -450,13 +517,13 @@ desktop/views/components/settings.2fa.vue:
|
|||||||
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."
|
||||||
desktop/views/components/settings.api.vue:
|
desktop/views/components/settings.api.vue:
|
||||||
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
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."
|
||||||
regeneration-of-token: "W przypadku wycieku tokenu, możesz wygenerować nowy."
|
regeneration-of-token: "W przypadku wycieku tokenu, możesz wygenerować nowy."
|
||||||
regenerate-token: "Wygeneruj nowy token"
|
regenerate-token: "Wygeneruj nowy token"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "Wprowadź hasło"
|
enter-password: "Wprowadź hasło"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "Brak zautoryzowanych aplikacji"
|
no-apps: "Brak zautoryzowanych aplikacji"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "Brak wyciszonych użytkowników"
|
no-users: "Brak wyciszonych użytkowników"
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "Opis"
|
description: "Opis"
|
||||||
birthday: "Data urodzenia"
|
birthday: "Data urodzenia"
|
||||||
save: "Aktualizuj profil"
|
save: "Aktualizuj profil"
|
||||||
is-bot: "このアカウントはBotです"
|
locked-account: "Zabezpiecz swoje konto"
|
||||||
is-cat: "このアカウントはCatです"
|
is-locked: "Uczyń wpis prywatnym"
|
||||||
|
other: "Inne"
|
||||||
|
is-bot: "To konto jest prowadzone przez bota"
|
||||||
|
is-cat: "To konto jest prowadzone przez kota"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "ten wpis jest prywatny"
|
||||||
media: "つのメディア"
|
deleted: "ten wpis został usunięty"
|
||||||
poll: "投票"
|
media-count: "{}zawartości multimedialnej"
|
||||||
|
poll: "Ankieta"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "Menedżer zadań"
|
title: "Menedżer zadań"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "Strona główna"
|
home: "Strona główna"
|
||||||
local: "Lokalne"
|
local: "Lokalne"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "Globalne"
|
global: "Globalne"
|
||||||
list: "Listy"
|
list: "Listy"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "Witaj ponownie,"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "Twój profil"
|
profile: "Twój profil"
|
||||||
drive: "Dysk"
|
drive: "Dysk"
|
||||||
favorites: "Ulubione"
|
favorites: "Ulubione"
|
||||||
lists: "Listy"
|
lists: "Listy"
|
||||||
customize: "Dostosuj"
|
follow-requests: "Prośby o śledzenie"
|
||||||
|
customize: "Dostosuj stronę główną"
|
||||||
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"
|
home: "Strona główna"
|
||||||
|
deck: "Talia"
|
||||||
messaging: "Wiadomości"
|
messaging: "Wiadomości"
|
||||||
game: "Gra"
|
game: "Gra"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "Utwórz nowy wpis"
|
post: "Utwórz nowy wpis"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "Szukaj"
|
placeholder: "Szukaj"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "Poproś o śledzenie"
|
||||||
|
accept: "Zatwierdź"
|
||||||
|
reject: "Odmów"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "Listy"
|
||||||
create-list: "Utwórz listę"
|
create-list: "Utwórz listę"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "Wpisy"
|
notes: "Wpisy"
|
||||||
@@ -519,16 +600,26 @@ desktop/views/components/users-list.vue:
|
|||||||
load-more: "Więcej"
|
load-more: "Więcej"
|
||||||
fetching: "Ładowanie…"
|
fetching: "Ładowanie…"
|
||||||
desktop/views/components/users-list-item.vue:
|
desktop/views/components/users-list-item.vue:
|
||||||
followed: "フォローされています"
|
followed: "Obserwuje Cię"
|
||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "Pop-out"
|
||||||
close: "閉じる"
|
close: "Zamknij"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "Tylko wpisy z zawartością multimedialną"
|
||||||
|
is-media-view: "Widok multimediów"
|
||||||
|
edit: "Opcje"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "Udostępniono przez {}"
|
||||||
|
private: "ten wpis jest prywatny"
|
||||||
|
deleted: "ten wpis został usunięty"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
signin: "ログイン"
|
about: "O Misskey"
|
||||||
signup: "新規登録"
|
gotit: "Rozumiem!"
|
||||||
signin-button: "やってる"
|
signin: "Zaloguj się"
|
||||||
signup-button: "やる"
|
signup: "Zarejestruj się"
|
||||||
timeline: "タイムライン"
|
signin-button: "Zaloguj się"
|
||||||
|
signup-button: "Zarejestruj się"
|
||||||
|
timeline: "Oś czasu"
|
||||||
desktop/views/pages/drive.vue:
|
desktop/views/pages/drive.vue:
|
||||||
title: "Dysk Misskey"
|
title: "Dysk Misskey"
|
||||||
desktop/views/pages/favorites.vue:
|
desktop/views/pages/favorites.vue:
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "Najbardziej aktywni"
|
title: "Najbardziej aktywni"
|
||||||
loading: "Ładowanie"
|
loading: "Ładowanie"
|
||||||
no-users: "Brak użytkowników"
|
no-users: "Brak użytkowników"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "To konto zostało zawieszone."
|
is-suspended: "To konto zostało zawieszone."
|
||||||
is-remote: "To jest użytkownik zdalnej instancji, informacje mogą nie być w pełni dokładne."
|
is-remote: "To jest użytkownik zdalnej instancji, informacje mogą nie być w pełni dokładne."
|
||||||
view-remote: "Wyświetl dokładne informacje"
|
view-remote: "Wyświetl dokładne informacje"
|
||||||
@@ -573,10 +664,15 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "Wycisz"
|
mute: "Wycisz"
|
||||||
muted: "Wyciszyłeś"
|
muted: "Wyciszyłeś"
|
||||||
unmute: "Cofnij wyciszenie"
|
unmute: "Cofnij wyciszenie"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "Wpisy"
|
||||||
|
following: "Śledzeni"
|
||||||
|
followers: "Śledzący"
|
||||||
|
is-bot: "To konto jest botem"
|
||||||
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: "Zawartość multimedialna"
|
with-media: "Multimedia"
|
||||||
empty: "Ten użytkownik nie umieścił jeszcze niczego."
|
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"
|
||||||
@@ -590,7 +686,6 @@ desktop/views/widgets/polls.vue:
|
|||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "Wpis"
|
title: "Wpis"
|
||||||
note: "Wpis"
|
note: "Wpis"
|
||||||
placeholder: "Co się dzieje?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "Naciśnij, aby zmienić baner"
|
update-banner: "Naciśnij, aby zmienić baner"
|
||||||
update-avatar: "Naciśnij, aby zmienić awatar"
|
update-avatar: "Naciśnij, aby zmienić awatar"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "Załaduj więcej"
|
load-more: "Załaduj więcej"
|
||||||
nothing-in-drive: "Pusto"
|
nothing-in-drive: "Pusto"
|
||||||
folder-is-empty: "Ten katalog jest pusty"
|
folder-is-empty: "Ten katalog jest pusty"
|
||||||
|
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."
|
||||||
|
folder-name: "Nazwa katalogu"
|
||||||
|
root-rename-alert: "Nie można zmienić nazwy katalogu głównego. Przejdź do katalogu, którego nazwę chcesz zmienić."
|
||||||
|
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ć"
|
||||||
|
uploading: "Rozpoczęto wysyłanie. Może to trochę potrwać."
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "Zmień nazwę"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "Wybierz plik"
|
select-file: "Wybierz plik"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "Hash (md5)"
|
hash: "Hash (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "Śledzisz"
|
||||||
follow: "Śledź"
|
follow: "Śledź"
|
||||||
unfollow: "Przestań śledzić"
|
request-pending: "Oczekiwanie na pozwolenie"
|
||||||
|
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:
|
||||||
reposted-by: "Udostępniono przez {}"
|
reposted-by: "Udostępniono przez {}"
|
||||||
|
more: "Rozwiń"
|
||||||
|
less: "Zwiń"
|
||||||
|
private: "ten wpis jest prywatny"
|
||||||
|
deleted: "ten wpis został usunięty"
|
||||||
|
location: "Informacje o lokalizacji"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "Odpowiedz"
|
reply: "Odpowiedz"
|
||||||
reaction: "Reakcja"
|
reaction: "Reakcja"
|
||||||
|
reposted-by: "Udostępniono przez {}"
|
||||||
|
private: "ten wpis jest prywatny"
|
||||||
|
deleted: "ten wpis został usunięty"
|
||||||
|
location: "Informacje o lokalizacji"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "kot"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "kot"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "Ładowanie nie powiodło się."
|
||||||
|
retry: "Spróbuj ponownie"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "Więcej"
|
more: "Więcej"
|
||||||
empty: "Brak powiadomień"
|
empty: "Brak powiadomień"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "Dodaj użytkownika"
|
||||||
submit: "Wyślij"
|
submit: "Wyślij"
|
||||||
reply: "Odpowiedz"
|
reply: "Odpowiedz"
|
||||||
renote: "Przeredaguj"
|
renote: "Udostępnij"
|
||||||
renote-placeholder: "Zacytuj wpis… (nieobowiązkowe)"
|
quote-placeholder: "Zacytuj ten wpis… (nieobowiązkowe)"
|
||||||
reply-placeholder: "Odpowiedź na ten wpis…"
|
reply-placeholder: "Odpowiedź na ten wpis…"
|
||||||
note-placeholder: "Co się dzieje?"
|
cw-placeholder: "Treść ostrzeżenia (opcjonalnie)"
|
||||||
|
location-alert: "Twoje urządzenie nie pozwala na przekazywanie informacji o lokalizacji"
|
||||||
|
error: "Błąd"
|
||||||
|
username-prompt: "Wprowadź nazwę użytkownika"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{} zawartości multimedialnej"
|
private: "ten wpis jest prywatny"
|
||||||
|
deleted: "ten wpis został usunięty"
|
||||||
|
media-count: "{}zawartości multimedialnej"
|
||||||
poll: "Ankieta"
|
poll: "Ankieta"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "Brak wpisów"
|
empty: "Brak wpisów"
|
||||||
load-more: "Więcej"
|
load-more: "Więcej"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "Strona główna"
|
timeline: "Oś czasu"
|
||||||
notifications: "Powiadomienia"
|
notifications: "Powiadomienia"
|
||||||
messaging: "Wiadomości"
|
messaging: "Wiadomości"
|
||||||
|
follow-requests: "Prośby o śledzenie"
|
||||||
search: "Szukaj"
|
search: "Szukaj"
|
||||||
drive: "Dysk"
|
drive: "Dysk"
|
||||||
|
favorites: "Ulubione"
|
||||||
|
user-lists: "Listy"
|
||||||
|
widgets: "Widżety"
|
||||||
|
game: "Gry"
|
||||||
|
darkmode: "Tryb ciemny"
|
||||||
settings: "Ustawienia"
|
settings: "Ustawienia"
|
||||||
about: "O Misskey"
|
about: "O Misskey"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "Wszyscy"
|
all: "Wszyscy"
|
||||||
known: "Znasz"
|
known: "Znasz"
|
||||||
load-more: "Więcej"
|
load-more: "Więcej"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "Ulubione"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "Listy"
|
||||||
|
enter-list-name: "Wprowadź nazwę listy"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "Dysk"
|
drive: "Dysk"
|
||||||
|
more: "Załaduj więcej"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "Śledzący {}"
|
followers-of: "Śledzący {}"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "Śledzeni przez {}"
|
following-of: "Śledzeni przez {}"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "Oś czasu"
|
home: "Strona główna"
|
||||||
|
local: "Lokalne"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "Globalne"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "Wiadomości"
|
messaging: "Wiadomości"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "Wiadomości"
|
messaging: "Wiadomości"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "Prośby o śledzenie"
|
||||||
|
accept: "Zatwierdź"
|
||||||
|
reject: "Odmów"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "Wpis"
|
title: "Wpis"
|
||||||
prev: "Poprzedni wpis"
|
prev: "Poprzedni wpis"
|
||||||
@@ -689,7 +846,7 @@ mobile/views/pages/settings/settings.profile.vue:
|
|||||||
birthday: "Data urodzenia"
|
birthday: "Data urodzenia"
|
||||||
avatar: "Awatar"
|
avatar: "Awatar"
|
||||||
banner: "Baner"
|
banner: "Baner"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "To konto jest prowadzone przez kota"
|
||||||
save: "Aktualizuj profil"
|
save: "Aktualizuj profil"
|
||||||
saved: "Pomyślnie zaktualizowano profil"
|
saved: "Pomyślnie zaktualizowano profil"
|
||||||
uploading: "Wysyłanie"
|
uploading: "Wysyłanie"
|
||||||
@@ -712,14 +869,16 @@ mobile/views/pages/settings.vue:
|
|||||||
circle-icons: "Używaj okrągłych ikon"
|
circle-icons: "Używaj okrągłych ikon"
|
||||||
timeline: "Oś czasu"
|
timeline: "Oś czasu"
|
||||||
show-reply-target: "Pokazuj cel odpowiedzi"
|
show-reply-target: "Pokazuj cel odpowiedzi"
|
||||||
show-my-renotes: "自分の行ったRenoteを表示する"
|
show-my-renotes: "Pokazuj moje udostępnienia"
|
||||||
show-renoted-my-notes: "Renoteされた自分の投稿を表示する"
|
show-renoted-my-notes: "Pokazuj udostępnienia moich wpisów"
|
||||||
post-style: "Styl wpisów"
|
post-style: "Styl wpisów"
|
||||||
post-style-standard: "Standardowy"
|
post-style-standard: "Standardowy"
|
||||||
post-style-smart: "スマート"
|
post-style-smart: "Inteligentny"
|
||||||
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ół"
|
||||||
disable-via-mobile: "Nie oznaczaj wpisów jako „wysłane z telefonu”"
|
disable-via-mobile: "Nie oznaczaj wpisów jako „wysłane z telefonu”"
|
||||||
|
load-raw-images: "Wyświetlaj załączone zdjęcia w wysokiej jakości"
|
||||||
|
load-remote-media: "Wyświetlaj zawartość multimedialną ze zdalnych serwerów"
|
||||||
twitter: "Połączenie z Twitterem"
|
twitter: "Połączenie z Twitterem"
|
||||||
twitter-connect: "Połącz z Twitterem"
|
twitter-connect: "Połącz z Twitterem"
|
||||||
twitter-reconnect: "Połącz ponownie"
|
twitter-reconnect: "Połącz ponownie"
|
||||||
@@ -742,7 +901,7 @@ mobile/views/pages/user.vue:
|
|||||||
notes: "Wpisy"
|
notes: "Wpisy"
|
||||||
overview: "Przegląd"
|
overview: "Przegląd"
|
||||||
timeline: "Oś czasu"
|
timeline: "Oś czasu"
|
||||||
media: "Zawartość multimedialna"
|
media: "Multimedia"
|
||||||
is-suspended: "To konto zostało zablokowane"
|
is-suspended: "To konto zostało zablokowane"
|
||||||
is-remote: "To jest użytkownik zdalnej instancji, informacje mogą nie być w pełni dokładne."
|
is-remote: "To jest użytkownik zdalnej instancji, informacje mogą nie być w pełni dokładne."
|
||||||
view-remote: "Wyświetl dokładne informacje"
|
view-remote: "Wyświetl dokładne informacje"
|
||||||
@@ -754,7 +913,7 @@ mobile/views/pages/user/home.vue:
|
|||||||
domains: "Domeny"
|
domains: "Domeny"
|
||||||
frequently-replied-users: "Często aktywni użytkownicy"
|
frequently-replied-users: "Często aktywni użytkownicy"
|
||||||
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:
|
mobile/views/pages/user/home.followers-you-know.vue:
|
||||||
loading: "Ładowanie"
|
loading: "Ładowanie"
|
||||||
no-users: "Brak użytkowników"
|
no-users: "Brak użytkowników"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "Nazwa"
|
name: "Nazwa"
|
||||||
type: "Rodzaj"
|
type: "Rodzaj"
|
||||||
optional: "Nieobowiązkowy"
|
|
||||||
description: "Opis"
|
description: "Opis"
|
||||||
yes: "Tak"
|
|
||||||
no: "Nie"
|
|
||||||
|
|||||||
941
locales/pt.yml
Normal file
@@ -0,0 +1,941 @@
|
|||||||
|
---
|
||||||
|
meta:
|
||||||
|
lang: "Português"
|
||||||
|
divider: ""
|
||||||
|
common:
|
||||||
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
|
time:
|
||||||
|
unknown: "なぞのじかん"
|
||||||
|
future: "未来"
|
||||||
|
just_now: "たった今"
|
||||||
|
seconds_ago: "{}秒前"
|
||||||
|
minutes_ago: "{}分前"
|
||||||
|
hours_ago: "{}時間前"
|
||||||
|
days_ago: "{}日前"
|
||||||
|
weeks_ago: "{}週間前"
|
||||||
|
months_ago: "{}ヶ月前"
|
||||||
|
years_ago: "{}年前"
|
||||||
|
weekday-short:
|
||||||
|
sunday: "日"
|
||||||
|
monday: "月"
|
||||||
|
tuesday: "火"
|
||||||
|
wednesday: "水"
|
||||||
|
thursday: "木"
|
||||||
|
friday: "金"
|
||||||
|
saturday: "土"
|
||||||
|
reactions:
|
||||||
|
like: "いいね"
|
||||||
|
love: "しゅき"
|
||||||
|
laugh: "笑"
|
||||||
|
hmm: "ふぅ~む"
|
||||||
|
surprise: "わお"
|
||||||
|
congrats: "おめでとう"
|
||||||
|
angry: "おこ"
|
||||||
|
confused: "こまこまのこまり"
|
||||||
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
search: "検索"
|
||||||
|
delete: "削除"
|
||||||
|
loading: "読み込み中"
|
||||||
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
|
common/views/components/connect-failed.vue:
|
||||||
|
title: "サーバーに接続できません"
|
||||||
|
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
||||||
|
thanks: "いつもMisskeyをご利用いただきありがとうございます。"
|
||||||
|
troubleshoot: "トラブルシュート"
|
||||||
|
common/views/components/connect-failed.troubleshooter.vue:
|
||||||
|
title: "トラブルシューティング"
|
||||||
|
network: "ネットワーク接続"
|
||||||
|
checking-network: "ネットワーク接続を確認中"
|
||||||
|
internet: "インターネット接続"
|
||||||
|
checking-internet: "インターネット接続を確認中"
|
||||||
|
server: "サーバー接続"
|
||||||
|
checking-server: "サーバー接続を確認中"
|
||||||
|
finding: "問題を調べています"
|
||||||
|
no-network: "ネットワークに接続されていません"
|
||||||
|
no-network-desc: "お使いのPCのネットワーク接続が正常か確認してください。"
|
||||||
|
no-internet: "インターネットに接続されていません"
|
||||||
|
no-internet-desc: "ネットワークには接続されていますが、インターネットには接続されていないようです。お使いのPCのインターネット接続が正常か確認してください。"
|
||||||
|
no-server: "Misskeyのサーバーに接続できません"
|
||||||
|
no-server-desc: "お使いのPCのインターネット接続は正常ですが、Misskeyのサーバーには接続できませんでした。サーバーがダウンまたはメンテナンスしている可能性があるので、しばらくしてから再度御アクセスください。"
|
||||||
|
success: "Misskeyのサーバーに接続できました"
|
||||||
|
success-desc: "正常に接続できるようです。ページを再度読み込みしてください。"
|
||||||
|
flush: "キャッシュの削除"
|
||||||
|
set-version: "バージョン指定"
|
||||||
|
common/views/components/messaging.vue:
|
||||||
|
search-user: "ユーザーを探す"
|
||||||
|
you: "あなた"
|
||||||
|
no-history: "履歴はありません"
|
||||||
|
common/views/components/messaging-room.vue:
|
||||||
|
empty: "このユーザーと話したことはありません"
|
||||||
|
more: "もっと読む"
|
||||||
|
no-history: "これより過去の履歴はありません"
|
||||||
|
resize-form: "ドラッグしてフォームの広さを調整"
|
||||||
|
new-message: "新しいメッセージがあります"
|
||||||
|
common/views/components/messaging-room.form.vue:
|
||||||
|
input-message-here: "ここにメッセージを入力"
|
||||||
|
send: "送信"
|
||||||
|
attach-from-local: "PCからファイルを添付する"
|
||||||
|
attach-from-drive: "ドライブからファイルを添付する"
|
||||||
|
common/views/components/messaging-room.message.vue:
|
||||||
|
is-read: "既読"
|
||||||
|
deleted: "このメッセージは削除されました"
|
||||||
|
common/views/components/nav.vue:
|
||||||
|
about: "Misskeyについて"
|
||||||
|
stats: "統計"
|
||||||
|
status: "ステータス"
|
||||||
|
wiki: "Wiki"
|
||||||
|
donors: "ドナー"
|
||||||
|
repository: "リポジトリ"
|
||||||
|
develop: "開発者"
|
||||||
|
feedback: "フィードバック"
|
||||||
|
common/views/components/note-menu.vue:
|
||||||
|
favorite: "お気に入り"
|
||||||
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
|
remote: "投稿元で見る"
|
||||||
|
common/views/components/poll.vue:
|
||||||
|
vote-to: "「{}」に投票する"
|
||||||
|
vote-count: "{}票"
|
||||||
|
total-users: "{}人が投票"
|
||||||
|
vote: "投票する"
|
||||||
|
show-result: "結果を見る"
|
||||||
|
voted: "投票済み"
|
||||||
|
common/views/components/poll-editor.vue:
|
||||||
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
|
choice-n: "選択肢{}"
|
||||||
|
remove: "この選択肢を削除"
|
||||||
|
add: "+選択肢を追加"
|
||||||
|
destroy: "アンケートを破棄"
|
||||||
|
common/views/components/reaction-picker.vue:
|
||||||
|
choose-reaction: "リアクションを選択"
|
||||||
|
common/views/components/signin.vue:
|
||||||
|
username: "ユーザー名"
|
||||||
|
password: "パスワード"
|
||||||
|
token: "トークン"
|
||||||
|
signing-in: "やってます..."
|
||||||
|
signin: "サインイン"
|
||||||
|
common/views/components/signup.vue:
|
||||||
|
username: "ユーザー名"
|
||||||
|
checking: "確認しています..."
|
||||||
|
available: "利用できます"
|
||||||
|
unavailable: "既に利用されています"
|
||||||
|
error: "通信エラー"
|
||||||
|
invalid-format: "a~z、A~Z、0~9、_が使えます"
|
||||||
|
too-short: "1文字以上でお願いします!"
|
||||||
|
too-long: "20文字以内でお願いします"
|
||||||
|
password: "パスワード"
|
||||||
|
password-placeholder: "8文字以上を推奨します"
|
||||||
|
weak-password: "弱いパスワード"
|
||||||
|
normal-password: "まあまあのパスワード"
|
||||||
|
strong-password: "強いパスワード"
|
||||||
|
retype: "再入力"
|
||||||
|
retype-placeholder: "確認のため再入力してください"
|
||||||
|
password-matched: "確認されました"
|
||||||
|
password-not-matched: "一致していません"
|
||||||
|
recaptcha: "認証"
|
||||||
|
create: "アカウント作成"
|
||||||
|
some-error: "何らかの原因によりアカウントの作成に失敗しました。再度お試しください。"
|
||||||
|
common/views/components/special-message.vue:
|
||||||
|
new-year: "Happy New Year!"
|
||||||
|
christmas: "Merry Christmas!"
|
||||||
|
common/views/components/stream-indicator.vue:
|
||||||
|
connecting: "接続中"
|
||||||
|
reconnecting: "再接続中"
|
||||||
|
connected: "接続完了"
|
||||||
|
common/views/components/twitter-setting.vue:
|
||||||
|
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。"
|
||||||
|
connected-to: "次のTwitterアカウントに接続されています"
|
||||||
|
detail: "詳細..."
|
||||||
|
reconnect: "再接続する"
|
||||||
|
connect: "Twitterと接続する"
|
||||||
|
disconnect: "切断する"
|
||||||
|
common/views/components/uploader.vue:
|
||||||
|
waiting: "待機中"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
|
common/views/widgets/broadcast.vue:
|
||||||
|
fetching: "確認中"
|
||||||
|
no-broadcasts: "お知らせはありません"
|
||||||
|
have-a-nice-day: "良い一日を!"
|
||||||
|
next: "次"
|
||||||
|
common/views/widgets/donation.vue:
|
||||||
|
title: "寄付のお願い"
|
||||||
|
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
|
||||||
|
common/views/widgets/photo-stream.vue:
|
||||||
|
title: "フォトストリーム"
|
||||||
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
|
common/views/widgets/server.vue:
|
||||||
|
title: "サーバー情報"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/memo.vue:
|
||||||
|
title: "付箋"
|
||||||
|
memo: "ここに書いて!"
|
||||||
|
save: "保存"
|
||||||
|
common/views/pages/follow.vue:
|
||||||
|
signed-in-as: "{}としてサインイン中"
|
||||||
|
following: "フォロー中"
|
||||||
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
desktop/views/components/activity.chart.vue:
|
||||||
|
total: "Black ... Total"
|
||||||
|
notes: "Blue ... Notes"
|
||||||
|
replies: "Red ... Replies"
|
||||||
|
renotes: "Green ... Renotes"
|
||||||
|
desktop/views/components/activity.vue:
|
||||||
|
title: "アクティビティ"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
desktop/views/components/calendar.vue:
|
||||||
|
title: "{1}年 {2}月"
|
||||||
|
prev: "前の月"
|
||||||
|
next: "次の月"
|
||||||
|
go: "クリックして時間遡行"
|
||||||
|
desktop/views/components/choose-file-from-drive-window.vue:
|
||||||
|
choose-file: "ファイル選択中"
|
||||||
|
upload: "PCからドライブにファイルをアップロード"
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
choose-prompt: "ファイルを選択"
|
||||||
|
desktop/views/components/choose-folder-from-drive-window.vue:
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
choose-prompt: "フォルダを選択"
|
||||||
|
desktop/views/components/crop-window.vue:
|
||||||
|
skip: "クロップをスキップ"
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
desktop/views/components/drive-window.vue:
|
||||||
|
used: "使用中"
|
||||||
|
drive: "ドライブ"
|
||||||
|
desktop/views/components/drive.file.vue:
|
||||||
|
avatar: "アイコン"
|
||||||
|
banner: "バナー"
|
||||||
|
contextmenu:
|
||||||
|
rename: "名前を変更"
|
||||||
|
copy-url: "URLをコピー"
|
||||||
|
download: "ダウンロード"
|
||||||
|
else-files: "その他..."
|
||||||
|
set-as-avatar: "アイコンに設定"
|
||||||
|
set-as-banner: "バナーに設定"
|
||||||
|
open-in-app: "アプリで開く"
|
||||||
|
add-app: "アプリを追加"
|
||||||
|
rename-file: "ファイル名の変更"
|
||||||
|
input-new-file-name: "新しいファイル名を入力してください"
|
||||||
|
copied: "コピー完了"
|
||||||
|
copied-url-to-clipboard: "URLをクリップボードにコピーしました"
|
||||||
|
desktop/views/components/drive.folder.vue:
|
||||||
|
unable-to-process: "操作を完了できません"
|
||||||
|
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
||||||
|
unhandled-error: "不明なエラー"
|
||||||
|
contextmenu:
|
||||||
|
move-to-this-folder: "このフォルダへ移動"
|
||||||
|
show-in-new-window: "新しいウィンドウで表示"
|
||||||
|
rename: "名前を変更"
|
||||||
|
rename-folder: "フォルダ名の変更"
|
||||||
|
input-new-folder-name: "新しいフォルダ名を入力してください"
|
||||||
|
desktop/views/components/drive.nav-folder.vue:
|
||||||
|
drive: "ドライブ"
|
||||||
|
desktop/views/components/drive.vue:
|
||||||
|
search: "検索"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
empty-draghover: "ドロップですか?いいですよ、ボクはカワイイですからね"
|
||||||
|
empty-drive: "ドライブには何もありません。"
|
||||||
|
empty-drive-description: "右クリックして「ファイルをアップロード」を選んだり、ファイルをドラッグ&ドロップすることでもアップロードできます。"
|
||||||
|
empty-folder: "このフォルダーは空です"
|
||||||
|
unable-to-process: "操作を完了できません"
|
||||||
|
circular-reference-detected: "移動先のフォルダーは、移動するフォルダーのサブフォルダーです。"
|
||||||
|
unhandled-error: "不明なエラー"
|
||||||
|
url-upload: "URLアップロード"
|
||||||
|
url-of-file: "アップロードしたいファイルのURL"
|
||||||
|
url-upload-requested: "アップロードをリクエストしました"
|
||||||
|
may-take-time: "アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
create-folder: "フォルダー作成"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
contextmenu:
|
||||||
|
create-folder: "フォルダーを作成"
|
||||||
|
upload: "ファイルをアップロード"
|
||||||
|
url-upload: "URLからアップロード"
|
||||||
|
desktop/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
desktop/views/components/followers-window.vue:
|
||||||
|
followers: "{} のフォロワー"
|
||||||
|
desktop/views/components/followers.vue:
|
||||||
|
empty: "フォロワーはいないようです。"
|
||||||
|
desktop/views/components/following-window.vue:
|
||||||
|
following: "{} のフォロー"
|
||||||
|
desktop/views/components/following.vue:
|
||||||
|
empty: "フォロー中のユーザーはいないようです。"
|
||||||
|
desktop/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー:"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
|
desktop/views/components/game-window.vue:
|
||||||
|
game: "リバーシ"
|
||||||
|
desktop/views/components/home.vue:
|
||||||
|
done: "完了"
|
||||||
|
add-widget: "ウィジェットを追加:"
|
||||||
|
add: "追加"
|
||||||
|
desktop/views/input-dialog.vue:
|
||||||
|
cancel: "キャンセル"
|
||||||
|
ok: "決定"
|
||||||
|
desktop/views/components/messaging-room-window.vue:
|
||||||
|
title: "メッセージ:"
|
||||||
|
desktop/views/components/messaging-window.vue:
|
||||||
|
title: "メッセージ"
|
||||||
|
desktop/views/components/note-detail.vue:
|
||||||
|
more: "会話をもっと読み込む"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
location: "位置情報"
|
||||||
|
renote: "Renote"
|
||||||
|
add-reaction: "リアクション"
|
||||||
|
desktop/views/components/notes.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
reply: "返信"
|
||||||
|
renote: "Renote"
|
||||||
|
add-reaction: "リアクション"
|
||||||
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
desktop/views/components/notes.vue:
|
||||||
|
error: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
desktop/views/components/notifications.vue:
|
||||||
|
more: "もっと見る"
|
||||||
|
empty: "ありません!"
|
||||||
|
desktop/views/components/post-form.vue:
|
||||||
|
reply-placeholder: "この投稿への返信..."
|
||||||
|
quote-placeholder: "この投稿を引用..."
|
||||||
|
submit: "投稿"
|
||||||
|
reply: "返信"
|
||||||
|
renote: "Renote"
|
||||||
|
posted: "投稿しました!"
|
||||||
|
replied: "返信しました!"
|
||||||
|
reposted: "Renoteしました!"
|
||||||
|
note-failed: "投稿に失敗しました"
|
||||||
|
reply-failed: "返信に失敗しました"
|
||||||
|
renote-failed: "Renoteに失敗しました"
|
||||||
|
posting: "投稿中"
|
||||||
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
|
attach-cancel: "添付取り消し"
|
||||||
|
insert-a-kao: "v('ω')v"
|
||||||
|
create-poll: "アンケートを作成"
|
||||||
|
text-remain: "残り{}文字"
|
||||||
|
desktop/views/components/post-form-window.vue:
|
||||||
|
note: "新規投稿"
|
||||||
|
reply: "返信"
|
||||||
|
attaches: "添付: {}メディア"
|
||||||
|
uploading-media: "{}個のメディアをアップロード中"
|
||||||
|
desktop/views/components/progress-dialog.vue:
|
||||||
|
waiting: "待機中"
|
||||||
|
desktop/views/components/renote-form.vue:
|
||||||
|
quote: "引用する..."
|
||||||
|
cancel: "キャンセル"
|
||||||
|
renote: "Renote"
|
||||||
|
reposting: "しています..."
|
||||||
|
success: "Renoteしました!"
|
||||||
|
failure: "Renoteに失敗しました"
|
||||||
|
desktop/views/components/renote-form-window.vue:
|
||||||
|
title: "この投稿をRenoteしますか?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
|
desktop/views/components/settings.vue:
|
||||||
|
profile: "プロフィール"
|
||||||
|
notification: "通知"
|
||||||
|
apps: "アプリ"
|
||||||
|
mute: "ミュート"
|
||||||
|
drive: "ドライブ"
|
||||||
|
security: "セキュリティ"
|
||||||
|
signin: "サインイン履歴"
|
||||||
|
password: "パスワード"
|
||||||
|
2fa: "二段階認証"
|
||||||
|
other: "その他"
|
||||||
|
license: "ライセンス"
|
||||||
|
behaviour: "動作"
|
||||||
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
fetch-on-scroll-desc: "ページを下までスクロールしたときに自動で追加のコンテンツを読み込みます。"
|
||||||
|
auto-popout: "ウィンドウの自動ポップアウト"
|
||||||
|
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
|
||||||
|
advanced: "詳細設定"
|
||||||
|
api-via-stream: "ストリームを経由したAPIリクエスト"
|
||||||
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
|
display: "デザインと表示"
|
||||||
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
|
dark-mode: "ダークモード"
|
||||||
|
circle-icons: "円形のアイコンを使用"
|
||||||
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
|
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
|
||||||
|
show-reply-target: "リプライ先を表示する"
|
||||||
|
show-my-renotes: "自分の行ったRenoteをタイムラインに表示する"
|
||||||
|
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
|
||||||
|
show-maps: "マップの自動展開"
|
||||||
|
show-maps-desc: "位置情報が添付された投稿のマップを自動的に展開します。"
|
||||||
|
sound: "サウンド"
|
||||||
|
enable-sounds: "サウンドを有効にする"
|
||||||
|
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
|
||||||
|
volume: "ボリューム"
|
||||||
|
test: "テスト"
|
||||||
|
mobile: "モバイル"
|
||||||
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
language: "言語"
|
||||||
|
pick-language: "言語を選択"
|
||||||
|
recommended: "推奨"
|
||||||
|
auto: "自動"
|
||||||
|
specify-language: "言語を指定"
|
||||||
|
language-desc: "変更はページの再度読み込み後に反映されます。"
|
||||||
|
cache: "キャッシュ"
|
||||||
|
clean-cache: "クリーンアップ"
|
||||||
|
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
|
||||||
|
cache-cleared: "キャッシュを削除しました"
|
||||||
|
cache-cleared-desc: "ページを再度読み込みしてください。"
|
||||||
|
auto-watch: "投稿の自動ウォッチ"
|
||||||
|
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
|
||||||
|
about: "Misskeyについて"
|
||||||
|
operator: "このサーバーの運営者"
|
||||||
|
update: "Misskey Update"
|
||||||
|
version: "バージョン:"
|
||||||
|
latest-version: "最新のバージョン:"
|
||||||
|
update-checking: "アップデートを確認中"
|
||||||
|
do-update: "アップデートを確認"
|
||||||
|
update-settings: "詳細設定"
|
||||||
|
prevent-update: "アップデートを延期する(非推奨)"
|
||||||
|
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。"
|
||||||
|
no-updates: "利用可能な更新はありません"
|
||||||
|
no-updates-desc: "お使いのMisskeyは最新です。"
|
||||||
|
update-available: "新しいバージョンが利用可能です"
|
||||||
|
update-available-desc: "ページを再度読み込みすると更新が適用されます。"
|
||||||
|
advanced-settings: "高度な設定"
|
||||||
|
debug-mode: "デバッグモードを有効にする"
|
||||||
|
debug-mode-desc: "この設定はブラウザに記憶されます。"
|
||||||
|
experimental: "実験的機能を有効にする"
|
||||||
|
experimental-desc: "実験的機能を有効にするとMisskeyの動作が不安定になる可能性があります。この設定はブラウザに記憶されます。"
|
||||||
|
tools: "ツール"
|
||||||
|
task-manager: "タスクマネージャ"
|
||||||
|
third-parties: "サードパーティ"
|
||||||
|
desktop/views/components/settings.2fa.vue:
|
||||||
|
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
|
||||||
|
detail: "詳細..."
|
||||||
|
url: "https://www.google.co.jp/intl/ja/landing/2step/"
|
||||||
|
caution: "登録したデバイスを紛失するなどした場合、Misskeyにサインインできなくなりますのでご注意ください。"
|
||||||
|
register: "デバイスを登録する"
|
||||||
|
already-registered: "既に設定は完了しています。"
|
||||||
|
unregister: "設定を解除"
|
||||||
|
unregistered: "二段階認証が無効になりました。"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
|
||||||
|
howtoinstall: "インストール方法はこちら"
|
||||||
|
scan: "次に、表示されているQRコードをスキャンします:"
|
||||||
|
done: "お使いのデバイスに表示されているトークンを入力して完了します:"
|
||||||
|
submit: "完了"
|
||||||
|
success: "設定が完了しました!"
|
||||||
|
failed: "設定に失敗しました。トークンに誤りがないかご確認ください。"
|
||||||
|
info: "次回サインインからは、同様にパスワードに加えてデバイスに表示されているトークンを入力します。"
|
||||||
|
desktop/views/components/settings.api.vue:
|
||||||
|
intro: "APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。"
|
||||||
|
caution: "アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。"
|
||||||
|
regeneration-of-token: "万が一このトークンが漏れたりその可能性がある場合はトークンを再生成できます。"
|
||||||
|
regenerate-token: "トークンを再生成"
|
||||||
|
token: "Token:"
|
||||||
|
enter-password: "パスワードを入力してください"
|
||||||
|
desktop/views/components/settings.apps.vue:
|
||||||
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
|
desktop/views/components/settings.mute.vue:
|
||||||
|
no-users: "ミュートしているユーザーはいません"
|
||||||
|
desktop/views/components/settings.password.vue:
|
||||||
|
reset: "パスワードを変更する"
|
||||||
|
enter-current-password: "現在のパスワードを入力してください"
|
||||||
|
enter-new-password: "新しいパスワードを入力してください"
|
||||||
|
enter-new-password-again: "もう一度新しいパスワードを入力してください"
|
||||||
|
not-match: "新しいパスワードが一致しません"
|
||||||
|
changed: "パスワードを変更しました"
|
||||||
|
desktop/views/components/settings.profile.vue:
|
||||||
|
avatar: "アイコン"
|
||||||
|
choice-avatar: "画像を選択"
|
||||||
|
name: "名前"
|
||||||
|
location: "場所"
|
||||||
|
description: "自己紹介"
|
||||||
|
birthday: "誕生日"
|
||||||
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
|
is-cat: "このアカウントはCatです"
|
||||||
|
desktop/views/components/sub-note-content.vue:
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
|
desktop/views/components/taskmanager.vue:
|
||||||
|
title: "タスクマネージャ"
|
||||||
|
desktop/views/components/timeline.vue:
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
|
desktop/views/components/ui.header.account.vue:
|
||||||
|
profile: "プロフィール"
|
||||||
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
lists: "リスト"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
|
settings: "設定"
|
||||||
|
signout: "サインアウト"
|
||||||
|
dark: "闇に飲まれる"
|
||||||
|
desktop/views/components/ui.header.nav.vue:
|
||||||
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
game: "ゲーム"
|
||||||
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
|
title: "通知"
|
||||||
|
desktop/views/components/ui.header.post.vue:
|
||||||
|
post: "新規投稿"
|
||||||
|
desktop/views/components/ui.header.search.vue:
|
||||||
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
|
create-list: "リストを作成"
|
||||||
|
desktop/views/components/user-preview.vue:
|
||||||
|
notes: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
desktop/views/components/users-list.vue:
|
||||||
|
all: "すべて"
|
||||||
|
iknow: "知り合い"
|
||||||
|
load-more: "もっと"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
desktop/views/components/users-list-item.vue:
|
||||||
|
followed: "フォローされています"
|
||||||
|
desktop/views/components/window.vue:
|
||||||
|
popout: "ポップアウト"
|
||||||
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
|
signin: "ログイン"
|
||||||
|
signup: "新規登録"
|
||||||
|
signin-button: "やってる"
|
||||||
|
signup-button: "やる"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
desktop/views/pages/drive.vue:
|
||||||
|
title: "Misskey Drive"
|
||||||
|
desktop/views/pages/favorites.vue:
|
||||||
|
more: "さらに読み込む"
|
||||||
|
desktop/views/pages/home-customize.vue:
|
||||||
|
title: "ホームのカスタマイズ"
|
||||||
|
desktop/views/pages/note.vue:
|
||||||
|
prev: "前の投稿"
|
||||||
|
next: "次の投稿"
|
||||||
|
desktop/views/pages/selectdrive.vue:
|
||||||
|
title: "ファイルを選択してください"
|
||||||
|
ok: "決定"
|
||||||
|
cancel: "キャンセル"
|
||||||
|
upload: "PCからドライブにファイルをアップロード"
|
||||||
|
desktop/views/pages/user-list.users.vue:
|
||||||
|
users: "ユーザー"
|
||||||
|
add-user: "ユーザーを追加"
|
||||||
|
username: "ユーザー名"
|
||||||
|
desktop/views/pages/user/user.followers-you-know.vue:
|
||||||
|
title: "知り合いのフォロワー"
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "知り合いのフォロワーはいません"
|
||||||
|
desktop/views/pages/user/user.friends.vue:
|
||||||
|
title: "よく話すユーザー"
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "よく話すユーザーはいません"
|
||||||
|
desktop/views/pages/user/user.vue:
|
||||||
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
|
view-remote: "正確な情報を見る"
|
||||||
|
desktop/views/pages/user/user.home.vue:
|
||||||
|
last-used-at: "最終アクセス"
|
||||||
|
desktop/views/pages/user/user.photos.vue:
|
||||||
|
title: "フォト"
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-photos: "写真はありません"
|
||||||
|
desktop/views/pages/user/user.profile.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
|
stalk: "ストークする"
|
||||||
|
stalking: "ストーキングしています"
|
||||||
|
unstalk: "ストーク解除"
|
||||||
|
mute: "ミュートする"
|
||||||
|
muted: "ミュートしています"
|
||||||
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
|
default: "投稿"
|
||||||
|
with-replies: "投稿と返信"
|
||||||
|
with-media: "メディア"
|
||||||
|
empty: "このユーザーはまだ何も投稿していないようです。"
|
||||||
|
desktop/views/widgets/messaging.vue:
|
||||||
|
title: "メッセージ"
|
||||||
|
desktop/views/widgets/notifications.vue:
|
||||||
|
title: "通知"
|
||||||
|
settings: "通知の設定"
|
||||||
|
desktop/views/widgets/polls.vue:
|
||||||
|
title: "アンケート"
|
||||||
|
refresh: "他を見る"
|
||||||
|
nothing: "ありません!"
|
||||||
|
desktop/views/widgets/post-form.vue:
|
||||||
|
title: "投稿"
|
||||||
|
note: "投稿"
|
||||||
|
desktop/views/widgets/profile.vue:
|
||||||
|
update-banner: "クリックでバナー編集"
|
||||||
|
update-avatar: "クリックでアバター編集"
|
||||||
|
desktop/views/widgets/trends.vue:
|
||||||
|
title: "トレンド"
|
||||||
|
refresh: "他を見る"
|
||||||
|
nothing: "ありません!"
|
||||||
|
desktop/views/widgets/users.vue:
|
||||||
|
title: "おすすめユーザー"
|
||||||
|
refresh: "他を見る"
|
||||||
|
no-one: "いません!"
|
||||||
|
mobile/views/components/drive.vue:
|
||||||
|
drive: "ドライブ"
|
||||||
|
used: "使用中"
|
||||||
|
folder-count: "フォルダ"
|
||||||
|
count-separator: "、"
|
||||||
|
file-count: "ファイル"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
|
select-file: "ファイルを選択"
|
||||||
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
|
select-folder: "フォルダーを選択"
|
||||||
|
mobile/views/components/drive.file-detail.vue:
|
||||||
|
download: "ダウンロード"
|
||||||
|
rename: "名前を変更"
|
||||||
|
move: "移動"
|
||||||
|
hash: "ハッシュ (md5)"
|
||||||
|
exif: "EXIF"
|
||||||
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
|
mobile/views/components/note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-detail.vue:
|
||||||
|
reply: "返信"
|
||||||
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
|
mobile/views/components/notifications.vue:
|
||||||
|
more: "もっと見る"
|
||||||
|
empty: "ありません!"
|
||||||
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
|
submit: "投稿"
|
||||||
|
reply: "返信"
|
||||||
|
renote: "Renote"
|
||||||
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
|
reply-placeholder: "この投稿への返信..."
|
||||||
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
|
mobile/views/components/sub-note-content.vue:
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
|
mobile/views/components/timeline.vue:
|
||||||
|
empty: "投稿がありません"
|
||||||
|
load-more: "もっと"
|
||||||
|
mobile/views/components/ui.nav.vue:
|
||||||
|
timeline: "タイムライン"
|
||||||
|
notifications: "通知"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
|
search: "検索"
|
||||||
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
|
settings: "設定"
|
||||||
|
about: "Misskeyについて"
|
||||||
|
mobile/views/components/user-timeline.vue:
|
||||||
|
no-notes: "このユーザーは投稿していないようです。"
|
||||||
|
no-notes-with-media: "メディア付き投稿はありません。"
|
||||||
|
load-more: "もっと"
|
||||||
|
mobile/views/components/users-list.vue:
|
||||||
|
all: "すべて"
|
||||||
|
known: "知り合い"
|
||||||
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
|
mobile/views/pages/drive.vue:
|
||||||
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
|
mobile/views/pages/followers.vue:
|
||||||
|
followers-of: "{}のフォロワー"
|
||||||
|
mobile/views/pages/following.vue:
|
||||||
|
following-of: "{}のフォロー"
|
||||||
|
mobile/views/pages/home.vue:
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
mobile/views/pages/messaging.vue:
|
||||||
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/messaging-room.vue:
|
||||||
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
|
mobile/views/pages/note.vue:
|
||||||
|
title: "投稿"
|
||||||
|
prev: "前の投稿"
|
||||||
|
next: "次の投稿"
|
||||||
|
mobile/views/pages/notifications.vue:
|
||||||
|
notifications: "通知"
|
||||||
|
read-all: "すべての通知を既読にしますか?"
|
||||||
|
mobile/views/pages/settings/settings.profile.vue:
|
||||||
|
title: "プロフィール"
|
||||||
|
name: "名前"
|
||||||
|
account: "アカウント"
|
||||||
|
location: "場所"
|
||||||
|
description: "自己紹介"
|
||||||
|
birthday: "誕生日"
|
||||||
|
avatar: "アイコン"
|
||||||
|
banner: "バナー"
|
||||||
|
is-cat: "このアカウントはCatです"
|
||||||
|
save: "保存"
|
||||||
|
saved: "プロフィールを保存しました"
|
||||||
|
uploading: "アップロード中"
|
||||||
|
upload-failed: "アップロードに失敗しました"
|
||||||
|
mobile/views/pages/search.vue:
|
||||||
|
search: "検索"
|
||||||
|
empty: "「{}」に関する投稿は見つかりませんでした。"
|
||||||
|
mobile/views/pages/selectdrive.vue:
|
||||||
|
select-file: "ファイルを選択"
|
||||||
|
mobile/views/pages/settings.vue:
|
||||||
|
signed-in-as: "{}としてサインイン中"
|
||||||
|
lang: "言語"
|
||||||
|
lang-tip: "変更はページの再読み込み後に反映されます。"
|
||||||
|
recommended: "推奨"
|
||||||
|
auto: "自動"
|
||||||
|
specify-language: "言語を指定"
|
||||||
|
design: "デザインと表示"
|
||||||
|
dark-mode: "ダークモード"
|
||||||
|
i-am-under-limited-internet: "私は通信を制限されている"
|
||||||
|
circle-icons: "円形のアイコンを使用"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
show-reply-target: "リプライ先を表示する"
|
||||||
|
show-my-renotes: "自分の行ったRenoteを表示する"
|
||||||
|
show-renoted-my-notes: "Renoteされた自分の投稿を表示する"
|
||||||
|
post-style: "投稿の表示スタイル"
|
||||||
|
post-style-standard: "標準"
|
||||||
|
post-style-smart: "スマート"
|
||||||
|
behavior: "動作"
|
||||||
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
|
twitter: "Twitter連携"
|
||||||
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
|
twitter-reconnect: "再接続する"
|
||||||
|
twitter-disconnect: "切断する"
|
||||||
|
update: "Misskey Update"
|
||||||
|
version: "バージョン:"
|
||||||
|
latest-version: "最新のバージョン:"
|
||||||
|
update-checking: "アップデートを確認中"
|
||||||
|
check-for-updates: "アップデートを確認"
|
||||||
|
no-updates: "利用可能な更新はありません"
|
||||||
|
no-updates-desc: "お使いのMisskeyは最新です。"
|
||||||
|
update-available: "新しいバージョンが利用可能です"
|
||||||
|
update-available-desc: "ページを再度読み込みすると更新が適用されます。"
|
||||||
|
settings: "設定"
|
||||||
|
signout: "サインアウト"
|
||||||
|
mobile/views/pages/user.vue:
|
||||||
|
follows-you: "フォローされています"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
notes: "投稿"
|
||||||
|
overview: "概要"
|
||||||
|
timeline: "タイムライン"
|
||||||
|
media: "メディア"
|
||||||
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
|
view-remote: "正確な情報を見る"
|
||||||
|
mobile/views/pages/user/home.vue:
|
||||||
|
recent-notes: "最近の投稿"
|
||||||
|
images: "画像"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
keywords: "キーワード"
|
||||||
|
domains: "頻出ドメイン"
|
||||||
|
frequently-replied-users: "よく会話するユーザー"
|
||||||
|
followers-you-know: "知り合いのフォロワー"
|
||||||
|
last-used-at: "最終ログイン"
|
||||||
|
mobile/views/pages/user/home.followers-you-know.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "知り合いのユーザーはいません"
|
||||||
|
mobile/views/pages/user/home.friends.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-users: "よく会話するユーザーはいません"
|
||||||
|
mobile/views/pages/user/home.notes.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-notes: "投稿はありません"
|
||||||
|
mobile/views/pages/user/home.photos.vue:
|
||||||
|
loading: "読み込み中"
|
||||||
|
no-photos: "写真はありません"
|
||||||
|
docs:
|
||||||
|
edit-this-page-on-github: "間違いや改善点を見つけましたか?"
|
||||||
|
edit-this-page-on-github-link: "このページをGitHubで編集"
|
||||||
|
api:
|
||||||
|
entities:
|
||||||
|
properties: "プロパティ"
|
||||||
|
endpoints:
|
||||||
|
params: "パラメータ"
|
||||||
|
res: "レスポンス"
|
||||||
|
props:
|
||||||
|
name: "名前"
|
||||||
|
type: "型"
|
||||||
|
description: "説明"
|
||||||
278
locales/ru.yml
@@ -1,9 +1,11 @@
|
|||||||
---
|
---
|
||||||
meta:
|
meta:
|
||||||
lang: "Русский язык"
|
lang: "Русский язык"
|
||||||
divider: " "
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
time:
|
time:
|
||||||
unknown: "なぞのじかん"
|
unknown: "なぞのじかん"
|
||||||
future: "未来"
|
future: "未来"
|
||||||
@@ -33,11 +35,69 @@ common:
|
|||||||
angry: "おこ"
|
angry: "おこ"
|
||||||
confused: "こまこまのこまり"
|
confused: "こまこまのこまり"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
search: "検索"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
ok: "わかった"
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "サーバーに接続できません"
|
title: "サーバーに接続できません"
|
||||||
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
||||||
@@ -92,6 +152,8 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
remote: "投稿元で見る"
|
remote: "投稿元で見る"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
@@ -101,11 +163,11 @@ common/views/components/poll.vue:
|
|||||||
show-result: "結果を見る"
|
show-result: "結果を見る"
|
||||||
voted: "投票済み"
|
voted: "投票済み"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "投票には、選択肢が最低2つ必要です"
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
choice-n: "選択肢{}"
|
choice-n: "選択肢{}"
|
||||||
remove: "この選択肢を削除"
|
remove: "この選択肢を削除"
|
||||||
add: "+選択肢を追加"
|
add: "+選択肢を追加"
|
||||||
destroy: "投票を破棄"
|
destroy: "アンケートを破棄"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "リアクションを選択"
|
choose-reaction: "リアクションを選択"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "切断する"
|
disconnect: "切断する"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "待機中"
|
waiting: "待機中"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "確認中"
|
fetching: "確認中"
|
||||||
no-broadcasts: "お知らせはありません"
|
no-broadcasts: "お知らせはありません"
|
||||||
@@ -162,18 +233,26 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "フォトストリーム"
|
title: "フォトストリーム"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "サーバー情報"
|
title: "サーバー情報"
|
||||||
toggle: "表示を切り替え"
|
toggle: "表示を切り替え"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "付箋"
|
||||||
home: "ホーム"
|
memo: "ここに書いて!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "保存"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified: "ダイレクト"
|
following: "フォロー中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "フォロー"
|
||||||
private: "非公開"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
@@ -253,8 +332,10 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "フォロー中"
|
||||||
follow: "フォローする"
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
@@ -270,29 +351,10 @@ desktop/views/components/friends-maker.vue:
|
|||||||
refresh: "もっと見る"
|
refresh: "もっと見る"
|
||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "完了"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "ウィジェットを追加:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
add: "追加"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "キャンセル"
|
||||||
@@ -303,30 +365,31 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "会話をもっと読み込む"
|
||||||
private: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
is-renote: "がRenote"
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
location: "位置情報"
|
location: "位置情報"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "読み込みに失敗しました。"
|
||||||
retry: "リトライ"
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "いまどうしてる?"
|
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
quote-placeholder: "この投稿を引用..."
|
quote-placeholder: "この投稿を引用..."
|
||||||
note: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
posted: "投稿しました!"
|
posted: "投稿しました!"
|
||||||
@@ -339,8 +402,8 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "PCからメディアを添付"
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
attach-media-from-drive: "ドライブからメディアを添付"
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
attach-cancel: "添付取り消し"
|
attach-cancel: "添付取り消し"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "投票を作成"
|
create-poll: "アンケートを作成"
|
||||||
text-remain: "残り{}文字"
|
text-remain: "残り{}文字"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "新規投稿"
|
note: "新規投稿"
|
||||||
@@ -358,6 +421,8 @@ desktop/views/components/renote-form.vue:
|
|||||||
failure: "Renoteに失敗しました"
|
failure: "Renoteに失敗しました"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "この投稿をRenoteしますか?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
notification: "通知"
|
notification: "通知"
|
||||||
@@ -380,6 +445,8 @@ desktop/views/components/settings.vue:
|
|||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "ダークモード"
|
||||||
circle-icons: "円形のアイコンを使用"
|
circle-icons: "円形のアイコンを使用"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
@@ -456,7 +523,7 @@ desktop/views/components/settings.api.vue:
|
|||||||
regenerate-token: "トークンを再生成"
|
regenerate-token: "トークンを再生成"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "ミュートしているユーザーはいません"
|
no-users: "ミュートしているユーザーはいません"
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
local: "ローカル"
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "グローバル"
|
global: "グローバル"
|
||||||
list: "リスト"
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
customize: "カスタマイズ"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "新規投稿"
|
post: "新規投稿"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "検索"
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
@@ -523,7 +604,17 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "よく話すユーザー"
|
title: "よく話すユーザー"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -573,6 +664,11 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "ミュートする"
|
mute: "ミュートする"
|
||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -584,13 +680,12 @@ desktop/views/widgets/notifications.vue:
|
|||||||
title: "通知"
|
title: "通知"
|
||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "クリックでアバター編集"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "ハッシュ (md5)"
|
hash: "ハッシュ (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -720,6 +877,8 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
276
locales/zh.yml
@@ -3,7 +3,9 @@ meta:
|
|||||||
lang: "中文(简体)"
|
lang: "中文(简体)"
|
||||||
divider: ""
|
divider: ""
|
||||||
common:
|
common:
|
||||||
misskey: "Misskeyで皆と共有しよう。"
|
misskey: "A ⭐ of fediverse"
|
||||||
|
about-title: "A ⭐ of fediverse."
|
||||||
|
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
|
||||||
time:
|
time:
|
||||||
unknown: "なぞのじかん"
|
unknown: "なぞのじかん"
|
||||||
future: "未来"
|
future: "未来"
|
||||||
@@ -33,11 +35,69 @@ common:
|
|||||||
angry: "おこ"
|
angry: "おこ"
|
||||||
confused: "こまこまのこまり"
|
confused: "こまこまのこまり"
|
||||||
pudding: "Pudding"
|
pudding: "Pudding"
|
||||||
|
note-placeholders:
|
||||||
|
a: "今どうしてる?"
|
||||||
|
b: "何かありましたか?"
|
||||||
|
c: "何をお考えですか?"
|
||||||
|
d: "言いたいことは?"
|
||||||
|
e: "ここに書いてください"
|
||||||
|
f: "あなたが書くのを待っています..."
|
||||||
|
search: "検索"
|
||||||
delete: "削除"
|
delete: "削除"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
ok: "わかった"
|
ok: "わかった"
|
||||||
|
update-available-title: "更新があります"
|
||||||
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
update-available: "Misskeyの新しいバージョンがあります({newer}。現在{current}を利用中)。ページを再度読み込みすると更新が適用されます。"
|
||||||
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
|
||||||
|
i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
|
||||||
|
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
|
||||||
|
reversi:
|
||||||
|
drawn: "引き分け"
|
||||||
|
my-turn: "あなたのターンです"
|
||||||
|
opponent-turn: "相手のターンです"
|
||||||
|
turn-of: "{}のターンです"
|
||||||
|
past-turn-of: "{}のターン"
|
||||||
|
widgets:
|
||||||
|
analog-clock: "アナログ時計"
|
||||||
|
profile: "プロフィール"
|
||||||
|
calendar: "カレンダー"
|
||||||
|
timemachine: "カレンダー(タイムマシン)"
|
||||||
|
activity: "アクティビティ"
|
||||||
|
rss: "RSSリーダー"
|
||||||
|
memo: "付箋"
|
||||||
|
trends: "トレンド"
|
||||||
|
photo-stream: "フォトストリーム"
|
||||||
|
posts-monitor: "投稿チャート"
|
||||||
|
slideshow: "スライドショー"
|
||||||
|
version: "バージョン"
|
||||||
|
broadcast: "ブロードキャスト"
|
||||||
|
notifications: "通知"
|
||||||
|
users: "おすすめユーザー"
|
||||||
|
polls: "アンケート"
|
||||||
|
post-form: "投稿フォーム"
|
||||||
|
messaging: "メッセージ"
|
||||||
|
server: "サーバー情報"
|
||||||
|
donation: "寄付のお願い"
|
||||||
|
nav: "ナビゲーション"
|
||||||
|
tips: "ヒント"
|
||||||
|
hashtags: "ハッシュタグ"
|
||||||
|
deck:
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
|
notifications: "通知"
|
||||||
|
list: "リスト"
|
||||||
|
swap-left: "左に移動"
|
||||||
|
swap-right: "右に移動"
|
||||||
|
swap-up: "上に移動"
|
||||||
|
swap-down: "下に移動"
|
||||||
|
remove: "カラムを削除"
|
||||||
|
add-column: "カラムを追加"
|
||||||
|
rename: "名前を変更"
|
||||||
|
stack-left: "左に重ねる"
|
||||||
|
pop-right: "右に出す"
|
||||||
common/views/components/connect-failed.vue:
|
common/views/components/connect-failed.vue:
|
||||||
title: "サーバーに接続できません"
|
title: "サーバーに接続できません"
|
||||||
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
|
||||||
@@ -92,6 +152,8 @@ common/views/components/nav.vue:
|
|||||||
common/views/components/note-menu.vue:
|
common/views/components/note-menu.vue:
|
||||||
favorite: "お気に入り"
|
favorite: "お気に入り"
|
||||||
pin: "ピン留め"
|
pin: "ピン留め"
|
||||||
|
delete: "削除"
|
||||||
|
delete-confirm: "この投稿を削除しますか?"
|
||||||
remote: "投稿元で見る"
|
remote: "投稿元で見る"
|
||||||
common/views/components/poll.vue:
|
common/views/components/poll.vue:
|
||||||
vote-to: "「{}」に投票する"
|
vote-to: "「{}」に投票する"
|
||||||
@@ -101,11 +163,11 @@ common/views/components/poll.vue:
|
|||||||
show-result: "結果を見る"
|
show-result: "結果を見る"
|
||||||
voted: "投票済み"
|
voted: "投票済み"
|
||||||
common/views/components/poll-editor.vue:
|
common/views/components/poll-editor.vue:
|
||||||
no-only-one-choice: "投票には、選択肢が最低2つ必要です"
|
no-only-one-choice: "アンケートには、選択肢が最低2つ必要です"
|
||||||
choice-n: "選択肢{}"
|
choice-n: "選択肢{}"
|
||||||
remove: "この選択肢を削除"
|
remove: "この選択肢を削除"
|
||||||
add: "+選択肢を追加"
|
add: "+選択肢を追加"
|
||||||
destroy: "投票を破棄"
|
destroy: "アンケートを破棄"
|
||||||
common/views/components/reaction-picker.vue:
|
common/views/components/reaction-picker.vue:
|
||||||
choose-reaction: "リアクションを選択"
|
choose-reaction: "リアクションを選択"
|
||||||
common/views/components/signin.vue:
|
common/views/components/signin.vue:
|
||||||
@@ -151,6 +213,15 @@ common/views/components/twitter-setting.vue:
|
|||||||
disconnect: "切断する"
|
disconnect: "切断する"
|
||||||
common/views/components/uploader.vue:
|
common/views/components/uploader.vue:
|
||||||
waiting: "待機中"
|
waiting: "待機中"
|
||||||
|
common/views/components/visibility-chooser.vue:
|
||||||
|
public: "公開"
|
||||||
|
home: "ホーム"
|
||||||
|
home-desc: "ホームタイムラインにのみ公開"
|
||||||
|
followers: "フォロワー"
|
||||||
|
followers-desc: "自分のフォロワーにのみ公開"
|
||||||
|
specified: "ダイレクト"
|
||||||
|
specified-desc: "指定したユーザーにのみ公開"
|
||||||
|
private: "非公開"
|
||||||
common/views/widgets/broadcast.vue:
|
common/views/widgets/broadcast.vue:
|
||||||
fetching: "確認中"
|
fetching: "確認中"
|
||||||
no-broadcasts: "お知らせはありません"
|
no-broadcasts: "お知らせはありません"
|
||||||
@@ -162,18 +233,26 @@ common/views/widgets/donation.vue:
|
|||||||
common/views/widgets/photo-stream.vue:
|
common/views/widgets/photo-stream.vue:
|
||||||
title: "フォトストリーム"
|
title: "フォトストリーム"
|
||||||
no-photos: "写真はありません"
|
no-photos: "写真はありません"
|
||||||
|
common/views/widgets/posts-monitor.vue:
|
||||||
|
title: "投稿チャート"
|
||||||
|
toggle: "表示を切り替え"
|
||||||
|
common/views/widgets/hashtags.vue:
|
||||||
|
title: "ハッシュタグ"
|
||||||
|
count: "{}人が投稿"
|
||||||
|
empty: "トレンドなし"
|
||||||
common/views/widgets/server.vue:
|
common/views/widgets/server.vue:
|
||||||
title: "サーバー情報"
|
title: "サーバー情報"
|
||||||
toggle: "表示を切り替え"
|
toggle: "表示を切り替え"
|
||||||
common/views/widgets/visibility-chooser.vue:
|
common/views/widgets/memo.vue:
|
||||||
public: "公開"
|
title: "付箋"
|
||||||
home: "ホーム"
|
memo: "ここに書いて!"
|
||||||
home-desc: "ホームタイムラインにのみ公開"
|
save: "保存"
|
||||||
followers: "フォロワー"
|
common/views/pages/follow.vue:
|
||||||
followers-desc: "自分のフォロワーにのみ公開"
|
signed-in-as: "{}としてサインイン中"
|
||||||
specified: "ダイレクト"
|
following: "フォロー中"
|
||||||
specified-desc: "指定したユーザーにのみ公開"
|
follow: "フォロー"
|
||||||
private: "非公開"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/activity.chart.vue:
|
desktop/views/components/activity.chart.vue:
|
||||||
total: "Black ... Total"
|
total: "Black ... Total"
|
||||||
notes: "Blue ... Notes"
|
notes: "Blue ... Notes"
|
||||||
@@ -253,8 +332,10 @@ desktop/views/components/drive.vue:
|
|||||||
upload: "ファイルをアップロード"
|
upload: "ファイルをアップロード"
|
||||||
url-upload: "URLからアップロード"
|
url-upload: "URLからアップロード"
|
||||||
desktop/views/components/follow-button.vue:
|
desktop/views/components/follow-button.vue:
|
||||||
unfollow: "フォロー解除"
|
following: "フォロー中"
|
||||||
follow: "フォローする"
|
follow: "フォロー"
|
||||||
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
desktop/views/components/followers-window.vue:
|
desktop/views/components/followers-window.vue:
|
||||||
followers: "{} のフォロワー"
|
followers: "{} のフォロワー"
|
||||||
desktop/views/components/followers.vue:
|
desktop/views/components/followers.vue:
|
||||||
@@ -270,29 +351,10 @@ desktop/views/components/friends-maker.vue:
|
|||||||
refresh: "もっと見る"
|
refresh: "もっと見る"
|
||||||
close: "閉じる"
|
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:
|
||||||
done: "完了"
|
done: "完了"
|
||||||
add-widget: "ウィジェットを追加:"
|
add-widget: "ウィジェットを追加:"
|
||||||
profile: "プロフィール"
|
|
||||||
calendar: "カレンダー"
|
|
||||||
timemachine: "カレンダー(タイムマシン)"
|
|
||||||
activity: "アクティビティ"
|
|
||||||
rss: "RSSリーダー"
|
|
||||||
trends: "トレンド"
|
|
||||||
photostream: "フォトストリーム"
|
|
||||||
slideshow: "スライドショー"
|
|
||||||
version: "バージョン"
|
|
||||||
broadcast: "ブロードキャスト"
|
|
||||||
notifications: "通知"
|
|
||||||
users: "おすすめユーザー"
|
|
||||||
polls: "投票"
|
|
||||||
post-form: "投稿フォーム"
|
|
||||||
messaging: "メッセージ"
|
|
||||||
server: "サーバー情報"
|
|
||||||
donation: "寄付のお願い"
|
|
||||||
nav: "ナビゲーション"
|
|
||||||
tips: "ヒント"
|
|
||||||
add: "追加"
|
add: "追加"
|
||||||
desktop/views/input-dialog.vue:
|
desktop/views/input-dialog.vue:
|
||||||
cancel: "キャンセル"
|
cancel: "キャンセル"
|
||||||
@@ -303,30 +365,31 @@ desktop/views/components/messaging-window.vue:
|
|||||||
title: "メッセージ"
|
title: "メッセージ"
|
||||||
desktop/views/components/note-detail.vue:
|
desktop/views/components/note-detail.vue:
|
||||||
more: "会話をもっと読み込む"
|
more: "会話をもっと読み込む"
|
||||||
private: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
is-renote: "がRenote"
|
deleted: "この投稿は削除されました"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
location: "位置情報"
|
location: "位置情報"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
desktop/views/components/note-detail.sub.vue:
|
|
||||||
private: "(この投稿は非公開です)"
|
|
||||||
desktop/views/components/notes.note.vue:
|
desktop/views/components/notes.note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
add-reaction: "リアクション"
|
add-reaction: "リアクション"
|
||||||
detail: "詳細"
|
detail: "詳細"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/components/notes.vue:
|
desktop/views/components/notes.vue:
|
||||||
error: "読み込みに失敗しました。"
|
error: "読み込みに失敗しました。"
|
||||||
retry: "リトライ"
|
retry: "リトライ"
|
||||||
|
load-more: "もっと読み込む"
|
||||||
desktop/views/components/notifications.vue:
|
desktop/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
desktop/views/components/post-form.vue:
|
desktop/views/components/post-form.vue:
|
||||||
note-placeholder: "いまどうしてる?"
|
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
quote-placeholder: "この投稿を引用..."
|
quote-placeholder: "この投稿を引用..."
|
||||||
note: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
posted: "投稿しました!"
|
posted: "投稿しました!"
|
||||||
@@ -339,8 +402,8 @@ desktop/views/components/post-form.vue:
|
|||||||
attach-media-from-local: "PCからメディアを添付"
|
attach-media-from-local: "PCからメディアを添付"
|
||||||
attach-media-from-drive: "ドライブからメディアを添付"
|
attach-media-from-drive: "ドライブからメディアを添付"
|
||||||
attach-cancel: "添付取り消し"
|
attach-cancel: "添付取り消し"
|
||||||
insert-a-kao: "v(‘ω’)v"
|
insert-a-kao: "v('ω')v"
|
||||||
create-poll: "投票を作成"
|
create-poll: "アンケートを作成"
|
||||||
text-remain: "残り{}文字"
|
text-remain: "残り{}文字"
|
||||||
desktop/views/components/post-form-window.vue:
|
desktop/views/components/post-form-window.vue:
|
||||||
note: "新規投稿"
|
note: "新規投稿"
|
||||||
@@ -358,6 +421,8 @@ desktop/views/components/renote-form.vue:
|
|||||||
failure: "Renoteに失敗しました"
|
failure: "Renoteに失敗しました"
|
||||||
desktop/views/components/renote-form-window.vue:
|
desktop/views/components/renote-form-window.vue:
|
||||||
title: "この投稿をRenoteしますか?"
|
title: "この投稿をRenoteしますか?"
|
||||||
|
desktop/views/components/settings-window.vue:
|
||||||
|
settings: "設定"
|
||||||
desktop/views/components/settings.vue:
|
desktop/views/components/settings.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
notification: "通知"
|
notification: "通知"
|
||||||
@@ -380,6 +445,8 @@ desktop/views/components/settings.vue:
|
|||||||
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
api-via-stream-desc: "この設定をオンにすると、websocket接続を経由してAPIリクエストが行われます(パフォーマンス向上が期待できます)。オフにすると、ネイティブの fetch APIが利用されます。この設定はこのデバイスのみ有効です。"
|
||||||
display: "デザインと表示"
|
display: "デザインと表示"
|
||||||
customize: "ホームをカスタマイズ"
|
customize: "ホームをカスタマイズ"
|
||||||
|
choose-wallpaper: "壁紙を選択"
|
||||||
|
delete-wallpaper: "壁紙を削除"
|
||||||
dark-mode: "ダークモード"
|
dark-mode: "ダークモード"
|
||||||
circle-icons: "円形のアイコンを使用"
|
circle-icons: "円形のアイコンを使用"
|
||||||
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
gradient-window-header: "ウィンドウのタイトルバーにグラデーションを使用"
|
||||||
@@ -456,7 +523,7 @@ desktop/views/components/settings.api.vue:
|
|||||||
regenerate-token: "トークンを再生成"
|
regenerate-token: "トークンを再生成"
|
||||||
token: "Token:"
|
token: "Token:"
|
||||||
enter-password: "パスワードを入力してください"
|
enter-password: "パスワードを入力してください"
|
||||||
desktop/views/components/settings.app.vue:
|
desktop/views/components/settings.apps.vue:
|
||||||
no-apps: "連携しているアプリケーションはありません"
|
no-apps: "連携しているアプリケーションはありません"
|
||||||
desktop/views/components/settings.mute.vue:
|
desktop/views/components/settings.mute.vue:
|
||||||
no-users: "ミュートしているユーザーはいません"
|
no-users: "ミュートしているユーザーはいません"
|
||||||
@@ -475,30 +542,39 @@ desktop/views/components/settings.profile.vue:
|
|||||||
description: "自己紹介"
|
description: "自己紹介"
|
||||||
birthday: "誕生日"
|
birthday: "誕生日"
|
||||||
save: "保存"
|
save: "保存"
|
||||||
|
locked-account: "アカウントの保護"
|
||||||
|
is-locked: "投稿を非公開にする"
|
||||||
|
other: "その他"
|
||||||
is-bot: "このアカウントはBotです"
|
is-bot: "このアカウントはBotです"
|
||||||
is-cat: "このアカウントはCatです"
|
is-cat: "このアカウントはCatです"
|
||||||
desktop/views/components/sub-note-content.vue:
|
desktop/views/components/sub-note-content.vue:
|
||||||
hidden: "(この投稿は非公開です)"
|
private: "この投稿は非公開です"
|
||||||
media: "つのメディア"
|
deleted: "この投稿は削除されました"
|
||||||
poll: "投票"
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
desktop/views/components/taskmanager.vue:
|
desktop/views/components/taskmanager.vue:
|
||||||
title: "タスクマネージャ"
|
title: "タスクマネージャ"
|
||||||
desktop/views/components/timeline.vue:
|
desktop/views/components/timeline.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
local: "ローカル"
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
global: "グローバル"
|
global: "グローバル"
|
||||||
list: "リスト"
|
list: "リスト"
|
||||||
|
desktop/views/components/ui.header.vue:
|
||||||
|
welcome-back: "おかえりなさい、"
|
||||||
desktop/views/components/ui.header.account.vue:
|
desktop/views/components/ui.header.account.vue:
|
||||||
profile: "プロフィール"
|
profile: "プロフィール"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
favorites: "お気に入り"
|
favorites: "お気に入り"
|
||||||
lists: "リスト"
|
lists: "リスト"
|
||||||
customize: "カスタマイズ"
|
follow-requests: "フォロー申請"
|
||||||
|
customize: "ホームのカスタマイズ"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
signout: "サインアウト"
|
signout: "サインアウト"
|
||||||
dark: "闇に飲まれる"
|
dark: "闇に飲まれる"
|
||||||
desktop/views/components/ui.header.nav.vue:
|
desktop/views/components/ui.header.nav.vue:
|
||||||
home: "ホーム"
|
home: "ホーム"
|
||||||
|
deck: "デッキ"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
game: "ゲーム"
|
game: "ゲーム"
|
||||||
desktop/views/components/ui.header.notifications.vue:
|
desktop/views/components/ui.header.notifications.vue:
|
||||||
@@ -507,7 +583,12 @@ desktop/views/components/ui.header.post.vue:
|
|||||||
post: "新規投稿"
|
post: "新規投稿"
|
||||||
desktop/views/components/ui.header.search.vue:
|
desktop/views/components/ui.header.search.vue:
|
||||||
placeholder: "検索"
|
placeholder: "検索"
|
||||||
|
desktop/views/components/received-follow-requests-window.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
desktop/views/components/user-lists-window.vue:
|
desktop/views/components/user-lists-window.vue:
|
||||||
|
title: "リスト"
|
||||||
create-list: "リストを作成"
|
create-list: "リストを作成"
|
||||||
desktop/views/components/user-preview.vue:
|
desktop/views/components/user-preview.vue:
|
||||||
notes: "投稿"
|
notes: "投稿"
|
||||||
@@ -523,7 +604,17 @@ desktop/views/components/users-list-item.vue:
|
|||||||
desktop/views/components/window.vue:
|
desktop/views/components/window.vue:
|
||||||
popout: "ポップアウト"
|
popout: "ポップアウト"
|
||||||
close: "閉じる"
|
close: "閉じる"
|
||||||
|
desktop/views/pages/deck/deck.tl-column.vue:
|
||||||
|
is-media-only: "メディア投稿のみ"
|
||||||
|
is-media-view: "メディアビュー"
|
||||||
|
edit: "オプション"
|
||||||
|
desktop/views/pages/deck/deck.note.vue:
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
desktop/views/pages/welcome.vue:
|
desktop/views/pages/welcome.vue:
|
||||||
|
about: "詳しく..."
|
||||||
|
gotit: "わかった"
|
||||||
signin: "ログイン"
|
signin: "ログイン"
|
||||||
signup: "新規登録"
|
signup: "新規登録"
|
||||||
signin-button: "やってる"
|
signin-button: "やってる"
|
||||||
@@ -555,7 +646,7 @@ desktop/views/pages/user/user.friends.vue:
|
|||||||
title: "よく話すユーザー"
|
title: "よく話すユーザー"
|
||||||
loading: "読み込み中"
|
loading: "読み込み中"
|
||||||
no-users: "よく話すユーザーはいません"
|
no-users: "よく話すユーザーはいません"
|
||||||
desktop/views/pages/user/user.header.vue:
|
desktop/views/pages/user/user.vue:
|
||||||
is-suspended: "このユーザーは凍結されています。"
|
is-suspended: "このユーザーは凍結されています。"
|
||||||
is-remote: "このユーザーはリモートユーザーです。"
|
is-remote: "このユーザーはリモートユーザーです。"
|
||||||
view-remote: "正確な情報を見る"
|
view-remote: "正確な情報を見る"
|
||||||
@@ -573,6 +664,11 @@ desktop/views/pages/user/user.profile.vue:
|
|||||||
mute: "ミュートする"
|
mute: "ミュートする"
|
||||||
muted: "ミュートしています"
|
muted: "ミュートしています"
|
||||||
unmute: "ミュート解除"
|
unmute: "ミュート解除"
|
||||||
|
desktop/views/pages/user/user.header.vue:
|
||||||
|
posts: "投稿"
|
||||||
|
following: "フォロー"
|
||||||
|
followers: "フォロワー"
|
||||||
|
is-bot: "このアカウントはBotです"
|
||||||
desktop/views/pages/user/user.timeline.vue:
|
desktop/views/pages/user/user.timeline.vue:
|
||||||
default: "投稿"
|
default: "投稿"
|
||||||
with-replies: "投稿と返信"
|
with-replies: "投稿と返信"
|
||||||
@@ -584,13 +680,12 @@ desktop/views/widgets/notifications.vue:
|
|||||||
title: "通知"
|
title: "通知"
|
||||||
settings: "通知の設定"
|
settings: "通知の設定"
|
||||||
desktop/views/widgets/polls.vue:
|
desktop/views/widgets/polls.vue:
|
||||||
title: "投票"
|
title: "アンケート"
|
||||||
refresh: "他を見る"
|
refresh: "他を見る"
|
||||||
nothing: "ありません!"
|
nothing: "ありません!"
|
||||||
desktop/views/widgets/post-form.vue:
|
desktop/views/widgets/post-form.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
note: "投稿"
|
note: "投稿"
|
||||||
placeholder: "いまどうしてる?"
|
|
||||||
desktop/views/widgets/profile.vue:
|
desktop/views/widgets/profile.vue:
|
||||||
update-banner: "クリックでバナー編集"
|
update-banner: "クリックでバナー編集"
|
||||||
update-avatar: "クリックでアバター編集"
|
update-avatar: "クリックでアバター編集"
|
||||||
@@ -611,6 +706,15 @@ mobile/views/components/drive.vue:
|
|||||||
load-more: "もっと読み込む"
|
load-more: "もっと読み込む"
|
||||||
nothing-in-drive: "ドライブには何もありません"
|
nothing-in-drive: "ドライブには何もありません"
|
||||||
folder-is-empty: "このフォルダは空です"
|
folder-is-empty: "このフォルダは空です"
|
||||||
|
prompt: "何をしますか?(数字を入力してください): <1 → ファイルをアップロード | 2 → ファイルをURLでアップロード | 3 → フォルダ作成 | 4 → このフォルダ名を変更 | 5 → このフォルダを移動 | 6 → このフォルダを削除>"
|
||||||
|
deletion-alert: "ごめんなさい!フォルダの削除は未実装です...。"
|
||||||
|
folder-name: "フォルダー名"
|
||||||
|
root-rename-alert: "現在いる場所はルートで、フォルダではないため名前の変更はできません。名前を変更したいフォルダに移動してからやってください。"
|
||||||
|
root-move-alert: "現在いる場所はルートで、フォルダではないため移動はできません。移動したいフォルダに移動してからやってください。"
|
||||||
|
url-prompt: "アップロードしたいファイルのURL"
|
||||||
|
uploading: "アップロードをリクエストしました。アップロードが完了するまで時間がかかる場合があります。"
|
||||||
|
mobile/views/components/drive-file-detail.vue:
|
||||||
|
rename: "名前を変更"
|
||||||
mobile/views/components/drive-file-chooser.vue:
|
mobile/views/components/drive-file-chooser.vue:
|
||||||
select-file: "ファイルを選択"
|
select-file: "ファイルを選択"
|
||||||
mobile/views/components/drive-folder-chooser.vue:
|
mobile/views/components/drive-folder-chooser.vue:
|
||||||
@@ -622,35 +726,75 @@ mobile/views/components/drive.file-detail.vue:
|
|||||||
hash: "ハッシュ (md5)"
|
hash: "ハッシュ (md5)"
|
||||||
exif: "EXIF"
|
exif: "EXIF"
|
||||||
mobile/views/components/follow-button.vue:
|
mobile/views/components/follow-button.vue:
|
||||||
|
following: "フォロー中"
|
||||||
follow: "フォロー"
|
follow: "フォロー"
|
||||||
unfollow: "フォロー解除"
|
request-pending: "フォロー許可待ち"
|
||||||
|
follow-request: "フォロー申請"
|
||||||
|
mobile/views/components/friends-maker.vue:
|
||||||
|
title: "気になるユーザーをフォロー"
|
||||||
|
empty: "おすすめのユーザーは見つかりませんでした。"
|
||||||
|
fetching: "読み込んでいます"
|
||||||
|
refresh: "もっと見る"
|
||||||
|
close: "閉じる"
|
||||||
mobile/views/components/note.vue:
|
mobile/views/components/note.vue:
|
||||||
reposted-by: "{}がRenote"
|
reposted-by: "{}がRenote"
|
||||||
|
more: "もっと見る"
|
||||||
|
less: "隠す"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
mobile/views/components/note-detail.vue:
|
mobile/views/components/note-detail.vue:
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
reaction: "リアクション"
|
reaction: "リアクション"
|
||||||
|
reposted-by: "{}がRenote"
|
||||||
|
private: "この投稿は非公開です"
|
||||||
|
deleted: "この投稿は削除されました"
|
||||||
|
location: "位置情報"
|
||||||
|
mobile/views/components/note-preview.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/note-sub.vue:
|
||||||
|
admin: "admin"
|
||||||
|
bot: "bot"
|
||||||
|
cat: "cat"
|
||||||
|
mobile/views/components/notes.vue:
|
||||||
|
failed: "読み込みに失敗しました。"
|
||||||
|
retry: "リトライ"
|
||||||
mobile/views/components/notifications.vue:
|
mobile/views/components/notifications.vue:
|
||||||
more: "もっと見る"
|
more: "もっと見る"
|
||||||
empty: "ありません!"
|
empty: "ありません!"
|
||||||
mobile/views/components/post-form.vue:
|
mobile/views/components/post-form.vue:
|
||||||
|
add-visible-user: "ユーザーを追加"
|
||||||
submit: "投稿"
|
submit: "投稿"
|
||||||
reply: "返信"
|
reply: "返信"
|
||||||
renote: "Renote"
|
renote: "Renote"
|
||||||
renote-placeholder: "この投稿を引用... (オプション)"
|
quote-placeholder: "この投稿を引用... (オプション)"
|
||||||
reply-placeholder: "この投稿への返信..."
|
reply-placeholder: "この投稿への返信..."
|
||||||
note-placeholder: "いまどうしてる?"
|
cw-placeholder: "内容への注釈 (オプション)"
|
||||||
|
location-alert: "お使いの端末は位置情報に対応していません"
|
||||||
|
error: "エラー"
|
||||||
|
username-prompt: "ユーザー名を入力してください"
|
||||||
mobile/views/components/sub-note-content.vue:
|
mobile/views/components/sub-note-content.vue:
|
||||||
media-count: "{}個のメディア"
|
private: "この投稿は非公開です"
|
||||||
poll: "投票"
|
deleted: "この投稿は削除されました"
|
||||||
|
media-count: "{}つのメディア"
|
||||||
|
poll: "アンケート"
|
||||||
mobile/views/components/timeline.vue:
|
mobile/views/components/timeline.vue:
|
||||||
empty: "投稿がありません"
|
empty: "投稿がありません"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
mobile/views/components/ui.nav.vue:
|
mobile/views/components/ui.nav.vue:
|
||||||
home: "ホーム"
|
timeline: "タイムライン"
|
||||||
notifications: "通知"
|
notifications: "通知"
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
follow-requests: "フォロー申請"
|
||||||
search: "検索"
|
search: "検索"
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
favorites: "お気に入り"
|
||||||
|
user-lists: "リスト"
|
||||||
|
widgets: "ウィジェット"
|
||||||
|
game: "ゲーム"
|
||||||
|
darkmode: "ダークモード"
|
||||||
settings: "設定"
|
settings: "設定"
|
||||||
about: "Misskeyについて"
|
about: "Misskeyについて"
|
||||||
mobile/views/components/user-timeline.vue:
|
mobile/views/components/user-timeline.vue:
|
||||||
@@ -661,18 +805,31 @@ mobile/views/components/users-list.vue:
|
|||||||
all: "すべて"
|
all: "すべて"
|
||||||
known: "知り合い"
|
known: "知り合い"
|
||||||
load-more: "もっと"
|
load-more: "もっと"
|
||||||
|
mobile/views/pages/favorites.vue:
|
||||||
|
title: "お気に入り"
|
||||||
|
mobile/views/pages/user-lists.vue:
|
||||||
|
title: "リスト"
|
||||||
|
enter-list-name: "リスト名を入力してください"
|
||||||
mobile/views/pages/drive.vue:
|
mobile/views/pages/drive.vue:
|
||||||
drive: "ドライブ"
|
drive: "ドライブ"
|
||||||
|
more: "もっと見る"
|
||||||
mobile/views/pages/followers.vue:
|
mobile/views/pages/followers.vue:
|
||||||
followers-of: "{}のフォロワー"
|
followers-of: "{}のフォロワー"
|
||||||
mobile/views/pages/following.vue:
|
mobile/views/pages/following.vue:
|
||||||
following-of: "{}のフォロー"
|
following-of: "{}のフォロー"
|
||||||
mobile/views/pages/home.vue:
|
mobile/views/pages/home.vue:
|
||||||
timeline: "タイムライン"
|
home: "ホーム"
|
||||||
|
local: "ローカル"
|
||||||
|
hybrid: "ソーシャル"
|
||||||
|
global: "グローバル"
|
||||||
mobile/views/pages/messaging.vue:
|
mobile/views/pages/messaging.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
mobile/views/pages/messaging-room.vue:
|
mobile/views/pages/messaging-room.vue:
|
||||||
messaging: "メッセージ"
|
messaging: "メッセージ"
|
||||||
|
mobile/views/pages/received-follow-requests.vue:
|
||||||
|
title: "フォロー申請"
|
||||||
|
accept: "承認"
|
||||||
|
reject: "拒否"
|
||||||
mobile/views/pages/note.vue:
|
mobile/views/pages/note.vue:
|
||||||
title: "投稿"
|
title: "投稿"
|
||||||
prev: "前の投稿"
|
prev: "前の投稿"
|
||||||
@@ -720,6 +877,8 @@ mobile/views/pages/settings.vue:
|
|||||||
behavior: "動作"
|
behavior: "動作"
|
||||||
fetch-on-scroll: "スクロールで自動読み込み"
|
fetch-on-scroll: "スクロールで自動読み込み"
|
||||||
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
|
||||||
|
load-raw-images: "添付された画像を高画質で表示する"
|
||||||
|
load-remote-media: "リモートサーバーのメディアを表示する"
|
||||||
twitter: "Twitter連携"
|
twitter: "Twitter連携"
|
||||||
twitter-connect: "Twitterアカウントに接続する"
|
twitter-connect: "Twitterアカウントに接続する"
|
||||||
twitter-reconnect: "再接続する"
|
twitter-reconnect: "再接続する"
|
||||||
@@ -779,7 +938,4 @@ docs:
|
|||||||
props:
|
props:
|
||||||
name: "名前"
|
name: "名前"
|
||||||
type: "型"
|
type: "型"
|
||||||
optional: "オプション"
|
|
||||||
description: "説明"
|
description: "説明"
|
||||||
yes: "はい"
|
|
||||||
no: "いいえ"
|
|
||||||
|
|||||||
18183
package-lock.json
generated
Normal file
141
package.json
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"name": "misskey",
|
"name": "misskey",
|
||||||
"author": "syuilo <i@syuilo.com>",
|
"author": "syuilo <i@syuilo.com>",
|
||||||
"version": "2.16.6",
|
"version": "4.19.1",
|
||||||
"clientVersion": "1.0.5686",
|
"clientVersion": "1.0.7183",
|
||||||
"codename": "nighthike",
|
"codename": "nighthike",
|
||||||
"main": "./built/index.js",
|
"main": "./built/index.js",
|
||||||
"private": true,
|
"private": true,
|
||||||
@@ -23,18 +23,18 @@
|
|||||||
"format": "gulp format"
|
"format": "gulp format"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fortawesome/fontawesome": "1.0.1",
|
"@fortawesome/fontawesome": "1.1.8",
|
||||||
"@fortawesome/fontawesome-free-brands": "5.0.2",
|
"@fortawesome/fontawesome-free-brands": "5.0.13",
|
||||||
"@fortawesome/fontawesome-free-regular": "5.0.2",
|
"@fortawesome/fontawesome-free-regular": "5.0.13",
|
||||||
"@fortawesome/fontawesome-free-solid": "5.0.2",
|
"@fortawesome/fontawesome-free-solid": "5.0.13",
|
||||||
"@koa/cors": "2.2.1",
|
"@koa/cors": "2.2.2",
|
||||||
"@prezzemolo/rap": "0.1.2",
|
"@prezzemolo/rap": "0.1.2",
|
||||||
"@prezzemolo/zip": "0.0.3",
|
"@prezzemolo/zip": "0.0.3",
|
||||||
"@types/bcryptjs": "2.4.1",
|
"@types/bcryptjs": "2.4.1",
|
||||||
"@types/debug": "0.0.30",
|
"@types/debug": "0.0.30",
|
||||||
"@types/deep-equal": "1.0.1",
|
"@types/deep-equal": "1.0.1",
|
||||||
"@types/elasticsearch": "5.0.23",
|
"@types/elasticsearch": "5.0.25",
|
||||||
"@types/eventemitter3": "2.0.2",
|
"@types/file-type": "5.2.1",
|
||||||
"@types/gm": "1.18.0",
|
"@types/gm": "1.18.0",
|
||||||
"@types/gulp": "3.8.36",
|
"@types/gulp": "3.8.36",
|
||||||
"@types/gulp-htmlmin": "1.3.32",
|
"@types/gulp-htmlmin": "1.3.32",
|
||||||
@@ -43,80 +43,79 @@
|
|||||||
"@types/gulp-replace": "0.0.31",
|
"@types/gulp-replace": "0.0.31",
|
||||||
"@types/gulp-uglify": "3.0.5",
|
"@types/gulp-uglify": "3.0.5",
|
||||||
"@types/gulp-util": "3.0.34",
|
"@types/gulp-util": "3.0.34",
|
||||||
"@types/inquirer": "0.0.41",
|
"@types/inquirer": "0.0.42",
|
||||||
"@types/is-root": "1.0.0",
|
"@types/is-root": "1.0.0",
|
||||||
"@types/is-url": "1.2.28",
|
"@types/is-url": "1.2.28",
|
||||||
"@types/js-yaml": "3.11.1",
|
"@types/js-yaml": "3.11.2",
|
||||||
"@types/koa": "2.0.45",
|
"@types/jsdom": "11.0.6",
|
||||||
"@types/koa-bodyparser": "4.2.0",
|
"@types/koa": "2.0.46",
|
||||||
|
"@types/koa-bodyparser": "5.0.1",
|
||||||
"@types/koa-compress": "2.0.8",
|
"@types/koa-compress": "2.0.8",
|
||||||
"@types/koa-favicon": "2.0.19",
|
"@types/koa-favicon": "2.0.19",
|
||||||
"@types/koa-logger": "3.1.0",
|
"@types/koa-logger": "3.1.0",
|
||||||
"@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.28",
|
"@types/koa-router": "7.0.30",
|
||||||
"@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.2",
|
"@types/koa__cors": "2.2.2",
|
||||||
"@types/kue": "0.11.8",
|
"@types/kue": "0.11.9",
|
||||||
"@types/license-checker": "15.0.0",
|
|
||||||
"@types/mkdirp": "0.5.2",
|
"@types/mkdirp": "0.5.2",
|
||||||
"@types/mocha": "5.2.0",
|
"@types/mocha": "5.2.3",
|
||||||
"@types/mongodb": "3.0.18",
|
"@types/mongodb": "3.1.1",
|
||||||
"@types/monk": "6.0.0",
|
|
||||||
"@types/ms": "0.7.30",
|
"@types/ms": "0.7.30",
|
||||||
"@types/node": "10.1.2",
|
"@types/node": "10.5.2",
|
||||||
"@types/nopt": "3.0.29",
|
"@types/parse5": "5.0.0",
|
||||||
"@types/parse5": "3.0.0",
|
"@types/portscanner": "2.1.0",
|
||||||
"@types/pug": "2.0.4",
|
"@types/pug": "2.0.4",
|
||||||
"@types/qrcode": "0.8.1",
|
"@types/qrcode": "1.2.0",
|
||||||
"@types/ratelimiter": "2.1.28",
|
"@types/ratelimiter": "2.1.28",
|
||||||
"@types/redis": "2.8.6",
|
"@types/redis": "2.8.6",
|
||||||
"@types/request": "2.47.0",
|
"@types/request": "2.47.1",
|
||||||
"@types/request-promise-native": "1.0.14",
|
"@types/request-promise-native": "1.0.15",
|
||||||
"@types/rimraf": "2.0.2",
|
"@types/rimraf": "2.0.2",
|
||||||
"@types/seedrandom": "2.4.27",
|
"@types/seedrandom": "2.4.27",
|
||||||
"@types/single-line-log": "1.1.0",
|
"@types/single-line-log": "1.1.0",
|
||||||
"@types/speakeasy": "2.0.2",
|
"@types/speakeasy": "2.0.2",
|
||||||
"@types/tmp": "0.0.33",
|
"@types/tmp": "0.0.33",
|
||||||
"@types/uuid": "3.4.3",
|
"@types/uuid": "3.4.3",
|
||||||
"@types/webpack": "4.4.0",
|
"@types/webpack": "4.4.6",
|
||||||
"@types/webpack-stream": "3.2.10",
|
"@types/webpack-stream": "3.2.10",
|
||||||
"@types/websocket": "0.0.39",
|
"@types/websocket": "0.0.39",
|
||||||
"@types/ws": "5.1.1",
|
"@types/ws": "5.1.2",
|
||||||
"animejs": "2.2.0",
|
"animejs": "2.2.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",
|
||||||
"bootstrap-vue": "2.0.0-rc.6",
|
"bootstrap-vue": "2.0.0-rc.11",
|
||||||
"cafy": "8.0.0",
|
"cafy": "11.3.0",
|
||||||
"chalk": "2.4.1",
|
"chalk": "2.4.1",
|
||||||
"crc-32": "1.2.0",
|
"crc-32": "1.2.0",
|
||||||
"css-loader": "0.28.11",
|
"css-loader": "1.0.0",
|
||||||
"debug": "3.1.0",
|
"debug": "3.1.0",
|
||||||
"deep-equal": "1.0.1",
|
"deep-equal": "1.0.1",
|
||||||
"deepcopy": "0.6.3",
|
"deepcopy": "0.6.3",
|
||||||
"diskusage": "0.2.4",
|
"diskusage": "0.2.4",
|
||||||
"dompurify": "1.0.4",
|
"dompurify": "1.0.5",
|
||||||
"elasticsearch": "15.0.0",
|
"elasticsearch": "15.1.1",
|
||||||
"element-ui": "2.3.9",
|
"element-ui": "2.4.4",
|
||||||
"emojilib": "2.2.12",
|
"emojilib": "2.2.12",
|
||||||
"escape-regexp": "0.0.1",
|
"escape-regexp": "0.0.1",
|
||||||
"eslint": "4.19.1",
|
"eslint": "5.0.1",
|
||||||
"eslint-plugin-vue": "4.5.0",
|
"eslint-plugin-vue": "4.5.0",
|
||||||
"eventemitter3": "3.1.0",
|
"eventemitter3": "3.1.0",
|
||||||
"exif-js": "2.3.0",
|
"exif-js": "2.3.0",
|
||||||
"file-loader": "1.1.11",
|
"file-loader": "1.1.11",
|
||||||
"file-type": "8.0.0",
|
"file-type": "8.1.0",
|
||||||
"fuckadblock": "3.2.1",
|
"fuckadblock": "3.2.1",
|
||||||
"gm": "1.23.1",
|
"gm": "1.23.1",
|
||||||
"gulp": "3.9.1",
|
"gulp": "3.9.1",
|
||||||
"gulp-cssnano": "2.1.3",
|
"gulp-cssnano": "2.1.3",
|
||||||
"gulp-htmlmin": "4.0.0",
|
"gulp-htmlmin": "4.0.0",
|
||||||
"gulp-imagemin": "4.1.0",
|
"gulp-imagemin": "4.1.0",
|
||||||
"gulp-mocha": "5.0.0",
|
"gulp-mocha": "6.0.0",
|
||||||
"gulp-pug": "4.0.1",
|
"gulp-pug": "4.0.1",
|
||||||
"gulp-rename": "1.2.3",
|
"gulp-rename": "1.3.0",
|
||||||
"gulp-replace": "1.0.0",
|
"gulp-replace": "1.0.0",
|
||||||
"gulp-sourcemaps": "2.6.4",
|
"gulp-sourcemaps": "2.6.4",
|
||||||
"gulp-stylus": "2.7.0",
|
"gulp-stylus": "2.7.0",
|
||||||
@@ -124,17 +123,17 @@
|
|||||||
"gulp-typescript": "4.0.2",
|
"gulp-typescript": "4.0.2",
|
||||||
"gulp-uglify": "3.0.0",
|
"gulp-uglify": "3.0.0",
|
||||||
"gulp-util": "3.0.8",
|
"gulp-util": "3.0.8",
|
||||||
"hard-source-webpack-plugin": "0.6.9",
|
"hard-source-webpack-plugin": "0.11.1",
|
||||||
"highlight.js": "9.12.0",
|
"highlight.js": "9.12.0",
|
||||||
"html-minifier": "3.5.15",
|
"html-minifier": "3.5.19",
|
||||||
"http-signature": "1.2.0",
|
"http-signature": "1.2.0",
|
||||||
"inquirer": "5.2.0",
|
"inquirer": "6.0.0",
|
||||||
"is-root": "2.0.0",
|
"is-root": "2.0.0",
|
||||||
"is-url": "1.2.4",
|
"is-url": "1.2.4",
|
||||||
"js-yaml": "3.11.0",
|
"js-yaml": "3.12.0",
|
||||||
"jsdom": "11.10.0",
|
"jsdom": "11.11.0",
|
||||||
"koa": "2.5.1",
|
"koa": "2.5.1",
|
||||||
"koa-bodyparser": "4.2.0",
|
"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",
|
||||||
"koa-json-body": "5.3.0",
|
"koa-json-body": "5.3.0",
|
||||||
@@ -142,44 +141,43 @@
|
|||||||
"koa-mount": "3.0.0",
|
"koa-mount": "3.0.0",
|
||||||
"koa-multer": "1.0.2",
|
"koa-multer": "1.0.2",
|
||||||
"koa-router": "7.4.0",
|
"koa-router": "7.4.0",
|
||||||
"koa-send": "4.1.3",
|
"koa-send": "5.0.0",
|
||||||
"koa-slow": "2.1.0",
|
"koa-slow": "2.1.0",
|
||||||
"koa-views": "6.1.4",
|
"koa-views": "6.1.4",
|
||||||
"kue": "0.11.6",
|
"kue": "0.11.6",
|
||||||
"license-checker": "20.0.0",
|
|
||||||
"loader-utils": "1.1.0",
|
"loader-utils": "1.1.0",
|
||||||
"mecab-async": "0.1.2",
|
"mecab-async": "0.1.2",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
"mocha": "5.2.0",
|
"mocha": "5.2.0",
|
||||||
"moji": "0.5.1",
|
"moji": "0.5.1",
|
||||||
"mongodb": "3.0.8",
|
"mongodb": "3.1.1",
|
||||||
"monk": "6.0.6",
|
"monk": "6.0.6",
|
||||||
"ms": "2.1.1",
|
"ms": "2.1.1",
|
||||||
"nan": "2.10.0",
|
"nan": "2.10.0",
|
||||||
"node-sass": "4.9.0",
|
"node-sass": "4.9.2",
|
||||||
"node-sass-json-importer": "3.2.0",
|
"node-sass-json-importer": "3.3.1",
|
||||||
"nopt": "4.0.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",
|
||||||
"os-utils": "0.0.14",
|
"os-utils": "0.0.14",
|
||||||
"parse5": "4.0.0",
|
"parse5": "5.0.0",
|
||||||
|
"portscanner": "2.2.0",
|
||||||
"progress-bar-webpack-plugin": "1.11.0",
|
"progress-bar-webpack-plugin": "1.11.0",
|
||||||
"prominence": "0.2.0",
|
"prominence": "0.2.0",
|
||||||
"promise-sequential": "1.1.1",
|
"promise-sequential": "1.1.1",
|
||||||
"pug": "2.0.3",
|
"pug": "2.0.3",
|
||||||
"punycode": "2.1.0",
|
"punycode": "2.1.1",
|
||||||
"qrcode": "1.2.0",
|
"qrcode": "1.2.0",
|
||||||
"ratelimiter": "3.0.3",
|
"ratelimiter": "3.1.0",
|
||||||
"recaptcha-promise": "0.1.3",
|
"recaptcha-promise": "0.1.3",
|
||||||
"reconnecting-websocket": "3.2.2",
|
"reconnecting-websocket": "3.2.2",
|
||||||
"redis": "2.8.0",
|
"redis": "2.8.0",
|
||||||
"request": "2.86.0",
|
"request": "2.87.0",
|
||||||
"request-promise-native": "1.0.5",
|
"request-promise-native": "1.0.5",
|
||||||
"rimraf": "2.6.2",
|
"rimraf": "2.6.2",
|
||||||
"rndstr": "1.0.0",
|
"rndstr": "1.0.0",
|
||||||
"s-age": "1.1.2",
|
"s-age": "1.1.2",
|
||||||
"sass-loader": "7.0.1",
|
"sass-loader": "7.0.3",
|
||||||
"seedrandom": "2.4.3",
|
"seedrandom": "2.4.3",
|
||||||
"single-line-log": "1.1.2",
|
"single-line-log": "1.1.2",
|
||||||
"speakeasy": "2.0.0",
|
"speakeasy": "2.0.0",
|
||||||
@@ -189,35 +187,40 @@
|
|||||||
"summaly": "2.0.6",
|
"summaly": "2.0.6",
|
||||||
"swagger-jsdoc": "1.9.7",
|
"swagger-jsdoc": "1.9.7",
|
||||||
"syuilo-password-strength": "0.0.1",
|
"syuilo-password-strength": "0.0.1",
|
||||||
"tcp-port-used": "0.1.2",
|
|
||||||
"textarea-caret": "3.1.0",
|
"textarea-caret": "3.1.0",
|
||||||
"tmp": "0.0.33",
|
"tmp": "0.0.33",
|
||||||
"ts-loader": "4.3.0",
|
"ts-loader": "4.4.1",
|
||||||
"ts-node": "6.0.3",
|
"ts-node": "7.0.0",
|
||||||
"tslint": "5.10.0",
|
"tslint": "5.10.0",
|
||||||
"typescript": "2.8.3",
|
"typescript": "2.9.2",
|
||||||
"typescript-eslint-parser": "15.0.0",
|
"typescript-eslint-parser": "16.0.1",
|
||||||
"uglify-es": "3.3.9",
|
"uglify-es": "3.3.9",
|
||||||
"url-loader": "1.0.1",
|
"url-loader": "1.0.1",
|
||||||
"uuid": "3.2.1",
|
"uuid": "3.3.2",
|
||||||
"v-animate-css": "0.0.2",
|
"v-animate-css": "0.0.2",
|
||||||
"vue": "2.5.16",
|
"vue": "2.5.16",
|
||||||
"vue-cropperjs": "2.2.0",
|
"vue-cropperjs": "2.2.1",
|
||||||
"vue-js-modal": "1.3.13",
|
"vue-js-modal": "1.3.16",
|
||||||
"vue-json-tree-view": "2.1.4",
|
"vue-json-tree-view": "2.1.4",
|
||||||
"vue-loader": "15.1.0",
|
"vue-loader": "15.2.4",
|
||||||
"vue-material": "^1.0.0-beta-10.2",
|
|
||||||
"vue-router": "3.0.1",
|
"vue-router": "3.0.1",
|
||||||
"vue-template-compiler": "2.5.16",
|
"vue-template-compiler": "2.5.16",
|
||||||
"vuedraggable": "2.16.0",
|
"vuedraggable": "2.16.0",
|
||||||
"vuex": "3.0.1",
|
"vuex": "3.0.1",
|
||||||
"vuex-persistedstate": "^2.5.4",
|
"vuex-persistedstate": "^2.5.4",
|
||||||
"web-push": "3.3.1",
|
"web-push": "3.3.2",
|
||||||
"webfinger.js": "2.6.6",
|
"webfinger.js": "2.6.6",
|
||||||
"webpack": "4.8.3",
|
"webpack": "4.16.0",
|
||||||
"webpack-cli": "2.1.3",
|
"webpack-cli": "3.0.8",
|
||||||
"websocket": "1.0.26",
|
"websocket": "1.0.26",
|
||||||
"ws": "5.1.1",
|
"ws": "5.2.2",
|
||||||
"xev": "2.0.0"
|
"xev": "2.0.1"
|
||||||
|
},
|
||||||
|
"greenkeeper": {
|
||||||
|
"ignore": [
|
||||||
|
"deepcopy",
|
||||||
|
"cafy",
|
||||||
|
"@types/gulp"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,11 +7,6 @@ html
|
|||||||
cursor progress !important
|
cursor progress !important
|
||||||
|
|
||||||
body
|
body
|
||||||
// for md
|
|
||||||
font-size 16px !important
|
|
||||||
line-height initial !important
|
|
||||||
letter-spacing initial !important
|
|
||||||
|
|
||||||
overflow-wrap break-word
|
overflow-wrap break-word
|
||||||
|
|
||||||
#error
|
#error
|
||||||
|
|||||||
1
src/client/app/auth/assets/icon.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!-- Generator: Gravit.io --><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="isolation:isolate" viewBox="0 0 512 512" width="512" height="512"><defs><clipPath id="_clipPath_P6eAE2OaBltOJ3gHGVajfqsOnfv4xIns"><rect width="512" height="512"/></clipPath></defs><g clip-path="url(#_clipPath_P6eAE2OaBltOJ3gHGVajfqsOnfv4xIns)"><clipPath id="_clipPath_P6q7MZAUp3XpQhVgs2GuAbegX9v4gkom"><rect x="0" y="0" width="512" height="512" transform="matrix(1,0,0,1,0,0)" fill="rgb(255,255,255)"/></clipPath><g clip-path="url(#_clipPath_P6q7MZAUp3XpQhVgs2GuAbegX9v4gkom)"><g id="Group"><g id="g4502"><g id="g5125"><g id="text4489"><path d=" M 190.093 359.243 C 167.923 359.32 148.881 345.963 139.9 330.409 C 135.104 323.615 125.617 321.198 125.482 330.409 L 125.482 372.939 C 125.482 390.026 119.253 404.799 106.794 417.258 C 94.69 429.362 79.917 435.413 62.474 435.413 C 45.387 435.413 30.614 429.362 18.155 417.258 C 6.052 404.799 0 390.026 0 372.939 L 0 139.061 C 0 125.89 3.738 113.965 11.213 103.285 C 19.045 92.25 29.012 84.596 41.116 80.325 C 47.879 77.833 54.999 76.587 62.474 76.587 C 81.697 76.587 97.716 84.062 110.531 99.013 C 117.295 106.489 121.211 110.405 122.279 110.761 C 122.279 110.761 173.043 172.145 174.467 173.213 C 175.891 174.281 180.073 182.446 190.093 182.446 C 200.112 182.446 204.829 174.281 206.253 173.213 C 207.676 172.145 258.44 110.761 258.44 110.761 C 258.796 111.117 262.534 107.201 269.654 99.013 C 282.825 84.062 299.022 76.587 318.245 76.587 C 325.364 76.587 332.484 77.833 339.603 80.325 C 351.707 84.596 361.496 92.25 368.972 103.285 C 376.803 113.965 380.719 125.89 380.719 139.061 L 380.719 372.939 C 380.719 390.026 374.489 404.799 362.03 417.258 C 349.927 429.362 335.154 435.413 317.711 435.413 C 300.624 435.413 285.851 429.362 273.391 417.258 C 261.288 404.799 255.237 390.026 255.237 372.939 L 255.237 330.409 C 254.184 318.802 243.925 326.116 240.285 330.409 C 230.674 348.208 212.262 359.167 190.093 359.243 Z M 457.535 184.448 Q 435.109 184.448 419.09 168.963 Q 403.605 152.944 403.605 130.518 Q 403.605 108.091 419.09 92.606 Q 435.109 76.587 457.535 76.587 Q 479.962 76.587 495.981 92.606 Q 512 108.091 512 130.518 Q 512 152.944 495.981 168.963 Q 479.962 184.448 457.535 184.448 Z M 458.069 195.128 Q 480.496 195.128 495.981 211.147 Q 512 227.166 512 249.592 L 512 381.482 Q 512 403.909 495.981 419.928 Q 480.496 435.413 458.069 435.413 Q 435.643 435.413 419.624 419.928 Q 403.605 403.909 403.605 381.482 L 403.605 249.592 Q 403.605 227.166 419.624 211.147 Q 435.643 195.128 458.069 195.128 Z " fill-rule="evenodd" fill="rgb(157,157,157)"/></g></g></g></g></g></g></svg>
|
||||||
|
After Width: | Height: | Size: 2.6 KiB |
@@ -1,7 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
||||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
|
|
||||||
y="0px" width="1024px" height="512px" viewBox="0 256 1024 512" enable-background="new 0 256 1024 512" xml:space="preserve">
|
|
||||||
<polyline opacity="0.5" fill="none" stroke="#000000" stroke-width="34" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="
|
|
||||||
896.5,608.5 800.5,416.5 704.5,608.5 608.5,416.5 512.5,608.5 416.5,416.5 320.5,608.5 224.5,416.5 128.5,608.5 "/>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 646 B |
@@ -20,6 +20,7 @@ init(launch => {
|
|||||||
// Init router
|
// Init router
|
||||||
const router = new VueRouter({
|
const router = new VueRouter({
|
||||||
mode: 'history',
|
mode: 'history',
|
||||||
|
base: '/auth/',
|
||||||
routes: [
|
routes: [
|
||||||
{ path: '/:token', component: Index },
|
{ path: '/:token', component: Index },
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="index">
|
<div class="index">
|
||||||
<main v-if="os.isSignedIn">
|
<main v-if="$store.getters.isSignedIn">
|
||||||
<p class="fetching" v-if="fetching">読み込み中<mk-ellipsis/></p>
|
<p class="fetching" v-if="fetching">読み込み中<mk-ellipsis/></p>
|
||||||
<x-form
|
<x-form
|
||||||
|
class="form"
|
||||||
ref="form"
|
ref="form"
|
||||||
v-if="state == 'waiting'"
|
v-if="state == 'waiting'"
|
||||||
:session="session"
|
:session="session"
|
||||||
@@ -22,11 +23,11 @@
|
|||||||
<p>セッションが存在しません。</p>
|
<p>セッションが存在しません。</p>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
<main class="signin" v-if="!os.isSignedIn">
|
<main class="signin" v-if="!$store.getters.isSignedIn">
|
||||||
<h1>サインインしてください</h1>
|
<h1>サインインしてください</h1>
|
||||||
<mk-signin/>
|
<mk-signin/>
|
||||||
</main>
|
</main>
|
||||||
<footer><img src="/assets/auth/logo.svg" alt="Misskey"/></footer>
|
<footer><img src="/assets/auth/icon.svg" alt="Misskey"/></footer>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -51,7 +52,7 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
if (!this.$root.$data.os.isSignedIn) return;
|
if (!this.$store.getters.isSignedIn) return;
|
||||||
|
|
||||||
// Fetch session
|
// Fetch session
|
||||||
(this as any).api('auth/session/show', {
|
(this as any).api('auth/session/show', {
|
||||||
@@ -62,7 +63,7 @@ export default Vue.extend({
|
|||||||
|
|
||||||
// 既に連携していた場合
|
// 既に連携していた場合
|
||||||
if (this.session.app.isAuthorized) {
|
if (this.session.app.isAuthorized) {
|
||||||
this.$root.$data.os.api('auth/accept', {
|
(this as any).api('auth/accept', {
|
||||||
token: this.session.token
|
token: this.session.token
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.accepted();
|
this.accepted();
|
||||||
@@ -72,6 +73,7 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
this.state = 'fetch-session-error';
|
this.state = 'fetch-session-error';
|
||||||
|
this.fetching = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -101,7 +103,7 @@ export default Vue.extend({
|
|||||||
padding 32px
|
padding 32px
|
||||||
color #555
|
color #555
|
||||||
|
|
||||||
> div
|
> div:not(.form)
|
||||||
padding 64px
|
padding 64px
|
||||||
|
|
||||||
> h1
|
> h1
|
||||||
@@ -142,8 +144,8 @@ export default Vue.extend({
|
|||||||
> footer
|
> footer
|
||||||
> img
|
> img
|
||||||
display block
|
display block
|
||||||
width 64px
|
width 32px
|
||||||
height 64px
|
height 32px
|
||||||
margin 0 auto
|
margin 16px auto
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ html
|
|||||||
| Misskey
|
| Misskey
|
||||||
|
|
||||||
block desc
|
block desc
|
||||||
meta(name='description' content='A SNS')
|
meta(name='description' content='A planet of fediverse')
|
||||||
|
|
||||||
block meta
|
block meta
|
||||||
|
|
||||||
@@ -42,7 +42,7 @@ html
|
|||||||
| JavaScriptを有効にしてください
|
| JavaScriptを有効にしてください
|
||||||
br
|
br
|
||||||
| Please turn on your JavaScript
|
| Please turn on your JavaScript
|
||||||
div#ini: p
|
div#ini.
|
||||||
span .
|
<svg viewBox="0 0 50 50">
|
||||||
span .
|
<path fill=#{themeColor} d="M25.251,6.461c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615V6.461z" />
|
||||||
span .
|
</svg>
|
||||||
|
|||||||
@@ -32,9 +32,9 @@
|
|||||||
//#region Detect app name
|
//#region Detect app name
|
||||||
let app = null;
|
let app = null;
|
||||||
|
|
||||||
if (url.pathname == '/docs') app = 'docs';
|
if (url.pathname == '/docs' || url.pathname.startsWith('/docs/')) app = 'docs';
|
||||||
if (url.pathname == '/dev') app = 'dev';
|
if (url.pathname == '/dev' || url.pathname.startsWith('/dev/')) app = 'dev';
|
||||||
if (url.pathname == '/auth') app = 'auth';
|
if (url.pathname == '/auth' || url.pathname.startsWith('/auth/')) app = 'auth';
|
||||||
//#endregion
|
//#endregion
|
||||||
|
|
||||||
//#region Detect the user language
|
//#region Detect the user language
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ export default function<T extends object>(data: {
|
|||||||
widget: {
|
widget: {
|
||||||
type: Object
|
type: Object
|
||||||
},
|
},
|
||||||
isMobile: {
|
platform: {
|
||||||
type: Boolean,
|
type: String,
|
||||||
default: false
|
required: true
|
||||||
},
|
},
|
||||||
isCustomizeMode: {
|
isCustomizeMode: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
@@ -66,17 +66,10 @@ export default function<T extends object>(data: {
|
|||||||
|
|
||||||
this.bakeProps();
|
this.bakeProps();
|
||||||
|
|
||||||
if (this.isMobile) {
|
(this as any).api('i/update_widget', {
|
||||||
(this as any).api('i/update_mobile_home', {
|
|
||||||
id: this.id,
|
id: this.id,
|
||||||
data: this.props
|
data: this.props
|
||||||
});
|
});
|
||||||
} else {
|
|
||||||
(this as any).api('i/update_home', {
|
|
||||||
id: this.id,
|
|
||||||
data: this.props
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
export default function(note) {
|
|
||||||
if (note.text == null) return true;
|
|
||||||
|
|
||||||
let txt = note.text;
|
|
||||||
|
|
||||||
if (note.media) {
|
|
||||||
note.media.forEach(file => {
|
|
||||||
txt = txt.replace(file.url, '');
|
|
||||||
if (file.src) txt = txt.replace(file.src, '');
|
|
||||||
});
|
|
||||||
|
|
||||||
if (txt == '') return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
@@ -23,7 +23,10 @@ export default async function(mios: MiOS, force = false, silent = false) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!silent) {
|
if (!silent) {
|
||||||
alert('%i18n:common.update-available%'.replace('{newer}', newer).replace('{current}', current));
|
mios.apis.dialog({
|
||||||
|
title: '%i18n:common.update-available-title%',
|
||||||
|
text: '%i18n:common.update-available%'.replace('{newer}', newer).replace('{current}', current)
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
return newer;
|
return newer;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import getNoteSummary from '../../../../renderers/get-note-summary';
|
import getNoteSummary from '../../../../misc/get-note-summary';
|
||||||
import getReactionEmoji from '../../../../renderers/get-reaction-emoji';
|
import getReactionEmoji from '../../../../misc/get-reaction-emoji';
|
||||||
import getUserName from '../../../../renderers/get-user-name';
|
import getUserName from '../../../../misc/get-user-name';
|
||||||
|
|
||||||
type Notification = {
|
type Notification = {
|
||||||
title: string;
|
title: string;
|
||||||
@@ -20,6 +20,22 @@ export default function(type, data): Notification {
|
|||||||
icon: data.url + '?thumbnail&size=64'
|
icon: data.url + '?thumbnail&size=64'
|
||||||
};
|
};
|
||||||
|
|
||||||
|
case 'unread_messaging_message':
|
||||||
|
return {
|
||||||
|
title: `${getUserName(data.user)}さんからメッセージ:`,
|
||||||
|
body: data.text, // TODO: getMessagingMessageSummary(data),
|
||||||
|
icon: data.user.avatarUrl + '?thumbnail&size=64'
|
||||||
|
};
|
||||||
|
|
||||||
|
case 'reversi_invited':
|
||||||
|
return {
|
||||||
|
title: '対局への招待があります',
|
||||||
|
body: `${getUserName(data.parent)}さんから`,
|
||||||
|
icon: data.parent.avatarUrl + '?thumbnail&size=64'
|
||||||
|
};
|
||||||
|
|
||||||
|
case 'notification':
|
||||||
|
switch (data.type) {
|
||||||
case 'mention':
|
case 'mention':
|
||||||
return {
|
return {
|
||||||
title: `${getUserName(data.user)}さんから:`,
|
title: `${getUserName(data.user)}さんから:`,
|
||||||
@@ -48,19 +64,9 @@ export default function(type, data): Notification {
|
|||||||
icon: data.user.avatarUrl + '?thumbnail&size=64'
|
icon: data.user.avatarUrl + '?thumbnail&size=64'
|
||||||
};
|
};
|
||||||
|
|
||||||
case 'unread_messaging_message':
|
default:
|
||||||
return {
|
return null;
|
||||||
title: `${getUserName(data.user)}さんからメッセージ:`,
|
}
|
||||||
body: data.text, // TODO: getMessagingMessageSummary(data),
|
|
||||||
icon: data.user.avatarUrl + '?thumbnail&size=64'
|
|
||||||
};
|
|
||||||
|
|
||||||
case 'othello_invited':
|
|
||||||
return {
|
|
||||||
title: '対局への招待があります',
|
|
||||||
body: `${getUserName(data.parent)}さんから`,
|
|
||||||
icon: data.parent.avatarUrl + '?thumbnail&size=64'
|
|
||||||
};
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
export default () => [
|
export default () => [
|
||||||
'(=^・・^=)',
|
'(=^・・^=)',
|
||||||
'v(‘ω’)v',
|
'v(\'ω\')v',
|
||||||
'🐡( \'-\' 🐡 )フグパンチ!!!!'
|
'🐡( \'-\' 🐡 )フグパンチ!!!!'
|
||||||
][Math.floor(Math.random() * 3)];
|
][Math.floor(Math.random() * 3)];
|
||||||
|
|||||||
@@ -0,0 +1,11 @@
|
|||||||
|
import Stream from '../../stream';
|
||||||
|
import MiOS from '../../../../../mios';
|
||||||
|
|
||||||
|
export class ReversiGameStream extends Stream {
|
||||||
|
constructor(os: MiOS, me, game) {
|
||||||
|
super(os, 'games/reversi-game', {
|
||||||
|
i: me ? me.token : null,
|
||||||
|
game: game.id
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
import StreamManager from '../../stream-manager';
|
||||||
|
import Stream from '../../stream';
|
||||||
|
import MiOS from '../../../../../mios';
|
||||||
|
|
||||||
|
export class ReversiStream extends Stream {
|
||||||
|
constructor(os: MiOS, me) {
|
||||||
|
super(os, 'games/reversi', {
|
||||||
|
i: me.token
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export class ReversiStreamManager extends StreamManager<ReversiStream> {
|
||||||
|
private me;
|
||||||
|
private os: MiOS;
|
||||||
|
|
||||||
|
constructor(os: MiOS, me) {
|
||||||
|
super();
|
||||||
|
|
||||||
|
this.me = me;
|
||||||
|
this.os = os;
|
||||||
|
}
|
||||||
|
|
||||||
|
public getConnection() {
|
||||||
|
if (this.connection == null) {
|
||||||
|
this.connection = new ReversiStream(this.os, this.me);
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.connection;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,3 @@
|
|||||||
import * as merge from 'object-assign-deep';
|
|
||||||
|
|
||||||
import Stream from './stream';
|
import Stream from './stream';
|
||||||
import StreamManager from './stream-manager';
|
import StreamManager from './stream-manager';
|
||||||
import MiOS from '../../../mios';
|
import MiOS from '../../../mios';
|
||||||
@@ -20,14 +18,36 @@ export class HomeStream extends Stream {
|
|||||||
}, 1000 * 60);
|
}, 1000 * 60);
|
||||||
|
|
||||||
// 自分の情報が更新されたとき
|
// 自分の情報が更新されたとき
|
||||||
this.on('i_updated', i => {
|
this.on('meUpdated', i => {
|
||||||
if (os.debug) {
|
if (os.debug) {
|
||||||
console.log('I updated:', i);
|
console.log('I updated:', i);
|
||||||
}
|
}
|
||||||
merge(me, i);
|
|
||||||
|
|
||||||
// キャッシュ更新
|
os.store.dispatch('mergeMe', i);
|
||||||
os.bakeMe();
|
});
|
||||||
|
|
||||||
|
this.on('read_all_notifications', () => {
|
||||||
|
os.store.dispatch('mergeMe', {
|
||||||
|
hasUnreadNotification: false
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.on('unread_notification', () => {
|
||||||
|
os.store.dispatch('mergeMe', {
|
||||||
|
hasUnreadNotification: true
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.on('read_all_messaging_messages', () => {
|
||||||
|
os.store.dispatch('mergeMe', {
|
||||||
|
hasUnreadMessagingMessage: false
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.on('unread_messaging_message', () => {
|
||||||
|
os.store.dispatch('mergeMe', {
|
||||||
|
hasUnreadMessagingMessage: true
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
this.on('clientSettingUpdated', x => {
|
this.on('clientSettingUpdated', x => {
|
||||||
@@ -38,25 +58,18 @@ export class HomeStream extends Stream {
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.on('home_updated', x => {
|
this.on('home_updated', x => {
|
||||||
if (x.home) {
|
os.store.commit('settings/setHome', x);
|
||||||
os.store.commit('settings/setHome', x.home);
|
|
||||||
} else {
|
|
||||||
os.store.commit('settings/setHomeWidget', {
|
|
||||||
id: x.id,
|
|
||||||
data: x.data
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
this.on('mobile_home_updated', x => {
|
this.on('mobile_home_updated', x => {
|
||||||
if (x.home) {
|
os.store.commit('settings/setMobileHome', x);
|
||||||
os.store.commit('settings/setMobileHome', x.home);
|
});
|
||||||
} else {
|
|
||||||
os.store.commit('settings/setMobileHomeWidget', {
|
this.on('widgetUpdated', x => {
|
||||||
|
os.store.commit('settings/setWidget', {
|
||||||
id: x.id,
|
id: x.id,
|
||||||
data: x.data
|
data: x.data
|
||||||
});
|
});
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// トークンが再生成されたとき
|
// トークンが再生成されたとき
|
||||||
|
|||||||
@@ -1,16 +1,19 @@
|
|||||||
import StreamManager from './stream-manager';
|
|
||||||
import Stream from './stream';
|
import Stream from './stream';
|
||||||
|
import StreamManager from './stream-manager';
|
||||||
import MiOS from '../../../mios';
|
import MiOS from '../../../mios';
|
||||||
|
|
||||||
export class OthelloStream extends Stream {
|
/**
|
||||||
|
* Hybrid timeline stream connection
|
||||||
|
*/
|
||||||
|
export class HybridTimelineStream extends Stream {
|
||||||
constructor(os: MiOS, me) {
|
constructor(os: MiOS, me) {
|
||||||
super(os, 'othello', {
|
super(os, 'hybrid-timeline', {
|
||||||
i: me.token
|
i: me.token
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class OthelloStreamManager extends StreamManager<OthelloStream> {
|
export class HybridTimelineStreamManager extends StreamManager<HybridTimelineStream> {
|
||||||
private me;
|
private me;
|
||||||
private os: MiOS;
|
private os: MiOS;
|
||||||
|
|
||||||
@@ -23,7 +26,7 @@ export class OthelloStreamManager extends StreamManager<OthelloStream> {
|
|||||||
|
|
||||||
public getConnection() {
|
public getConnection() {
|
||||||
if (this.connection == null) {
|
if (this.connection == null) {
|
||||||
this.connection = new OthelloStream(this.os, this.me);
|
this.connection = new HybridTimelineStream(this.os, this.me);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.connection;
|
return this.connection;
|
||||||
@@ -3,15 +3,15 @@ import StreamManager from './stream-manager';
|
|||||||
import MiOS from '../../../mios';
|
import MiOS from '../../../mios';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Server stream connection
|
* Notes stats stream connection
|
||||||
*/
|
*/
|
||||||
export class ServerStream extends Stream {
|
export class NotesStatsStream extends Stream {
|
||||||
constructor(os: MiOS) {
|
constructor(os: MiOS) {
|
||||||
super(os, 'server');
|
super(os, 'notes-stats');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class ServerStreamManager extends StreamManager<ServerStream> {
|
export class NotesStatsStreamManager extends StreamManager<NotesStatsStream> {
|
||||||
private os: MiOS;
|
private os: MiOS;
|
||||||
|
|
||||||
constructor(os: MiOS) {
|
constructor(os: MiOS) {
|
||||||
@@ -22,7 +22,7 @@ export class ServerStreamManager extends StreamManager<ServerStream> {
|
|||||||
|
|
||||||
public getConnection() {
|
public getConnection() {
|
||||||
if (this.connection == null) {
|
if (this.connection == null) {
|
||||||
this.connection = new ServerStream(this.os);
|
this.connection = new NotesStatsStream(this.os);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.connection;
|
return this.connection;
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
import Stream from './stream';
|
|
||||||
import MiOS from '../../../mios';
|
|
||||||
|
|
||||||
export class OthelloGameStream extends Stream {
|
|
||||||
constructor(os: MiOS, me, game) {
|
|
||||||
super(os, 'othello-game', {
|
|
||||||
i: me ? me.token : null,
|
|
||||||
game: game.id
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
30
src/client/app/common/scripts/streaming/server-stats.ts
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
import Stream from './stream';
|
||||||
|
import StreamManager from './stream-manager';
|
||||||
|
import MiOS from '../../../mios';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Server stats stream connection
|
||||||
|
*/
|
||||||
|
export class ServerStatsStream extends Stream {
|
||||||
|
constructor(os: MiOS) {
|
||||||
|
super(os, 'server-stats');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export class ServerStatsStreamManager extends StreamManager<ServerStatsStream> {
|
||||||
|
private os: MiOS;
|
||||||
|
|
||||||
|
constructor(os: MiOS) {
|
||||||
|
super();
|
||||||
|
|
||||||
|
this.os = os;
|
||||||
|
}
|
||||||
|
|
||||||
|
public getConnection() {
|
||||||
|
if (this.connection == null) {
|
||||||
|
this.connection = new ServerStatsStream(this.os);
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.connection;
|
||||||
|
}
|
||||||
|
}
|
||||||
127
src/client/app/common/views/components/analog-clock.vue
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
<template>
|
||||||
|
<svg class="mk-analog-clock" viewBox="0 0 10 10" preserveAspectRatio="none">
|
||||||
|
<circle v-for="angle, i in graduations"
|
||||||
|
:cx="5 + (Math.sin(angle) * (5 - graduationsPadding))"
|
||||||
|
:cy="5 - (Math.cos(angle) * (5 - graduationsPadding))"
|
||||||
|
:r="i % 5 == 0 ? 0.125 : 0.05"
|
||||||
|
:fill="i % 5 == 0 ? majorGraduationColor : minorGraduationColor"/>
|
||||||
|
|
||||||
|
<line
|
||||||
|
:x1="5 - (Math.sin(sAngle) * (sHandLengthRatio * handsTailLength))"
|
||||||
|
:y1="5 + (Math.cos(sAngle) * (sHandLengthRatio * handsTailLength))"
|
||||||
|
:x2="5 + (Math.sin(sAngle) * ((sHandLengthRatio * 5) - handsPadding))"
|
||||||
|
:y2="5 - (Math.cos(sAngle) * ((sHandLengthRatio * 5) - handsPadding))"
|
||||||
|
:stroke="sHandColor"
|
||||||
|
stroke-width="0.05"/>
|
||||||
|
<line
|
||||||
|
:x1="5 - (Math.sin(mAngle) * (mHandLengthRatio * handsTailLength))"
|
||||||
|
:y1="5 + (Math.cos(mAngle) * (mHandLengthRatio * handsTailLength))"
|
||||||
|
:x2="5 + (Math.sin(mAngle) * ((mHandLengthRatio * 5) - handsPadding))"
|
||||||
|
:y2="5 - (Math.cos(mAngle) * ((mHandLengthRatio * 5) - handsPadding))"
|
||||||
|
:stroke="mHandColor"
|
||||||
|
stroke-width="0.1"/>
|
||||||
|
<line
|
||||||
|
:x1="5 - (Math.sin(hAngle) * (hHandLengthRatio * handsTailLength))"
|
||||||
|
:y1="5 + (Math.cos(hAngle) * (hHandLengthRatio * handsTailLength))"
|
||||||
|
:x2="5 + (Math.sin(hAngle) * ((hHandLengthRatio * 5) - handsPadding))"
|
||||||
|
:y2="5 - (Math.cos(hAngle) * ((hHandLengthRatio * 5) - handsPadding))"
|
||||||
|
:stroke="hHandColor"
|
||||||
|
stroke-width="0.1"/>
|
||||||
|
</svg>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
import { themeColor } from '../../../config';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
dark: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
now: new Date(),
|
||||||
|
clock: null,
|
||||||
|
|
||||||
|
graduationsPadding: 0.5,
|
||||||
|
handsPadding: 1,
|
||||||
|
handsTailLength: 0.7,
|
||||||
|
hHandLengthRatio: 0.75,
|
||||||
|
mHandLengthRatio: 1,
|
||||||
|
sHandLengthRatio: 1
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
computed: {
|
||||||
|
majorGraduationColor(): string {
|
||||||
|
return this.dark ? 'rgba(255, 255, 255, 0.3)' : 'rgba(0, 0, 0, 0.3)';
|
||||||
|
},
|
||||||
|
minorGraduationColor(): string {
|
||||||
|
return this.dark ? 'rgba(255, 255, 255, 0.2)' : 'rgba(0, 0, 0, 0.2)';
|
||||||
|
},
|
||||||
|
|
||||||
|
sHandColor(): string {
|
||||||
|
return this.dark ? 'rgba(255, 255, 255, 0.5)' : 'rgba(0, 0, 0, 0.3)';
|
||||||
|
},
|
||||||
|
mHandColor(): string {
|
||||||
|
return this.dark ? '#fff' : '#777';
|
||||||
|
},
|
||||||
|
hHandColor(): string {
|
||||||
|
return themeColor;
|
||||||
|
},
|
||||||
|
|
||||||
|
s(): number {
|
||||||
|
return this.now.getSeconds();
|
||||||
|
},
|
||||||
|
m(): number {
|
||||||
|
return this.now.getMinutes();
|
||||||
|
},
|
||||||
|
h(): number {
|
||||||
|
return this.now.getHours();
|
||||||
|
},
|
||||||
|
|
||||||
|
hAngle(): number {
|
||||||
|
return Math.PI * (this.h % 12 + this.m / 60) / 6;
|
||||||
|
},
|
||||||
|
mAngle(): number {
|
||||||
|
return Math.PI * (this.m + this.s / 60) / 30;
|
||||||
|
},
|
||||||
|
sAngle(): number {
|
||||||
|
return Math.PI * this.s / 30;
|
||||||
|
},
|
||||||
|
|
||||||
|
graduations(): any {
|
||||||
|
const angles = [];
|
||||||
|
for (let i = 0; i < 60; i++) {
|
||||||
|
const angle = Math.PI * i / 30;
|
||||||
|
angles.push(angle);
|
||||||
|
}
|
||||||
|
|
||||||
|
return angles;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
mounted() {
|
||||||
|
this.clock = setInterval(this.tick, 1000);
|
||||||
|
},
|
||||||
|
|
||||||
|
beforeDestroy() {
|
||||||
|
clearInterval(this.clock);
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
tick() {
|
||||||
|
this.now = new Date();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
.mk-analog-clock
|
||||||
|
display block
|
||||||
|
</style>
|
||||||
@@ -32,7 +32,7 @@ export default Vue.extend({
|
|||||||
? `rgb(${ this.user.avatarColor.join(',') })`
|
? `rgb(${ this.user.avatarColor.join(',') })`
|
||||||
: null,
|
: null,
|
||||||
backgroundImage: this.lightmode ? null : `url(${ this.user.avatarUrl }?thumbnail)`,
|
backgroundImage: this.lightmode ? null : `url(${ this.user.avatarUrl }?thumbnail)`,
|
||||||
borderRadius: (this as any).clientSettings.circleIcons ? '100%' : null
|
borderRadius: this.$store.state.settings.circleIcons ? '100%' : null
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,9 +13,6 @@
|
|||||||
|
|
||||||
.a
|
.a
|
||||||
display block
|
display block
|
||||||
position absolute
|
|
||||||
top 0
|
|
||||||
right 0
|
|
||||||
|
|
||||||
> svg
|
> svg
|
||||||
display block
|
display block
|
||||||
|
|||||||
@@ -3,26 +3,41 @@
|
|||||||
<header><b>{{ blackUser.name }}</b>(黒) vs <b>{{ whiteUser.name }}</b>(白)</header>
|
<header><b>{{ blackUser.name }}</b>(黒) vs <b>{{ whiteUser.name }}</b>(白)</header>
|
||||||
|
|
||||||
<div style="overflow: hidden">
|
<div style="overflow: hidden">
|
||||||
<p class="turn" v-if="!iAmPlayer && !game.isEnded">{{ turnUser.name }}のターンです<mk-ellipsis/></p>
|
<p class="turn" v-if="!iAmPlayer && !game.isEnded">{{ '%i18n:common.reversi.turn-of%'.replace('{}', turnUser.name) }}<mk-ellipsis/></p>
|
||||||
<p class="turn" v-if="logPos != logs.length">{{ turnUser.name }}のターン</p>
|
<p class="turn" v-if="logPos != logs.length">{{ '%i18n:common.reversi.past-turn-of%'.replace('{}', turnUser.name) }}</p>
|
||||||
<p class="turn1" v-if="iAmPlayer && !game.isEnded && !isMyTurn">相手のターンです<mk-ellipsis/></p>
|
<p class="turn1" v-if="iAmPlayer && !game.isEnded && !isMyTurn">%i18n:common.reversi.opponent-turn%<mk-ellipsis/></p>
|
||||||
<p class="turn2" v-if="iAmPlayer && !game.isEnded && isMyTurn" v-animate-css="{ classes: 'tada', iteration: 'infinite' }">あなたのターンです</p>
|
<p class="turn2" v-if="iAmPlayer && !game.isEnded && isMyTurn" v-animate-css="{ classes: 'tada', iteration: 'infinite' }">%i18n:common.reversi.my-turn%</p>
|
||||||
<p class="result" v-if="game.isEnded && logPos == logs.length">
|
<p class="result" v-if="game.isEnded && logPos == logs.length">
|
||||||
<template v-if="game.winner"><b>{{ game.winner.name }}</b>の勝ち{{ game.settings.isLlotheo ? ' (ロセオ)' : '' }}</template>
|
<template v-if="game.winner"><b>{{ game.winner.name }}</b>の勝ち{{ game.settings.isLlotheo ? ' (ロセオ)' : '' }}</template>
|
||||||
<template v-else>引き分け</template>
|
<template v-else>%i18n:common.reversi.drawn%</template>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="board" :style="{ 'grid-template-rows': `repeat(${ game.settings.map.length }, 1fr)`, 'grid-template-columns': `repeat(${ game.settings.map[0].length }, 1fr)` }">
|
<div class="board">
|
||||||
|
<div class="labels-x" v-if="this.$store.state.settings.reversiBoardLabels">
|
||||||
|
<span v-for="i in game.settings.map[0].length">{{ String.fromCharCode(64 + i) }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="flex">
|
||||||
|
<div class="labels-y" v-if="this.$store.state.settings.reversiBoardLabels">
|
||||||
|
<div v-for="i in game.settings.map.length">{{ i }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="cells" :style="cellsStyle">
|
||||||
<div v-for="(stone, i) in o.board"
|
<div v-for="(stone, i) in o.board"
|
||||||
:class="{ empty: stone == null, none: o.map[i] == 'null', isEnded: game.isEnded, myTurn: !game.isEnded && isMyTurn, can: turnUser ? o.canPut(turnUser.id == blackUser.id, i) : null, prev: o.prevPos == i }"
|
:class="{ empty: stone == null, none: o.map[i] == 'null', isEnded: game.isEnded, myTurn: !game.isEnded && isMyTurn, can: turnUser ? o.canPut(turnUser.id == blackUser.id, i) : null, prev: o.prevPos == i }"
|
||||||
@click="set(i)"
|
@click="set(i)"
|
||||||
:title="'[' + (o.transformPosToXy(i)[0] + 1) + ', ' + (o.transformPosToXy(i)[1] + 1) + '] (' + i + ')'"
|
:title="`${String.fromCharCode(65 + o.transformPosToXy(i)[0])}${o.transformPosToXy(i)[1] + 1}`">
|
||||||
>
|
|
||||||
<img v-if="stone === true" :src="`${blackUser.avatarUrl}?thumbnail&size=128`" alt="">
|
<img v-if="stone === true" :src="`${blackUser.avatarUrl}?thumbnail&size=128`" alt="">
|
||||||
<img v-if="stone === false" :src="`${whiteUser.avatarUrl}?thumbnail&size=128`" alt="">
|
<img v-if="stone === false" :src="`${whiteUser.avatarUrl}?thumbnail&size=128`" alt="">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="labels-y" v-if="this.$store.state.settings.reversiBoardLabels">
|
||||||
|
<div v-for="i in game.settings.map.length">{{ i }}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="labels-x" v-if="this.$store.state.settings.reversiBoardLabels">
|
||||||
|
<span v-for="i in game.settings.map[0].length">{{ String.fromCharCode(64 + i) }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<p class="status"><b>{{ logPos }}ターン目</b> 黒:{{ o.blackCount }} 白:{{ o.whiteCount }} 合計:{{ o.blackCount + o.whiteCount }}</p>
|
<p class="status"><b>{{ logPos }}ターン目</b> 黒:{{ o.blackCount }} 白:{{ o.whiteCount }} 合計:{{ o.blackCount + o.whiteCount }}</p>
|
||||||
|
|
||||||
@@ -43,8 +58,8 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import * as CRC32 from 'crc-32';
|
import * as CRC32 from 'crc-32';
|
||||||
import Othello, { Color } from '../../../../../othello/core';
|
import Reversi, { Color } from '../../../../../../../games/reversi/core';
|
||||||
import { url } from '../../../config';
|
import { url } from '../../../../../config';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: ['initGame', 'connection'],
|
props: ['initGame', 'connection'],
|
||||||
@@ -52,7 +67,7 @@ export default Vue.extend({
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
game: null,
|
game: null,
|
||||||
o: null as Othello,
|
o: null as Reversi,
|
||||||
logs: [],
|
logs: [],
|
||||||
logPos: 0,
|
logPos: 0,
|
||||||
pollingClock: null
|
pollingClock: null
|
||||||
@@ -61,13 +76,13 @@ export default Vue.extend({
|
|||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
iAmPlayer(): boolean {
|
iAmPlayer(): boolean {
|
||||||
if (!(this as any).os.isSignedIn) return false;
|
if (!this.$store.getters.isSignedIn) return false;
|
||||||
return this.game.user1Id == (this as any).os.i.id || this.game.user2Id == (this as any).os.i.id;
|
return this.game.user1Id == this.$store.state.i.id || this.game.user2Id == this.$store.state.i.id;
|
||||||
},
|
},
|
||||||
myColor(): Color {
|
myColor(): Color {
|
||||||
if (!this.iAmPlayer) return null;
|
if (!this.iAmPlayer) return null;
|
||||||
if (this.game.user1Id == (this as any).os.i.id && this.game.black == 1) return true;
|
if (this.game.user1Id == this.$store.state.i.id && this.game.black == 1) return true;
|
||||||
if (this.game.user2Id == (this as any).os.i.id && this.game.black == 2) return true;
|
if (this.game.user2Id == this.$store.state.i.id && this.game.black == 2) return true;
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
opColor(): Color {
|
opColor(): Color {
|
||||||
@@ -91,14 +106,20 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
isMyTurn(): boolean {
|
isMyTurn(): boolean {
|
||||||
if (this.turnUser == null) return null;
|
if (this.turnUser == null) return null;
|
||||||
return this.turnUser.id == (this as any).os.i.id;
|
return this.turnUser.id == this.$store.state.i.id;
|
||||||
|
},
|
||||||
|
cellsStyle(): any {
|
||||||
|
return {
|
||||||
|
'grid-template-rows': `repeat(${ this.game.settings.map.length }, 1fr)`,
|
||||||
|
'grid-template-columns': `repeat(${ this.game.settings.map[0].length }, 1fr)`
|
||||||
|
};
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
logPos(v) {
|
logPos(v) {
|
||||||
if (!this.game.isEnded) return;
|
if (!this.game.isEnded) return;
|
||||||
this.o = new Othello(this.game.settings.map, {
|
this.o = new Reversi(this.game.settings.map, {
|
||||||
isLlotheo: this.game.settings.isLlotheo,
|
isLlotheo: this.game.settings.isLlotheo,
|
||||||
canPutEverywhere: this.game.settings.canPutEverywhere,
|
canPutEverywhere: this.game.settings.canPutEverywhere,
|
||||||
loopedBoard: this.game.settings.loopedBoard
|
loopedBoard: this.game.settings.loopedBoard
|
||||||
@@ -115,7 +136,7 @@ export default Vue.extend({
|
|||||||
created() {
|
created() {
|
||||||
this.game = this.initGame;
|
this.game = this.initGame;
|
||||||
|
|
||||||
this.o = new Othello(this.game.settings.map, {
|
this.o = new Reversi(this.game.settings.map, {
|
||||||
isLlotheo: this.game.settings.isLlotheo,
|
isLlotheo: this.game.settings.isLlotheo,
|
||||||
canPutEverywhere: this.game.settings.canPutEverywhere,
|
canPutEverywhere: this.game.settings.canPutEverywhere,
|
||||||
loopedBoard: this.game.settings.loopedBoard
|
loopedBoard: this.game.settings.loopedBoard
|
||||||
@@ -163,7 +184,7 @@ export default Vue.extend({
|
|||||||
|
|
||||||
// サウンドを再生する
|
// サウンドを再生する
|
||||||
if (this.$store.state.device.enableSounds) {
|
if (this.$store.state.device.enableSounds) {
|
||||||
const sound = new Audio(`${url}/assets/othello-put-me.mp3`);
|
const sound = new Audio(`${url}/assets/reversi-put-me.mp3`);
|
||||||
sound.volume = this.$store.state.device.soundVolume;
|
sound.volume = this.$store.state.device.soundVolume;
|
||||||
sound.play();
|
sound.play();
|
||||||
}
|
}
|
||||||
@@ -187,7 +208,7 @@ export default Vue.extend({
|
|||||||
|
|
||||||
// サウンドを再生する
|
// サウンドを再生する
|
||||||
if (this.$store.state.device.enableSounds && x.color != this.myColor) {
|
if (this.$store.state.device.enableSounds && x.color != this.myColor) {
|
||||||
const sound = new Audio(`${url}/assets/othello-put-you.mp3`);
|
const sound = new Audio(`${url}/assets/reversi-put-you.mp3`);
|
||||||
sound.volume = this.$store.state.device.soundVolume;
|
sound.volume = this.$store.state.device.soundVolume;
|
||||||
sound.play();
|
sound.play();
|
||||||
}
|
}
|
||||||
@@ -213,7 +234,7 @@ export default Vue.extend({
|
|||||||
onRescue(game) {
|
onRescue(game) {
|
||||||
this.game = game;
|
this.game = game;
|
||||||
|
|
||||||
this.o = new Othello(this.game.settings.map, {
|
this.o = new Reversi(this.game.settings.map, {
|
||||||
isLlotheo: this.game.settings.isLlotheo,
|
isLlotheo: this.game.settings.isLlotheo,
|
||||||
canPutEverywhere: this.game.settings.canPutEverywhere,
|
canPutEverywhere: this.game.settings.canPutEverywhere,
|
||||||
loopedBoard: this.game.settings.loopedBoard
|
loopedBoard: this.game.settings.loopedBoard
|
||||||
@@ -244,12 +265,57 @@ export default Vue.extend({
|
|||||||
border-bottom dashed 1px #c4cdd4
|
border-bottom dashed 1px #c4cdd4
|
||||||
|
|
||||||
> .board
|
> .board
|
||||||
display grid
|
width calc(100% - 16px)
|
||||||
grid-gap 4px
|
max-width 500px
|
||||||
width 350px
|
|
||||||
height 350px
|
|
||||||
margin 0 auto
|
margin 0 auto
|
||||||
|
|
||||||
|
$label-size = 16px
|
||||||
|
$gap = 4px
|
||||||
|
|
||||||
|
> .labels-x
|
||||||
|
height $label-size
|
||||||
|
padding 0 $label-size
|
||||||
|
display flex
|
||||||
|
|
||||||
|
> *
|
||||||
|
flex 1
|
||||||
|
display flex
|
||||||
|
align-items center
|
||||||
|
justify-content center
|
||||||
|
font-size 12px
|
||||||
|
|
||||||
|
&:first-child
|
||||||
|
margin-left -($gap / 2)
|
||||||
|
|
||||||
|
&:last-child
|
||||||
|
margin-right -($gap / 2)
|
||||||
|
|
||||||
|
> .flex
|
||||||
|
display flex
|
||||||
|
|
||||||
|
> .labels-y
|
||||||
|
width $label-size
|
||||||
|
display flex
|
||||||
|
flex-direction column
|
||||||
|
|
||||||
|
> *
|
||||||
|
flex 1
|
||||||
|
display flex
|
||||||
|
align-items center
|
||||||
|
justify-content center
|
||||||
|
font-size 12px
|
||||||
|
|
||||||
|
&:first-child
|
||||||
|
margin-top -($gap / 2)
|
||||||
|
|
||||||
|
&:last-child
|
||||||
|
margin-bottom -($gap / 2)
|
||||||
|
|
||||||
|
> .cells
|
||||||
|
flex 1
|
||||||
|
display grid
|
||||||
|
grid-gap $gap
|
||||||
|
|
||||||
> div
|
> div
|
||||||
background transparent
|
background transparent
|
||||||
border-radius 6px
|
border-radius 6px
|
||||||
@@ -7,9 +7,9 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import XGame from './othello.game.vue';
|
import XGame from './reversi.game.vue';
|
||||||
import XRoom from './othello.room.vue';
|
import XRoom from './reversi.room.vue';
|
||||||
import { OthelloGameStream } from '../../scripts/streaming/othello-game';
|
import { ReversiGameStream } from '../../../../scripts/streaming/games/reversi/reversi-game';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
components: {
|
components: {
|
||||||
@@ -25,7 +25,7 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.g = this.game;
|
this.g = this.game;
|
||||||
this.connection = new OthelloGameStream((this as any).os, (this as any).os.i, this.game);
|
this.connection = new ReversiGameStream((this as any).os, this.$store.state.i, this.game);
|
||||||
this.connection.on('started', this.onStarted);
|
this.connection.on('started', this.onStarted);
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
@@ -94,7 +94,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import * as maps from '../../../../../othello/maps';
|
import * as maps from '../../../../../../../games/reversi/maps';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: ['game', 'connection'],
|
props: ['game', 'connection'],
|
||||||
@@ -116,13 +116,13 @@ export default Vue.extend({
|
|||||||
return categories.filter((item, pos) => categories.indexOf(item) == pos);
|
return categories.filter((item, pos) => categories.indexOf(item) == pos);
|
||||||
},
|
},
|
||||||
isAccepted(): boolean {
|
isAccepted(): boolean {
|
||||||
if (this.game.user1Id == (this as any).os.i.id && this.game.user1Accepted) return true;
|
if (this.game.user1Id == this.$store.state.i.id && this.game.user1Accepted) return true;
|
||||||
if (this.game.user2Id == (this as any).os.i.id && this.game.user2Accepted) return true;
|
if (this.game.user2Id == this.$store.state.i.id && this.game.user2Accepted) return true;
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
isOpAccepted(): boolean {
|
isOpAccepted(): boolean {
|
||||||
if (this.game.user1Id != (this as any).os.i.id && this.game.user1Accepted) return true;
|
if (this.game.user1Id != this.$store.state.i.id && this.game.user1Accepted) return true;
|
||||||
if (this.game.user2Id != (this as any).os.i.id && this.game.user2Accepted) return true;
|
if (this.game.user2Id != this.$store.state.i.id && this.game.user2Accepted) return true;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -133,8 +133,8 @@ export default Vue.extend({
|
|||||||
this.connection.on('init-form', this.onInitForm);
|
this.connection.on('init-form', this.onInitForm);
|
||||||
this.connection.on('message', this.onMessage);
|
this.connection.on('message', this.onMessage);
|
||||||
|
|
||||||
if (this.game.user1Id != (this as any).os.i.id && this.game.settings.form1) this.form = this.game.settings.form1;
|
if (this.game.user1Id != this.$store.state.i.id && this.game.settings.form1) this.form = this.game.settings.form1;
|
||||||
if (this.game.user2Id != (this as any).os.i.id && this.game.settings.form2) this.form = this.game.settings.form2;
|
if (this.game.user2Id != this.$store.state.i.id && this.game.settings.form2) this.form = this.game.settings.form2;
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
@@ -185,12 +185,12 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
|
|
||||||
onInitForm(x) {
|
onInitForm(x) {
|
||||||
if (x.userId == (this as any).os.i.id) return;
|
if (x.userId == this.$store.state.i.id) return;
|
||||||
this.form = x.form;
|
this.form = x.form;
|
||||||
},
|
},
|
||||||
|
|
||||||
onMessage(x) {
|
onMessage(x) {
|
||||||
if (x.userId == (this as any).os.i.id) return;
|
if (x.userId == this.$store.state.i.id) return;
|
||||||
this.messages.unshift(x.message);
|
this.messages.unshift(x.message);
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-othello">
|
<div class="mk-reversi">
|
||||||
<div v-if="game">
|
<div v-if="game">
|
||||||
<x-gameroom :game="game"/>
|
<x-gameroom :game="game"/>
|
||||||
</div>
|
</div>
|
||||||
@@ -10,15 +10,15 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="index" v-else>
|
<div class="index" v-else>
|
||||||
<h1>Misskey %fa:circle%thell%fa:circle R%</h1>
|
<h1>Misskey Reversi</h1>
|
||||||
<p>他のMisskeyユーザーとオセロで対戦しよう</p>
|
<p>他のMisskeyユーザーとリバーシで対戦しよう</p>
|
||||||
<div class="play">
|
<div class="play">
|
||||||
<el-button round>フリーマッチ(準備中)</el-button>
|
<el-button round>フリーマッチ(準備中)</el-button>
|
||||||
<el-button type="primary" round @click="match">指名</el-button>
|
<el-button type="primary" round @click="match">指名</el-button>
|
||||||
<details>
|
<details>
|
||||||
<summary>遊び方</summary>
|
<summary>遊び方</summary>
|
||||||
<div>
|
<div>
|
||||||
<p>オセロは、相手と交互に石をボードに置いてゆき、相手の石を挟んでひっくり返しながら、最終的に残った石が多い方が勝ちというボードゲームです。</p>
|
<p>リバーシは、相手と交互に石をボードに置いてゆき、相手の石を挟んでひっくり返しながら、最終的に残った石が多い方が勝ちというボードゲームです。</p>
|
||||||
<dl>
|
<dl>
|
||||||
<dt><b>フリーマッチ</b></dt>
|
<dt><b>フリーマッチ</b></dt>
|
||||||
<dd>ランダムなユーザーと対戦するモードです。</dd>
|
<dd>ランダムなユーザーと対戦するモードです。</dd>
|
||||||
@@ -39,7 +39,7 @@
|
|||||||
</section>
|
</section>
|
||||||
<section v-if="myGames.length > 0">
|
<section v-if="myGames.length > 0">
|
||||||
<h2>自分の対局</h2>
|
<h2>自分の対局</h2>
|
||||||
<a class="game" v-for="g in myGames" tabindex="-1" @click.prevent="go(g)" :href="`/othello/${g.id}`">
|
<a class="game" v-for="g in myGames" tabindex="-1" @click.prevent="go(g)" :href="`/reversi/${g.id}`">
|
||||||
<mk-avatar class="avatar" :user="g.user1"/>
|
<mk-avatar class="avatar" :user="g.user1"/>
|
||||||
<mk-avatar class="avatar" :user="g.user2"/>
|
<mk-avatar class="avatar" :user="g.user2"/>
|
||||||
<span><b>{{ g.user1.name }}</b> vs <b>{{ g.user2.name }}</b></span>
|
<span><b>{{ g.user1.name }}</b> vs <b>{{ g.user2.name }}</b></span>
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
</section>
|
</section>
|
||||||
<section v-if="games.length > 0">
|
<section v-if="games.length > 0">
|
||||||
<h2>みんなの対局</h2>
|
<h2>みんなの対局</h2>
|
||||||
<a class="game" v-for="g in games" tabindex="-1" @click.prevent="go(g)" :href="`/othello/${g.id}`">
|
<a class="game" v-for="g in games" tabindex="-1" @click.prevent="go(g)" :href="`/reversi/${g.id}`">
|
||||||
<mk-avatar class="avatar" :user="g.user1"/>
|
<mk-avatar class="avatar" :user="g.user1"/>
|
||||||
<mk-avatar class="avatar" :user="g.user2"/>
|
<mk-avatar class="avatar" :user="g.user2"/>
|
||||||
<span><b>{{ g.user1.name }}</b> vs <b>{{ g.user2.name }}</b></span>
|
<span><b>{{ g.user1.name }}</b> vs <b>{{ g.user2.name }}</b></span>
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import XGameroom from './othello.gameroom.vue';
|
import XGameroom from './reversi.gameroom.vue';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
components: {
|
components: {
|
||||||
@@ -93,24 +93,24 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.connection = (this as any).os.streams.othelloStream.getConnection();
|
this.connection = (this as any).os.streams.reversiStream.getConnection();
|
||||||
this.connectionId = (this as any).os.streams.othelloStream.use();
|
this.connectionId = (this as any).os.streams.reversiStream.use();
|
||||||
|
|
||||||
this.connection.on('matched', this.onMatched);
|
this.connection.on('matched', this.onMatched);
|
||||||
this.connection.on('invited', this.onInvited);
|
this.connection.on('invited', this.onInvited);
|
||||||
|
|
||||||
(this as any).api('othello/games', {
|
(this as any).api('games/reversi/games', {
|
||||||
my: true
|
my: true
|
||||||
}).then(games => {
|
}).then(games => {
|
||||||
this.myGames = games;
|
this.myGames = games;
|
||||||
});
|
});
|
||||||
|
|
||||||
(this as any).api('othello/games').then(games => {
|
(this as any).api('games/reversi/games').then(games => {
|
||||||
this.games = games;
|
this.games = games;
|
||||||
this.gamesFetching = false;
|
this.gamesFetching = false;
|
||||||
});
|
});
|
||||||
|
|
||||||
(this as any).api('othello/invitations').then(invitations => {
|
(this as any).api('games/reversi/invitations').then(invitations => {
|
||||||
this.invitations = this.invitations.concat(invitations);
|
this.invitations = this.invitations.concat(invitations);
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -126,13 +126,13 @@ export default Vue.extend({
|
|||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
this.connection.off('matched', this.onMatched);
|
this.connection.off('matched', this.onMatched);
|
||||||
this.connection.off('invited', this.onInvited);
|
this.connection.off('invited', this.onInvited);
|
||||||
(this as any).os.streams.othelloStream.dispose(this.connectionId);
|
(this as any).os.streams.reversiStream.dispose(this.connectionId);
|
||||||
|
|
||||||
clearInterval(this.pingClock);
|
clearInterval(this.pingClock);
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
go(game) {
|
go(game) {
|
||||||
(this as any).api('othello/games/show', {
|
(this as any).api('games/reversi/games/show', {
|
||||||
gameId: game.id
|
gameId: game.id
|
||||||
}).then(game => {
|
}).then(game => {
|
||||||
this.matching = null;
|
this.matching = null;
|
||||||
@@ -146,7 +146,7 @@ export default Vue.extend({
|
|||||||
(this as any).api('users/show', {
|
(this as any).api('users/show', {
|
||||||
username
|
username
|
||||||
}).then(user => {
|
}).then(user => {
|
||||||
(this as any).api('othello/match', {
|
(this as any).api('games/reversi/match', {
|
||||||
userId: user.id
|
userId: user.id
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res == null) {
|
if (res == null) {
|
||||||
@@ -160,10 +160,10 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
cancel() {
|
cancel() {
|
||||||
this.matching = null;
|
this.matching = null;
|
||||||
(this as any).api('othello/match/cancel');
|
(this as any).api('games/reversi/match/cancel');
|
||||||
},
|
},
|
||||||
accept(invitation) {
|
accept(invitation) {
|
||||||
(this as any).api('othello/match', {
|
(this as any).api('games/reversi/match', {
|
||||||
userId: invitation.parent.id
|
userId: invitation.parent.id
|
||||||
}).then(game => {
|
}).then(game => {
|
||||||
if (game) {
|
if (game) {
|
||||||
@@ -186,7 +186,7 @@ export default Vue.extend({
|
|||||||
<style lang="stylus" scoped>
|
<style lang="stylus" scoped>
|
||||||
@import '~const.styl'
|
@import '~const.styl'
|
||||||
|
|
||||||
.mk-othello
|
.mk-reversi
|
||||||
color #677f84
|
color #677f84
|
||||||
background #fff
|
background #fff
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-google">
|
<div class="mk-google">
|
||||||
<input type="search" v-model="query" :placeholder="q">
|
<input type="search" v-model="query" :placeholder="q">
|
||||||
<button @click="search">検索</button>
|
<button @click="search">%fa:search% %i18n:common.search%</button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,15 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
|
|
||||||
|
import analogClock from './analog-clock.vue';
|
||||||
|
import menu from './menu.vue';
|
||||||
|
import noteHeader from './note-header.vue';
|
||||||
import signin from './signin.vue';
|
import signin from './signin.vue';
|
||||||
import signup from './signup.vue';
|
import signup from './signup.vue';
|
||||||
import forkit from './forkit.vue';
|
import forkit from './forkit.vue';
|
||||||
import acct from './acct.vue';
|
import acct from './acct.vue';
|
||||||
import avatar from './avatar.vue';
|
import avatar from './avatar.vue';
|
||||||
import nav from './nav.vue';
|
import nav from './nav.vue';
|
||||||
import noteHtml from './note-html';
|
import misskeyFlavoredMarkdown from './misskey-flavored-markdown';
|
||||||
import poll from './poll.vue';
|
import poll from './poll.vue';
|
||||||
import pollEditor from './poll-editor.vue';
|
import pollEditor from './poll-editor.vue';
|
||||||
import reactionIcon from './reaction-icon.vue';
|
import reactionIcon from './reaction-icon.vue';
|
||||||
@@ -24,16 +27,27 @@ import urlPreview from './url-preview.vue';
|
|||||||
import twitterSetting from './twitter-setting.vue';
|
import twitterSetting from './twitter-setting.vue';
|
||||||
import fileTypeIcon from './file-type-icon.vue';
|
import fileTypeIcon from './file-type-icon.vue';
|
||||||
import Switch from './switch.vue';
|
import Switch from './switch.vue';
|
||||||
import Othello from './othello.vue';
|
import Reversi from './games/reversi/reversi.vue';
|
||||||
import welcomeTimeline from './welcome-timeline.vue';
|
import welcomeTimeline from './welcome-timeline.vue';
|
||||||
|
import uiInput from './ui/input.vue';
|
||||||
|
import uiButton from './ui/button.vue';
|
||||||
|
import uiCard from './ui/card.vue';
|
||||||
|
import uiForm from './ui/form.vue';
|
||||||
|
import uiTextarea from './ui/textarea.vue';
|
||||||
|
import uiSwitch from './ui/switch.vue';
|
||||||
|
import uiRadio from './ui/radio.vue';
|
||||||
|
import uiSelect from './ui/select.vue';
|
||||||
|
|
||||||
|
Vue.component('mk-analog-clock', analogClock);
|
||||||
|
Vue.component('mk-menu', menu);
|
||||||
|
Vue.component('mk-note-header', noteHeader);
|
||||||
Vue.component('mk-signin', signin);
|
Vue.component('mk-signin', signin);
|
||||||
Vue.component('mk-signup', signup);
|
Vue.component('mk-signup', signup);
|
||||||
Vue.component('mk-forkit', forkit);
|
Vue.component('mk-forkit', forkit);
|
||||||
Vue.component('mk-acct', acct);
|
Vue.component('mk-acct', acct);
|
||||||
Vue.component('mk-avatar', avatar);
|
Vue.component('mk-avatar', avatar);
|
||||||
Vue.component('mk-nav', nav);
|
Vue.component('mk-nav', nav);
|
||||||
Vue.component('mk-note-html', noteHtml);
|
Vue.component('misskey-flavored-markdown', misskeyFlavoredMarkdown);
|
||||||
Vue.component('mk-poll', poll);
|
Vue.component('mk-poll', poll);
|
||||||
Vue.component('mk-poll-editor', pollEditor);
|
Vue.component('mk-poll-editor', pollEditor);
|
||||||
Vue.component('mk-reaction-icon', reactionIcon);
|
Vue.component('mk-reaction-icon', reactionIcon);
|
||||||
@@ -51,5 +65,13 @@ Vue.component('mk-url-preview', urlPreview);
|
|||||||
Vue.component('mk-twitter-setting', twitterSetting);
|
Vue.component('mk-twitter-setting', twitterSetting);
|
||||||
Vue.component('mk-file-type-icon', fileTypeIcon);
|
Vue.component('mk-file-type-icon', fileTypeIcon);
|
||||||
Vue.component('mk-switch', Switch);
|
Vue.component('mk-switch', Switch);
|
||||||
Vue.component('mk-othello', Othello);
|
Vue.component('mk-reversi', Reversi);
|
||||||
Vue.component('mk-welcome-timeline', welcomeTimeline);
|
Vue.component('mk-welcome-timeline', welcomeTimeline);
|
||||||
|
Vue.component('ui-input', uiInput);
|
||||||
|
Vue.component('ui-button', uiButton);
|
||||||
|
Vue.component('ui-card', uiCard);
|
||||||
|
Vue.component('ui-form', uiForm);
|
||||||
|
Vue.component('ui-textarea', uiTextarea);
|
||||||
|
Vue.component('ui-switch', uiSwitch);
|
||||||
|
Vue.component('ui-radio', uiRadio);
|
||||||
|
Vue.component('ui-select', uiSelect);
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-media-list" :data-count="mediaList.length">
|
<div class="mk-media-list">
|
||||||
|
<div :data-count="mediaList.length" ref="grid">
|
||||||
<template v-for="media in mediaList">
|
<template v-for="media in mediaList">
|
||||||
<mk-media-video :video="media" :key="media.id" v-if="media.type.startsWith('video')" :inline-playable="mediaList.length === 1"/>
|
<mk-media-video :video="media" :key="media.id" v-if="media.type.startsWith('video')" :inline-playable="mediaList.length === 1"/>
|
||||||
<mk-media-image :image="media" :key="media.id" v-else :raw="raw"/>
|
<mk-media-image :image="media" :key="media.id" v-else :raw="raw"/>
|
||||||
</template>
|
</template>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -18,18 +20,31 @@ export default Vue.extend({
|
|||||||
raw: {
|
raw: {
|
||||||
default: false
|
default: false
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
// for Safari bug
|
||||||
|
this.$refs.grid.style.height = this.$refs.grid.clientHeight ? `${this.$refs.grid.clientHeight}px` : '128px';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="stylus" scoped>
|
<style lang="stylus" scoped>
|
||||||
.mk-media-list
|
.mk-media-list
|
||||||
|
width 100%
|
||||||
|
|
||||||
|
&:before
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
padding-top 56.25% // 16:9
|
||||||
|
|
||||||
|
> div
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
right 0
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
display grid
|
display grid
|
||||||
grid-gap 4px
|
grid-gap 4px
|
||||||
height 256px
|
|
||||||
|
|
||||||
@media (max-width 500px)
|
|
||||||
height 192px
|
|
||||||
|
|
||||||
&[data-count="1"]
|
&[data-count="1"]
|
||||||
grid-template-rows 1fr
|
grid-template-rows 1fr
|
||||||
@@ -43,7 +58,7 @@ export default Vue.extend({
|
|||||||
grid-row 1 / 3
|
grid-row 1 / 3
|
||||||
:nth-child(3)
|
:nth-child(3)
|
||||||
grid-column 2 / 3
|
grid-column 2 / 3
|
||||||
grid-row 2/3
|
grid-row 2 / 3
|
||||||
&[data-count="4"]
|
&[data-count="4"]
|
||||||
grid-template-columns 1fr 1fr
|
grid-template-columns 1fr 1fr
|
||||||
grid-template-rows 1fr 1fr
|
grid-template-rows 1fr 1fr
|
||||||
|
|||||||
196
src/client/app/common/views/components/menu.vue
Normal file
@@ -0,0 +1,196 @@
|
|||||||
|
<template>
|
||||||
|
<div class="mk-menu">
|
||||||
|
<div class="backdrop" ref="backdrop" @click="close"></div>
|
||||||
|
<div class="popover" :class="{ hukidasi }" ref="popover">
|
||||||
|
<template v-for="item in items">
|
||||||
|
<div v-if="item === null"></div>
|
||||||
|
<button v-if="item" @click="clicked(item.action)" v-html="item.icon ? item.icon + ' ' + item.text : item.text"></button>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
import * as anime from 'animejs';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
source: {
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
items: {
|
||||||
|
type: Array,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
compact: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
hukidasi: !this.compact
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
const popover = this.$refs.popover as any;
|
||||||
|
|
||||||
|
const rect = this.source.getBoundingClientRect();
|
||||||
|
const width = popover.offsetWidth;
|
||||||
|
const height = popover.offsetHeight;
|
||||||
|
|
||||||
|
let left;
|
||||||
|
let top;
|
||||||
|
|
||||||
|
if (this.compact) {
|
||||||
|
const x = rect.left + window.pageXOffset + (this.source.offsetWidth / 2);
|
||||||
|
const y = rect.top + window.pageYOffset + (this.source.offsetHeight / 2);
|
||||||
|
left = (x - (width / 2));
|
||||||
|
top = (y - (height / 2));
|
||||||
|
} else {
|
||||||
|
const x = rect.left + window.pageXOffset + (this.source.offsetWidth / 2);
|
||||||
|
const y = rect.top + window.pageYOffset + this.source.offsetHeight;
|
||||||
|
left = (x - (width / 2));
|
||||||
|
top = y;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (left + width - window.pageXOffset > window.innerWidth) {
|
||||||
|
left = window.innerWidth - width + window.pageXOffset;
|
||||||
|
this.hukidasi = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (top + height - window.pageYOffset > window.innerHeight) {
|
||||||
|
top = window.innerHeight - height + window.pageYOffset;
|
||||||
|
this.hukidasi = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
popover.style.left = left + 'px';
|
||||||
|
popover.style.top = top + 'px';
|
||||||
|
|
||||||
|
anime({
|
||||||
|
targets: this.$refs.backdrop,
|
||||||
|
opacity: 1,
|
||||||
|
duration: 100,
|
||||||
|
easing: 'linear'
|
||||||
|
});
|
||||||
|
|
||||||
|
anime({
|
||||||
|
targets: this.$refs.popover,
|
||||||
|
opacity: 1,
|
||||||
|
scale: [0.5, 1],
|
||||||
|
duration: 500
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
clicked(fn) {
|
||||||
|
fn();
|
||||||
|
this.close();
|
||||||
|
},
|
||||||
|
close() {
|
||||||
|
(this.$refs.backdrop as any).style.pointerEvents = 'none';
|
||||||
|
anime({
|
||||||
|
targets: this.$refs.backdrop,
|
||||||
|
opacity: 0,
|
||||||
|
duration: 200,
|
||||||
|
easing: 'linear'
|
||||||
|
});
|
||||||
|
|
||||||
|
(this.$refs.popover as any).style.pointerEvents = 'none';
|
||||||
|
anime({
|
||||||
|
targets: this.$refs.popover,
|
||||||
|
opacity: 0,
|
||||||
|
scale: 0.5,
|
||||||
|
duration: 200,
|
||||||
|
easing: 'easeInBack',
|
||||||
|
complete: () => {
|
||||||
|
this.$emit('closed');
|
||||||
|
this.$destroy();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
$border-color = rgba(27, 31, 35, 0.15)
|
||||||
|
|
||||||
|
.mk-menu
|
||||||
|
position initial
|
||||||
|
|
||||||
|
> .backdrop
|
||||||
|
position fixed
|
||||||
|
top 0
|
||||||
|
left 0
|
||||||
|
z-index 10000
|
||||||
|
width 100%
|
||||||
|
height 100%
|
||||||
|
background rgba(#000, 0.1)
|
||||||
|
opacity 0
|
||||||
|
|
||||||
|
> .popover
|
||||||
|
position absolute
|
||||||
|
z-index 10001
|
||||||
|
padding 8px 0
|
||||||
|
background #fff
|
||||||
|
border 1px solid $border-color
|
||||||
|
border-radius 4px
|
||||||
|
box-shadow 0 3px 12px rgba(27, 31, 35, 0.15)
|
||||||
|
transform scale(0.5)
|
||||||
|
opacity 0
|
||||||
|
|
||||||
|
$balloon-size = 16px
|
||||||
|
|
||||||
|
&.hukidasi
|
||||||
|
margin-top $balloon-size
|
||||||
|
transform-origin center -($balloon-size)
|
||||||
|
|
||||||
|
&:before
|
||||||
|
&:after
|
||||||
|
content ""
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
pointer-events none
|
||||||
|
|
||||||
|
&:before
|
||||||
|
top -($balloon-size * 2)
|
||||||
|
left s('calc(50% - %s)', $balloon-size)
|
||||||
|
border-top solid $balloon-size transparent
|
||||||
|
border-left solid $balloon-size transparent
|
||||||
|
border-right solid $balloon-size transparent
|
||||||
|
border-bottom solid $balloon-size $border-color
|
||||||
|
|
||||||
|
&:after
|
||||||
|
top -($balloon-size * 2) + 1.5px
|
||||||
|
left s('calc(50% - %s)', $balloon-size)
|
||||||
|
border-top solid $balloon-size transparent
|
||||||
|
border-left solid $balloon-size transparent
|
||||||
|
border-right solid $balloon-size transparent
|
||||||
|
border-bottom solid $balloon-size #fff
|
||||||
|
|
||||||
|
> button
|
||||||
|
display block
|
||||||
|
padding 8px 16px
|
||||||
|
width 100%
|
||||||
|
|
||||||
|
&:hover
|
||||||
|
color $theme-color-foreground
|
||||||
|
background $theme-color
|
||||||
|
text-decoration none
|
||||||
|
|
||||||
|
&:active
|
||||||
|
color $theme-color-foreground
|
||||||
|
background darken($theme-color, 10%)
|
||||||
|
|
||||||
|
> div
|
||||||
|
margin 8px 0
|
||||||
|
height 1px
|
||||||
|
background #eee
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<img src="/assets/desktop/messaging/delete.png" alt="Delete"/>
|
<img src="/assets/desktop/messaging/delete.png" alt="Delete"/>
|
||||||
</button>
|
</button>
|
||||||
<div class="content" v-if="!message.isDeleted">
|
<div class="content" v-if="!message.isDeleted">
|
||||||
<mk-note-html class="text" v-if="message.text" ref="text" :text="message.text" :i="os.i"/>
|
<misskey-flavored-markdown class="text" v-if="message.text" ref="text" :text="message.text" :i="$store.state.i"/>
|
||||||
<div class="file" v-if="message.file">
|
<div class="file" v-if="message.file">
|
||||||
<a :href="message.file.url" target="_blank" :title="message.file.name">
|
<a :href="message.file.url" target="_blank" :title="message.file.name">
|
||||||
<img v-if="message.file.type.split('/')[0] == 'image'" :src="message.file.url" :alt="message.file.name"/>
|
<img v-if="message.file.type.split('/')[0] == 'image'" :src="message.file.url" :alt="message.file.name"/>
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import parse from '../../../../../text/parse';
|
import parse from '../../../../../mfm/parse';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: {
|
props: {
|
||||||
@@ -42,7 +42,7 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
isMe(): boolean {
|
isMe(): boolean {
|
||||||
return this.message.userId == (this as any).os.i.id;
|
return this.message.userId == this.$store.state.i.id;
|
||||||
},
|
},
|
||||||
urls(): string[] {
|
urls(): string[] {
|
||||||
if (this.message.text) {
|
if (this.message.text) {
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.connection = new MessagingStream((this as any).os, (this as any).os.i, this.user.id);
|
this.connection = new MessagingStream((this as any).os, this.$store.state.i, this.user.id);
|
||||||
|
|
||||||
this.connection.on('message', this.onMessage);
|
this.connection.on('message', this.onMessage);
|
||||||
this.connection.on('read', this.onRead);
|
this.connection.on('read', this.onRead);
|
||||||
@@ -164,7 +164,7 @@ export default Vue.extend({
|
|||||||
const isBottom = this.isBottom();
|
const isBottom = this.isBottom();
|
||||||
|
|
||||||
this.messages.push(message);
|
this.messages.push(message);
|
||||||
if (message.userId != (this as any).os.i.id && !document.hidden) {
|
if (message.userId != this.$store.state.i.id && !document.hidden) {
|
||||||
this.connection.send({
|
this.connection.send({
|
||||||
type: 'read',
|
type: 'read',
|
||||||
id: message.id
|
id: message.id
|
||||||
@@ -176,7 +176,7 @@ export default Vue.extend({
|
|||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.scrollToBottom();
|
this.scrollToBottom();
|
||||||
});
|
});
|
||||||
} else if (message.userId != (this as any).os.i.id) {
|
} else if (message.userId != this.$store.state.i.id) {
|
||||||
// Notify
|
// Notify
|
||||||
this.notifyNewMessage();
|
this.notifyNewMessage();
|
||||||
}
|
}
|
||||||
@@ -229,7 +229,7 @@ export default Vue.extend({
|
|||||||
onVisibilitychange() {
|
onVisibilitychange() {
|
||||||
if (document.hidden) return;
|
if (document.hidden) return;
|
||||||
this.messages.forEach(message => {
|
this.messages.forEach(message => {
|
||||||
if (message.userId !== (this as any).os.i.id && !message.isRead) {
|
if (message.userId !== this.$store.state.i.id && !message.isRead) {
|
||||||
this.connection.send({
|
this.connection.send({
|
||||||
type: 'read',
|
type: 'read',
|
||||||
id: message.id
|
id: message.id
|
||||||
@@ -255,7 +255,8 @@ root(isDark)
|
|||||||
width 100%
|
width 100%
|
||||||
max-width 600px
|
max-width 600px
|
||||||
margin 0 auto
|
margin 0 auto
|
||||||
flex 1
|
flex 1 1 0
|
||||||
|
overflow-y auto
|
||||||
|
|
||||||
> .init
|
> .init
|
||||||
width 100%
|
width 100%
|
||||||
@@ -263,7 +264,7 @@ root(isDark)
|
|||||||
padding 16px 8px 8px 8px
|
padding 16px 8px 8px 8px
|
||||||
text-align center
|
text-align center
|
||||||
font-size 0.8em
|
font-size 0.8em
|
||||||
color rgba(#000, 0.4)
|
color rgba(isDark ? #fff : #000, 0.4)
|
||||||
|
|
||||||
[data-fa]
|
[data-fa]
|
||||||
margin-right 4px
|
margin-right 4px
|
||||||
@@ -337,14 +338,10 @@ root(isDark)
|
|||||||
padding 0 16px
|
padding 0 16px
|
||||||
//font-weight bold
|
//font-weight bold
|
||||||
line-height 32px
|
line-height 32px
|
||||||
color rgba(#000, 0.3)
|
color rgba(isDark ? #fff : #000, 0.3)
|
||||||
background isDark ? #191b22 : #fff
|
background isDark ? #191b22 : #fff
|
||||||
|
|
||||||
> footer
|
> footer
|
||||||
position -webkit-sticky
|
|
||||||
position sticky
|
|
||||||
z-index 2
|
|
||||||
bottom 0
|
|
||||||
width 100%
|
width 100%
|
||||||
max-width 600px
|
max-width 600px
|
||||||
margin 0 auto
|
margin 0 auto
|
||||||
|
|||||||
@@ -51,7 +51,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import getAcct from '../../../../../acct/render';
|
import getAcct from '../../../../../misc/acct/render';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: {
|
props: {
|
||||||
@@ -95,7 +95,7 @@ export default Vue.extend({
|
|||||||
methods: {
|
methods: {
|
||||||
getAcct,
|
getAcct,
|
||||||
isMe(message) {
|
isMe(message) {
|
||||||
return message.userId == (this as any).os.i.id;
|
return message.userId == this.$store.state.i.id;
|
||||||
},
|
},
|
||||||
onMessage(message) {
|
onMessage(message) {
|
||||||
this.messages = this.messages.filter(m => !(
|
this.messages = this.messages.filter(m => !(
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import * as emojilib from 'emojilib';
|
import * as emojilib from 'emojilib';
|
||||||
import parse from '../../../../../text/parse';
|
import parse from '../../../../../mfm/parse';
|
||||||
import getAcct from '../../../../../acct/render';
|
import getAcct from '../../../../../misc/acct/render';
|
||||||
import { url } from '../../../config';
|
import { url } from '../../../config';
|
||||||
import MkUrl from './url.vue';
|
import MkUrl from './url.vue';
|
||||||
import MkGoogle from './google.vue';
|
import MkGoogle from './google.vue';
|
||||||
@@ -10,7 +10,7 @@ const flatten = list => list.reduce(
|
|||||||
(a, b) => a.concat(Array.isArray(b) ? flatten(b) : b), []
|
(a, b) => a.concat(Array.isArray(b) ? flatten(b) : b), []
|
||||||
);
|
);
|
||||||
|
|
||||||
export default Vue.component('mk-note-html', {
|
export default Vue.component('misskey-flavored-markdown', {
|
||||||
props: {
|
props: {
|
||||||
text: {
|
text: {
|
||||||
type: String,
|
type: String,
|
||||||
@@ -92,7 +92,7 @@ export default Vue.component('mk-note-html', {
|
|||||||
case 'hashtag':
|
case 'hashtag':
|
||||||
return createElement('a', {
|
return createElement('a', {
|
||||||
attrs: {
|
attrs: {
|
||||||
href: `${url}/search?q=${token.content}`,
|
href: `${url}/tags/${token.hashtag}`,
|
||||||
target: '_blank'
|
target: '_blank'
|
||||||
}
|
}
|
||||||
}, token.content);
|
}, token.content);
|
||||||
@@ -2,9 +2,9 @@
|
|||||||
<span class="mk-nav">
|
<span class="mk-nav">
|
||||||
<a :href="aboutUrl">%i18n:@about%</a>
|
<a :href="aboutUrl">%i18n:@about%</a>
|
||||||
<i>・</i>
|
<i>・</i>
|
||||||
<a href="https://github.com/syuilo/misskey">%i18n:@repository%</a>
|
<a :href="repositoryUrl">%i18n:@repository%</a>
|
||||||
<i>・</i>
|
<i>・</i>
|
||||||
<a href="https://github.com/syuilo/misskey/issues/new" target="_blank">%i18n:@feedback%</a>
|
<a :href="feedbackUrl" target="_blank">%i18n:@feedback%</a>
|
||||||
<i>・</i>
|
<i>・</i>
|
||||||
<a :href="devUrl">%i18n:@develop%</a>
|
<a :href="devUrl">%i18n:@develop%</a>
|
||||||
<i>・</i>
|
<i>・</i>
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import { docsUrl, statsUrl, statusUrl, devUrl, lang } from '../../../config';
|
import { docsUrl, statsUrl, statusUrl, devUrl, repositoryUrl, feedbackUrl, lang } from '../../../config';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
data() {
|
data() {
|
||||||
@@ -22,7 +22,9 @@ export default Vue.extend({
|
|||||||
aboutUrl: `${docsUrl}/${lang}/about`,
|
aboutUrl: `${docsUrl}/${lang}/about`,
|
||||||
statsUrl,
|
statsUrl,
|
||||||
statusUrl,
|
statusUrl,
|
||||||
devUrl
|
devUrl,
|
||||||
|
repositoryUrl: repositoryUrl || `https://github.com/syuilo/misskey`,
|
||||||
|
feedbackUrl: feedbackUrl || `https://github.com/syuilo/misskey/issues/new`
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
119
src/client/app/common/views/components/note-header.vue
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
<template>
|
||||||
|
<header class="bvonvjxbwzaiskogyhbwgyxvcgserpmu">
|
||||||
|
<mk-avatar class="avatar" :user="note.user" v-if="$store.state.device.postStyle == 'smart'"/>
|
||||||
|
<router-link class="name" :to="note.user | userPage" v-user-preview="note.user.id">{{ note.user | userName }}</router-link>
|
||||||
|
<span class="is-admin" v-if="note.user.isAdmin">admin</span>
|
||||||
|
<span class="is-bot" v-if="note.user.isBot">bot</span>
|
||||||
|
<span class="is-cat" v-if="note.user.isCat">cat</span>
|
||||||
|
<span class="username"><mk-acct :user="note.user"/></span>
|
||||||
|
<div class="info">
|
||||||
|
<span class="app" v-if="note.app && !mini">via <b>{{ note.app.name }}</b></span>
|
||||||
|
<span class="mobile" v-if="note.viaMobile">%fa:mobile-alt%</span>
|
||||||
|
<router-link class="created-at" :to="note | notePage">
|
||||||
|
<mk-time :time="note.createdAt"/>
|
||||||
|
</router-link>
|
||||||
|
<span class="visibility" v-if="note.visibility != 'public'">
|
||||||
|
<template v-if="note.visibility == 'home'">%fa:home%</template>
|
||||||
|
<template v-if="note.visibility == 'followers'">%fa:unlock%</template>
|
||||||
|
<template v-if="note.visibility == 'specified'">%fa:envelope%</template>
|
||||||
|
<template v-if="note.visibility == 'private'">%fa:lock%</template>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
note: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
mini: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark)
|
||||||
|
display flex
|
||||||
|
align-items baseline
|
||||||
|
white-space nowrap
|
||||||
|
|
||||||
|
> .avatar
|
||||||
|
flex-shrink 0
|
||||||
|
margin-right 8px
|
||||||
|
width 20px
|
||||||
|
height 20px
|
||||||
|
border-radius 100%
|
||||||
|
|
||||||
|
> .name
|
||||||
|
display block
|
||||||
|
margin 0 .5em 0 0
|
||||||
|
padding 0
|
||||||
|
overflow hidden
|
||||||
|
color isDark ? #fff : #627079
|
||||||
|
font-size 1em
|
||||||
|
font-weight bold
|
||||||
|
text-decoration none
|
||||||
|
text-overflow ellipsis
|
||||||
|
|
||||||
|
&:hover
|
||||||
|
text-decoration underline
|
||||||
|
|
||||||
|
> .is-admin
|
||||||
|
> .is-bot
|
||||||
|
> .is-cat
|
||||||
|
flex-shrink 0
|
||||||
|
align-self center
|
||||||
|
margin 0 .5em 0 0
|
||||||
|
padding 1px 6px
|
||||||
|
font-size 80%
|
||||||
|
color isDark ? #758188 : #aaa
|
||||||
|
border solid 1px isDark ? #57616f : #ddd
|
||||||
|
border-radius 3px
|
||||||
|
|
||||||
|
&.is-admin
|
||||||
|
border-color isDark ? #d42c41 : #f56a7b
|
||||||
|
color isDark ? #d42c41 : #f56a7b
|
||||||
|
|
||||||
|
> .username
|
||||||
|
margin 0 .5em 0 0
|
||||||
|
overflow hidden
|
||||||
|
text-overflow ellipsis
|
||||||
|
color isDark ? #606984 : #ccc
|
||||||
|
flex-shrink 2147483647
|
||||||
|
|
||||||
|
> .info
|
||||||
|
margin-left auto
|
||||||
|
font-size 0.9em
|
||||||
|
|
||||||
|
> *
|
||||||
|
color isDark ? #606984 : #c0c0c0
|
||||||
|
|
||||||
|
> .mobile
|
||||||
|
margin-right 8px
|
||||||
|
|
||||||
|
> .app
|
||||||
|
margin-right 8px
|
||||||
|
padding-right 8px
|
||||||
|
border-right solid 1px isDark ? #1c2023 : #eaeaea
|
||||||
|
|
||||||
|
> .visibility
|
||||||
|
margin-left 8px
|
||||||
|
|
||||||
|
.bvonvjxbwzaiskogyhbwgyxvcgserpmu[data-darkmode]
|
||||||
|
root(true)
|
||||||
|
|
||||||
|
.bvonvjxbwzaiskogyhbwgyxvcgserpmu:not([data-darkmode])
|
||||||
|
root(false)
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -1,54 +1,45 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-note-menu">
|
<div style="position:initial">
|
||||||
<div class="backdrop" ref="backdrop" @click="close"></div>
|
<mk-menu :source="source" :compact="compact" :items="items" @closed="closed"/>
|
||||||
<div class="popover" :class="{ compact }" ref="popover">
|
|
||||||
<button @click="favorite">%i18n:@favorite%</button>
|
|
||||||
<button v-if="note.userId == os.i.id" @click="pin">%i18n:@pin%</button>
|
|
||||||
<a v-if="note.uri" :href="note.uri" target="_blank">%i18n:@remote%</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import * as anime from 'animejs';
|
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: ['note', 'source', 'compact'],
|
props: ['note', 'source', 'compact'],
|
||||||
mounted() {
|
computed: {
|
||||||
this.$nextTick(() => {
|
items() {
|
||||||
const popover = this.$refs.popover as any;
|
const items = [];
|
||||||
|
items.push({
|
||||||
const rect = this.source.getBoundingClientRect();
|
icon: '%fa:star%',
|
||||||
const width = popover.offsetWidth;
|
text: '%i18n:@favorite%',
|
||||||
const height = popover.offsetHeight;
|
action: this.favorite
|
||||||
|
});
|
||||||
if (this.compact) {
|
if (this.note.userId == this.$store.state.i.id) {
|
||||||
const x = rect.left + window.pageXOffset + (this.source.offsetWidth / 2);
|
items.push({
|
||||||
const y = rect.top + window.pageYOffset + (this.source.offsetHeight / 2);
|
icon: '%fa:thumbtack%',
|
||||||
popover.style.left = (x - (width / 2)) + 'px';
|
text: '%i18n:@pin%',
|
||||||
popover.style.top = (y - (height / 2)) + 'px';
|
action: this.pin
|
||||||
} else {
|
});
|
||||||
const x = rect.left + window.pageXOffset + (this.source.offsetWidth / 2);
|
items.push({
|
||||||
const y = rect.top + window.pageYOffset + this.source.offsetHeight;
|
icon: '%fa:trash-alt R%',
|
||||||
popover.style.left = (x - (width / 2)) + 'px';
|
text: '%i18n:@delete%',
|
||||||
popover.style.top = y + 'px';
|
action: this.del
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (this.note.uri) {
|
||||||
|
items.push({
|
||||||
|
icon: '%fa:external-link-square-alt%',
|
||||||
|
text: '%i18n:@remote%',
|
||||||
|
action: () => {
|
||||||
|
window.open(this.note.uri, '_blank');
|
||||||
}
|
}
|
||||||
|
|
||||||
anime({
|
|
||||||
targets: this.$refs.backdrop,
|
|
||||||
opacity: 1,
|
|
||||||
duration: 100,
|
|
||||||
easing: 'linear'
|
|
||||||
});
|
|
||||||
|
|
||||||
anime({
|
|
||||||
targets: this.$refs.popover,
|
|
||||||
opacity: 1,
|
|
||||||
scale: [0.5, 1],
|
|
||||||
duration: 500
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
return items;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
pin() {
|
pin() {
|
||||||
@@ -59,6 +50,15 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
del() {
|
||||||
|
if (!window.confirm('%i18n:@delete-confirm%')) return;
|
||||||
|
(this as any).api('notes/delete', {
|
||||||
|
noteId: this.note.id
|
||||||
|
}).then(() => {
|
||||||
|
this.$destroy();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
favorite() {
|
favorite() {
|
||||||
(this as any).api('notes/favorites/create', {
|
(this as any).api('notes/favorites/create', {
|
||||||
noteId: this.note.id
|
noteId: this.note.id
|
||||||
@@ -67,99 +67,11 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
close() {
|
closed() {
|
||||||
(this.$refs.backdrop as any).style.pointerEvents = 'none';
|
this.$nextTick(() => {
|
||||||
anime({
|
this.$destroy();
|
||||||
targets: this.$refs.backdrop,
|
|
||||||
opacity: 0,
|
|
||||||
duration: 200,
|
|
||||||
easing: 'linear'
|
|
||||||
});
|
|
||||||
|
|
||||||
(this.$refs.popover as any).style.pointerEvents = 'none';
|
|
||||||
anime({
|
|
||||||
targets: this.$refs.popover,
|
|
||||||
opacity: 0,
|
|
||||||
scale: 0.5,
|
|
||||||
duration: 200,
|
|
||||||
easing: 'easeInBack',
|
|
||||||
complete: () => this.$destroy()
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="stylus" scoped>
|
|
||||||
@import '~const.styl'
|
|
||||||
|
|
||||||
$border-color = rgba(27, 31, 35, 0.15)
|
|
||||||
|
|
||||||
.mk-note-menu
|
|
||||||
position initial
|
|
||||||
|
|
||||||
> .backdrop
|
|
||||||
position fixed
|
|
||||||
top 0
|
|
||||||
left 0
|
|
||||||
z-index 10000
|
|
||||||
width 100%
|
|
||||||
height 100%
|
|
||||||
background rgba(#000, 0.1)
|
|
||||||
opacity 0
|
|
||||||
|
|
||||||
> .popover
|
|
||||||
position absolute
|
|
||||||
z-index 10001
|
|
||||||
padding 8px 0
|
|
||||||
background #fff
|
|
||||||
border 1px solid $border-color
|
|
||||||
border-radius 4px
|
|
||||||
box-shadow 0 3px 12px rgba(27, 31, 35, 0.15)
|
|
||||||
transform scale(0.5)
|
|
||||||
opacity 0
|
|
||||||
|
|
||||||
$balloon-size = 16px
|
|
||||||
|
|
||||||
&:not(.compact)
|
|
||||||
margin-top $balloon-size
|
|
||||||
transform-origin center -($balloon-size)
|
|
||||||
|
|
||||||
&:before
|
|
||||||
content ""
|
|
||||||
display block
|
|
||||||
position absolute
|
|
||||||
top -($balloon-size * 2)
|
|
||||||
left s('calc(50% - %s)', $balloon-size)
|
|
||||||
border-top solid $balloon-size transparent
|
|
||||||
border-left solid $balloon-size transparent
|
|
||||||
border-right solid $balloon-size transparent
|
|
||||||
border-bottom solid $balloon-size $border-color
|
|
||||||
|
|
||||||
&:after
|
|
||||||
content ""
|
|
||||||
display block
|
|
||||||
position absolute
|
|
||||||
top -($balloon-size * 2) + 1.5px
|
|
||||||
left s('calc(50% - %s)', $balloon-size)
|
|
||||||
border-top solid $balloon-size transparent
|
|
||||||
border-left solid $balloon-size transparent
|
|
||||||
border-right solid $balloon-size transparent
|
|
||||||
border-bottom solid $balloon-size #fff
|
|
||||||
|
|
||||||
> button
|
|
||||||
> a
|
|
||||||
display block
|
|
||||||
padding 8px 16px
|
|
||||||
width 100%
|
|
||||||
|
|
||||||
&:hover
|
|
||||||
color $theme-color-foreground
|
|
||||||
background $theme-color
|
|
||||||
text-decoration none
|
|
||||||
|
|
||||||
&:active
|
|
||||||
color $theme-color-foreground
|
|
||||||
background darken($theme-color, 10%)
|
|
||||||
|
|
||||||
</style>
|
|
||||||
|
|||||||
@@ -8,7 +8,10 @@
|
|||||||
<img v-if="reaction == 'congrats'" src="/assets/reactions/congrats.png" alt="%i18n:common.reactions.congrats%">
|
<img v-if="reaction == 'congrats'" src="/assets/reactions/congrats.png" alt="%i18n:common.reactions.congrats%">
|
||||||
<img v-if="reaction == 'angry'" src="/assets/reactions/angry.png" alt="%i18n:common.reactions.angry%">
|
<img v-if="reaction == 'angry'" src="/assets/reactions/angry.png" alt="%i18n:common.reactions.angry%">
|
||||||
<img v-if="reaction == 'confused'" src="/assets/reactions/confused.png" alt="%i18n:common.reactions.confused%">
|
<img v-if="reaction == 'confused'" src="/assets/reactions/confused.png" alt="%i18n:common.reactions.confused%">
|
||||||
<img v-if="reaction == 'pudding'" src="/assets/reactions/pudding.png" alt="%i18n:common.reactions.pudding%">
|
<template v-if="reaction == 'pudding'">
|
||||||
|
<img v-if="$store.getters.isSignedIn && $store.state.settings.iLikeSushi" src="/assets/reactions/sushi.png" alt="%i18n:common.reactions.pudding%">
|
||||||
|
<img v-else src="/assets/reactions/pudding.png" alt="%i18n:common.reactions.pudding%">
|
||||||
|
</template>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-reaction-picker">
|
<div class="mk-reaction-picker">
|
||||||
<div class="backdrop" ref="backdrop" @click="close"></div>
|
<div class="backdrop" ref="backdrop" @click="close"></div>
|
||||||
<div class="popover" :class="{ compact }" ref="popover">
|
<div class="popover" :class="{ compact, big }" ref="popover">
|
||||||
<p v-if="!compact">{{ title }}</p>
|
<p v-if="!compact">{{ title }}</p>
|
||||||
<div>
|
<div>
|
||||||
<button @click="react('like')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="1" title="%i18n:common.reactions.like%"><mk-reaction-icon reaction='like'/></button>
|
<button @click="react('like')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="1" title="%i18n:common.reactions.like%"><mk-reaction-icon reaction='like'/></button>
|
||||||
@@ -25,7 +25,28 @@ import * as anime from 'animejs';
|
|||||||
const placeholder = '%i18n:@choose-reaction%';
|
const placeholder = '%i18n:@choose-reaction%';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
props: ['note', 'source', 'compact', 'cb'],
|
props: {
|
||||||
|
note: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
source: {
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
compact: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
cb: {
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
big: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
title: placeholder
|
title: placeholder
|
||||||
@@ -162,6 +183,16 @@ root(isDark)
|
|||||||
border-right solid $balloon-size transparent
|
border-right solid $balloon-size transparent
|
||||||
border-bottom solid $balloon-size $bgcolor
|
border-bottom solid $balloon-size $bgcolor
|
||||||
|
|
||||||
|
&.big
|
||||||
|
> div
|
||||||
|
width 280px
|
||||||
|
|
||||||
|
> button
|
||||||
|
width 50px
|
||||||
|
height 50px
|
||||||
|
font-size 28px
|
||||||
|
border-radius 4px
|
||||||
|
|
||||||
> p
|
> p
|
||||||
display block
|
display block
|
||||||
margin 0
|
margin 0
|
||||||
|
|||||||
@@ -1,24 +1,33 @@
|
|||||||
<template>
|
<template>
|
||||||
<form class="mk-signin" :class="{ signing }" @submit.prevent="onSubmit">
|
<form class="mk-signin" :class="{ signing }" @submit.prevent="onSubmit">
|
||||||
<label class="user-name">
|
<div class="avatar" :style="{ backgroundImage: user ? `url('${ user.avatarUrl }')` : null }" v-show="withAvatar"></div>
|
||||||
<input v-model="username" type="text" pattern="^[a-zA-Z0-9_]+$" placeholder="%i18n:@username%" autofocus required @change="onUsernameChange"/>%fa:at%
|
<ui-input v-model="username" type="text" pattern="^[a-zA-Z0-9_]+$" spellcheck="false" autofocus required @input="onUsernameChange">
|
||||||
</label>
|
<span>%i18n:@username%</span>
|
||||||
<label class="password">
|
<span slot="prefix">@</span>
|
||||||
<input v-model="password" type="password" placeholder="%i18n:@password%" required/>%fa:lock%
|
<span slot="suffix">@{{ host }}</span>
|
||||||
</label>
|
</ui-input>
|
||||||
<label class="token" v-if="user && user.twoFactorEnabled">
|
<ui-input v-model="password" type="password" required>
|
||||||
<input v-model="token" type="number" placeholder="%i18n:@token%" required/>%fa:lock%
|
<span>%i18n:@password%</span>
|
||||||
</label>
|
<span slot="prefix">%fa:lock%</span>
|
||||||
<button type="submit" :disabled="signing">{{ signing ? '%i18n:@signing-in%' : '%i18n:@signin%' }}</button>
|
</ui-input>
|
||||||
もしくは <a :href="`${apiUrl}/signin/twitter`">Twitterでログイン</a>
|
<ui-input v-if="user && user.twoFactorEnabled" v-model="token" type="number" required/>
|
||||||
|
<ui-button type="submit" :disabled="signing">{{ signing ? '%i18n:@signing-in%' : '%i18n:@signin%' }}</ui-button>
|
||||||
|
<p style="margin: 8px 0;">または<a :href="`${apiUrl}/signin/twitter`">Twitterでログイン</a></p>
|
||||||
</form>
|
</form>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import { apiUrl } from '../../../config';
|
import { apiUrl, host } from '../../../config';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
withAvatar: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: true
|
||||||
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
signing: false,
|
signing: false,
|
||||||
@@ -27,6 +36,7 @@ export default Vue.extend({
|
|||||||
password: '',
|
password: '',
|
||||||
token: '',
|
token: '',
|
||||||
apiUrl,
|
apiUrl,
|
||||||
|
host
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -35,6 +45,8 @@ export default Vue.extend({
|
|||||||
username: this.username
|
username: this.username
|
||||||
}).then(user => {
|
}).then(user => {
|
||||||
this.user = user;
|
this.user = user;
|
||||||
|
}, () => {
|
||||||
|
this.user = null;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onSubmit() {
|
onSubmit() {
|
||||||
@@ -59,84 +71,19 @@ export default Vue.extend({
|
|||||||
@import '~const.styl'
|
@import '~const.styl'
|
||||||
|
|
||||||
.mk-signin
|
.mk-signin
|
||||||
|
color #555
|
||||||
|
|
||||||
&.signing
|
&.signing
|
||||||
&, *
|
&, *
|
||||||
cursor wait !important
|
cursor wait !important
|
||||||
|
|
||||||
label
|
> .avatar
|
||||||
display block
|
margin 16px auto 0 auto
|
||||||
margin 12px 0
|
width 64px
|
||||||
|
height 64px
|
||||||
[data-fa]
|
background #ddd
|
||||||
display block
|
background-position center
|
||||||
pointer-events none
|
background-size cover
|
||||||
position absolute
|
border-radius 100%
|
||||||
bottom 0
|
|
||||||
top 0
|
|
||||||
left 0
|
|
||||||
z-index 1
|
|
||||||
margin auto
|
|
||||||
padding 0 16px
|
|
||||||
height 1em
|
|
||||||
color #898786
|
|
||||||
|
|
||||||
input[type=text]
|
|
||||||
input[type=password]
|
|
||||||
input[type=number]
|
|
||||||
user-select text
|
|
||||||
display inline-block
|
|
||||||
cursor auto
|
|
||||||
padding 0 0 0 38px
|
|
||||||
margin 0
|
|
||||||
width 100%
|
|
||||||
line-height 44px
|
|
||||||
font-size 1em
|
|
||||||
color rgba(#000, 0.7)
|
|
||||||
background #fff
|
|
||||||
outline none
|
|
||||||
border solid 1px #eee
|
|
||||||
border-radius 4px
|
|
||||||
|
|
||||||
&:hover
|
|
||||||
background rgba(255, 255, 255, 0.7)
|
|
||||||
border-color #ddd
|
|
||||||
|
|
||||||
& + i
|
|
||||||
color #797776
|
|
||||||
|
|
||||||
&:focus
|
|
||||||
background #fff
|
|
||||||
border-color #ccc
|
|
||||||
|
|
||||||
& + i
|
|
||||||
color #797776
|
|
||||||
|
|
||||||
[type=submit]
|
|
||||||
cursor pointer
|
|
||||||
padding 16px
|
|
||||||
margin -6px 0 0 0
|
|
||||||
width 100%
|
|
||||||
font-size 1.2em
|
|
||||||
color rgba(#000, 0.5)
|
|
||||||
outline none
|
|
||||||
border none
|
|
||||||
border-radius 0
|
|
||||||
background transparent
|
|
||||||
transition all .5s ease
|
|
||||||
|
|
||||||
&:hover
|
|
||||||
color $theme-color
|
|
||||||
transition all .2s ease
|
|
||||||
|
|
||||||
&:focus
|
|
||||||
color $theme-color
|
|
||||||
transition all .2s ease
|
|
||||||
|
|
||||||
&:active
|
|
||||||
color darken($theme-color, 30%)
|
|
||||||
transition all .2s ease
|
|
||||||
|
|
||||||
&:disabled
|
|
||||||
opacity 0.7
|
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,60 +1,58 @@
|
|||||||
<template>
|
<template>
|
||||||
<form class="mk-signup" @submit.prevent="onSubmit" autocomplete="off">
|
<form class="mk-signup" @submit.prevent="onSubmit" :autocomplete="Math.random()">
|
||||||
<label class="username">
|
<ui-input v-model="username" type="text" pattern="^[a-zA-Z0-9_]{1,20}$" :autocomplete="Math.random()" spellcheck="false" required @input="onChangeUsername">
|
||||||
<p class="caption">%fa:at%%i18n:@username%</p>
|
<span>%i18n:@username%</span>
|
||||||
<input v-model="username" type="text" pattern="^[a-zA-Z0-9_]{1,20}$" placeholder="a~z、A~Z、0~9、-" autocomplete="off" required @input="onChangeUsername"/>
|
<span slot="prefix">@</span>
|
||||||
<p class="profile-page-url-preview" v-if="shouldShowProfileUrl">{{ `${url}/@${username}` }}</p>
|
<span slot="suffix">@{{ host }}</span>
|
||||||
<p class="info" v-if="usernameState == 'wait'" style="color:#999">%fa:spinner .pulse .fw%%i18n:@checking%</p>
|
<p slot="text" v-if="usernameState == 'wait'" style="color:#999">%fa:spinner .pulse .fw% %i18n:@checking%</p>
|
||||||
<p class="info" v-if="usernameState == 'ok'" style="color:#3CB7B5">%fa:check .fw%%i18n:@available%</p>
|
<p slot="text" v-if="usernameState == 'ok'" style="color:#3CB7B5">%fa:check .fw% %i18n:@available%</p>
|
||||||
<p class="info" v-if="usernameState == 'unavailable'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@unavailable%</p>
|
<p slot="text" v-if="usernameState == 'unavailable'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@unavailable%</p>
|
||||||
<p class="info" v-if="usernameState == 'error'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@error%</p>
|
<p slot="text" v-if="usernameState == 'error'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@error%</p>
|
||||||
<p class="info" v-if="usernameState == 'invalid-format'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@invalid-format%</p>
|
<p slot="text" v-if="usernameState == 'invalid-format'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@invalid-format%</p>
|
||||||
<p class="info" v-if="usernameState == 'min-range'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@too-short%</p>
|
<p slot="text" v-if="usernameState == 'min-range'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@too-short%</p>
|
||||||
<p class="info" v-if="usernameState == 'max-range'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@too-long%</p>
|
<p slot="text" v-if="usernameState == 'max-range'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@too-long%</p>
|
||||||
</label>
|
</ui-input>
|
||||||
<label class="password">
|
<ui-input v-model="password" type="password" :autocomplete="Math.random()" required @input="onChangePassword" :with-password-meter="true">
|
||||||
<p class="caption">%fa:lock%%i18n:@password%</p>
|
<span>%i18n:@password%</span>
|
||||||
<input v-model="password" type="password" placeholder="%i18n:@password-placeholder%" autocomplete="off" required @input="onChangePassword"/>
|
<span slot="prefix">%fa:lock%</span>
|
||||||
<div class="meter" v-show="passwordStrength != ''" :data-strength="passwordStrength">
|
<div slot="text">
|
||||||
<div class="value" ref="passwordMetar"></div>
|
<p slot="text" v-if="passwordStrength == 'low'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@weak-password%</p>
|
||||||
|
<p slot="text" v-if="passwordStrength == 'medium'" style="color:#3CB7B5">%fa:check .fw% %i18n:@normal-password%</p>
|
||||||
|
<p slot="text" v-if="passwordStrength == 'high'" style="color:#3CB7B5">%fa:check .fw% %i18n:@strong-password%</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="info" v-if="passwordStrength == 'low'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@weak-password%</p>
|
</ui-input>
|
||||||
<p class="info" v-if="passwordStrength == 'medium'" style="color:#3CB7B5">%fa:check .fw%%i18n:@normal-password%</p>
|
<ui-input v-model="retypedPassword" type="password" :autocomplete="Math.random()" required @input="onChangePasswordRetype">
|
||||||
<p class="info" v-if="passwordStrength == 'high'" style="color:#3CB7B5">%fa:check .fw%%i18n:@strong-password%</p>
|
<span>%i18n:@password% (%i18n:@retype%)</span>
|
||||||
</label>
|
<span slot="prefix">%fa:lock%</span>
|
||||||
<label class="retype-password">
|
<div slot="text">
|
||||||
<p class="caption">%fa:lock%%i18n:@password%(%i18n:@retype%)</p>
|
<p slot="text" v-if="passwordRetypeState == 'match'" style="color:#3CB7B5">%fa:check .fw% %i18n:@password-matched%</p>
|
||||||
<input v-model="retypedPassword" type="password" placeholder="%i18n:@retype-placeholder%" autocomplete="off" required @input="onChangePasswordRetype"/>
|
<p slot="text" v-if="passwordRetypeState == 'not-match'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@password-not-matched%</p>
|
||||||
<p class="info" v-if="passwordRetypeState == 'match'" style="color:#3CB7B5">%fa:check .fw%%i18n:@password-matched%</p>
|
</div>
|
||||||
<p class="info" v-if="passwordRetypeState == 'not-match'" style="color:#FF1161">%fa:exclamation-triangle .fw%%i18n:@password-not-matched%</p>
|
</ui-input>
|
||||||
</label>
|
<div class="g-recaptcha" :data-sitekey="recaptchaSitekey" style="margin: 16px 0;"></div>
|
||||||
<label class="recaptcha">
|
<label class="agree-tou" style="display: block; margin: 16px 0;">
|
||||||
<p class="caption"><template v-if="recaptchaed">%fa:toggle-on%</template><template v-if="!recaptchaed">%fa:toggle-off%</template>%i18n:@recaptcha%</p>
|
<input name="agree-tou" type="checkbox" required/>
|
||||||
<div class="g-recaptcha" data-callback="onRecaptchaed" data-expired-callback="onRecaptchaExpired" :data-sitekey="recaptchaSitekey"></div>
|
|
||||||
</label>
|
|
||||||
<label class="agree-tou">
|
|
||||||
<input name="agree-tou" type="checkbox" autocomplete="off" required/>
|
|
||||||
<p><a :href="touUrl" target="_blank">利用規約</a>に同意する</p>
|
<p><a :href="touUrl" target="_blank">利用規約</a>に同意する</p>
|
||||||
</label>
|
</label>
|
||||||
<button type="submit">%i18n:@create%</button>
|
<ui-button type="submit">%i18n:@create%</ui-button>
|
||||||
</form>
|
</form>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
const getPasswordStrength = require('syuilo-password-strength');
|
const getPasswordStrength = require('syuilo-password-strength');
|
||||||
import { url, docsUrl, lang, recaptchaSitekey } from '../../../config';
|
import { host, url, docsUrl, lang, recaptchaSitekey } from '../../../config';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
host,
|
||||||
username: '',
|
username: '',
|
||||||
password: '',
|
password: '',
|
||||||
retypedPassword: '',
|
retypedPassword: '',
|
||||||
url,
|
url,
|
||||||
touUrl: `${docsUrl}/${lang}/tou`,
|
touUrl: `${docsUrl}/${lang}/tou`,
|
||||||
recaptchaSitekey,
|
recaptchaSitekey,
|
||||||
recaptchaed: false,
|
|
||||||
usernameState: null,
|
usernameState: null,
|
||||||
passwordStrength: '',
|
passwordStrength: '',
|
||||||
passwordRetypeState: null
|
passwordRetypeState: null
|
||||||
@@ -104,7 +102,6 @@ export default Vue.extend({
|
|||||||
|
|
||||||
const strength = getPasswordStrength(this.password);
|
const strength = getPasswordStrength(this.password);
|
||||||
this.passwordStrength = strength > 0.7 ? 'high' : strength > 0.3 ? 'medium' : 'low';
|
this.passwordStrength = strength > 0.7 ? 'high' : strength > 0.3 ? 'medium' : 'low';
|
||||||
(this.$refs.passwordMetar as any).style.width = `${strength * 100}%`;
|
|
||||||
},
|
},
|
||||||
onChangePasswordRetype() {
|
onChangePasswordRetype() {
|
||||||
if (this.retypedPassword == '') {
|
if (this.retypedPassword == '') {
|
||||||
@@ -130,19 +127,9 @@ export default Vue.extend({
|
|||||||
alert('%i18n:@some-error%');
|
alert('%i18n:@some-error%');
|
||||||
|
|
||||||
(window as any).grecaptcha.reset();
|
(window as any).grecaptcha.reset();
|
||||||
this.recaptchaed = false;
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
|
||||||
(window as any).onRecaptchaed = () => {
|
|
||||||
this.recaptchaed = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
(window as any).onRecaptchaExpired = () => {
|
|
||||||
this.recaptchaed = false;
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted() {
|
mounted() {
|
||||||
const head = document.getElementsByTagName('head')[0];
|
const head = document.getElementsByTagName('head')[0];
|
||||||
const script = document.createElement('script');
|
const script = document.createElement('script');
|
||||||
@@ -158,100 +145,6 @@ export default Vue.extend({
|
|||||||
.mk-signup
|
.mk-signup
|
||||||
min-width 302px
|
min-width 302px
|
||||||
|
|
||||||
label
|
|
||||||
display block
|
|
||||||
margin 0 0 16px 0
|
|
||||||
|
|
||||||
> .caption
|
|
||||||
margin 0 0 4px 0
|
|
||||||
color #828888
|
|
||||||
font-size 0.95em
|
|
||||||
|
|
||||||
> [data-fa]
|
|
||||||
margin-right 0.25em
|
|
||||||
color #96adac
|
|
||||||
|
|
||||||
> .info
|
|
||||||
display block
|
|
||||||
margin 4px 0
|
|
||||||
font-size 0.8em
|
|
||||||
|
|
||||||
> [data-fa]
|
|
||||||
margin-right 0.3em
|
|
||||||
|
|
||||||
&.username
|
|
||||||
.profile-page-url-preview
|
|
||||||
display block
|
|
||||||
margin 4px 8px 0 4px
|
|
||||||
font-size 0.8em
|
|
||||||
color #888
|
|
||||||
|
|
||||||
&:empty
|
|
||||||
display none
|
|
||||||
|
|
||||||
&:not(:empty) + .info
|
|
||||||
margin-top 0
|
|
||||||
|
|
||||||
&.password
|
|
||||||
.meter
|
|
||||||
display block
|
|
||||||
margin-top 8px
|
|
||||||
width 100%
|
|
||||||
height 8px
|
|
||||||
|
|
||||||
&[data-strength='']
|
|
||||||
display none
|
|
||||||
|
|
||||||
&[data-strength='low']
|
|
||||||
> .value
|
|
||||||
background #d73612
|
|
||||||
|
|
||||||
&[data-strength='medium']
|
|
||||||
> .value
|
|
||||||
background #d7ca12
|
|
||||||
|
|
||||||
&[data-strength='high']
|
|
||||||
> .value
|
|
||||||
background #61bb22
|
|
||||||
|
|
||||||
> .value
|
|
||||||
display block
|
|
||||||
width 0%
|
|
||||||
height 100%
|
|
||||||
background transparent
|
|
||||||
border-radius 4px
|
|
||||||
transition all 0.1s ease
|
|
||||||
|
|
||||||
[type=text], [type=password]
|
|
||||||
user-select text
|
|
||||||
display inline-block
|
|
||||||
cursor auto
|
|
||||||
padding 0 12px
|
|
||||||
margin 0
|
|
||||||
width 100%
|
|
||||||
line-height 44px
|
|
||||||
font-size 1em
|
|
||||||
color #333 !important
|
|
||||||
background #fff !important
|
|
||||||
outline none
|
|
||||||
border solid 1px rgba(#000, 0.1)
|
|
||||||
border-radius 4px
|
|
||||||
box-shadow 0 0 0 114514px #fff inset
|
|
||||||
transition all .3s ease
|
|
||||||
|
|
||||||
&:hover
|
|
||||||
border-color rgba(#000, 0.2)
|
|
||||||
transition all .1s ease
|
|
||||||
|
|
||||||
&:focus
|
|
||||||
color $theme-color !important
|
|
||||||
border-color $theme-color
|
|
||||||
box-shadow 0 0 0 1024px #fff inset, 0 0 0 4px rgba($theme-color, 10%)
|
|
||||||
transition all 0s ease
|
|
||||||
|
|
||||||
&:disabled
|
|
||||||
opacity 0.5
|
|
||||||
|
|
||||||
.agree-tou
|
.agree-tou
|
||||||
padding 4px
|
padding 4px
|
||||||
border-radius 4px
|
border-radius 4px
|
||||||
@@ -269,19 +162,4 @@ export default Vue.extend({
|
|||||||
display inline
|
display inline
|
||||||
color #555
|
color #555
|
||||||
|
|
||||||
button
|
|
||||||
margin 0
|
|
||||||
padding 16px
|
|
||||||
width 100%
|
|
||||||
font-size 1em
|
|
||||||
color #fff
|
|
||||||
background $theme-color
|
|
||||||
border-radius 3px
|
|
||||||
|
|
||||||
&:hover
|
|
||||||
background lighten($theme-color, 5%)
|
|
||||||
|
|
||||||
&:active
|
|
||||||
background darken($theme-color, 5%)
|
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -58,18 +58,21 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
if (this.mode == 'relative' || this.mode == 'detail') {
|
if (this.mode == 'relative' || this.mode == 'detail') {
|
||||||
this.tick();
|
this.tickId = window.requestAnimationFrame(this.tick);
|
||||||
this.tickId = setInterval(this.tick, 1000);
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
destroyed() {
|
destroyed() {
|
||||||
if (this.mode === 'relative' || this.mode === 'detail') {
|
if (this.mode === 'relative' || this.mode === 'detail') {
|
||||||
clearInterval(this.tickId);
|
window.clearTimeout(this.tickId);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
tick() {
|
tick() {
|
||||||
this.now = new Date();
|
this.now = new Date();
|
||||||
|
|
||||||
|
this.tickId = setTimeout(() => {
|
||||||
|
window.requestAnimationFrame(this.tick);
|
||||||
|
}, 10000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mk-twitter-setting">
|
<div class="mk-twitter-setting">
|
||||||
<p>%i18n:@description%<a :href="`${docsUrl}/link-to-twitter`" target="_blank">%i18n:@detail%</a></p>
|
<p>%i18n:@description%<a :href="`${docsUrl}/link-to-twitter`" target="_blank">%i18n:@detail%</a></p>
|
||||||
<p class="account" v-if="os.i.twitter" :title="`Twitter ID: ${os.i.twitter.userId}`">%i18n:@connected-to%: <a :href="`https://twitter.com/${os.i.twitter.screenName}`" target="_blank">@{{ os.i.twitter.screenName }}</a></p>
|
<p class="account" v-if="$store.state.i.twitter" :title="`Twitter ID: ${$store.state.i.twitter.userId}`">%i18n:@connected-to%: <a :href="`https://twitter.com/${$store.state.i.twitter.screenName}`" target="_blank">@{{ $store.state.i.twitter.screenName }}</a></p>
|
||||||
<p>
|
<p>
|
||||||
<a :href="`${apiUrl}/connect/twitter`" target="_blank" @click.prevent="connect">{{ os.i.twitter ? '%i18n:@reconnect%' : '%i18n:@connect%' }}</a>
|
<a :href="`${apiUrl}/connect/twitter`" target="_blank" @click.prevent="connect">{{ $store.state.i.twitter ? '%i18n:@reconnect%' : '%i18n:@connect%' }}</a>
|
||||||
<span v-if="os.i.twitter"> or </span>
|
<span v-if="$store.state.i.twitter"> or </span>
|
||||||
<a :href="`${apiUrl}/disconnect/twitter`" target="_blank" v-if="os.i.twitter" @click.prevent="disconnect">%i18n:@disconnect%</a>
|
<a :href="`${apiUrl}/disconnect/twitter`" target="_blank" v-if="$store.state.i.twitter" @click.prevent="disconnect">%i18n:@disconnect%</a>
|
||||||
</p>
|
</p>
|
||||||
<p class="id" v-if="os.i.twitter">Twitter ID: {{ os.i.twitter.userId }}</p>
|
<p class="id" v-if="$store.state.i.twitter">Twitter ID: {{ $store.state.i.twitter.userId }}</p>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -24,8 +24,8 @@ export default Vue.extend({
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.$watch('os.i', () => {
|
this.$watch('$store.state.i', () => {
|
||||||
if ((this as any).os.i.twitter) {
|
if (this.$store.state.i.twitter) {
|
||||||
if (this.form) this.form.close();
|
if (this.form) this.form.close();
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
|
|||||||
82
src/client/app/common/views/components/ui/button.vue
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ui-button" :class="[styl]">
|
||||||
|
<button :type="type" @click="$emit('click')">
|
||||||
|
<slot></slot>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
type: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
styl: 'fill'
|
||||||
|
};
|
||||||
|
},
|
||||||
|
inject: {
|
||||||
|
isCardChild: { default: false }
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
if (this.isCardChild) {
|
||||||
|
this.styl = 'line';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark, fill)
|
||||||
|
> button
|
||||||
|
display block
|
||||||
|
width 100%
|
||||||
|
margin 0
|
||||||
|
padding 0
|
||||||
|
font-weight bold
|
||||||
|
font-size 16px
|
||||||
|
line-height 44px
|
||||||
|
border none
|
||||||
|
border-radius 6px
|
||||||
|
outline none
|
||||||
|
box-shadow none
|
||||||
|
|
||||||
|
if fill
|
||||||
|
color $theme-color-foreground
|
||||||
|
background $theme-color
|
||||||
|
|
||||||
|
&:hover
|
||||||
|
background lighten($theme-color, 5%)
|
||||||
|
|
||||||
|
&:active
|
||||||
|
background darken($theme-color, 5%)
|
||||||
|
else
|
||||||
|
color $theme-color
|
||||||
|
background none
|
||||||
|
|
||||||
|
&:hover
|
||||||
|
color darken($theme-color, 5%)
|
||||||
|
|
||||||
|
&:active
|
||||||
|
background rgba($theme-color, 0.3)
|
||||||
|
|
||||||
|
.ui-button[data-darkmode]
|
||||||
|
&.fill
|
||||||
|
root(true, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(true, false)
|
||||||
|
|
||||||
|
.ui-button:not([data-darkmode])
|
||||||
|
&.fill
|
||||||
|
root(false, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(false, false)
|
||||||
|
|
||||||
|
</style>
|
||||||
46
src/client/app/common/views/components/ui/card.vue
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ui-card">
|
||||||
|
<header>
|
||||||
|
<slot name="title"></slot>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<slot></slot>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default Vue.extend({
|
||||||
|
provide() {
|
||||||
|
return {
|
||||||
|
isCardChild: true
|
||||||
|
};
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark)
|
||||||
|
margin 16px
|
||||||
|
padding 16px
|
||||||
|
color isDark ? #fff : #000
|
||||||
|
background isDark ? #282C37 : #fff
|
||||||
|
box-shadow 0 3px 1px -2px rgba(#000, 0.2), 0 2px 2px 0 rgba(#000, 0.14), 0 1px 5px 0 rgba(#000, 0.12)
|
||||||
|
|
||||||
|
@media (min-width 500px)
|
||||||
|
padding 32px
|
||||||
|
|
||||||
|
> header
|
||||||
|
font-weight normal
|
||||||
|
font-size 24px
|
||||||
|
color isDark ? #fff : #444
|
||||||
|
|
||||||
|
.ui-card[data-darkmode]
|
||||||
|
root(true)
|
||||||
|
|
||||||
|
.ui-card:not([data-darkmode])
|
||||||
|
root(false)
|
||||||
|
|
||||||
|
</style>
|
||||||
30
src/client/app/common/views/components/ui/form.vue
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ui-form">
|
||||||
|
<fieldset :disabled="disabled">
|
||||||
|
<slot></slot>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
disabled: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
.ui-form
|
||||||
|
> fieldset
|
||||||
|
margin 0
|
||||||
|
padding 0
|
||||||
|
border none
|
||||||
|
|
||||||
|
</style>
|
||||||
350
src/client/app/common/views/components/ui/input.vue
Normal file
@@ -0,0 +1,350 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ui-input" :class="[{ focused, filled }, styl]">
|
||||||
|
<div class="icon" ref="icon"><slot name="icon"></slot></div>
|
||||||
|
<div class="input">
|
||||||
|
<div class="password-meter" v-if="withPasswordMeter" v-show="passwordStrength != ''" :data-strength="passwordStrength">
|
||||||
|
<div class="value" ref="passwordMetar"></div>
|
||||||
|
</div>
|
||||||
|
<span class="label" ref="label"><slot></slot></span>
|
||||||
|
<div class="prefix" ref="prefix"><slot name="prefix"></slot></div>
|
||||||
|
<template v-if="type != 'file'">
|
||||||
|
<input ref="input"
|
||||||
|
:type="type"
|
||||||
|
v-model="v"
|
||||||
|
:required="required"
|
||||||
|
:readonly="readonly"
|
||||||
|
:pattern="pattern"
|
||||||
|
:autocomplete="autocomplete"
|
||||||
|
:spellcheck="spellcheck"
|
||||||
|
@focus="focused = true"
|
||||||
|
@blur="focused = false">
|
||||||
|
</template>
|
||||||
|
<template v-else>
|
||||||
|
<input ref="input"
|
||||||
|
type="text"
|
||||||
|
:value="placeholder"
|
||||||
|
readonly
|
||||||
|
@click="chooseFile">
|
||||||
|
<input ref="file"
|
||||||
|
type="file"
|
||||||
|
:value="value"
|
||||||
|
@change="onChangeFile">
|
||||||
|
</template>
|
||||||
|
<div class="suffix" ref="suffix"><slot name="suffix"></slot></div>
|
||||||
|
</div>
|
||||||
|
<div class="text"><slot name="text"></slot></div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
const getPasswordStrength = require('syuilo-password-strength');
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
type: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
readonly: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
pattern: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
autocomplete: {
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
spellcheck: {
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
withPasswordMeter: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
v: this.value,
|
||||||
|
focused: false,
|
||||||
|
passwordStrength: '',
|
||||||
|
styl: 'fill'
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
filled(): boolean {
|
||||||
|
return this.v != '' && this.v != null;
|
||||||
|
},
|
||||||
|
placeholder(): string {
|
||||||
|
if (this.type != 'file') return null;
|
||||||
|
if (this.v == null) return null;
|
||||||
|
|
||||||
|
if (typeof this.v == 'string') return this.v;
|
||||||
|
|
||||||
|
if (Array.isArray(this.v)) {
|
||||||
|
return this.v.map(file => file.name).join(', ');
|
||||||
|
} else {
|
||||||
|
return this.v.name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
value(v) {
|
||||||
|
this.v = v;
|
||||||
|
},
|
||||||
|
v(v) {
|
||||||
|
this.$emit('input', v);
|
||||||
|
|
||||||
|
if (this.withPasswordMeter) {
|
||||||
|
if (v == '') {
|
||||||
|
this.passwordStrength = '';
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const strength = getPasswordStrength(v);
|
||||||
|
this.passwordStrength = strength > 0.7 ? 'high' : strength > 0.3 ? 'medium' : 'low';
|
||||||
|
(this.$refs.passwordMetar as any).style.width = `${strength * 100}%`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
inject: {
|
||||||
|
isCardChild: { default: false }
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
if (this.isCardChild) {
|
||||||
|
this.styl = 'line';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
if (this.$refs.prefix) {
|
||||||
|
this.$refs.label.style.left = (this.$refs.prefix.offsetLeft + this.$refs.prefix.offsetWidth) + 'px';
|
||||||
|
if (this.$refs.prefix.offsetWidth) {
|
||||||
|
this.$refs.input.style.paddingLeft = this.$refs.prefix.offsetWidth + 'px';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (this.$refs.suffix) {
|
||||||
|
if (this.$refs.suffix.offsetWidth) {
|
||||||
|
this.$refs.input.style.paddingRight = this.$refs.suffix.offsetWidth + 'px';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
focus() {
|
||||||
|
this.$refs.input.focus();
|
||||||
|
},
|
||||||
|
chooseFile() {
|
||||||
|
this.$refs.file.click();
|
||||||
|
},
|
||||||
|
onChangeFile() {
|
||||||
|
this.v = Array.from((this.$refs.file as any).files);
|
||||||
|
this.$emit('input', this.v);
|
||||||
|
this.$emit('change', this.v);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark, fill)
|
||||||
|
margin 32px 0
|
||||||
|
|
||||||
|
> .icon
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
left 0
|
||||||
|
width 24px
|
||||||
|
text-align center
|
||||||
|
line-height 32px
|
||||||
|
color isDark ? rgba(#fff, 0.7) : rgba(#000, 0.54)
|
||||||
|
|
||||||
|
&:not(:empty) + .input
|
||||||
|
margin-left 28px
|
||||||
|
|
||||||
|
> .input
|
||||||
|
|
||||||
|
if !fill
|
||||||
|
&:before
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
|
right 0
|
||||||
|
height 1px
|
||||||
|
background isDark ? rgba(#fff, 0.7) : rgba(#000, 0.42)
|
||||||
|
|
||||||
|
&:after
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
|
right 0
|
||||||
|
height 2px
|
||||||
|
background $theme-color
|
||||||
|
opacity 0
|
||||||
|
transform scaleX(0.12)
|
||||||
|
transition border 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1), transform 0.3s cubic-bezier(0.4, 0, 0.2, 1)
|
||||||
|
will-change border opacity transform
|
||||||
|
|
||||||
|
> .password-meter
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
left 0
|
||||||
|
width 100%
|
||||||
|
height 100%
|
||||||
|
border-radius 6px
|
||||||
|
overflow hidden
|
||||||
|
opacity 0.3
|
||||||
|
|
||||||
|
&[data-strength='']
|
||||||
|
display none
|
||||||
|
|
||||||
|
&[data-strength='low']
|
||||||
|
> .value
|
||||||
|
background #d73612
|
||||||
|
|
||||||
|
&[data-strength='medium']
|
||||||
|
> .value
|
||||||
|
background #d7ca12
|
||||||
|
|
||||||
|
&[data-strength='high']
|
||||||
|
> .value
|
||||||
|
background #61bb22
|
||||||
|
|
||||||
|
> .value
|
||||||
|
display block
|
||||||
|
width 0%
|
||||||
|
height 100%
|
||||||
|
background transparent
|
||||||
|
border-radius 6px
|
||||||
|
transition all 0.1s ease
|
||||||
|
|
||||||
|
> .label
|
||||||
|
position absolute
|
||||||
|
z-index 1
|
||||||
|
top fill ? 6px : 0
|
||||||
|
left 0
|
||||||
|
pointer-events none
|
||||||
|
transition 0.4s cubic-bezier(0.25, 0.8, 0.25, 1)
|
||||||
|
transition-duration 0.3s
|
||||||
|
font-size 16px
|
||||||
|
line-height 32px
|
||||||
|
color isDark ? rgba(#fff, 0.7) : rgba(#000, 0.54)
|
||||||
|
pointer-events none
|
||||||
|
//will-change transform
|
||||||
|
transform-origin top left
|
||||||
|
transform scale(1)
|
||||||
|
|
||||||
|
> input
|
||||||
|
display block
|
||||||
|
width 100%
|
||||||
|
margin 0
|
||||||
|
padding 0
|
||||||
|
font inherit
|
||||||
|
font-weight fill ? bold : normal
|
||||||
|
font-size 16px
|
||||||
|
line-height 32px
|
||||||
|
color isDark ? #fff : #000
|
||||||
|
background transparent
|
||||||
|
border none
|
||||||
|
border-radius 0
|
||||||
|
outline none
|
||||||
|
box-shadow none
|
||||||
|
|
||||||
|
if fill
|
||||||
|
padding 6px 12px
|
||||||
|
background rgba(#000, 0.035)
|
||||||
|
border-radius 6px
|
||||||
|
|
||||||
|
&[type='file']
|
||||||
|
display none
|
||||||
|
|
||||||
|
> .prefix
|
||||||
|
> .suffix
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
z-index 1
|
||||||
|
top 0
|
||||||
|
font-size 16px
|
||||||
|
line-height fill ? 44px : 32px
|
||||||
|
color isDark ? rgba(#fff, 0.7) : rgba(#000, 0.54)
|
||||||
|
pointer-events none
|
||||||
|
|
||||||
|
&:empty
|
||||||
|
display none
|
||||||
|
|
||||||
|
> *
|
||||||
|
display block
|
||||||
|
min-width 16px
|
||||||
|
max-width 150px
|
||||||
|
overflow hidden
|
||||||
|
white-space nowrap
|
||||||
|
text-overflow ellipsis
|
||||||
|
|
||||||
|
> .prefix
|
||||||
|
left 0
|
||||||
|
padding-right 4px
|
||||||
|
|
||||||
|
if fill
|
||||||
|
padding-left 12px
|
||||||
|
|
||||||
|
> .suffix
|
||||||
|
right 0
|
||||||
|
padding-left 4px
|
||||||
|
|
||||||
|
if fill
|
||||||
|
padding-right 12px
|
||||||
|
|
||||||
|
> .text
|
||||||
|
margin 6px 0
|
||||||
|
font-size 13px
|
||||||
|
|
||||||
|
*
|
||||||
|
margin 0
|
||||||
|
|
||||||
|
&.focused
|
||||||
|
> .input
|
||||||
|
if fill
|
||||||
|
background rgba(#000, 0.05)
|
||||||
|
else
|
||||||
|
&:after
|
||||||
|
opacity 1
|
||||||
|
transform scaleX(1)
|
||||||
|
|
||||||
|
> .label
|
||||||
|
color $theme-color
|
||||||
|
|
||||||
|
&.focused
|
||||||
|
&.filled
|
||||||
|
> .input
|
||||||
|
> .label
|
||||||
|
top fill ? -24px : -17px
|
||||||
|
left 0 !important
|
||||||
|
transform scale(0.75)
|
||||||
|
|
||||||
|
.ui-input[data-darkmode]
|
||||||
|
&.fill
|
||||||
|
root(true, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(true, false)
|
||||||
|
|
||||||
|
.ui-input:not([data-darkmode])
|
||||||
|
&.fill
|
||||||
|
root(false, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(false, false)
|
||||||
|
|
||||||
|
</style>
|
||||||
120
src/client/app/common/views/components/ui/radio.vue
Normal file
@@ -0,0 +1,120 @@
|
|||||||
|
<template>
|
||||||
|
<div
|
||||||
|
class="ui-radio"
|
||||||
|
:class="{ disabled, checked }"
|
||||||
|
:aria-checked="checked"
|
||||||
|
:aria-disabled="disabled"
|
||||||
|
@click="toggle"
|
||||||
|
>
|
||||||
|
<input type="radio"
|
||||||
|
:disabled="disabled"
|
||||||
|
>
|
||||||
|
<span class="button">
|
||||||
|
<span></span>
|
||||||
|
</span>
|
||||||
|
<span class="label"><slot></slot></span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default Vue.extend({
|
||||||
|
model: {
|
||||||
|
prop: 'model',
|
||||||
|
event: 'change'
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
model: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
value: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
disabled: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
checked(): boolean {
|
||||||
|
return this.model === this.value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
toggle() {
|
||||||
|
this.$emit('change', this.value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark)
|
||||||
|
display inline-block
|
||||||
|
margin 32px 32px 32px 0
|
||||||
|
cursor pointer
|
||||||
|
transition all 0.3s
|
||||||
|
|
||||||
|
> *
|
||||||
|
user-select none
|
||||||
|
|
||||||
|
&.disabled
|
||||||
|
opacity 0.6
|
||||||
|
cursor not-allowed
|
||||||
|
|
||||||
|
&.checked
|
||||||
|
> .button
|
||||||
|
border-color $theme-color
|
||||||
|
|
||||||
|
&:after
|
||||||
|
background-color $theme-color
|
||||||
|
transform scale(1)
|
||||||
|
opacity 1
|
||||||
|
|
||||||
|
> input
|
||||||
|
position absolute
|
||||||
|
width 0
|
||||||
|
height 0
|
||||||
|
opacity 0
|
||||||
|
margin 0
|
||||||
|
|
||||||
|
> .button
|
||||||
|
position absolute
|
||||||
|
width 20px
|
||||||
|
height 20px
|
||||||
|
background none
|
||||||
|
border solid 2px isDark ? rgba(#fff, 0.7) : rgba(#000, 0.54)
|
||||||
|
border-radius 100%
|
||||||
|
transition inherit
|
||||||
|
|
||||||
|
&:after
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
top 3px
|
||||||
|
right 3px
|
||||||
|
bottom 3px
|
||||||
|
left 3px
|
||||||
|
border-radius 100%
|
||||||
|
opacity 0
|
||||||
|
transform scale(0)
|
||||||
|
transition 0.4s cubic-bezier(0.25, 0.8, 0.25, 1)
|
||||||
|
|
||||||
|
> .label
|
||||||
|
margin-left 28px
|
||||||
|
display block
|
||||||
|
font-size 16px
|
||||||
|
line-height 20px
|
||||||
|
cursor pointer
|
||||||
|
|
||||||
|
.ui-radio[data-darkmode]
|
||||||
|
root(true)
|
||||||
|
|
||||||
|
.ui-radio:not([data-darkmode])
|
||||||
|
root(false)
|
||||||
|
|
||||||
|
</style>
|
||||||
215
src/client/app/common/views/components/ui/select.vue
Normal file
@@ -0,0 +1,215 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ui-select" :class="[{ focused, filled }, styl]">
|
||||||
|
<div class="icon" ref="icon"><slot name="icon"></slot></div>
|
||||||
|
<div class="input" @click="focus">
|
||||||
|
<span class="label" ref="label"><slot name="label"></slot></span>
|
||||||
|
<div class="prefix" ref="prefix"><slot name="prefix"></slot></div>
|
||||||
|
<select ref="input"
|
||||||
|
:value="v"
|
||||||
|
:required="required"
|
||||||
|
@input="$emit('input', $event.target.value)"
|
||||||
|
@focus="focused = true"
|
||||||
|
@blur="focused = false">
|
||||||
|
<slot></slot>
|
||||||
|
</select>
|
||||||
|
<div class="suffix"><slot name="suffix"></slot></div>
|
||||||
|
</div>
|
||||||
|
<div class="text"><slot name="text"></slot></div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
v: this.value,
|
||||||
|
focused: false,
|
||||||
|
styl: 'fill'
|
||||||
|
};
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
filled(): boolean {
|
||||||
|
return this.v != '' && this.v != null;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
value(v) {
|
||||||
|
this.v = v;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
inject: {
|
||||||
|
isCardChild: { default: false }
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
if (this.isCardChild) {
|
||||||
|
this.styl = 'line';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
if (this.$refs.prefix) {
|
||||||
|
this.$refs.label.style.left = (this.$refs.prefix.offsetLeft + this.$refs.prefix.offsetWidth) + 'px';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
focus() {
|
||||||
|
this.$refs.input.focus();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark, fill)
|
||||||
|
margin 32px 0
|
||||||
|
|
||||||
|
> .icon
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
left 0
|
||||||
|
width 24px
|
||||||
|
text-align center
|
||||||
|
line-height 32px
|
||||||
|
color rgba(#000, 0.54)
|
||||||
|
|
||||||
|
&:not(:empty) + .input
|
||||||
|
margin-left 28px
|
||||||
|
|
||||||
|
> .input
|
||||||
|
display flex
|
||||||
|
|
||||||
|
if fill
|
||||||
|
padding 6px 12px
|
||||||
|
background rgba(#000, 0.035)
|
||||||
|
border-radius 6px
|
||||||
|
else
|
||||||
|
&:before
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
|
right 0
|
||||||
|
height 1px
|
||||||
|
background isDark ? rgba(#fff, 0.7) : rgba(#000, 0.42)
|
||||||
|
|
||||||
|
&:after
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
|
right 0
|
||||||
|
height 2px
|
||||||
|
background $theme-color
|
||||||
|
opacity 0
|
||||||
|
transform scaleX(0.12)
|
||||||
|
transition border 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1), transform 0.3s cubic-bezier(0.4, 0, 0.2, 1)
|
||||||
|
will-change border opacity transform
|
||||||
|
|
||||||
|
> .label
|
||||||
|
position absolute
|
||||||
|
top fill ? 6px : 0
|
||||||
|
left 0
|
||||||
|
pointer-events none
|
||||||
|
transition 0.4s cubic-bezier(0.25, 0.8, 0.25, 1)
|
||||||
|
transition-duration 0.3s
|
||||||
|
font-size 16px
|
||||||
|
line-height 32px
|
||||||
|
color rgba(#000, 0.54)
|
||||||
|
pointer-events none
|
||||||
|
//will-change transform
|
||||||
|
transform-origin top left
|
||||||
|
transform scale(1)
|
||||||
|
|
||||||
|
> select
|
||||||
|
display block
|
||||||
|
flex 1
|
||||||
|
width 100%
|
||||||
|
padding 0
|
||||||
|
font inherit
|
||||||
|
font-weight fill ? bold : normal
|
||||||
|
font-size 16px
|
||||||
|
height 32px
|
||||||
|
color isDark ? #fff : #000
|
||||||
|
background transparent
|
||||||
|
border none
|
||||||
|
border-radius 0
|
||||||
|
outline none
|
||||||
|
box-shadow none
|
||||||
|
|
||||||
|
*
|
||||||
|
color #000
|
||||||
|
|
||||||
|
> .prefix
|
||||||
|
> .suffix
|
||||||
|
display block
|
||||||
|
align-self center
|
||||||
|
justify-self center
|
||||||
|
font-size 16px
|
||||||
|
line-height 32px
|
||||||
|
color rgba(#000, 0.54)
|
||||||
|
pointer-events none
|
||||||
|
|
||||||
|
> *
|
||||||
|
display block
|
||||||
|
min-width 16px
|
||||||
|
|
||||||
|
> .prefix
|
||||||
|
padding-right 4px
|
||||||
|
|
||||||
|
> .suffix
|
||||||
|
padding-left 4px
|
||||||
|
|
||||||
|
> .text
|
||||||
|
margin 6px 0
|
||||||
|
font-size 13px
|
||||||
|
|
||||||
|
*
|
||||||
|
margin 0
|
||||||
|
|
||||||
|
&.focused
|
||||||
|
> .input
|
||||||
|
if fill
|
||||||
|
background rgba(#000, 0.05)
|
||||||
|
else
|
||||||
|
&:after
|
||||||
|
opacity 1
|
||||||
|
transform scaleX(1)
|
||||||
|
|
||||||
|
> .label
|
||||||
|
color $theme-color
|
||||||
|
|
||||||
|
&.focused
|
||||||
|
&.filled
|
||||||
|
> .input
|
||||||
|
> .label
|
||||||
|
top fill ? -24px : -17px
|
||||||
|
left 0 !important
|
||||||
|
transform scale(0.75)
|
||||||
|
|
||||||
|
.ui-select[data-darkmode]
|
||||||
|
&.fill
|
||||||
|
root(true, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(true, false)
|
||||||
|
|
||||||
|
.ui-select:not([data-darkmode])
|
||||||
|
&.fill
|
||||||
|
root(false, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(false, false)
|
||||||
|
|
||||||
|
</style>
|
||||||
135
src/client/app/common/views/components/ui/switch.vue
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
<template>
|
||||||
|
<div
|
||||||
|
class="ui-switch"
|
||||||
|
:class="{ disabled, checked }"
|
||||||
|
role="switch"
|
||||||
|
:aria-checked="checked"
|
||||||
|
:aria-disabled="disabled"
|
||||||
|
@click="toggle"
|
||||||
|
>
|
||||||
|
<input
|
||||||
|
type="checkbox"
|
||||||
|
ref="input"
|
||||||
|
:disabled="disabled"
|
||||||
|
@keydown.enter="toggle"
|
||||||
|
>
|
||||||
|
<span class="button">
|
||||||
|
<span></span>
|
||||||
|
</span>
|
||||||
|
<span class="label">
|
||||||
|
<span :aria-hidden="!checked"><slot></slot></span>
|
||||||
|
<p :aria-hidden="!checked">
|
||||||
|
<slot name="text"></slot>
|
||||||
|
</p>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
export default Vue.extend({
|
||||||
|
model: {
|
||||||
|
prop: 'value',
|
||||||
|
event: 'change'
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
disabled: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
checked(): boolean {
|
||||||
|
return this.value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
toggle() {
|
||||||
|
this.$emit('change', !this.checked);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark)
|
||||||
|
display flex
|
||||||
|
margin 32px 0
|
||||||
|
cursor pointer
|
||||||
|
transition all 0.3s
|
||||||
|
|
||||||
|
> *
|
||||||
|
user-select none
|
||||||
|
|
||||||
|
&.disabled
|
||||||
|
opacity 0.6
|
||||||
|
cursor not-allowed
|
||||||
|
|
||||||
|
&.checked
|
||||||
|
> .button
|
||||||
|
background-color rgba($theme-color, 0.4)
|
||||||
|
border-color rgba($theme-color, 0.4)
|
||||||
|
|
||||||
|
> *
|
||||||
|
background-color $theme-color
|
||||||
|
transform translateX(14px)
|
||||||
|
|
||||||
|
> input
|
||||||
|
position absolute
|
||||||
|
width 0
|
||||||
|
height 0
|
||||||
|
opacity 0
|
||||||
|
margin 0
|
||||||
|
|
||||||
|
> .button
|
||||||
|
display inline-block
|
||||||
|
margin 3px 0 0 0
|
||||||
|
width 34px
|
||||||
|
height 14px
|
||||||
|
background isDark ? rgba(#fff, 0.15) : rgba(#000, 0.25)
|
||||||
|
outline none
|
||||||
|
border-radius 14px
|
||||||
|
transition inherit
|
||||||
|
|
||||||
|
> *
|
||||||
|
position absolute
|
||||||
|
top -3px
|
||||||
|
left 0
|
||||||
|
border-radius 100%
|
||||||
|
transition background-color 0.3s, transform 0.3s
|
||||||
|
width 20px
|
||||||
|
height 20px
|
||||||
|
background-color #fff
|
||||||
|
box-shadow 0 2px 1px -1px rgba(#000, 0.2), 0 1px 1px 0 rgba(#000, 0.14), 0 1px 3px 0 rgba(#000, 0.12)
|
||||||
|
|
||||||
|
> .label
|
||||||
|
margin-left 8px
|
||||||
|
display block
|
||||||
|
font-size 16px
|
||||||
|
cursor pointer
|
||||||
|
transition inherit
|
||||||
|
|
||||||
|
> span
|
||||||
|
display block
|
||||||
|
line-height 20px
|
||||||
|
color isDark ? #c4ccd2 : rgba(#000, 0.75)
|
||||||
|
transition inherit
|
||||||
|
|
||||||
|
> p
|
||||||
|
margin 0
|
||||||
|
//font-size 90%
|
||||||
|
color isDark ? #78858e : #9daab3
|
||||||
|
|
||||||
|
.ui-switch[data-darkmode]
|
||||||
|
root(true)
|
||||||
|
|
||||||
|
.ui-switch:not([data-darkmode])
|
||||||
|
root(false)
|
||||||
|
|
||||||
|
</style>
|
||||||
174
src/client/app/common/views/components/ui/textarea.vue
Normal file
@@ -0,0 +1,174 @@
|
|||||||
|
<template>
|
||||||
|
<div class="ui-textarea" :class="{ focused, filled }">
|
||||||
|
<div class="input">
|
||||||
|
<span class="label" ref="label"><slot></slot></span>
|
||||||
|
<textarea ref="input"
|
||||||
|
:value="value"
|
||||||
|
:required="required"
|
||||||
|
:readonly="readonly"
|
||||||
|
:pattern="pattern"
|
||||||
|
:autocomplete="autocomplete"
|
||||||
|
@input="$emit('input', $event.target.value)"
|
||||||
|
@focus="focused = true"
|
||||||
|
@blur="focused = false">
|
||||||
|
</textarea>
|
||||||
|
</div>
|
||||||
|
<div class="text"><slot name="text"></slot></div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts">
|
||||||
|
import Vue from 'vue';
|
||||||
|
const getPasswordStrength = require('syuilo-password-strength');
|
||||||
|
|
||||||
|
export default Vue.extend({
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
readonly: {
|
||||||
|
type: Boolean,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
pattern: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
},
|
||||||
|
autocomplete: {
|
||||||
|
type: String,
|
||||||
|
required: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
focused: false,
|
||||||
|
passwordStrength: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
filled(): boolean {
|
||||||
|
return this.value != '' && this.value != null;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
focus() {
|
||||||
|
this.$refs.input.focus();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus" scoped>
|
||||||
|
@import '~const.styl'
|
||||||
|
|
||||||
|
root(isDark, fill)
|
||||||
|
margin 42px 0 32px 0
|
||||||
|
|
||||||
|
> .input
|
||||||
|
padding 12px
|
||||||
|
|
||||||
|
if fill
|
||||||
|
background rgba(#000, 0.035)
|
||||||
|
border-radius 6px
|
||||||
|
else
|
||||||
|
&:before
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
|
right 0
|
||||||
|
background none
|
||||||
|
border solid 1px isDark ? rgba(#fff, 0.7) : rgba(#000, 0.42)
|
||||||
|
border-radius 3px
|
||||||
|
pointer-events none
|
||||||
|
|
||||||
|
&:after
|
||||||
|
content ''
|
||||||
|
display block
|
||||||
|
position absolute
|
||||||
|
top 0
|
||||||
|
bottom 0
|
||||||
|
left 0
|
||||||
|
right 0
|
||||||
|
background none
|
||||||
|
border solid 2px $theme-color
|
||||||
|
border-radius 3px
|
||||||
|
opacity 0
|
||||||
|
transition opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1)
|
||||||
|
pointer-events none
|
||||||
|
|
||||||
|
> .label
|
||||||
|
position absolute
|
||||||
|
top 6px
|
||||||
|
left 12px
|
||||||
|
pointer-events none
|
||||||
|
transition 0.4s cubic-bezier(0.25, 0.8, 0.25, 1)
|
||||||
|
transition-duration 0.3s
|
||||||
|
font-size 16px
|
||||||
|
line-height 32px
|
||||||
|
color isDark ? rgba(#fff, 0.7) : rgba(#000, 0.54)
|
||||||
|
pointer-events none
|
||||||
|
//will-change transform
|
||||||
|
transform-origin top left
|
||||||
|
transform scale(1)
|
||||||
|
|
||||||
|
> textarea
|
||||||
|
display block
|
||||||
|
width 100%
|
||||||
|
min-height 100px
|
||||||
|
padding 0
|
||||||
|
font inherit
|
||||||
|
font-weight fill ? bold : normal
|
||||||
|
font-size 16px
|
||||||
|
color isDark ? #fff : #000
|
||||||
|
background transparent
|
||||||
|
border none
|
||||||
|
border-radius 0
|
||||||
|
outline none
|
||||||
|
box-shadow none
|
||||||
|
|
||||||
|
> .text
|
||||||
|
margin 6px 0
|
||||||
|
font-size 13px
|
||||||
|
|
||||||
|
*
|
||||||
|
margin 0
|
||||||
|
|
||||||
|
&.focused
|
||||||
|
> .input
|
||||||
|
if fill
|
||||||
|
background rgba(#000, 0.05)
|
||||||
|
else
|
||||||
|
&:after
|
||||||
|
opacity 1
|
||||||
|
|
||||||
|
> .label
|
||||||
|
color $theme-color
|
||||||
|
|
||||||
|
&.focused
|
||||||
|
&.filled
|
||||||
|
> .input
|
||||||
|
> .label
|
||||||
|
top -24px
|
||||||
|
left 0 !important
|
||||||
|
transform scale(0.75)
|
||||||
|
|
||||||
|
.ui-textarea[data-darkmode]
|
||||||
|
&.fill
|
||||||
|
root(true, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(true, false)
|
||||||
|
|
||||||
|
.ui-textarea:not([data-darkmode])
|
||||||
|
&.fill
|
||||||
|
root(false, true)
|
||||||
|
&:not(.fill)
|
||||||
|
root(false, false)
|
||||||
|
|
||||||
|
</style>
|
||||||