Compare commits
1514 Commits
add-proxy
...
disable-no
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
72f03cd9de | ||
|
|
7f445f6167 | ||
|
|
bf599284ed | ||
|
|
a21c10e209 | ||
|
|
56ee44ee09 | ||
|
|
c6df54a103 | ||
|
|
575b039170 | ||
|
|
7a32269d7f | ||
|
|
004e371051 | ||
|
|
d5f43bae92 | ||
|
|
e215a20a0a | ||
|
|
919413e2b9 | ||
|
|
45839f8d59 | ||
|
|
55b62f9fde | ||
|
|
4c3529f3d5 | ||
|
|
ab7580c0da | ||
|
|
25c079fded | ||
|
|
d8bb75be63 | ||
|
|
a8021e09a7 | ||
|
|
16530ac6de | ||
|
|
5d1a1fef0f | ||
|
|
6082887070 | ||
|
|
8da336b7aa | ||
|
|
897f871f99 | ||
|
|
2f335b3d2c | ||
|
|
3b1837a99b | ||
|
|
cc59de0c93 | ||
|
|
997d936e9c | ||
|
|
253256bf37 | ||
|
|
e60a1836fe | ||
|
|
b417ea8e3a | ||
|
|
b58b0440d6 | ||
|
|
a9d2d2211a | ||
|
|
fe057c7873 | ||
|
|
dfcaed93ea | ||
|
|
5e3fcad1fb | ||
|
|
555bb711c9 | ||
|
|
afa3eff313 | ||
|
|
9e91fd5241 | ||
|
|
d90d347006 | ||
|
|
385fe4be22 | ||
|
|
7ec88741a6 | ||
|
|
86cb68413d | ||
|
|
05c5d293eb | ||
|
|
fd0ac3a671 | ||
|
|
f109d812a1 | ||
|
|
5d2f2690e2 | ||
|
|
505a81d087 | ||
|
|
dfab62ce48 | ||
|
|
31699468fc | ||
|
|
857096ba5f | ||
|
|
36c7d4270b | ||
|
|
d77586d02d | ||
|
|
c8fbb74835 | ||
|
|
dfee375b98 | ||
|
|
9268258773 | ||
|
|
9031ca5c3f | ||
|
|
18d68184a9 | ||
|
|
3816f92095 | ||
|
|
fd55b08a1d | ||
|
|
d0d8ba0068 | ||
|
|
18197e7e3e | ||
|
|
f75a81c9ee | ||
|
|
9979a1b910 | ||
|
|
dbba9d7687 | ||
|
|
d199b7264e | ||
|
|
b4c532f062 | ||
|
|
b24a89f820 | ||
|
|
7112f35793 | ||
|
|
85ba04b715 | ||
|
|
8af202e86b | ||
|
|
57353fe0c6 | ||
|
|
6c116e34c4 | ||
|
|
9ff26ea4d4 | ||
|
|
2194bd2812 | ||
|
|
1e6cd0b18f | ||
|
|
85d178ff8b | ||
|
|
e0d09c3cda | ||
|
|
47f529dc09 | ||
|
|
dde850a2e9 | ||
|
|
34e1a465be | ||
|
|
7d756209b1 | ||
|
|
60e870b277 | ||
|
|
ddf1e84f7c | ||
|
|
ec183e3c9a | ||
|
|
01135db80a | ||
|
|
955e3de56d | ||
|
|
cdd473e195 | ||
|
|
34fe7f04fa | ||
|
|
55c280af5d | ||
|
|
ea5a4f6d6e | ||
|
|
d169f91d64 | ||
|
|
8b29895ef3 | ||
|
|
3cfc5c164d | ||
|
|
4e55d9937c | ||
|
|
03fe8d1716 | ||
|
|
d6d7d209c1 | ||
|
|
fa044a2971 | ||
|
|
72fce387db | ||
|
|
da10cdd5ab | ||
|
|
83de3a51ea | ||
|
|
8faf8b8e57 | ||
|
|
5a349ae88b | ||
|
|
e2fc64296d | ||
|
|
ec55b905cb | ||
|
|
492d1144e0 | ||
|
|
4f4b19a962 | ||
|
|
febd785428 | ||
|
|
8642c66710 | ||
|
|
76cc8ac66b | ||
|
|
53d349a648 | ||
|
|
b344e1aadb | ||
|
|
3c882cff6e | ||
|
|
f73aef33f0 | ||
|
|
d12dff9dcf | ||
|
|
99d770be64 | ||
|
|
71a8867a4a | ||
|
|
2bbd424fce | ||
|
|
ef8dc7272b | ||
|
|
ad4a06fca5 | ||
|
|
c04f45d5e3 | ||
|
|
fb36155022 | ||
|
|
7ace3fc989 | ||
|
|
170e754998 | ||
|
|
6a75fa08dc | ||
|
|
1c5db46a4d | ||
|
|
7e4690e43c | ||
|
|
698a6f3886 | ||
|
|
1668e4187e | ||
|
|
df599c0fc3 | ||
|
|
e98aeaf293 | ||
|
|
5026698ebf | ||
|
|
bd221b7b2c | ||
|
|
ba37259258 | ||
|
|
eca8d2e7d7 | ||
|
|
cb0f7bf6b0 | ||
|
|
1ec15dc073 | ||
|
|
f124e8cf93 | ||
|
|
9621175dc9 | ||
|
|
e6ddd6d6c1 | ||
|
|
d7ebd763f5 | ||
|
|
99091e919c | ||
|
|
6ddbccbc95 | ||
|
|
0ca333715b | ||
|
|
4e44a91d08 | ||
|
|
fc5f84a0cd | ||
|
|
2289f98c1e | ||
|
|
49edf0ee33 | ||
|
|
8532727d54 | ||
|
|
336653b02c | ||
|
|
d546f1870e | ||
|
|
15c66e2b01 | ||
|
|
be92bfd4af | ||
|
|
f5cb7ba96c | ||
|
|
f013a6b1d7 | ||
|
|
519c227c4f | ||
|
|
6f4665588f | ||
|
|
eba311baa9 | ||
|
|
e92b3779ad | ||
|
|
a82d21ff78 | ||
|
|
63e1165936 | ||
|
|
84cc732281 | ||
|
|
971b6ec96f | ||
|
|
46f7ca9ffa | ||
|
|
e85bc3e0f6 | ||
|
|
dee20f92a7 | ||
|
|
12b818a83c | ||
|
|
1c91110464 | ||
|
|
4cd7a3e83f | ||
|
|
fa99c9aa85 | ||
|
|
2d949834e9 | ||
|
|
c7b74aa8b4 | ||
|
|
5e3c9cf290 | ||
|
|
508f137b30 | ||
|
|
67dd2b419a | ||
|
|
0749baae4b | ||
|
|
df9f897ebe | ||
|
|
8ef1e81294 | ||
|
|
d755d05f88 | ||
|
|
ce4a52325b | ||
|
|
714a001332 | ||
|
|
c78f84d5c6 | ||
|
|
a6c9b263da | ||
|
|
5ad2fc64b4 | ||
|
|
2ae074a9a4 | ||
|
|
c5967ad572 | ||
|
|
5ece07a807 | ||
|
|
e00f9a869d | ||
|
|
662cf2f633 | ||
|
|
16f1a23c54 | ||
|
|
fb364b532c | ||
|
|
2bebf578c7 | ||
|
|
a5b9c83256 | ||
|
|
dc0e242a63 | ||
|
|
178e317d11 | ||
|
|
3aa740d877 | ||
|
|
951d7d8339 | ||
|
|
b5bd1f507e | ||
|
|
7b9368ae75 | ||
|
|
b2c3d9fb0a | ||
|
|
6bd48ca645 | ||
|
|
cdc007c83c | ||
|
|
7dbbe27cdd | ||
|
|
b91874355c | ||
|
|
8b0ed8b110 | ||
|
|
574e35a720 | ||
|
|
32ae38b933 | ||
|
|
56e505164d | ||
|
|
d4f3139b73 | ||
|
|
97dceb3a5a | ||
|
|
212f6d6bf5 | ||
|
|
36904fa72e | ||
|
|
8c2495a399 | ||
|
|
2d1f6128be | ||
|
|
9233f71549 | ||
|
|
b2a738cf13 | ||
|
|
34a79c5f1e | ||
|
|
fd30f5775a | ||
|
|
a2600acfa9 | ||
|
|
fa2c8f42b3 | ||
|
|
db4e36ad9b | ||
|
|
38697ade31 | ||
|
|
2cf3c7eb41 | ||
|
|
4ea932dc1f | ||
|
|
7b587d8e00 | ||
|
|
9612a4d0de | ||
|
|
7141a716e7 | ||
|
|
0d33566bbc | ||
|
|
2d341c53f2 | ||
|
|
b20443241d | ||
|
|
fb28431cdc | ||
|
|
2602df8ef7 | ||
|
|
9e7ff8f8f5 | ||
|
|
5b5473e794 | ||
|
|
73c000fd44 | ||
|
|
ef51661f5d | ||
|
|
6bb9e8442a | ||
|
|
9b1721f8ad | ||
|
|
15532fdb11 | ||
|
|
39e0b3f6c5 | ||
|
|
329bf7895e | ||
|
|
61feb5a851 | ||
|
|
da06560fa9 | ||
|
|
fd120ab275 | ||
|
|
14a57fd229 | ||
|
|
0be2ab582d | ||
|
|
d00037d1d4 | ||
|
|
e10827bf1c | ||
|
|
98a5a7cb4f | ||
|
|
748282cff3 | ||
|
|
f3df1e8d3c | ||
|
|
a93058d385 | ||
|
|
89135a9cf5 | ||
|
|
47a02e3423 | ||
|
|
c9fd8167f5 | ||
|
|
c9b9ded518 | ||
|
|
250a9191cb | ||
|
|
6fab5d0554 | ||
|
|
461fae4f77 | ||
|
|
8aed1e11c3 | ||
|
|
6cf6c56dd1 | ||
|
|
042ff8da64 | ||
|
|
8b72481b8c | ||
|
|
aa0724f204 | ||
|
|
eff8b23f57 | ||
|
|
81a2300af8 | ||
|
|
2a541cb4d5 | ||
|
|
0120f44fd6 | ||
|
|
b65dced646 | ||
|
|
e7394fe7a1 | ||
|
|
fb673639f9 | ||
|
|
dc62b6ffdb | ||
|
|
1f2ccac8a0 | ||
|
|
46e4d35ccd | ||
|
|
eb7e79fdf7 | ||
|
|
37c953e633 | ||
|
|
5bb2cb7d71 | ||
|
|
692f4e5be2 | ||
|
|
7bb1471207 | ||
|
|
4752e16ad2 | ||
|
|
2a156e7313 | ||
|
|
0314dd44ea | ||
|
|
b80a3d5401 | ||
|
|
8c4ef9f955 | ||
|
|
67d2635e41 | ||
|
|
71a1ad307c | ||
|
|
9a48fd81a3 | ||
|
|
d928b9eaad | ||
|
|
790b7afcca | ||
|
|
7b9f5d74dc | ||
|
|
6eadba784d | ||
|
|
3a39045617 | ||
|
|
67cb8b7107 | ||
|
|
4962c00ba8 | ||
|
|
6764185543 | ||
|
|
0a66a68db8 | ||
|
|
8d47ec714e | ||
|
|
9607fe03af | ||
|
|
62057e676a | ||
|
|
43ff3be751 | ||
|
|
7cbd79fee5 | ||
|
|
3fba342ed2 | ||
|
|
2419c4d8ae | ||
|
|
e37fb09d41 | ||
|
|
86b1357a68 | ||
|
|
b782ab5787 | ||
|
|
6c0486646f | ||
|
|
dffe8fc49e | ||
|
|
1336ecbef2 | ||
|
|
d00e430f50 | ||
|
|
5a728243a2 | ||
|
|
37f38dbf6c | ||
|
|
2eb7c5c037 | ||
|
|
ba0bc72d0b | ||
|
|
e1219cbdef | ||
|
|
bf0a48847c | ||
|
|
3bb7fbb2f1 | ||
|
|
326a362eb8 | ||
|
|
fdc380e7f7 | ||
|
|
db04f1556e | ||
|
|
444b1c99d0 | ||
|
|
3b1a286290 | ||
|
|
6c8a5a1e7f | ||
|
|
1769b0fdce | ||
|
|
68cbc11810 | ||
|
|
edcc155482 | ||
|
|
8231216371 | ||
|
|
e1215584b4 | ||
|
|
a905175e8c | ||
|
|
e98ed41656 | ||
|
|
fd139841f4 | ||
|
|
dac0f42777 | ||
|
|
f0788162a4 | ||
|
|
c963e50cde | ||
|
|
b4a4767fb3 | ||
|
|
d6918b2976 | ||
|
|
47e273c402 | ||
|
|
ba25e8e720 | ||
|
|
058ae5cc29 | ||
|
|
f8be5d2559 | ||
|
|
792d25594c | ||
|
|
9f9020e422 | ||
|
|
302fecbdcb | ||
|
|
d74873fed1 | ||
|
|
40ed4a0506 | ||
|
|
c25d664edc | ||
|
|
9bad7e2940 | ||
|
|
6704ce3214 | ||
|
|
914cfbd953 | ||
|
|
85cf27119c | ||
|
|
7691f53520 | ||
|
|
094f835642 | ||
|
|
92eea3b18b | ||
|
|
c021b93b5c | ||
|
|
d94d4c2045 | ||
|
|
46d08237c6 | ||
|
|
3deafe9f8d | ||
|
|
998edba6f0 | ||
|
|
4f219362fe | ||
|
|
c427444946 | ||
|
|
d59323a601 | ||
|
|
a779cdd463 | ||
|
|
73a142fd9b | ||
|
|
0453d08eed | ||
|
|
a18068aedf | ||
|
|
12fba3bb7a | ||
|
|
fc2b9031d4 | ||
|
|
28a6589a1e | ||
|
|
cf9c790499 | ||
|
|
3d6dceae10 | ||
|
|
130a14d0d9 | ||
|
|
f07b4f8fc4 | ||
|
|
75f655aafc | ||
|
|
a3fd9ccea7 | ||
|
|
4136ac633a | ||
|
|
2724456882 | ||
|
|
b396a2cbfd | ||
|
|
ddb06b0cac | ||
|
|
f54e247eb4 | ||
|
|
2ac19eb8fc | ||
|
|
6cdaafdc37 | ||
|
|
ed6476b5ea | ||
|
|
b90bceb2dc | ||
|
|
f31bd5ffb9 | ||
|
|
5abe7fe123 | ||
|
|
b6792cf02e | ||
|
|
1261323c66 | ||
|
|
2a45b4eba0 | ||
|
|
a6a0bbf398 | ||
|
|
7f3ef12297 | ||
|
|
da2f592de6 | ||
|
|
ee91effb7a | ||
|
|
b13f9c25b3 | ||
|
|
f85563eb66 | ||
|
|
7b689a186d | ||
|
|
092d7df761 | ||
|
|
6c444707d7 | ||
|
|
81c006cc04 | ||
|
|
7cbd1e413f | ||
|
|
f34f8ef188 | ||
|
|
c3eb385cd3 | ||
|
|
be34f03157 | ||
|
|
4964785b13 | ||
|
|
1b7757c14f | ||
|
|
58c9f20226 | ||
|
|
f19be0c3ce | ||
|
|
f236a6872b | ||
|
|
3e0096f360 | ||
|
|
438b334320 | ||
|
|
4aa96ecab9 | ||
|
|
e5557b515e | ||
|
|
7b9d26d688 | ||
|
|
8d4b4cd14c | ||
|
|
342fc202a7 | ||
|
|
4436359d07 | ||
|
|
91f8395222 | ||
|
|
de00e86cd5 | ||
|
|
c6e086c6ff | ||
|
|
82f3eda82b | ||
|
|
05f9613e14 | ||
|
|
50bb591826 | ||
|
|
2ca23c714d | ||
|
|
b030d822f1 | ||
|
|
65b5183f01 | ||
|
|
33431844b7 | ||
|
|
325a67155d | ||
|
|
6876f88f43 | ||
|
|
ad9d3f4425 | ||
|
|
5eca7a8a30 | ||
|
|
de153ece4e | ||
|
|
2d8964d37d | ||
|
|
ceb1feb350 | ||
|
|
2ea0590b03 | ||
|
|
80a513baa5 | ||
|
|
ba48f68fc3 | ||
|
|
319587e2f1 | ||
|
|
bf7952d9c7 | ||
|
|
f29ab53aff | ||
|
|
b5b0c58de7 | ||
|
|
a1bb421eec | ||
|
|
139786b9ef | ||
|
|
301444563b | ||
|
|
9966c21c6b | ||
|
|
12c219ee6c | ||
|
|
008f79df61 | ||
|
|
fd54cf2d05 | ||
|
|
e0d26f4055 | ||
|
|
6c2170960b | ||
|
|
950deaca40 | ||
|
|
2bd286f195 | ||
|
|
75792bfa7b | ||
|
|
737c49b689 | ||
|
|
2c447a42f2 | ||
|
|
dad8f9a0ce | ||
|
|
2eac23a0b3 | ||
|
|
6a204753c0 | ||
|
|
19bb26a789 | ||
|
|
00904ae3f2 | ||
|
|
d214a0b333 | ||
|
|
4940759627 | ||
|
|
be1a390b50 | ||
|
|
f707f990e6 | ||
|
|
a120f143d7 | ||
|
|
65fbdbff6a | ||
|
|
6ec4dcfafd | ||
|
|
48191aca6e | ||
|
|
83556bace2 | ||
|
|
814c9e6c3a | ||
|
|
547abe17d9 | ||
|
|
6b8450558d | ||
|
|
c3747c2d49 | ||
|
|
245122104a | ||
|
|
b0f127d4d8 | ||
|
|
d379a36c0e | ||
|
|
a12571e748 | ||
|
|
21879da80d | ||
|
|
6cabc96f75 | ||
|
|
f4f9e75c27 | ||
|
|
2f235adadf | ||
|
|
afb284fa9b | ||
|
|
93252f33ff | ||
|
|
6cf0ff6b49 | ||
|
|
86f75758a7 | ||
|
|
0ec94405ce | ||
|
|
33780f1995 | ||
|
|
1cb715ac9f | ||
|
|
f65b628bf3 | ||
|
|
60fa552469 | ||
|
|
437bdedb07 | ||
|
|
a531f4f057 | ||
|
|
bb396a310e | ||
|
|
66e7285108 | ||
|
|
2b81a82620 | ||
|
|
b555df8377 | ||
|
|
232730e909 | ||
|
|
2c1b4b0dd8 | ||
|
|
1e0712625a | ||
|
|
88752f32bd | ||
|
|
7a93d4c7e4 | ||
|
|
c3c767eed8 | ||
|
|
6f19a3a21e | ||
|
|
06be0fb351 | ||
|
|
e2bbc9a6fa | ||
|
|
17e481c107 | ||
|
|
b8f27a42a7 | ||
|
|
575c66efd3 | ||
|
|
88ad7c8d8d | ||
|
|
1adcac175e | ||
|
|
dd8c412abc | ||
|
|
e969c1490a | ||
|
|
e91421253e | ||
|
|
35d15c7c2b | ||
|
|
20cb751ff6 | ||
|
|
0614b52f03 | ||
|
|
a629521c37 | ||
|
|
5eb83bb39c | ||
|
|
0e17d026f2 | ||
|
|
ea0b1fdf44 | ||
|
|
1d78d67af3 | ||
|
|
d9c58c4837 | ||
|
|
129779a757 | ||
|
|
c8a985cc77 | ||
|
|
db7e7aae46 | ||
|
|
cb9b84f940 | ||
|
|
33d9be0ffb | ||
|
|
2571e420f3 | ||
|
|
e17c8b1f4d | ||
|
|
8805ee7c8c | ||
|
|
7df2fd0bc8 | ||
|
|
f7f0910953 | ||
|
|
d300797e22 | ||
|
|
56dbe15943 | ||
|
|
736d63c08f | ||
|
|
5f65e92500 | ||
|
|
a65b9b2b53 | ||
|
|
cc10e8ca5d | ||
|
|
dfe0c738d6 | ||
|
|
21b96a3159 | ||
|
|
888c7e2c29 | ||
|
|
d6eaeef8a6 | ||
|
|
961c5740b7 | ||
|
|
22e8f7e287 | ||
|
|
c26b383a1b | ||
|
|
2cec1fe4bb | ||
|
|
9da1c6c6de | ||
|
|
806ddf1aca | ||
|
|
0ad2793b68 | ||
|
|
585e4617e8 | ||
|
|
76c6886791 | ||
|
|
91bc6599c6 | ||
|
|
4d44b2c3a4 | ||
|
|
b49b5fbda9 | ||
|
|
17e6093abb | ||
|
|
3dc980e800 | ||
|
|
c44c1003af | ||
|
|
39c27f0c66 | ||
|
|
678b10dbcf | ||
|
|
a1d6411f1f | ||
|
|
c4c8a10507 | ||
|
|
ee94ccdeb0 | ||
|
|
e3df9f9ead | ||
|
|
62dc629337 | ||
|
|
dccdf38ce7 | ||
|
|
84124b837d | ||
|
|
6176da3cbb | ||
|
|
24bc3e2704 | ||
|
|
f13fb80b42 | ||
|
|
0a9e19646a | ||
|
|
65e45c4079 | ||
|
|
440105976f | ||
|
|
7eba7fbcc7 | ||
|
|
d9bfb3d305 | ||
|
|
4246c7a523 | ||
|
|
e3054ccdd2 | ||
|
|
df968d1919 | ||
|
|
7661c3c061 | ||
|
|
57ed047025 | ||
|
|
bda3a26423 | ||
|
|
080d9a8dc7 | ||
|
|
984a4acc7b | ||
|
|
b10f37bea9 | ||
|
|
0947c26612 | ||
|
|
f5e7fe34a5 | ||
|
|
c6f088d6ca | ||
|
|
21e29411af | ||
|
|
f85930700b | ||
|
|
707ef1d0f7 | ||
|
|
adc12addfa | ||
|
|
bfef9d4b6e | ||
|
|
fd29cb9023 | ||
|
|
d806310665 | ||
|
|
4982bff74d | ||
|
|
347c189f3f | ||
|
|
81b12b8001 | ||
|
|
3e781b7d13 | ||
|
|
9c44e41a4c | ||
|
|
402bb01151 | ||
|
|
82a1d9dffa | ||
|
|
570541ba49 | ||
|
|
73eabb6ca2 | ||
|
|
5a52b4fe45 | ||
|
|
caa08a6379 | ||
|
|
cd02078e26 | ||
|
|
0341faeb13 | ||
|
|
77131cff91 | ||
|
|
0c7726d4e1 | ||
|
|
1f1e14fba5 | ||
|
|
9be8263f26 | ||
|
|
7b2aa5f98e | ||
|
|
26b28cea49 | ||
|
|
23049e026f | ||
|
|
9ab242ca2e | ||
|
|
aa59925374 | ||
|
|
43ea8fa706 | ||
|
|
6df85718e6 | ||
|
|
82e6f6e095 | ||
|
|
9ba3e1cdb4 | ||
|
|
b20f72b963 | ||
|
|
092b8a4e52 | ||
|
|
e5f07dedbf | ||
|
|
ca9eb0d539 | ||
|
|
142317c2be | ||
|
|
3dea670091 | ||
|
|
8435e79913 | ||
|
|
30e85b40f9 | ||
|
|
be1a43a337 | ||
|
|
abca8f7a7c | ||
|
|
7b60dac526 | ||
|
|
ea6434662d | ||
|
|
0b7a108a59 | ||
|
|
57c63f3598 | ||
|
|
ae30f32c36 | ||
|
|
a50f64f6e9 | ||
|
|
1323b94b7a | ||
|
|
6d68fbc31d | ||
|
|
d97e128dc0 | ||
|
|
86ca568d6d | ||
|
|
92b04a30f3 | ||
|
|
2b0bb69a4f | ||
|
|
67b01506c9 | ||
|
|
b20b802a8d | ||
|
|
87f46a7532 | ||
|
|
45a1407144 | ||
|
|
4a0359c04e | ||
|
|
4e629ca858 | ||
|
|
c32cae00d5 | ||
|
|
02431b3f98 | ||
|
|
0323202a03 | ||
|
|
b6670a7e3d | ||
|
|
62c1991b88 | ||
|
|
3a6085ad31 | ||
|
|
6e1b62aedf | ||
|
|
2451497b31 | ||
|
|
6699c80357 | ||
|
|
1af1474d04 | ||
|
|
06a1d2ac41 | ||
|
|
f47b588b91 | ||
|
|
262131f68e | ||
|
|
ceae48088e | ||
|
|
e655af251c | ||
|
|
3351ad8197 | ||
|
|
5054510d15 | ||
|
|
947fe4fbb3 | ||
|
|
50c8afb525 | ||
|
|
a539de4f97 | ||
|
|
8d5a867271 | ||
|
|
6a1954f8f7 | ||
|
|
0044178d49 | ||
|
|
387bddb51b | ||
|
|
41ba19b615 | ||
|
|
0e37e42abd | ||
|
|
a28945273d | ||
|
|
fd6f03655e | ||
|
|
8b62c05fe2 | ||
|
|
0e92a63d14 | ||
|
|
a4ff0b62ce | ||
|
|
dd141daefd | ||
|
|
a1001ada47 | ||
|
|
f938aa530e | ||
|
|
8d419da277 | ||
|
|
8e3ff79f22 | ||
|
|
d0c12caae9 | ||
|
|
17a99a524b | ||
|
|
41a757c3be | ||
|
|
61fc6539c2 | ||
|
|
99f04012a7 | ||
|
|
891116f13b | ||
|
|
4fcd0964cd | ||
|
|
5005212bec | ||
|
|
a279d6f433 | ||
|
|
5c74196f60 | ||
|
|
33724d40a8 | ||
|
|
d78e5281fe | ||
|
|
fceb8093f1 | ||
|
|
d984a898d4 | ||
|
|
52688106e4 | ||
|
|
66b45a8fe2 | ||
|
|
0db23f9252 | ||
|
|
23b2abc273 | ||
|
|
0350d0784a | ||
|
|
83219a499c | ||
|
|
3f4d5bc85c | ||
|
|
83b790950c | ||
|
|
16b10ec3d7 | ||
|
|
1d4dd4484d | ||
|
|
8bd2669d3d | ||
|
|
b5d2eb5c70 | ||
|
|
25362f16a0 | ||
|
|
39b34eece8 | ||
|
|
b3426fdc94 | ||
|
|
6aa65593ef | ||
|
|
66becbf46f | ||
|
|
cbf3d75087 | ||
|
|
0b0036813f | ||
|
|
c06a20e085 | ||
|
|
c60fccd7f6 | ||
|
|
46f8b04e40 | ||
|
|
12b46bbd41 | ||
|
|
f2b69fd812 | ||
|
|
0aae728e33 | ||
|
|
cea38de4ad | ||
|
|
3e4fab7070 | ||
|
|
6745ca7775 | ||
|
|
88c5e3b6fa | ||
|
|
2fdb2c7c9a | ||
|
|
7afa027b95 | ||
|
|
637a5cc14f | ||
|
|
81e77693b2 | ||
|
|
d49f884f69 | ||
|
|
34eeb29436 | ||
|
|
0495347c64 | ||
|
|
023f9b44d3 | ||
|
|
5248814053 | ||
|
|
7ddab5b8cd | ||
|
|
a26adb162c | ||
|
|
ef5df36a8a | ||
|
|
9b74cf3225 | ||
|
|
1321c90920 | ||
|
|
4b46313e19 | ||
|
|
e9add69e26 | ||
|
|
5b020e81ca | ||
|
|
c76bd7b45b | ||
|
|
21b7ae3ac3 | ||
|
|
e45da7161f | ||
|
|
7a3c000955 | ||
|
|
f75c5db372 | ||
|
|
7cd1d82d26 | ||
|
|
0085c3b0d8 | ||
|
|
4251c6cb99 | ||
|
|
ac973df8e7 | ||
|
|
a76a955a1b | ||
|
|
c89b98a1e0 | ||
|
|
dda4596c0c | ||
|
|
4ac863203d | ||
|
|
be5831d9bd | ||
|
|
1e2fa27af7 | ||
|
|
fcbaf2a978 | ||
|
|
b5c172974e | ||
|
|
7bb70924c1 | ||
|
|
a62fb6dcd1 | ||
|
|
e9c06237f2 | ||
|
|
bdb1eca741 | ||
|
|
29000a5209 | ||
|
|
88f0867442 | ||
|
|
3de06174bf | ||
|
|
5187894add | ||
|
|
d58f7bb935 | ||
|
|
84594b0e1e | ||
|
|
578bbcd181 | ||
|
|
0cdf13742a | ||
|
|
b00d24579d | ||
|
|
5c76cdaad9 | ||
|
|
5d994d179e | ||
|
|
8930020776 | ||
|
|
0637bf0dcb | ||
|
|
2abec5b62f | ||
|
|
bc937a6434 | ||
|
|
3a84e3abcf | ||
|
|
e4c223ca59 | ||
|
|
31de2d304c | ||
|
|
c83113d49b | ||
|
|
d95980b3ba | ||
|
|
08a88af965 | ||
|
|
4d4f61c922 | ||
|
|
110b77f453 | ||
|
|
ba0d205457 | ||
|
|
1ee4cae802 | ||
|
|
095c894548 | ||
|
|
9f5f5da894 | ||
|
|
aa3608f0af | ||
|
|
56ebef4352 | ||
|
|
3e5c353298 | ||
|
|
0d57a887ea | ||
|
|
b5fdd29cd5 | ||
|
|
ae61662f61 | ||
|
|
b633f8d207 | ||
|
|
c4c813fd0a | ||
|
|
f9c4cc274a | ||
|
|
cc45a0ca28 | ||
|
|
9ed1d28f76 | ||
|
|
7ca2acd24e | ||
|
|
fdca468049 | ||
|
|
c0e8feb66e | ||
|
|
0dd710c195 | ||
|
|
39110ad21c | ||
|
|
57bb8c610a | ||
|
|
cf619f24a9 | ||
|
|
fd313f0d66 | ||
|
|
67a18dcff6 | ||
|
|
54b19a04bb | ||
|
|
ca4df29670 | ||
|
|
7da0b2fd7f | ||
|
|
cfcb64c516 | ||
|
|
135ae11c20 | ||
|
|
ce68d09d26 | ||
|
|
aa55e67389 | ||
|
|
f7992d2d09 | ||
|
|
eecfc155b8 | ||
|
|
9cef7945c0 | ||
|
|
1b1932f787 | ||
|
|
9e4fd193c6 | ||
|
|
d16a748f37 | ||
|
|
f616b8e518 | ||
|
|
97b469f59c | ||
|
|
7ec93825b6 | ||
|
|
4a4867deeb | ||
|
|
965a8ea9fd | ||
|
|
3e8ddabcc1 | ||
|
|
50267a6dd6 | ||
|
|
5a8825d016 | ||
|
|
e6bdcff0dd | ||
|
|
4803285e50 | ||
|
|
bab263f426 | ||
|
|
03d5509b44 | ||
|
|
4a5f193e94 | ||
|
|
fdd66f12f0 | ||
|
|
349f073b8e | ||
|
|
84e271be4b | ||
|
|
f215fa936b | ||
|
|
75d04a92c8 | ||
|
|
90c907710c | ||
|
|
00425670d7 | ||
|
|
cb525af0a2 | ||
|
|
09f7e38eed | ||
|
|
7c49a0ba7a | ||
|
|
45e57f1ad3 | ||
|
|
eb911de928 | ||
|
|
b393e31b76 | ||
|
|
4a095eb98e | ||
|
|
d793d4ba78 | ||
|
|
2f54ec4e18 | ||
|
|
b9cd40fe1e | ||
|
|
173cd7c15e | ||
|
|
950c8f7104 | ||
|
|
b63bebb519 | ||
|
|
cf72b34866 | ||
|
|
d06cf2a07b | ||
|
|
10804927bb | ||
|
|
f178297452 | ||
|
|
311e7684b2 | ||
|
|
37ff2ac2b9 | ||
|
|
4786d586cf | ||
|
|
b7aaae4a19 | ||
|
|
008598b56f | ||
|
|
f3bc55e37e | ||
|
|
31fa3dfd59 | ||
|
|
5b47438b71 | ||
|
|
c33ee83d87 | ||
|
|
835dd1abcc | ||
|
|
576f5496c0 | ||
|
|
ff460c7736 | ||
|
|
22adbe2073 | ||
|
|
b8f0b4b583 | ||
|
|
f88e5f09b4 | ||
|
|
2b9c6c95b1 | ||
|
|
3f34db549f | ||
|
|
f4c0ee49a7 | ||
|
|
2fc0a6df93 | ||
|
|
0a9c804940 | ||
|
|
96faa9d12b | ||
|
|
42d9fd9c88 | ||
|
|
908bc7561b | ||
|
|
3de92b337d | ||
|
|
31466785ad | ||
|
|
e38b602b7d | ||
|
|
a2f5342a83 | ||
|
|
d432732959 | ||
|
|
4eb3de7b4e | ||
|
|
2e6adfb44a | ||
|
|
c85c6d0ac5 | ||
|
|
6c9dd8deb6 | ||
|
|
fe64e6dbf2 | ||
|
|
4fd51ec880 | ||
|
|
0323c521be | ||
|
|
992125febc | ||
|
|
f0bd0abc0f | ||
|
|
5c0d4c4408 | ||
|
|
5f8e47a14d | ||
|
|
9407b91060 | ||
|
|
a6e38e2ad2 | ||
|
|
8701de64ce | ||
|
|
114cac99e7 | ||
|
|
78194599e2 | ||
|
|
49d9491fda | ||
|
|
392a363d02 | ||
|
|
0a87ba6930 | ||
|
|
065c104f27 | ||
|
|
7f272f1293 | ||
|
|
e67f50f157 | ||
|
|
dd13392e36 | ||
|
|
2638c66638 | ||
|
|
1d40225159 | ||
|
|
08f11d2f22 | ||
|
|
ee20ab3041 | ||
|
|
e0402919e1 | ||
|
|
086e156a02 | ||
|
|
d0b9292aee | ||
|
|
7b0cb69938 | ||
|
|
479dd684f8 | ||
|
|
573738443c | ||
|
|
0268629c3b | ||
|
|
cf9e6c5d06 | ||
|
|
ad44c6eeee | ||
|
|
2b79d76541 | ||
|
|
cfaf3180f9 | ||
|
|
7881efa269 | ||
|
|
1ac52ce18f | ||
|
|
bb123ae0df | ||
|
|
4859b67a7b | ||
|
|
586e8b1479 | ||
|
|
5a526e2077 | ||
|
|
d3452775b3 | ||
|
|
d82734641b | ||
|
|
abbc2bad35 | ||
|
|
b491d69eec | ||
|
|
d93514d327 | ||
|
|
49ed485145 | ||
|
|
1a2ca8634d | ||
|
|
60cceabaa6 | ||
|
|
56df6b5e08 | ||
|
|
ca5d5668d9 | ||
|
|
4a45d10a8b | ||
|
|
82e1e9f0e5 | ||
|
|
2e1b93b857 | ||
|
|
37e9cefc52 | ||
|
|
1807b1492e | ||
|
|
460a6b4e99 | ||
|
|
96d87a288f | ||
|
|
a0d00410ca | ||
|
|
445ff856fe | ||
|
|
b7fe212a18 | ||
|
|
cbabf0ae7e | ||
|
|
344ccf3b03 | ||
|
|
26a7e1b049 | ||
|
|
43bd331e48 | ||
|
|
8bbb016fa4 | ||
|
|
ea43ba7124 | ||
|
|
5a59bd9998 | ||
|
|
993d731c92 | ||
|
|
f529948d81 | ||
|
|
4f3f51c583 | ||
|
|
5ba9a1f87d | ||
|
|
a0fb75efcb | ||
|
|
6e6f4d5a37 | ||
|
|
f06053b1cf | ||
|
|
df0cd30236 | ||
|
|
8806c57c63 | ||
|
|
f66cfa1299 | ||
|
|
9e84a4dbab | ||
|
|
59ab066518 | ||
|
|
960bd2a6be | ||
|
|
2cdaef1371 | ||
|
|
9b6c5c08d8 | ||
|
|
268ce4fefc | ||
|
|
bca8dace80 | ||
|
|
75e5b49c3a | ||
|
|
3cf08dc451 | ||
|
|
76c9cf62ff | ||
|
|
7a93af1786 | ||
|
|
6f899d998f | ||
|
|
73da8463ca | ||
|
|
b38fab9738 | ||
|
|
45e4d64b20 | ||
|
|
e6fba5d802 | ||
|
|
50ba3c5d5c | ||
|
|
65663fb857 | ||
|
|
8df2f38d34 | ||
|
|
c5fae84263 | ||
|
|
533d0a1fd4 | ||
|
|
a0fe229c7a | ||
|
|
f876cd5a6a | ||
|
|
62e9e9a662 | ||
|
|
a51c5c3ae7 | ||
|
|
26636eda0d | ||
|
|
074df7637b | ||
|
|
4fc8905ebf | ||
|
|
8cbb2278a7 | ||
|
|
fe7f8c3c3a | ||
|
|
91430738e7 | ||
|
|
d6585d7583 | ||
|
|
1924d75c2b | ||
|
|
06b27d932d | ||
|
|
ac1ac2cfed | ||
|
|
53cdb04be7 | ||
|
|
c106de02e9 | ||
|
|
8bc91ced4f | ||
|
|
2d0b9597cc | ||
|
|
b92fbb893b | ||
|
|
957a40df1f | ||
|
|
1eea5b350d | ||
|
|
c8e7080d1d | ||
|
|
629d0e441f | ||
|
|
5cfb878131 | ||
|
|
bfd02ac13d | ||
|
|
bd50bb1aa4 | ||
|
|
1045062147 | ||
|
|
492def3b76 | ||
|
|
afde9ac8a3 | ||
|
|
d977258c6c | ||
|
|
62943f8803 | ||
|
|
22e0859538 | ||
|
|
2c47ef31c0 | ||
|
|
d69b9f9cf8 | ||
|
|
a52e9be3e8 | ||
|
|
21f9141500 | ||
|
|
0e000e44aa | ||
|
|
ad9fe3be09 | ||
|
|
3829bdf198 | ||
|
|
6933a049b1 | ||
|
|
e3544bf4bc | ||
|
|
d5d0cb6a0c | ||
|
|
cac5f20a28 | ||
|
|
beea32661a | ||
|
|
b9e57d0283 | ||
|
|
5c0458a887 | ||
|
|
65942cd46c | ||
|
|
9a8f1a0b0a | ||
|
|
edb37c95e1 | ||
|
|
896882958d | ||
|
|
45d687c4e1 | ||
|
|
42be1321b2 | ||
|
|
f2cc16009f | ||
|
|
4336a55c2e | ||
|
|
bc5c0f65b8 | ||
|
|
b7eba3bc17 | ||
|
|
661d715446 | ||
|
|
d2c166243b | ||
|
|
5ed5eabbfe | ||
|
|
18b4b141d9 | ||
|
|
cd1e478b95 | ||
|
|
cf0ecaaf41 | ||
|
|
5f466eed79 | ||
|
|
93198438b8 | ||
|
|
1057d0eaa6 | ||
|
|
73b1284234 | ||
|
|
5f2e87f0e3 | ||
|
|
d9528f5cc3 | ||
|
|
877bb5c821 | ||
|
|
ae353cef2e | ||
|
|
909606826d | ||
|
|
e6e2d51b58 | ||
|
|
ea16c01fa2 | ||
|
|
f20d420aa7 | ||
|
|
a8649f286c | ||
|
|
fe879e6d94 | ||
|
|
94f285695e | ||
|
|
428747ab69 | ||
|
|
049e8e07ef | ||
|
|
716a845e92 | ||
|
|
47dfd4e681 | ||
|
|
555108c7fd | ||
|
|
e1af3d9bf3 | ||
|
|
e864c7541c | ||
|
|
b4a6cbbd09 | ||
|
|
fe4eef5855 | ||
|
|
c0997f951c | ||
|
|
cb378c1754 | ||
|
|
20b961c1c8 | ||
|
|
c4c2e01213 | ||
|
|
4b6d0fb517 | ||
|
|
62e46b7a36 | ||
|
|
052c5c67b8 | ||
|
|
b794c5cfcf | ||
|
|
be8a4013a7 | ||
|
|
87c25f83a4 | ||
|
|
e08bea5f51 | ||
|
|
739f610507 | ||
|
|
608313c1d1 | ||
|
|
2c1cf42994 | ||
|
|
196db1e1d0 | ||
|
|
a2f5435c48 | ||
|
|
75ec0b4fcf | ||
|
|
b4bfe27786 | ||
|
|
7617382114 | ||
|
|
b2f67cb154 | ||
|
|
c5107ddd3d | ||
|
|
8b75590d3e | ||
|
|
a7624d4724 | ||
|
|
b3099001be | ||
|
|
533c6cefee | ||
|
|
acfa9e8a55 | ||
|
|
8823753b46 | ||
|
|
c5ccefe6f7 | ||
|
|
148071a744 | ||
|
|
56fab9d178 | ||
|
|
f422a77014 | ||
|
|
e248e7ebaf | ||
|
|
aa4c623a06 | ||
|
|
cbdba66ef3 | ||
|
|
d652ab9920 | ||
|
|
e49aaa0216 | ||
|
|
61d49a1215 | ||
|
|
c481ca924b | ||
|
|
23e5b6ba72 | ||
|
|
3e88b72316 | ||
|
|
7566243151 | ||
|
|
aaefa38602 | ||
|
|
de6db4141f | ||
|
|
a61735e29a | ||
|
|
9bdfb0a32b | ||
|
|
94ecd29e35 | ||
|
|
980f5f1299 | ||
|
|
f99d62a2bc | ||
|
|
89be1975ea | ||
|
|
fec82df451 | ||
|
|
89fd35e02d | ||
|
|
3286328de4 | ||
|
|
977c34c0d7 | ||
|
|
5ec23df460 | ||
|
|
7f307e3bea | ||
|
|
fa050fb8a8 | ||
|
|
d741cbf6fd | ||
|
|
fa09327403 | ||
|
|
e27aaf9ba1 | ||
|
|
c0063ea09b | ||
|
|
e3e07aa3e6 | ||
|
|
502e8daedd | ||
|
|
3035f0119f | ||
|
|
48a3c3a0c1 | ||
|
|
fab9ae64a0 | ||
|
|
b56ebd13b6 | ||
|
|
3de39698dd | ||
|
|
b86476410f | ||
|
|
57ea45ff51 | ||
|
|
ec30f7c5d4 | ||
|
|
3cc9114f81 | ||
|
|
790167e914 | ||
|
|
9687d432fd | ||
|
|
378c0d049e | ||
|
|
abe283b38e | ||
|
|
3af42079e0 | ||
|
|
eb4843649c | ||
|
|
9432efeba5 | ||
|
|
4a3ed75ae5 | ||
|
|
fc8c555519 | ||
|
|
44f30c0e05 | ||
|
|
83b5fd252e | ||
|
|
9ae18b0b3b | ||
|
|
84487b2e52 | ||
|
|
9689376de6 | ||
|
|
a2f79a163f | ||
|
|
489d0151ad | ||
|
|
bcb44ab600 | ||
|
|
1a78bb4b58 | ||
|
|
2600695927 | ||
|
|
705e4fca06 | ||
|
|
a4ba4cf6ce | ||
|
|
0b2109576a | ||
|
|
c8cdc50d29 | ||
|
|
b29e60a97a | ||
|
|
209a986fe4 | ||
|
|
295e5c9731 | ||
|
|
08c93e94e4 | ||
|
|
ec28e9fb27 | ||
|
|
7081e8a226 | ||
|
|
01a2383d7b | ||
|
|
903b569f6c | ||
|
|
9b79e35d52 | ||
|
|
237100da18 | ||
|
|
1e33c0c288 | ||
|
|
cbc7603248 | ||
|
|
8d53f3abb8 | ||
|
|
2dcfec2639 | ||
|
|
dacb1a70ee | ||
|
|
93200c00f2 | ||
|
|
3b484c362e | ||
|
|
fbee9fe51e | ||
|
|
c451aab150 | ||
|
|
48bff9a5d2 | ||
|
|
db36d80669 | ||
|
|
6c8d3232a0 | ||
|
|
e6418fe79b | ||
|
|
34a0bb04f7 | ||
|
|
28302c82a3 | ||
|
|
5025c40ab2 | ||
|
|
6fdd30d97f | ||
|
|
b7c000e435 | ||
|
|
5ef2bbe5d6 | ||
|
|
e1d37c3b98 | ||
|
|
ec475e5783 | ||
|
|
c4b67b4cae | ||
|
|
b2cfebcce2 | ||
|
|
2bf445e165 | ||
|
|
121224b1b0 | ||
|
|
55ce1ce3ec | ||
|
|
2b14633047 | ||
|
|
88042d27ec | ||
|
|
148f3002ec | ||
|
|
ec82c1f957 | ||
|
|
9919520c28 | ||
|
|
689795e8bc | ||
|
|
5c8ab35f55 | ||
|
|
ddd7f3f384 | ||
|
|
c2f74879da | ||
|
|
5311683d43 | ||
|
|
5f03a583d1 | ||
|
|
a6970e02f9 | ||
|
|
1f7f013e0a | ||
|
|
991a04dc2a | ||
|
|
685902adab | ||
|
|
26ce0eb4b9 | ||
|
|
b30db728cc | ||
|
|
5eb098b5aa | ||
|
|
a2995ea03a | ||
|
|
82da5cfd01 | ||
|
|
909285ea46 | ||
|
|
a0bc0641c7 | ||
|
|
e7ada61881 | ||
|
|
79e99908de | ||
|
|
f1d7644184 | ||
|
|
5f365927b3 | ||
|
|
bd893cb24c | ||
|
|
e3352c3658 | ||
|
|
63d3d6049e | ||
|
|
668810858d | ||
|
|
b7131a5cd5 | ||
|
|
c9a316ad35 | ||
|
|
ec8fe21485 | ||
|
|
4a0b10984a | ||
|
|
69406b00d1 | ||
|
|
a1f3ae730a | ||
|
|
fedaef5d17 | ||
|
|
e35345f135 | ||
|
|
d0dbbd1cb1 | ||
|
|
70e14f92a4 | ||
|
|
b45f371911 | ||
|
|
f1a7ee997b | ||
|
|
51ebec7c13 | ||
|
|
c3ed1ad040 | ||
|
|
85ebf2e484 | ||
|
|
1996e6afaa | ||
|
|
799f97e847 | ||
|
|
dd2a7f91cc | ||
|
|
c86e9dfc8a | ||
|
|
40a2579821 | ||
|
|
380b64071e | ||
|
|
5ce0b1c18e | ||
|
|
a00453e151 | ||
|
|
a1aa40f500 | ||
|
|
1ad4685bb7 | ||
|
|
d8629e61d6 | ||
|
|
d4ddd7204d | ||
|
|
5f18799d8f | ||
|
|
15ba3325d9 | ||
|
|
3046350cb2 | ||
|
|
ffa9e5dfab | ||
|
|
8584654f11 | ||
|
|
c7e65ce795 | ||
|
|
cc3f019b28 | ||
|
|
920785631b | ||
|
|
b7fe1db89a | ||
|
|
5a08dfa72f | ||
|
|
c28b1f6fb9 | ||
|
|
c81ca187f8 | ||
|
|
ba148d749f | ||
|
|
606dd11b4f | ||
|
|
e254d2de8e | ||
|
|
b0b8ba7000 | ||
|
|
4d512d908d | ||
|
|
168376b046 | ||
|
|
df9e7f284c | ||
|
|
6365ee7487 | ||
|
|
7a8620a570 | ||
|
|
2c24bf3222 | ||
|
|
e036d89a86 | ||
|
|
36e9fb9d68 | ||
|
|
8b56a038b7 | ||
|
|
d5f0e23e29 | ||
|
|
3a2bd4e928 | ||
|
|
c5136ca4d6 | ||
|
|
28dac81a90 | ||
|
|
c89632d2a8 | ||
|
|
82c8f3b556 | ||
|
|
29278ff916 | ||
|
|
608b9e66f4 | ||
|
|
ac0ed14eae | ||
|
|
a06dfaf82a | ||
|
|
dfd5e30015 | ||
|
|
b19524d56a | ||
|
|
e0d25ff887 | ||
|
|
198dfffaeb | ||
|
|
c4ef055248 | ||
|
|
420ceffbb0 | ||
|
|
eeeecf9763 | ||
|
|
8df591e8d4 | ||
|
|
702ed5bfa8 | ||
|
|
75c6844b66 | ||
|
|
b39f01dcdf | ||
|
|
dba7dc4e96 | ||
|
|
ef96a50cea | ||
|
|
eed78c960d | ||
|
|
eea7ca9b72 | ||
|
|
c7c732ebc0 | ||
|
|
fb06482916 | ||
|
|
1bb24efbbc | ||
|
|
13800589a9 | ||
|
|
848add1b1b | ||
|
|
fc67dd18d0 | ||
|
|
b3e9b92344 | ||
|
|
a291b29c6f | ||
|
|
b566c4ba1a | ||
|
|
2349a6ab0c | ||
|
|
70eaf41acb | ||
|
|
912091981e | ||
|
|
aca42ff6a5 | ||
|
|
3fd885a188 | ||
|
|
2dacdf0210 | ||
|
|
5e8856e65b | ||
|
|
d42539949e | ||
|
|
28ca5b2b57 | ||
|
|
eea6f5cbfa | ||
|
|
b55dcc16ae | ||
|
|
0cb442d40e | ||
|
|
680dc1f962 | ||
|
|
30c92ce1b7 | ||
|
|
e55a09241e | ||
|
|
5f02237119 | ||
|
|
68552b6d65 | ||
|
|
44a4cea3a2 | ||
|
|
77c13e10ec | ||
|
|
0f66ff50a4 | ||
|
|
af515856c2 | ||
|
|
62e8c09183 | ||
|
|
cb40a74aaf | ||
|
|
a2c3ef94ec | ||
|
|
4184fb3ae7 | ||
|
|
20d2d141e4 | ||
|
|
0cfc3bfb79 | ||
|
|
2de206cb81 | ||
|
|
64c6dfd307 | ||
|
|
03d0b296e1 | ||
|
|
ca4408b343 | ||
|
|
527f408f6a | ||
|
|
adccca366e | ||
|
|
76cad41382 | ||
|
|
501db8f276 | ||
|
|
cc684ff0b1 | ||
|
|
7823c07f1a | ||
|
|
eb6d3d68a9 | ||
|
|
c98c7d47db | ||
|
|
194694a59b | ||
|
|
555cee3500 | ||
|
|
f4bb854372 | ||
|
|
d04b8e2fc6 | ||
|
|
21c1450e4a | ||
|
|
2b6b0e62f4 | ||
|
|
4fb360b19f | ||
|
|
0fa1567793 | ||
|
|
d7377015a2 | ||
|
|
139017ba7c | ||
|
|
ff3b53e34a | ||
|
|
b409cdece5 | ||
|
|
2478e67d16 | ||
|
|
dd35877eda | ||
|
|
4acfd2c342 | ||
|
|
df3f9a2ae8 | ||
|
|
78ae9ff093 | ||
|
|
ca781651cb | ||
|
|
417fa3cf3c | ||
|
|
92bb477f68 | ||
|
|
0f08cc5aa9 | ||
|
|
3dac33ffba | ||
|
|
fe73eccb90 | ||
|
|
b9544d9534 | ||
|
|
99ba9874b1 | ||
|
|
b41ca72d2b | ||
|
|
1ba17a0e14 | ||
|
|
480d31eb5e | ||
|
|
1973f93d4a | ||
|
|
3a2f4d4def | ||
|
|
192d2b86b6 | ||
|
|
6ca948ac3c | ||
|
|
5f932e9749 | ||
|
|
ff46c18164 | ||
|
|
de777907f2 | ||
|
|
72c4fd868a | ||
|
|
4bc2cd003d | ||
|
|
c9c6c1f769 | ||
|
|
bb7d8735cb | ||
|
|
557b0d76ab | ||
|
|
13073411cc | ||
|
|
0530045536 | ||
|
|
6d29e9c1b7 | ||
|
|
d3e4739745 | ||
|
|
3379f3ef61 | ||
|
|
9da7919062 | ||
|
|
aeed7deb2d | ||
|
|
38b617d848 | ||
|
|
dda02f783f | ||
|
|
cda322e311 | ||
|
|
934d3178a2 | ||
|
|
2cded8dcac | ||
|
|
babe0c31ad | ||
|
|
aa2ae37365 | ||
|
|
9a8b81fcbe | ||
|
|
138f38aade | ||
|
|
42914bff6f | ||
|
|
59acf95bf5 | ||
|
|
31c1046771 | ||
|
|
ec4a22687f | ||
|
|
22d9d16a7a | ||
|
|
0520e67303 | ||
|
|
d571573e52 | ||
|
|
0f643daac6 | ||
|
|
989317e5d3 | ||
|
|
cce6db4aeb | ||
|
|
46109abde5 | ||
|
|
2e16774190 | ||
|
|
812a21bce6 | ||
|
|
17e0207120 | ||
|
|
e02608edf8 | ||
|
|
1a7e160956 | ||
|
|
59d966356e | ||
|
|
5937e0289e | ||
|
|
85c212aee3 | ||
|
|
1978c3d3bd | ||
|
|
30a2c28d74 | ||
|
|
94a330532d | ||
|
|
f65e57ee82 | ||
|
|
750064c06f | ||
|
|
651fd79325 | ||
|
|
b53f988fca | ||
|
|
1595eaeb74 | ||
|
|
a54cbe896d | ||
|
|
9995a8d53f | ||
|
|
b88872d54b | ||
|
|
f02ac01f7e | ||
|
|
3ab3a5a236 | ||
|
|
fa3eb185ab | ||
|
|
4a56ba34d4 | ||
|
|
b860c69fd7 | ||
|
|
8408ceffe8 | ||
|
|
da9133c3c3 | ||
|
|
4a6e920d0e | ||
|
|
13f58d602f | ||
|
|
45fda595c3 | ||
|
|
1f15ea0bd8 | ||
|
|
99eebfa10f | ||
|
|
ccbbe81141 | ||
|
|
ad2da5969e | ||
|
|
2ce82f3da5 | ||
|
|
6bc9479e00 | ||
|
|
740e52229f | ||
|
|
1efd2390e3 | ||
|
|
564328abf9 | ||
|
|
926f819e31 | ||
|
|
45f0b9ac45 | ||
|
|
9a82e86ce9 | ||
|
|
0ad974c57b | ||
|
|
62f015fc34 | ||
|
|
b508787037 | ||
|
|
176ef19cca | ||
|
|
db83ede73c | ||
|
|
452d1e8307 | ||
|
|
92f337c67e | ||
|
|
1e4022680a | ||
|
|
e16d951da0 | ||
|
|
7b2b19b4ba | ||
|
|
8ebfaed546 | ||
|
|
0b52d52f4a | ||
|
|
6901d10d54 | ||
|
|
7caa2ae9bc | ||
|
|
cc50859912 | ||
|
|
6c16780144 | ||
|
|
b5f79444f9 | ||
|
|
b73c6e94c0 | ||
|
|
07616a9d34 | ||
|
|
e88ee26e3b | ||
|
|
7422c38e66 | ||
|
|
8ed1c77e47 | ||
|
|
8c65b8c16f | ||
|
|
1f435522b4 | ||
|
|
eb880e8de0 | ||
|
|
83b1d80a5b | ||
|
|
529aff3126 | ||
|
|
bf2bd519eb | ||
|
|
38c7dda00f | ||
|
|
056e7432bd | ||
|
|
074497b0f6 | ||
|
|
1eca969cf6 | ||
|
|
c1cbdae5ee | ||
|
|
4d4b6a2fa0 | ||
|
|
d30a972a90 | ||
|
|
24013af3bb | ||
|
|
338dc3223c | ||
|
|
c422a6dd4f | ||
|
|
8305af8f10 | ||
|
|
6435c7b921 | ||
|
|
af7c57b082 | ||
|
|
80941eacbd | ||
|
|
5d8de5fde2 | ||
|
|
e3593fe197 | ||
|
|
1fc9506442 | ||
|
|
48cbe45a9d |
92
.ameba.yml
Normal file
92
.ameba.yml
Normal file
@@ -0,0 +1,92 @@
|
||||
#
|
||||
# Lint
|
||||
#
|
||||
|
||||
# Exclude assigns for ECR files
|
||||
Lint/UselessAssign:
|
||||
Excluded:
|
||||
- src/invidious.cr
|
||||
- src/invidious/helpers/errors.cr
|
||||
- src/invidious/routes/**/*.cr
|
||||
|
||||
# Ignore false negative (if !db.query_one?...)
|
||||
Lint/UnreachableCode:
|
||||
Excluded:
|
||||
- src/invidious/database/base.cr
|
||||
|
||||
# Ignore shadowed variable `key` (it works for now, and that's
|
||||
# a sensitive part of the code)
|
||||
Lint/ShadowingOuterLocalVar:
|
||||
Excluded:
|
||||
- src/invidious/helpers/tokens.cr
|
||||
|
||||
|
||||
#
|
||||
# Style
|
||||
#
|
||||
|
||||
Style/RedundantBegin:
|
||||
Enabled: false
|
||||
|
||||
Style/RedundantReturn:
|
||||
Enabled: false
|
||||
|
||||
|
||||
#
|
||||
# Metrics
|
||||
#
|
||||
|
||||
# Ignore function complexity (number of if/else & case/when branches)
|
||||
# For some functions that can hardly be simplified for now
|
||||
Metrics/CyclomaticComplexity:
|
||||
Excluded:
|
||||
# get_about_info(ucid, locale) => [17/10]
|
||||
- src/invidious/channels/about.cr
|
||||
|
||||
# fetch_channel_community(ucid, continuation, ...) => [34/10]
|
||||
- src/invidious/channels/community.cr
|
||||
|
||||
# create_notification_stream(env, topics, connection_channel) => [14/10]
|
||||
- src/invidious/helpers/helpers.cr:84:5
|
||||
|
||||
# get_index(plural_form, count) => [25/10]
|
||||
- src/invidious/helpers/i18next.cr
|
||||
|
||||
# call(context) => [18/10]
|
||||
- src/invidious/helpers/static_file_handler.cr
|
||||
|
||||
# show(env) => [38/10]
|
||||
- src/invidious/routes/embed.cr
|
||||
|
||||
# get_video_playback(env) => [45/10]
|
||||
- src/invidious/routes/video_playback.cr
|
||||
|
||||
# handle(env) => [40/10]
|
||||
- src/invidious/routes/watch.cr
|
||||
|
||||
# playlist_ajax(env) => [24/10]
|
||||
- src/invidious/routes/playlists.cr
|
||||
|
||||
# fetch_youtube_comments(id, cursor, ....) => [40/10]
|
||||
# template_youtube_comments(comments, locale, ...) => [16/10]
|
||||
# content_to_comment_html(content) => [14/10]
|
||||
- src/invidious/comments.cr
|
||||
|
||||
# to_json(locale, json) => [21/10]
|
||||
# extract_video_info(video_id, ...) => [44/10]
|
||||
# process_video_params(query, preferences) => [20/10]
|
||||
- src/invidious/videos.cr
|
||||
|
||||
# produce_search_params(page, sort, ...) => [29/10]
|
||||
# process_search_query(query, page, ...) => [14/10]
|
||||
- src/invidious/search.cr
|
||||
|
||||
|
||||
|
||||
#src/invidious/playlists.cr:327:5
|
||||
#[C] Metrics/CyclomaticComplexity: Cyclomatic complexity too high [19/10]
|
||||
# fetch_playlist(plid : String)
|
||||
|
||||
#src/invidious/playlists.cr:436:5
|
||||
#[C] Metrics/CyclomaticComplexity: Cyclomatic complexity too high [11/10]
|
||||
# extract_playlist_videos(initial_data : Hash(String, JSON::Any))
|
||||
3
.gitattributes
vendored
Normal file
3
.gitattributes
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
# https://github.community/t/how-to-change-the-category/2261/3
|
||||
videojs-*.js linguist-detectable=false
|
||||
video.min.js linguist-detectable=false
|
||||
18
.github/CODEOWNERS
vendored
Normal file
18
.github/CODEOWNERS
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
# Default and lowest precedence. If none of the below matches, @iv-org/developers would be requested for review.
|
||||
* @iv-org/developers
|
||||
|
||||
docker-compose.yml @unixfox
|
||||
docker/ @unixfox
|
||||
kubernetes/ @unixfox
|
||||
|
||||
README.md @thefrenchghosty
|
||||
config/config.example.yml @thefrenchghosty @SamantazFox @unixfox
|
||||
|
||||
scripts/ @syeopite
|
||||
shards.lock @syeopite
|
||||
shards.yml @syeopite
|
||||
|
||||
locales/ @SamantazFox
|
||||
src/invidious/helpers/i18n.cr @SamantazFox
|
||||
|
||||
src/invidious/helpers/youtube_api.cr @SamantazFox
|
||||
1
.github/FUNDING.yml
vendored
Normal file
1
.github/FUNDING.yml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
custom: https://invidious.io/donate/
|
||||
42
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
42
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a bug report to help us improve Invidious
|
||||
title: '[Bug] '
|
||||
labels: bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
BEFORE TRYING TO REPORT A BUG:
|
||||
|
||||
* Read the FAQ!
|
||||
* Use the search function to check if there is already an issue open for your problem!
|
||||
|
||||
If you want to suggest a new feature please use "Feature request" instead
|
||||
If you want to suggest an enhancement to an existing feature please use "Enhancement" instead
|
||||
-->
|
||||
|
||||
|
||||
**Describe the bug**
|
||||
<!-- A clear and concise description of what the bug is. -->
|
||||
|
||||
**Steps to Reproduce**
|
||||
<!-- Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
-->
|
||||
|
||||
**Logs**
|
||||
<!-- If applicable, copy the log that appear in the browser page where the error is reported. -->
|
||||
|
||||
**Screenshots**
|
||||
<!-- If applicable, add screenshots to help explain your problem. -->
|
||||
|
||||
**Additional context**
|
||||
<!-- Add any other context about the problem here.
|
||||
- Browser (if applicable):
|
||||
- OS (if applicable):
|
||||
-->
|
||||
24
.github/ISSUE_TEMPLATE/enhancement.md
vendored
Normal file
24
.github/ISSUE_TEMPLATE/enhancement.md
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
name: Enhancement
|
||||
about: Suggest an enhancement for an existing feature
|
||||
title: '[Enhancement] '
|
||||
labels: enhancement
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!-- Please use the search function to check if the desired function has already been requested by someone else -->
|
||||
<!-- If you want to suggest a new feature please use "Feature request" instead -->
|
||||
<!-- If you want to report a bug, please use "Bug report" instead -->
|
||||
|
||||
**Is your enhancement request related to a problem? Please describe.**
|
||||
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
|
||||
|
||||
**Describe the solution you'd like**
|
||||
<!-- A clear and concise description of what you want to happen. -->
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
|
||||
|
||||
**Additional context**
|
||||
<!-- Add any other context or screenshots about the enhancement here. -->
|
||||
24
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
24
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: '[Feature request] '
|
||||
labels: feature-request
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!-- Please use the search function to check if the desired function has already been requested by someone else -->
|
||||
<!-- If you want to suggest an enhancement to an existing feature please use "Enhancement" instead -->
|
||||
<!-- If you want to report a bug, please use "Bug report" instead -->
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
|
||||
|
||||
**Describe the solution you'd like**
|
||||
<!-- A clear and concise description of what you want to happen. -->
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
|
||||
|
||||
**Additional context**
|
||||
<!-- Add any other context or screenshots about the feature request here. -->
|
||||
124
.github/workflows/ci.yml
vendored
Normal file
124
.github/workflows/ci.yml
vendored
Normal file
@@ -0,0 +1,124 @@
|
||||
name: Invidious CI
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 0 * * *" # Every day at 00:00
|
||||
push:
|
||||
branches:
|
||||
- "master"
|
||||
- "api-only"
|
||||
pull_request:
|
||||
branches: "*"
|
||||
paths-ignore:
|
||||
- "*.md"
|
||||
- LICENCE
|
||||
- TRANSLATION
|
||||
- invidious.service
|
||||
- .git*
|
||||
- .editorconfig
|
||||
|
||||
- screenshots/*
|
||||
- assets/**
|
||||
- locales/*
|
||||
- config/**
|
||||
- .github/ISSUE_TEMPLATE/*
|
||||
- kubernetes/**
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
name: "build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }}"
|
||||
|
||||
continue-on-error: ${{ !matrix.stable }}
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
stable: [true]
|
||||
crystal:
|
||||
- 1.0.0
|
||||
- 1.1.1
|
||||
- 1.2.2
|
||||
include:
|
||||
- crystal: nightly
|
||||
stable: false
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install Crystal
|
||||
uses: crystal-lang/install-crystal@v1.5.3
|
||||
with:
|
||||
crystal: ${{ matrix.crystal }}
|
||||
|
||||
- name: Cache Shards
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ./lib
|
||||
key: shards-${{ hashFiles('shard.lock') }}
|
||||
|
||||
- name: Install Shards
|
||||
run: |
|
||||
if ! shards check; then
|
||||
shards install
|
||||
fi
|
||||
|
||||
- name: Run tests
|
||||
run: crystal spec
|
||||
|
||||
- name: Run lint
|
||||
run: |
|
||||
if ! crystal tool format --check; then
|
||||
crystal tool format
|
||||
git diff
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Build
|
||||
run: crystal build --warnings all --error-on-warnings --error-trace src/invidious.cr
|
||||
|
||||
build-docker:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Build Docker
|
||||
run: docker-compose build --build-arg release=0
|
||||
|
||||
- name: Run Docker
|
||||
run: docker-compose up -d
|
||||
|
||||
- name: Test Docker
|
||||
run: while curl -Isf http://localhost:3000; do sleep 1; done
|
||||
|
||||
build-docker-arm64:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
with:
|
||||
platforms: arm64
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
|
||||
- name: Build Docker ARM64 image
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile.arm64
|
||||
platforms: linux/arm64/v8
|
||||
build-args: release=0
|
||||
|
||||
- name: Test Docker
|
||||
run: while curl -Isf http://localhost:3000; do sleep 1; done
|
||||
|
||||
|
||||
77
.github/workflows/container-release.yml
vendored
Normal file
77
.github/workflows/container-release.yml
vendored
Normal file
@@ -0,0 +1,77 @@
|
||||
name: Build and release container
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- "master"
|
||||
paths-ignore:
|
||||
- "*.md"
|
||||
- LICENCE
|
||||
- TRANSLATION
|
||||
- invidious.service
|
||||
- .git*
|
||||
- .editorconfig
|
||||
|
||||
- screenshots/*
|
||||
- .github/ISSUE_TEMPLATE/*
|
||||
- kubernetes/**
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install Crystal
|
||||
uses: oprypin/install-crystal@v1.2.4
|
||||
with:
|
||||
crystal: 1.2.2
|
||||
|
||||
- name: Run lint
|
||||
run: |
|
||||
if ! crystal tool format --check; then
|
||||
crystal tool format
|
||||
git diff
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
with:
|
||||
platforms: arm64
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
|
||||
- name: Login to registry
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
registry: quay.io
|
||||
username: ${{ secrets.QUAY_USERNAME }}
|
||||
password: ${{ secrets.QUAY_PASSWORD }}
|
||||
|
||||
- name: Build and push Docker AMD64 image for Push Event
|
||||
if: github.ref == 'refs/heads/master'
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile
|
||||
platforms: linux/amd64
|
||||
labels: quay.expires-after=12w
|
||||
push: true
|
||||
tags: quay.io/invidious/invidious:${{ github.sha }},quay.io/invidious/invidious:latest
|
||||
build-args: release=1
|
||||
|
||||
- name: Build and push Docker ARM64 image for Push Event
|
||||
if: github.ref == 'refs/heads/master'
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile.arm64
|
||||
platforms: linux/arm64/v8
|
||||
labels: quay.expires-after=12w
|
||||
push: true
|
||||
tags: quay.io/invidious/invidious:${{ github.sha }}-arm64,quay.io/invidious/invidious:latest-arm64
|
||||
build-args: release=1
|
||||
24
.github/workflows/stale.yml
vendored
Normal file
24
.github/workflows/stale.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
# Documentation: https://github.com/marketplace/actions/close-stale-issues
|
||||
|
||||
name: "Stale issue handler"
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "0 */12 * * *"
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v3
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
days-before-stale: 365
|
||||
days-before-pr-stale: 45 # PRs should be active. Anything that hasn't had activity in more than 45 days should be considered abandoned.
|
||||
days-before-close: 30
|
||||
exempt-pr-labels: blocked
|
||||
stale-issue-message: 'This issue has been automatically marked as stale and will be closed in 30 days because it has not had recent activity and is much likely outdated. If you think this issue is still relevant and applicable, you just have to post a comment and it will be unmarked.'
|
||||
stale-pr-message: 'This pull request has been automatically marked as stale and will be closed in 30 days because it has not had recent activity and is much likely abandoned or outdated. If you think this pull request is still relevant and applicable, you just have to post a comment and it will be unmarked.'
|
||||
stale-issue-label: "stale"
|
||||
stale-pr-label: "stale"
|
||||
ascending: true
|
||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -6,4 +6,4 @@
|
||||
/.vscode/
|
||||
/invidious
|
||||
/sentry
|
||||
shard.lock
|
||||
/config/config.yml
|
||||
|
||||
31
.travis.yml
31
.travis.yml
@@ -1,31 +0,0 @@
|
||||
dist: bionic
|
||||
|
||||
jobs:
|
||||
include:
|
||||
- stage: build
|
||||
# TODO: Shallowly clone again once the .git folder is no longer required for building
|
||||
git:
|
||||
depth: false
|
||||
language: crystal
|
||||
crystal: latest
|
||||
before_install:
|
||||
- shards update
|
||||
- shards install
|
||||
install:
|
||||
- crystal build --warnings all --error-on-warnings src/invidious.cr
|
||||
script:
|
||||
- crystal tool format --check
|
||||
- crystal spec
|
||||
|
||||
- stage: build_docker
|
||||
# TODO: Shallowly clone again once the .git folder is no longer required for building
|
||||
git:
|
||||
depth: false
|
||||
language: minimal
|
||||
services:
|
||||
- docker
|
||||
install:
|
||||
- docker-compose build
|
||||
script:
|
||||
- docker-compose up -d
|
||||
- while curl -Isf http://localhost:3000; do sleep 1; done
|
||||
@@ -1,3 +1,5 @@
|
||||
# Note: This is no longer updated and links to omarroths repo, which doesn't exist anymore.
|
||||
|
||||
# 0.20.0 (2019-011-06)
|
||||
|
||||
# Version 0.20.0: Custom Playlists
|
||||
@@ -400,7 +402,7 @@ An `/api/v1/stats` endpoint has been added with [#356](https://github.com/omarro
|
||||
|
||||
## For Developers
|
||||
|
||||
`/api/v1/channels/:ucid` now provides an `autoGenerated` tag, which returns true for [topic channels](https://www.youtube.com/channel/UCE80FOXpJydkkMo-BYoJdEg), and larger [genre channels](https://www.youtube.com/channel/UC-9-kyTW8ZkZNDHQJ6FgpwQ) generated by YouTube. These channels don't have any videos of their own, so `latestVideos` will be empty. It is recommended instead to display a list of playlists generated by YouTube.
|
||||
`/api/v1/channels/:ucid` now provides an `autoGenerated` tag, which returns true for topic channels, and larger genre channels generated by YouTube. These channels don't have any videos of their own, so `latestVideos` will be empty. It is recommended instead to display a list of playlists generated by YouTube.
|
||||
|
||||
You can now pull a list of playlists from a channel with `/api/v1/channels/playlists/:ucid`. Supported options are documented in the [wiki](https://github.com/omarroth/invidious/wiki/API#get-apiv1channelsplaylistsucid-apiv1channelsucidplaylists). Pagination is handled with a `continuation` token, which is generated on each call. Of note is that auto-generated channels currently have one page of results, and subsequent calls will be empty.
|
||||
|
||||
|
||||
119
Makefile
Normal file
119
Makefile
Normal file
@@ -0,0 +1,119 @@
|
||||
# -----------------------
|
||||
# Compilation options
|
||||
# -----------------------
|
||||
|
||||
RELEASE := 1
|
||||
STATIC := 0
|
||||
|
||||
DISABLE_QUIC := 0
|
||||
NO_DBG_SYMBOLS := 0
|
||||
|
||||
|
||||
FLAGS ?=
|
||||
|
||||
|
||||
ifeq ($(RELEASE), 1)
|
||||
FLAGS += --release
|
||||
endif
|
||||
|
||||
ifeq ($(STATIC), 1)
|
||||
FLAGS += --static
|
||||
endif
|
||||
|
||||
|
||||
ifeq ($(NO_DBG_SYMBOLS), 1)
|
||||
FLAGS += --no-debug
|
||||
else
|
||||
FLAGS += --debug
|
||||
endif
|
||||
|
||||
ifeq ($(DISABLE_QUIC), 1)
|
||||
FLAGS += -Ddisable_quic
|
||||
endif
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Main
|
||||
# -----------------------
|
||||
|
||||
all: invidious
|
||||
|
||||
get-libs:
|
||||
shards install --production
|
||||
|
||||
# TODO: add support for ARM64 via cross-compilation
|
||||
invidious: get-libs
|
||||
crystal build src/invidious.cr $(FLAGS) --progress --stats --error-trace
|
||||
|
||||
|
||||
run: invidious
|
||||
./invidious
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Development
|
||||
# -----------------------
|
||||
|
||||
|
||||
format:
|
||||
crystal tool format
|
||||
|
||||
test:
|
||||
crystal spec
|
||||
|
||||
verify:
|
||||
crystal build src/invidious.cr -Dskip_videojs_download \
|
||||
--no-codegen --progress --stats --error-trace
|
||||
|
||||
|
||||
# -----------------------
|
||||
# (Un)Install
|
||||
# -----------------------
|
||||
|
||||
# TODO
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Cleaning
|
||||
# -----------------------
|
||||
|
||||
clean:
|
||||
rm invidious
|
||||
|
||||
distclean: clean
|
||||
rm -rf libs
|
||||
|
||||
|
||||
# -----------------------
|
||||
# Help page
|
||||
# -----------------------
|
||||
|
||||
help:
|
||||
@echo "Targets available in this Makefile:"
|
||||
@echo ""
|
||||
@echo " get-libs Fetch Crystal libraries"
|
||||
@echo " invidious Build Invidious"
|
||||
@echo " run Launch Invidious"
|
||||
@echo ""
|
||||
@echo " format Run the Crystal formatter"
|
||||
@echo " test Run tests"
|
||||
@echo " verify Just make sure that the code compiles, but without"
|
||||
@echo " generating any binaries. Useful to search for errors"
|
||||
@echo ""
|
||||
@echo " clean Remove build artifacts"
|
||||
@echo " distclean Remove build artifacts and libraries"
|
||||
@echo ""
|
||||
@echo ""
|
||||
@echo "Build options available for this Makefile:"
|
||||
@echo ""
|
||||
@echo " RELEASE Make a release build (Default: 1)"
|
||||
@echo " STATIC Link libraries statically (Default: 0)"
|
||||
@echo ""
|
||||
@echo " DISABLE_QUIC Disable support for QUIC (Default: 0)"
|
||||
@echo " NO_DBG_SYMBOLS Strip debug symbols (Default: 0)"
|
||||
|
||||
|
||||
|
||||
# No targets generates an output named after themselves
|
||||
.PHONY: all get-libs build amd64 run
|
||||
.PHONY: format test verify clean distclean help
|
||||
358
README.md
358
README.md
@@ -1,255 +1,175 @@
|
||||
# Invidious
|
||||
<div align="center">
|
||||
<img src="assets/invidious-colored-vector.svg" width="192" height="192" alt="Invidious logo">
|
||||
<h1>Invidious</h1>
|
||||
|
||||
[](https://travis-ci.org/omarroth/invidious)
|
||||
<a href="https://www.gnu.org/licenses/agpl-3.0.en.html">
|
||||
<img alt="License: AGPLv3" src="https://shields.io/badge/License-AGPL%20v3-blue.svg">
|
||||
</a>
|
||||
<a href="https://github.com/iv-org/invidious/actions">
|
||||
<img alt="Build Status" src="https://github.com/iv-org/invidious/workflows/Invidious%20CI/badge.svg">
|
||||
</a>
|
||||
<a href="https://github.com/iv-org/invidious/commits/master">
|
||||
<img alt="GitHub commits" src="https://img.shields.io/github/commit-activity/y/iv-org/invidious?color=red&label=commits">
|
||||
</a>
|
||||
<a href="https://github.com/iv-org/invidious/issues">
|
||||
<img alt="GitHub issues" src="https://img.shields.io/github/issues/iv-org/invidious?color=important">
|
||||
</a>
|
||||
<a href="https://github.com/iv-org/invidious/pulls">
|
||||
<img alt="GitHub pull requests" src="https://img.shields.io/github/issues-pr/iv-org/invidious?color=blueviolet">
|
||||
</a>
|
||||
<a href="https://hosted.weblate.org/engage/invidious/">
|
||||
<img alt="Translation Status" src="https://hosted.weblate.org/widgets/invidious/-/translations/svg-badge.svg">
|
||||
</a>
|
||||
|
||||
## Invidious is an alternative front-end to YouTube
|
||||
<a href="https://github.com/humanetech-community/awesome-humane-tech">
|
||||
<img alt="Awesome Humane Tech" src="https://raw.githubusercontent.com/humanetech-community/awesome-humane-tech/main/humane-tech-badge.svg?sanitize=true">
|
||||
</a>
|
||||
|
||||
- Audio-only mode (and no need to keep window open on mobile)
|
||||
- [Free software](https://github.com/omarroth/invidious) (AGPLv3 licensed)
|
||||
- No ads
|
||||
- No need to create a Google account to save subscriptions
|
||||
- Lightweight (homepage is ~4 KB compressed)
|
||||
- Tools for managing subscriptions:
|
||||
- Only show unseen videos
|
||||
- Only show latest (or latest unseen) video from each channel
|
||||
- Delivers notifications from all subscribed channels
|
||||
- Automatically redirect homepage to feed
|
||||
- Import subscriptions from YouTube
|
||||
- Dark mode
|
||||
- Embed support
|
||||
- Set default player options (speed, quality, autoplay, loop)
|
||||
- Does not require JS to play videos
|
||||
- Support for Reddit comments in place of YT comments
|
||||
- Import/Export subscriptions, watch history, preferences
|
||||
- Does not use any of the official YouTube APIs
|
||||
- Developer [API](https://github.com/omarroth/invidious/wiki/API)
|
||||
<h3>An open source alternative front-end to YouTube</h3>
|
||||
|
||||
Liberapay: https://liberapay.com/omarroth
|
||||
BTC: 356DpZyMXu6rYd55Yqzjs29n79kGKWcYrY
|
||||
BCH: qq4ptclkzej5eza6a50et5ggc58hxsq5aylqut2npk
|
||||
<a href="https://invidious.io/">Website</a>
|
||||
•
|
||||
<a href="https://instances.invidious.io/">Instances list</a>
|
||||
•
|
||||
<a href="https://docs.invidious.io/FAQ.md">FAQ</a>
|
||||
•
|
||||
<a href="https://docs.invidious.io/">Documentation</a>
|
||||
•
|
||||
<a href="#contribute">Contribute</a>
|
||||
•
|
||||
<a href="https://invidious.io/donate/">Donate</a>
|
||||
|
||||
## Invidious Instances
|
||||
<h5>Chat with us:</h5>
|
||||
<a href="https://matrix.to/#/#invidious:matrix.org">
|
||||
<img alt="Matrix" src="https://img.shields.io/matrix/invidious:matrix.org?label=Matrix&color=darkgreen">
|
||||
</a>
|
||||
<a href="https://web.libera.chat/?channel=#invidious">
|
||||
<img alt="Libera.chat (IRC)" src="https://img.shields.io/badge/IRC%20%28Libera.chat%29-%23invidious-darkgreen">
|
||||
</a>
|
||||
<br>
|
||||
<a rel="me" href="https://social.tchncs.de/@invidious">
|
||||
<img alt="Mastodon: @invidious@social.tchncs.de" src="https://img.shields.io/badge/Mastodon-%40invidious%40social.tchncs.de-darkgreen">
|
||||
</a>
|
||||
<br>
|
||||
<a href="https://invidious.io/contact/">
|
||||
<img alt="E-mail" src="https://img.shields.io/badge/E%2d%2dmail-darkgreen">
|
||||
</a>
|
||||
</div>
|
||||
|
||||
See [Invidious Instances](https://github.com/omarroth/invidious/wiki/Invidious-Instances) for a full list of publicly available instances.
|
||||
|
||||
### Official Instances
|
||||
|
||||
- [invidio.us](https://invidio.us) 🇺🇸
|
||||
Issuer: Let's Encrypt, [SSLLabs Verification](https://www.ssllabs.com/ssltest/analyze.html?d=invidio.us)
|
||||
- [kgg2m7yk5aybusll.onion](http://kgg2m7yk5aybusll.onion)
|
||||
- [axqzx4s6s54s32yentfqojs3x5i7faxza6xo3ehd4bzzsg2ii4fv2iid.onion](http://axqzx4s6s54s32yentfqojs3x5i7faxza6xo3ehd4bzzsg2ii4fv2iid.onion)
|
||||
|
||||
## Screenshots
|
||||
|
||||
| Player | Preferences | Subscriptions |
|
||||
| ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
|
||||
| [<img src="screenshots/01_player.png?raw=true" height="140" width="280">](screenshots/01_player.png?raw=true) | [<img src="screenshots/02_preferences.png?raw=true" height="140" width="280">](screenshots/02_preferences.png?raw=true) | [<img src="screenshots/03_subscriptions.png?raw=true" height="140" width="280">](screenshots/03_subscriptions.png?raw=true) |
|
||||
| [<img src="screenshots/04_description.png?raw=true" height="140" width="280">](screenshots/04_description.png?raw=true) | [<img src="screenshots/05_preferences.png?raw=true" height="140" width="280">](screenshots/05_preferences.png?raw=true) | [<img src="screenshots/06_subscriptions.png?raw=true" height="140" width="280">](screenshots/06_subscriptions.png?raw=true) |
|
||||
| Player | Preferences | Subscriptions |
|
||||
|-------------------------------------|-------------------------------------|---------------------------------------|
|
||||
|  |  |  |
|
||||
|  |  |  |
|
||||
|
||||
## Installation
|
||||
|
||||
See [Invidious-Updater](https://github.com/tmiland/Invidious-Updater) for a self-contained script that can automatically install and update Invidious.
|
||||
## Features
|
||||
|
||||
### Docker:
|
||||
**User features**
|
||||
- Lightweight
|
||||
- No ads
|
||||
- No tracking
|
||||
- No JavaScript required
|
||||
- Light/Dark themes
|
||||
- Customizable homepage
|
||||
- Subscriptions independent from Google
|
||||
- Notifications for all subscribed channels
|
||||
- Audio-only mode (with background play on mobile)
|
||||
- Support for Reddit comments
|
||||
- [Available in many languages](locales/), thanks to [our translators](#contribute)
|
||||
|
||||
#### Build and start cluster:
|
||||
**Data import/export**
|
||||
- Import subscriptions from YouTube, NewPipe and Freetube
|
||||
- Import watch history from NewPipe
|
||||
- Export subscriptions to NewPipe and Freetube
|
||||
- Import/Export Invidious user data
|
||||
|
||||
```bash
|
||||
$ docker-compose up
|
||||
```
|
||||
**Technical features**
|
||||
- Embedded video support
|
||||
- [Developer API](https://docs.invidious.io/API.md)
|
||||
- Does not use official YouTube APIs
|
||||
- No Contributor License Agreement (CLA)
|
||||
|
||||
And visit `localhost:3000` in your browser.
|
||||
|
||||
#### Rebuild cluster:
|
||||
## Quick start
|
||||
|
||||
```bash
|
||||
$ docker-compose build
|
||||
```
|
||||
**Using invidious:**
|
||||
|
||||
#### Delete data and rebuild:
|
||||
- [Select a public instance from the list](https://instances.invidious.io) and start watching videos right now!
|
||||
|
||||
```bash
|
||||
$ docker volume rm invidious_postgresdata
|
||||
$ docker-compose build
|
||||
```
|
||||
**Hosting invidious:**
|
||||
|
||||
### Linux:
|
||||
- [Follow the installation instructions](https://docs.invidious.io/Installation.md)
|
||||
|
||||
#### Install dependencies
|
||||
|
||||
```bash
|
||||
# Arch Linux
|
||||
$ sudo pacman -S base-devel shards crystal librsvg postgresql
|
||||
|
||||
# Ubuntu or Debian
|
||||
# First you have to add the repository to your APT configuration. For easy setup just run in your command line:
|
||||
$ curl -sSL https://dist.crystal-lang.org/apt/setup.sh | sudo bash
|
||||
# That will add the signing key and the repository configuration. If you prefer to do it manually, execute the following commands:
|
||||
$ curl -sL "https://keybase.io/crystal/pgp_keys.asc" | sudo apt-key add -
|
||||
$ echo "deb https://dist.crystal-lang.org/apt crystal main" | sudo tee /etc/apt/sources.list.d/crystal.list
|
||||
$ sudo apt-get update
|
||||
$ sudo apt install crystal libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev postgresql librsvg2-bin libsqlite3-dev
|
||||
```
|
||||
|
||||
#### Add invidious user and clone repository
|
||||
|
||||
```bash
|
||||
$ useradd -m invidious
|
||||
$ sudo -i -u invidious
|
||||
$ git clone https://github.com/omarroth/invidious
|
||||
$ exit
|
||||
```
|
||||
|
||||
#### Setup PostgresSQL
|
||||
|
||||
```bash
|
||||
$ sudo systemctl enable postgresql
|
||||
$ sudo systemctl start postgresql
|
||||
$ sudo -i -u postgres
|
||||
$ psql -c "CREATE USER kemal WITH PASSWORD 'kemal';" # Change 'kemal' here to a stronger password, and update `password` in config/config.yml
|
||||
$ createdb -O kemal invidious
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/channels.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/videos.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/channel_videos.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/users.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/session_ids.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/nonces.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/annotations.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/playlists.sql
|
||||
$ psql invidious kemal < /home/invidious/invidious/config/sql/playlist_videos.sql
|
||||
$ exit
|
||||
```
|
||||
|
||||
#### Setup Invidious
|
||||
|
||||
```bash
|
||||
$ sudo -i -u invidious
|
||||
$ cd invidious
|
||||
$ shards update && shards install
|
||||
$ crystal build src/invidious.cr --release
|
||||
# test compiled binary
|
||||
$ ./invidious # stop with ctrl c
|
||||
$ exit
|
||||
```
|
||||
|
||||
#### systemd service
|
||||
|
||||
```bash
|
||||
$ sudo cp /home/invidious/invidious/invidious.service /etc/systemd/system/invidious.service
|
||||
$ sudo systemctl enable invidious.service
|
||||
$ sudo systemctl start invidious.service
|
||||
```
|
||||
|
||||
#### Logrotate
|
||||
|
||||
```bash
|
||||
$ sudo echo "/home/invidious/invidious/invidious.log {
|
||||
rotate 4
|
||||
weekly
|
||||
notifempty
|
||||
missingok
|
||||
compress
|
||||
minsize 1048576
|
||||
}" | tee /etc/logrotate.d/invidious.logrotate
|
||||
$ sudo chmod 0644 /etc/logrotate.d/invidious.logrotate
|
||||
```
|
||||
|
||||
### OSX:
|
||||
|
||||
```bash
|
||||
# Install dependencies
|
||||
$ brew update
|
||||
$ brew install shards crystal postgres imagemagick librsvg
|
||||
|
||||
# Clone repository and setup postgres database
|
||||
$ git clone https://github.com/omarroth/invidious
|
||||
$ cd invidious
|
||||
$ brew services start postgresql
|
||||
$ psql -c "CREATE ROLE kemal WITH PASSWORD 'kemal';" # Change 'kemal' here to a stronger password, and update `password` in config/config.yml
|
||||
$ createdb -O kemal invidious
|
||||
$ psql invidious kemal < config/sql/channels.sql
|
||||
$ psql invidious kemal < config/sql/videos.sql
|
||||
$ psql invidious kemal < config/sql/channel_videos.sql
|
||||
$ psql invidious kemal < config/sql/users.sql
|
||||
$ psql invidious kemal < config/sql/session_ids.sql
|
||||
$ psql invidious kemal < config/sql/nonces.sql
|
||||
$ psql invidious kemal < config/sql/annotations.sql
|
||||
$ psql invidious kemal < config/sql/privacy.sql
|
||||
$ psql invidious kemal < config/sql/playlists.sql
|
||||
$ psql invidious kemal < config/sql/playlist_videos.sql
|
||||
|
||||
# Setup Invidious
|
||||
$ shards update && shards install
|
||||
$ crystal build src/invidious.cr --release
|
||||
```
|
||||
|
||||
## Update Invidious
|
||||
|
||||
You can see how to update Invidious [here](https://github.com/omarroth/invidious/wiki/Updating).
|
||||
|
||||
## Usage:
|
||||
|
||||
```bash
|
||||
$ ./invidious -h
|
||||
Usage: invidious [arguments]
|
||||
-b HOST, --bind HOST Host to bind (defaults to 0.0.0.0)
|
||||
-p PORT, --port PORT Port to listen for connections (defaults to 3000)
|
||||
-s, --ssl Enables SSL
|
||||
--ssl-key-file FILE SSL key file
|
||||
--ssl-cert-file FILE SSL certificate file
|
||||
-h, --help Shows this help
|
||||
-c THREADS, --channel-threads=THREADS
|
||||
Number of threads for refreshing channels (default: 1)
|
||||
-f THREADS, --feed-threads=THREADS
|
||||
Number of threads for refreshing feeds (default: 1)
|
||||
-o OUTPUT, --output=OUTPUT Redirect output (default: STDOUT)
|
||||
-v, --version Print version
|
||||
```
|
||||
|
||||
Or for development:
|
||||
|
||||
```bash
|
||||
$ curl -fsSLo- https://raw.githubusercontent.com/samueleaton/sentry/master/install.cr | crystal eval
|
||||
$ ./sentry
|
||||
🤖 Your SentryBot is vigilant. beep-boop...
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
[Documentation](https://github.com/omarroth/invidious/wiki) can be found in the wiki.
|
||||
The full documentation can be accessed online at https://docs.invidious.io/
|
||||
|
||||
## Extensions
|
||||
The documentation's source code is available in this repository:
|
||||
https://github.com/iv-org/documentation
|
||||
|
||||
[Extensions](https://github.com/omarroth/invidious/wiki/Extensions) can be found in the wiki, as well as documentation for integrating it into other projects.
|
||||
### Extensions
|
||||
|
||||
## Made with Invidious
|
||||
We highly recommend the use of [Privacy Redirect](https://github.com/SimonBrazell/privacy-redirect#get),
|
||||
a browser extension that automatically redirects Youtube URLs to any Invidious instance and replaces
|
||||
embedded youtube videos on other websites with invidious.
|
||||
|
||||
- [FreeTube](https://github.com/FreeTubeApp/FreeTube): An Open Source YouTube app for privacy.
|
||||
- [CloudTube](https://cadence.moe/cloudtube/subscriptions): A JS-rich alternate YouTube player
|
||||
- [PeerTubeify](https://gitlab.com/Ealhad/peertubeify): On YouTube, displays a link to the same video on PeerTube, if it exists.
|
||||
- [MusicPiped](https://github.com/deep-gaurav/MusicPiped): A materialistic music player that streams music from YouTube.
|
||||
- [LapisTube](https://github.com/blubbll/lapis-tube): A fancy and advanced (experimental) YouTube frontend. Combined streams & custom YT features.
|
||||
The documentation contains a list of browser extensions that we recommended to use along with Invidious.
|
||||
|
||||
## Contributing
|
||||
You can read more here: https://docs.invidious.io/Extensions.md
|
||||
|
||||
1. Fork it ( https://github.com/omarroth/invidious/fork )
|
||||
2. Create your feature branch (git checkout -b my-new-feature)
|
||||
3. Commit your changes (git commit -am 'Add some feature')
|
||||
4. Push to the branch (git push origin my-new-feature)
|
||||
5. Create a new Pull Request
|
||||
|
||||
## Contact
|
||||
## Contribute
|
||||
|
||||
Feel free to send an email to omarroth@protonmail.com or join our [Matrix Server](https://riot.im/app/#/room/#invidious:matrix.org), or #invidious on Freenode.
|
||||
### Code
|
||||
|
||||
You can also view release notes on the [releases](https://github.com/omarroth/invidious/releases) page or in the CHANGELOG.md included in the repository.
|
||||
1. Fork it ( https://github.com/iv-org/invidious/fork ).
|
||||
1. Create your feature branch (`git checkout -b my-new-feature`).
|
||||
1. Stage your files (`git add .`).
|
||||
1. Commit your changes (`git commit -am 'Add some feature'`).
|
||||
1. Push to the branch (`git push origin my-new-feature`).
|
||||
1. Create a new pull request ( https://github.com/iv-org/invidious/compare ).
|
||||
|
||||
## License
|
||||
### Translations
|
||||
|
||||
[](http://www.gnu.org/licenses/agpl-3.0.en.html)
|
||||
We use [Weblate](https://weblate.org) to manage Invidious translations.
|
||||
|
||||
Invidious is Free Software: You can use, study share and improve it at your
|
||||
will. Specifically you can redistribute and/or modify it under the terms of the
|
||||
[GNU Affero General Public License](https://www.gnu.org/licenses/agpl.html) as
|
||||
published by the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
You can suggest new translations and/or correction here: https://hosted.weblate.org/engage/invidious/.
|
||||
|
||||
Creating an account is not required, but recommended, especially if you want to contribute regularly.
|
||||
Weblate also allows you to log-in with major SSO providers like Github, Gitlab, BitBucket, Google, ...
|
||||
|
||||
|
||||
## Projects using Invidious
|
||||
|
||||
- [FreeTube](https://github.com/FreeTubeApp/FreeTube): A libre software YouTube app for privacy.
|
||||
- [CloudTube](https://sr.ht/~cadence/tube/): A JavaScript-rich alternate YouTube player.
|
||||
- [PeerTubeify](https://gitlab.com/Cha_deL/peertubeify): On YouTube, displays a link to the same video on PeerTube, if it exists.
|
||||
- [MusicPiped](https://github.com/deep-gaurav/MusicPiped): A material design music player that streams music from YouTube.
|
||||
- [HoloPlay](https://github.com/stephane-r/HoloPlay): Funny Android application connecting on Invidious API's with search, playlists and favorites.
|
||||
|
||||
|
||||
## Liability
|
||||
|
||||
We take no responsibility for the use of our tool, or external instances
|
||||
provided by third parties. We strongly recommend you abide by the valid
|
||||
official regulations in your country. Furthermore, we refuse liability
|
||||
for any inappropriate use of Invidious, such as illegal downloading.
|
||||
This tool is provided to you in the spirit of free, open software.
|
||||
|
||||
You may view the LICENSE in which this software is provided to you [here](./LICENSE).
|
||||
|
||||
> 16. Limitation of Liability.
|
||||
>
|
||||
> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
1
TRANSLATION
Normal file
1
TRANSLATION
Normal file
@@ -0,0 +1 @@
|
||||
https://hosted.weblate.org/projects/invidious/
|
||||
@@ -1,37 +0,0 @@
|
||||
a:hover,
|
||||
a:active {
|
||||
color: rgb(0, 182, 240);
|
||||
}
|
||||
|
||||
a {
|
||||
color: #a0a0a0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.pure-form legend {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.pure-menu-heading {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
|
||||
.pure-form input[type="file"] {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.navbar > .searchbar input {
|
||||
background-color: inherit;
|
||||
color: inherit;
|
||||
}
|
||||
@@ -5,6 +5,12 @@ body {
|
||||
Arial, sans-serif;
|
||||
}
|
||||
|
||||
#contents {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.deleted {
|
||||
background-color: rgb(255, 0, 0, 0.5);
|
||||
}
|
||||
@@ -13,6 +19,7 @@ body {
|
||||
font-size: 1.17em;
|
||||
font-weight: bold;
|
||||
vertical-align: middle;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.channel-profile > img {
|
||||
@@ -20,7 +27,7 @@ body {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.channel-owner {
|
||||
body a.channel-owner {
|
||||
background-color: #008bec;
|
||||
color: #fff;
|
||||
border-radius: 9px;
|
||||
@@ -60,6 +67,22 @@ body {
|
||||
color: rgb(255, 0, 0);
|
||||
}
|
||||
|
||||
.feed-menu {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.feed-menu-item {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 640px) {
|
||||
.feed-menu-item {
|
||||
flex: 0 0 40%;
|
||||
}
|
||||
}
|
||||
|
||||
.h-box {
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
@@ -85,15 +108,19 @@ div {
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
body a.pure-button {
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
button.pure-button-primary,
|
||||
a.pure-button-primary,
|
||||
body a.pure-button-primary,
|
||||
.channel-owner:hover {
|
||||
background-color: #a0a0a0;
|
||||
color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
|
||||
button.pure-button-primary:hover,
|
||||
a.pure-button-primary:hover {
|
||||
body a.pure-button-primary:hover {
|
||||
background-color: rgba(0, 182, 240, 1);
|
||||
color: #fff;
|
||||
}
|
||||
@@ -152,7 +179,7 @@ img.thumbnail {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.navbar > .searchbar {
|
||||
.searchbar {
|
||||
flex-grow: 2; /* take double the space of the other items */
|
||||
}
|
||||
|
||||
@@ -165,20 +192,24 @@ img.thumbnail {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.navbar > .searchbar .pure-form input[type="search"] {
|
||||
margin-bottom: 1px;
|
||||
.searchbar .pure-form fieldset { padding: 0; }
|
||||
|
||||
border-top: 0;
|
||||
border-left: 0;
|
||||
border-right: 0;
|
||||
border-bottom: 1px solid #ccc;
|
||||
border-radius: 0;
|
||||
.searchbar input[type="search"] {
|
||||
width: 100%;
|
||||
margin: 1px;
|
||||
|
||||
padding: initial 0;
|
||||
border: 1px solid;
|
||||
border-color: #0000 #0000 #CCC #0000;
|
||||
border-radius: 0;
|
||||
|
||||
box-shadow: none;
|
||||
box-shadow: none;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
-webkit-appearance: none;
|
||||
.searchbar input[type="search"]:focus {
|
||||
margin: 0 0 0.5px 0;
|
||||
border: 2px solid;
|
||||
border-color: #0000 #0000 #FED #0000;
|
||||
}
|
||||
|
||||
/* https://stackoverflow.com/a/55170420 */
|
||||
@@ -190,16 +221,6 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
background-size: 14px;
|
||||
}
|
||||
|
||||
.navbar > .searchbar .pure-form fieldset {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* attract focus to the searchbar by adding a subtle transition */
|
||||
.navbar > .searchbar .pure-form input[type="search"]:focus {
|
||||
margin-bottom: 0px;
|
||||
border-bottom: 2px solid #aaa;
|
||||
}
|
||||
|
||||
.user-field {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
@@ -256,21 +277,43 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Video "cards" (results/playlist/channel videos)
|
||||
*/
|
||||
|
||||
.video-card-row { margin: 15px 0; }
|
||||
|
||||
.flexible { display: flex; }
|
||||
.flex-left { flex: 1 1 100%; flex-wrap: wrap; }
|
||||
.flex-right { flex: 1 0 max-content; flex-wrap: nowrap; }
|
||||
|
||||
p.channel-name { margin: 0; }
|
||||
p.video-data { margin: 0; font-weight: bold; font-size: 80%; }
|
||||
|
||||
|
||||
/*
|
||||
* Footer
|
||||
*/
|
||||
|
||||
.footer {
|
||||
color: #666666;
|
||||
margin: 2em 0;
|
||||
footer {
|
||||
color: #919191;
|
||||
margin-top: auto;
|
||||
padding: 1.5em 0;
|
||||
text-align: center;
|
||||
max-height: 30vh;
|
||||
}
|
||||
|
||||
.footer a {
|
||||
color: inherit;
|
||||
footer a {
|
||||
color: #919191 !important;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
footer span {
|
||||
margin: 4px 0;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* keyframes */
|
||||
|
||||
@keyframes spin {
|
||||
@@ -282,190 +325,224 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
}
|
||||
}
|
||||
|
||||
/* Control Bar */
|
||||
@media screen and (max-width: 640px) {
|
||||
.video-js .vjs-control-bar,
|
||||
.vjs-menu-button-popup .vjs-menu .vjs-menu-content {
|
||||
overflow-x: scroll;
|
||||
}
|
||||
}
|
||||
|
||||
ul.vjs-menu-content::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.vjs-user-inactive {
|
||||
cursor: none;
|
||||
}
|
||||
|
||||
.video-js .vjs-text-track-display > div > div > div {
|
||||
background-color: rgba(0, 0, 0, 0.75) !important;
|
||||
border-radius: 9px !important;
|
||||
padding: 5px !important;
|
||||
}
|
||||
|
||||
.vjs-play-control,
|
||||
.vjs-volume-panel,
|
||||
.vjs-current-time,
|
||||
.vjs-time-control,
|
||||
.vjs-duration,
|
||||
.vjs-progress-control,
|
||||
.vjs-remaining-time {
|
||||
order: 1;
|
||||
}
|
||||
|
||||
.vjs-captions-button {
|
||||
order: 2;
|
||||
}
|
||||
|
||||
.vjs-quality-selector,
|
||||
.video-js .vjs-http-source-selector {
|
||||
order: 3;
|
||||
}
|
||||
|
||||
.vjs-playback-rate {
|
||||
order: 4;
|
||||
}
|
||||
|
||||
.vjs-share-control {
|
||||
order: 5;
|
||||
}
|
||||
|
||||
.vjs-fullscreen-control {
|
||||
order: 6;
|
||||
}
|
||||
|
||||
.vjs-playback-rate > .vjs-menu {
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.vjs-control-bar {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
scrollbar-width: none;
|
||||
}
|
||||
|
||||
.vjs-control-bar::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.video-js .vjs-icon-cog {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.video-js .vjs-control-bar,
|
||||
.vjs-menu-button-popup .vjs-menu .vjs-menu-content {
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
}
|
||||
|
||||
.vjs-menu li.vjs-menu-item:focus,
|
||||
.vjs-menu li.vjs-menu-item:hover {
|
||||
background-color: rgba(255, 255, 255, 0.75);
|
||||
color: rgba(49, 49, 51, 0.75);
|
||||
}
|
||||
|
||||
.vjs-menu li.vjs-selected,
|
||||
.vjs-menu li.vjs-selected:focus,
|
||||
.vjs-menu li.vjs-selected:hover {
|
||||
background-color: rgba(0, 182, 240, 0.75);
|
||||
}
|
||||
|
||||
/* Progress Bar */
|
||||
.video-js .vjs-slider {
|
||||
background-color: rgba(15, 15, 15, 0.5);
|
||||
}
|
||||
|
||||
fieldset > select,
|
||||
span > select {
|
||||
color: rgba(49, 49, 51, 1);
|
||||
}
|
||||
|
||||
.video-js .vjs-load-progress,
|
||||
.video-js .vjs-load-progress div {
|
||||
background: rgba(87, 87, 88, 1);
|
||||
}
|
||||
|
||||
.video-js .vjs-slider:hover,
|
||||
.video-js button:hover {
|
||||
color: rgba(0, 182, 240, 1);
|
||||
}
|
||||
|
||||
.video-js .vjs-play-progress {
|
||||
background-color: rgba(0, 182, 240, 1);
|
||||
}
|
||||
|
||||
/* Overlay */
|
||||
.video-js .vjs-overlay {
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
color: rgba(255, 255, 255, 1);
|
||||
}
|
||||
|
||||
/* ProgressBar marker */
|
||||
.vjs-marker {
|
||||
background-color: rgba(255, 255, 255, 1);
|
||||
z-index: 0;
|
||||
}
|
||||
|
||||
/* Big "Play" Button */
|
||||
.video-js .vjs-big-play-button {
|
||||
background-color: rgba(35, 35, 35, 0.5);
|
||||
}
|
||||
|
||||
.video-js:hover .vjs-big-play-button {
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
}
|
||||
|
||||
.video-js .vjs-current-time,
|
||||
.video-js .vjs-time-divider,
|
||||
.video-js .vjs-duration {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.video-js .vjs-time-divider {
|
||||
min-width: 0px;
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
.video-js .vjs-poster {
|
||||
background-size: cover;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.player-dimensions.vjs-fluid {
|
||||
padding-top: 82vh;
|
||||
}
|
||||
|
||||
video.video-js {
|
||||
position: absolute;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#player-container {
|
||||
position: relative;
|
||||
padding-bottom: 82vh;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
.pure-control-group label {
|
||||
word-wrap: normal;
|
||||
}
|
||||
|
||||
.video-js.player-style-invidious {
|
||||
/* This is already the default */
|
||||
/*
|
||||
* Light theme
|
||||
*/
|
||||
|
||||
.light-theme a:hover,
|
||||
.light-theme a:active,
|
||||
.light-theme summary:hover {
|
||||
color: #075A9E !important;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-control-bar {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
.light-theme a.pure-button-primary:hover {
|
||||
color: #fff !important;
|
||||
}
|
||||
.video-js.player-style-youtube .vjs-big-play-button {
|
||||
/*
|
||||
Styles copied from video-js.min.css, definition of
|
||||
.vjs-big-play-centered .vjs-big-play-button
|
||||
*/
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
margin-top: -0.81666em;
|
||||
margin-left: -1.5em;
|
||||
|
||||
.light-theme a {
|
||||
color: #335d7a;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* All links that do not fit with the default color goes here */
|
||||
.light-theme a:not([data-id]) > .icon,
|
||||
.light-theme .pure-u-lg-1-5 > .h-box > a[href^="/watch?"],
|
||||
.light-theme .playlist-restricted > ol > li > a {
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
.light-theme .pure-menu-heading {
|
||||
color: #565d64;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: light) {
|
||||
.no-theme a:hover,
|
||||
.no-theme a:active,
|
||||
.no-theme summary:hover {
|
||||
color: #075A9E !important;
|
||||
}
|
||||
|
||||
.no-theme a.pure-button-primary:hover {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.no-theme a {
|
||||
color: #335d7a;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* All links that do not fit with the default color goes here */
|
||||
.no-theme a:not([data-id]) > .icon,
|
||||
.no-theme .pure-u-lg-1-5 > .h-box > a[href^="/watch?"],
|
||||
.no-theme .playlist-restricted > ol > li > a {
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
.light-theme .pure-menu-heading {
|
||||
color: #565d64;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Dark theme
|
||||
*/
|
||||
|
||||
.dark-theme a:hover,
|
||||
.dark-theme a:active,
|
||||
.dark-theme summary:hover {
|
||||
color: rgb(0, 182, 240);
|
||||
}
|
||||
|
||||
.dark-theme a {
|
||||
color: #a0a0a0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
body.dark-theme {
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.dark-theme .pure-form legend {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.dark-theme .pure-menu-heading {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.dark-theme input,
|
||||
.dark-theme select,
|
||||
.dark-theme textarea {
|
||||
color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
|
||||
.dark-theme .pure-form input[type="file"] {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.dark-theme .searchbar input {
|
||||
background-color: inherit;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.no-theme a:hover,
|
||||
.no-theme a:active {
|
||||
color: rgb(0, 182, 240);
|
||||
}
|
||||
|
||||
.no-theme a {
|
||||
color: #a0a0a0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
body.no-theme {
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.no-theme .pure-form legend {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.no-theme .pure-menu-heading {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.no-theme input,
|
||||
.no-theme select,
|
||||
.no-theme textarea {
|
||||
color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
|
||||
.no-theme .pure-form input[type="file"] {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.no-theme .searchbar input {
|
||||
background-color: inherit;
|
||||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
#filters {
|
||||
display: inline;
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
#filters > div {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
#filters > summary {
|
||||
display: block;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
#filters > summary::before {
|
||||
content: "[ + ]";
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
#filters[open] > summary::before {
|
||||
content: "[ - ]";
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
/*With commit d9528f5 all contents of the page is now within a flexbox. However,
|
||||
the hr element is rendered improperly within one.
|
||||
See https://stackoverflow.com/a/34372979 for more info */
|
||||
hr {
|
||||
margin: 10px 0 10px 0;
|
||||
}
|
||||
|
||||
/* Description Expansion Styling*/
|
||||
#descexpansionbutton {
|
||||
display: none
|
||||
}
|
||||
|
||||
#descexpansionbutton ~ div {
|
||||
overflow: hidden;
|
||||
height: 8.3em;
|
||||
}
|
||||
|
||||
#descexpansionbutton:checked ~ div {
|
||||
overflow: unset;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#descexpansionbutton ~ label {
|
||||
order: 1;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
/* Bidi (bidirectional text) support */
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
p,
|
||||
#descriptionWrapper,
|
||||
#description-box {
|
||||
unicode-bidi: plaintext;
|
||||
text-align: start;
|
||||
}
|
||||
|
||||
#descriptionWrapper {
|
||||
max-width: 600px;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
/* Center the "invidious" logo on the search page */
|
||||
#logo > h1 { text-align: center; }
|
||||
|
||||
@@ -8,3 +8,19 @@
|
||||
height: auto;
|
||||
z-index: -100;
|
||||
}
|
||||
|
||||
.watch-on-invidious {
|
||||
font-size: 1.3em !important;
|
||||
font-weight: bold;
|
||||
white-space: nowrap;
|
||||
margin: 0 1em 0 1em !important;
|
||||
order: 3;
|
||||
}
|
||||
|
||||
.watch-on-invidious > a {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.watch-on-invidious > a:hover {
|
||||
color: rgba(0, 182, 240, 1);;
|
||||
}
|
||||
|
||||
16
assets/css/empty.css
Normal file
16
assets/css/empty.css
Normal file
@@ -0,0 +1,16 @@
|
||||
#search-widget {
|
||||
text-align: center;
|
||||
margin: 20vh 0 50px 0;
|
||||
}
|
||||
|
||||
#logo > h1 {
|
||||
font-size: 3.5em;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 1500px) and (max-height: 1000px) {
|
||||
#logo > h1 {
|
||||
font-size: 10vmin;
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
a:hover,
|
||||
a:active {
|
||||
color: #167ac6 !important;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #61809b;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* All links that do not fit with the default color goes here */
|
||||
a:not([data-id]) > .icon,
|
||||
.pure-u-lg-1-5 > .h-box > a[href^="/watch?"],
|
||||
.playlist-restricted > ol > li > a {
|
||||
color: #303030;
|
||||
}
|
||||
254
assets/css/player.css
Normal file
254
assets/css/player.css
Normal file
@@ -0,0 +1,254 @@
|
||||
/* Youtube player style */
|
||||
.video-js.player-style-youtube .vjs-progress-control {
|
||||
height: 0;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-progress-control .vjs-progress-holder, .video-js.player-style-youtube .vjs-progress-control {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-control-bar {
|
||||
background: linear-gradient(rgba(0,0,0,0.1), rgba(0, 0, 0,0.5));
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-slider {
|
||||
background-color: rgba(255,255,255,0.2);
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-load-progress > div {
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-play-progress {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-progress-control:hover .vjs-progress-holder {
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-control-bar > .vjs-spacer {
|
||||
flex: 1;
|
||||
order: 2;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-play-progress .vjs-time-tooltip {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-play-progress::before {
|
||||
color: red;
|
||||
font-size: 0.85em;
|
||||
display: none;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-progress-holder:hover .vjs-play-progress::before {
|
||||
display: unset;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-control-bar {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-big-play-button {
|
||||
/*
|
||||
Styles copied from video-js.min.css, definition of
|
||||
.vjs-big-play-centered .vjs-big-play-button
|
||||
*/
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
margin-top: -0.81666em;
|
||||
margin-left: -1.5em;
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-menu-button-popup .vjs-menu {
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
|
||||
ul.vjs-menu-content::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.vjs-user-inactive {
|
||||
cursor: none;
|
||||
}
|
||||
|
||||
.video-js .vjs-text-track-display > div > div > div {
|
||||
background-color: rgba(0, 0, 0, 0.75) !important;
|
||||
border-radius: 9px !important;
|
||||
padding: 5px !important;
|
||||
}
|
||||
|
||||
.vjs-play-control,
|
||||
.vjs-volume-panel,
|
||||
.vjs-current-time,
|
||||
.vjs-time-control,
|
||||
.vjs-duration,
|
||||
.vjs-progress-control,
|
||||
.vjs-remaining-time {
|
||||
order: 1;
|
||||
}
|
||||
|
||||
.vjs-captions-button {
|
||||
order: 2;
|
||||
}
|
||||
|
||||
.vjs-quality-selector,
|
||||
.video-js .vjs-http-source-selector {
|
||||
order: 3;
|
||||
}
|
||||
|
||||
.vjs-playback-rate {
|
||||
order: 4;
|
||||
}
|
||||
|
||||
.vjs-share-control {
|
||||
order: 5;
|
||||
}
|
||||
|
||||
.vjs-fullscreen-control {
|
||||
order: 6;
|
||||
}
|
||||
|
||||
.vjs-playback-rate > .vjs-menu {
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.vjs-control-bar {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
scrollbar-width: none;
|
||||
}
|
||||
|
||||
.vjs-control-bar::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.video-js .vjs-icon-cog {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.video-js .vjs-control-bar,
|
||||
.vjs-menu-button-popup .vjs-menu .vjs-menu-content {
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
}
|
||||
|
||||
.vjs-menu li.vjs-menu-item:focus,
|
||||
.vjs-menu li.vjs-menu-item:hover {
|
||||
background-color: rgba(255, 255, 255, 0.75);
|
||||
color: rgba(49, 49, 51, 0.75);
|
||||
}
|
||||
|
||||
.vjs-menu li.vjs-selected,
|
||||
.vjs-menu li.vjs-selected:focus,
|
||||
.vjs-menu li.vjs-selected:hover {
|
||||
background-color: rgba(0, 182, 240, 0.75);
|
||||
}
|
||||
|
||||
/* Progress Bar */
|
||||
.video-js .vjs-slider {
|
||||
background-color: rgba(15, 15, 15, 0.5);
|
||||
}
|
||||
|
||||
.video-js .vjs-load-progress,
|
||||
.video-js .vjs-load-progress div {
|
||||
background: rgba(87, 87, 88, 1);
|
||||
}
|
||||
|
||||
.video-js .vjs-slider:hover,
|
||||
.video-js button:hover {
|
||||
color: rgba(0, 182, 240, 1);
|
||||
}
|
||||
|
||||
.video-js.player-style-invidious .vjs-play-progress {
|
||||
background-color: rgba(0, 182, 240, 1);
|
||||
}
|
||||
vjs-menu-content
|
||||
/* Overlay */
|
||||
.video-js .vjs-overlay {
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
color: rgba(255, 255, 255, 1);
|
||||
}
|
||||
|
||||
/* ProgressBar marker */
|
||||
.vjs-marker {
|
||||
background-color: rgba(255, 255, 255, 1);
|
||||
z-index: 0;
|
||||
}
|
||||
|
||||
/* Big "Play" Button */
|
||||
.video-js .vjs-big-play-button {
|
||||
background-color: rgba(35, 35, 35, 0.5);
|
||||
}
|
||||
|
||||
.video-js:hover .vjs-big-play-button {
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
}
|
||||
|
||||
.video-js .vjs-current-time,
|
||||
.video-js .vjs-time-divider,
|
||||
.video-js .vjs-duration {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.video-js .vjs-time-divider {
|
||||
min-width: 0px;
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
.video-js .vjs-poster {
|
||||
background-size: cover;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.player-dimensions.vjs-fluid {
|
||||
padding-top: 82vh;
|
||||
}
|
||||
|
||||
video.video-js {
|
||||
position: absolute;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#player-container {
|
||||
position: relative;
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
margin-left: 1em;
|
||||
margin-right: 1em;
|
||||
padding-bottom: 82vh;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
.mobile-operations-bar {
|
||||
display: flex;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 1px !important;
|
||||
left: initial !important;
|
||||
width: initial !important;
|
||||
}
|
||||
|
||||
.mobile-operations-bar ul {
|
||||
position: absolute !important;
|
||||
bottom: unset !important;
|
||||
top: 1.5em;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 700px) {
|
||||
.video-js .vjs-share {
|
||||
justify-content: unset;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 650px) {
|
||||
.vjs-modal-dialog-content {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
}
|
||||
1
assets/css/video-js.min.css
vendored
1
assets/css/video-js.min.css
vendored
File diff suppressed because one or more lines are too long
@@ -1,7 +0,0 @@
|
||||
/**
|
||||
* videojs-http-source-selector
|
||||
* @version 1.1.6
|
||||
* @copyright 2019 Justin Fujita <Justin@pivotshare.com>
|
||||
* @license MIT
|
||||
*/
|
||||
.video-js.vjs-http-source-selector{display:block}
|
||||
@@ -1 +0,0 @@
|
||||
.video-js .vjs-overlay{color:#fff;position:absolute;text-align:center}.video-js .vjs-overlay-no-background{max-width:33%}.video-js .vjs-overlay-background{background-color:#646464;background-color:rgba(255,255,255,0.4);border-radius:3px;padding:10px;width:33%}.video-js .vjs-overlay-top-left{top:5px;left:5px}.video-js .vjs-overlay-top{left:50%;margin-left:-16.5%;top:5px}.video-js .vjs-overlay-top-right{right:5px;top:5px}.video-js .vjs-overlay-right{right:5px;top:50%;transform:translateY(-50%)}.video-js .vjs-overlay-bottom-right{bottom:3.5em;right:5px}.video-js .vjs-overlay-bottom{bottom:3.5em;left:50%;margin-left:-16.5%}.video-js .vjs-overlay-bottom-left{bottom:3.5em;left:5px}.video-js .vjs-overlay-left{left:5px;top:50%;transform:translateY(-50%)}.video-js .vjs-overlay-center{left:50%;margin-left:-16.5%;top:50%;transform:translateY(-50%)}.video-js .vjs-no-flex .vjs-overlay-left,.video-js .vjs-no-flex .vjs-overlay-center,.video-js .vjs-no-flex .vjs-overlay-right{margin-top:-15px}
|
||||
@@ -1,7 +0,0 @@
|
||||
/**
|
||||
* videojs-share
|
||||
* @version 3.2.1
|
||||
* @copyright 2019 Mikhail Khazov <mkhazov.work@gmail.com>
|
||||
* @license MIT
|
||||
*/
|
||||
.video-js.vjs-videojs-share_open .vjs-modal-dialog .vjs-modal-dialog-content{display:flex;align-items:center;padding:0;background-image:linear-gradient(to bottom, rgba(0,0,0,0.77), rgba(0,0,0,0.75))}.video-js.vjs-videojs-share_open .vjs-modal-dialog .vjs-close-button{position:absolute;right:0;top:5px;width:30px;height:30px;color:#fff;cursor:pointer;opacity:0.9;transition:opacity 0.25s ease-out}.video-js.vjs-videojs-share_open .vjs-modal-dialog .vjs-close-button:before{content:'×';font-size:20px;line-height:15px}.video-js.vjs-videojs-share_open .vjs-modal-dialog .vjs-close-button:hover{opacity:1}.video-js .vjs-share{display:flex;flex-direction:column;justify-content:space-around;align-items:center;width:100%;height:100%;max-height:400px}.video-js .vjs-share__top,.video-js .vjs-share__middle,.video-js .vjs-share__bottom{display:flex}.video-js .vjs-share__top,.video-js .vjs-share__middle{flex-direction:column;justify-content:space-between}.video-js .vjs-share__middle{padding:0 25px}.video-js .vjs-share__title{align-self:center;font-size:22px;color:#fff}.video-js .vjs-share__subtitle{width:100%;margin:0 auto 12px;font-size:16px;color:#fff;opacity:0.7}.video-js .vjs-share__short-link-wrapper{position:relative;display:block;width:100%;height:40px;margin:0 auto;margin-bottom:15px;border:0;color:rgba(255,255,255,0.65);background-color:#363636;outline:none;overflow:hidden;flex-shrink:0}.video-js .vjs-share__short-link{display:block;width:100%;height:100%;padding:0 40px 0 15px;border:0;color:rgba(255,255,255,0.65);background-color:#363636;outline:none}.video-js .vjs-share__btn{position:absolute;right:0;bottom:0;height:40px;width:40px;display:flex;align-items:center;padding:0 11px;border:0;color:#fff;background-color:#2e2e2e;background-size:18px 19px;background-position:center;background-repeat:no-repeat;cursor:pointer;outline:none;transition:width 0.3s ease-out, padding 0.3s ease-out}.video-js .vjs-share__btn svg{flex-shrink:0}.video-js .vjs-share__btn span{position:relative;padding-left:10px;opacity:0;transition:opacity 0.3s ease-out}.video-js .vjs-share__btn:hover{justify-content:center;width:100%;padding:0 40px;background-image:none}.video-js .vjs-share__btn:hover span{opacity:1}.video-js .vjs-share__socials{display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;transition:width 0.3s ease-out, height 0.3s ease-out}.video-js .vjs-share__social{display:flex;justify-content:center;align-items:center;flex-shrink:0;width:32px;height:32px;margin-right:6px;margin-bottom:6px;cursor:pointer;font-size:8px;transition:transform 0.3s ease-out, filter 0.2s ease-out;border:none;outline:none}.video-js .vjs-share__social:hover{filter:brightness(115%)}.video-js .vjs-share__social svg{overflow:visible;max-height:24px}.video-js .vjs-share__social_vk{background-color:#5d7294}.video-js .vjs-share__social_ok{background-color:#ed7c20}.video-js .vjs-share__social_mail,.video-js .vjs-share__social_email{background-color:#134785}.video-js .vjs-share__social_tw{background-color:#76aaeb}.video-js .vjs-share__social_reddit{background-color:#ff4500}.video-js .vjs-share__social_fbFeed{background-color:#475995}.video-js .vjs-share__social_messenger{background-color:#0084ff}.video-js .vjs-share__social_gp{background-color:#d53f35}.video-js .vjs-share__social_linkedin{background-color:#0077b5}.video-js .vjs-share__social_viber{background-color:#766db5}.video-js .vjs-share__social_telegram{background-color:#4bb0e2}.video-js .vjs-share__social_whatsapp{background-color:#78c870}.video-js .vjs-share__bottom{justify-content:center}@media (max-height: 220px){.video-js .vjs-share .hidden-xs{display:none}}@media (max-height: 350px){.video-js .vjs-share .hidden-sm{display:none}}@media (min-height: 400px){.video-js .vjs-share__title{margin-bottom:15px}.video-js .vjs-share__short-link-wrapper{margin-bottom:30px}}@media (min-width: 320px){.video-js.vjs-videojs-share_open .vjs-modal-dialog .vjs-close-button{right:5px;top:10px}}@media (min-width: 660px){.video-js.vjs-videojs-share_open .vjs-modal-dialog .vjs-close-button{right:20px;top:20px}.video-js .vjs-share__social{width:40px;height:40px}}
|
||||
@@ -1,7 +0,0 @@
|
||||
/**
|
||||
* videojs-vtt-thumbnails
|
||||
* @version 0.0.13
|
||||
* @copyright 2019 Chris Boustead <chris@forgemotion.com>
|
||||
* @license MIT
|
||||
*/
|
||||
.video-js.vjs-vtt-thumbnails{display:block}.video-js .vjs-vtt-thumbnail-display{position:absolute;bottom:85%;pointer-events:none;box-shadow:0 0 7px rgba(0,0,0,0.6)}
|
||||
1
assets/css/videojs.markers.min.css
vendored
1
assets/css/videojs.markers.min.css
vendored
@@ -1 +0,0 @@
|
||||
.vjs-marker{position:absolute;left:0;bottom:0;opacity:1;height:100%;transition:opacity .2s ease;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;z-index:100}.vjs-marker:hover{cursor:pointer;-webkit-transform:scale(1.3,1.3);-moz-transform:scale(1.3,1.3);-o-transform:scale(1.3,1.3);-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.vjs-tip{visibility:hidden;display:block;opacity:.8;padding:5px;font-size:10px;position:absolute;bottom:14px;z-index:100000}.vjs-tip .vjs-tip-arrow{background:url(data:image/gif;base64,R0lGODlhCQAJAIABAAAAAAAAACH5BAEAAAEALAAAAAAJAAkAAAIRjAOnwIrcDJxvwkplPtchVQAAOw==) no-repeat top left;bottom:0;left:50%;margin-left:-4px;background-position:bottom left;position:absolute;width:9px;height:5px}.vjs-tip .vjs-tip-inner{border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;padding:5px 8px 4px 8px;background-color:#000;color:#fff;max-width:200px;text-align:center}.vjs-break-overlay{visibility:hidden;position:absolute;z-index:100000;top:0}.vjs-break-overlay .vjs-break-overlay-text{padding:9px;text-align:center}
|
||||
2
assets/invidious-colored-vector.svg
Normal file
2
assets/invidious-colored-vector.svg
Normal file
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="512pt" height="512pt" version="1.0" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><g><rect x="-.0072516" y=".00056299" width="512.01" height="512.02" fill="#575757" stroke-width=".063019"/><path d="m247.17 455.95c-19.792-0.78921-38.719-4.2564-57.154-10.47-60.968-20.55-108.68-68.579-127-127.86-7.8955-25.538-10.062-53.943-6.2586-82.067 3.7105-27.439 13.603-53.515 29.342-77.344 12.069-18.273 29.138-36.277 47.228-49.816 36.891-27.61 85.944-42.49 132.38-40.157 25.88 1.3001 49.939 6.765 73.106 16.606 8.1948 3.481 20.024 9.6845 27.696 14.525 14.15 8.9272 22.367 15.498 34.482 27.573 13.254 13.211 22.128 24.276 30.398 37.906 7.2081 11.879 14.099 27.15 18.229 40.397 1.5996 5.1305 4.442 16.456 5.6852 22.653 2.3908 11.917 2.6998 15.722 2.7049 33.312 6e-3 18.515-0.46256 24.413-2.9166 36.758-9.3274 46.92-35.58 88.167-74.872 117.64-22.814 17.112-50.027 29.535-78.547 35.858-16.714 3.7059-35.421 5.2453-54.498 4.4846zm-35.1-78.786c-5.3e-4 -0.52647-0.0741-2.0564-0.16311-3.3999l-0.16178-2.4427-4.7018-0.26271c-4.0477-0.22614-4.7968-0.33363-5.3847-0.77253-2.0235-1.5108-1.4679-6.0695 2.2494-18.457 0.8637-2.8781 3.3371-11.321 5.4966-18.762 2.1594-7.4409 5.2002-17.836 6.7573-23.101 1.5571-5.2648 4.1948-14.282 5.8615-20.038 1.6667-5.7562 3.6145-12.4 4.3284-14.764 0.71391-2.3641 3.2583-11.037 5.6542-19.272 4.9475-17.007 8.1626-27.723 8.9438-29.811 0.51852-1.3858 0.54785-1.4139 0.99761-0.95317 0.25486 0.26106 3.8462 7.3667 7.9807 15.79 4.1345 8.4236 13.089 26.573 19.898 40.331 17.188 34.73 37.849 76.578 43.261 87.622l4.5356 9.257 11.359-0.0895c6.2475-0.0492 11.615-0.19623 11.929-0.32672 0.5614-0.23385 0.54167-0.2959-1.3723-4.3176-1.068-2.2442-8.1436-16.601-15.724-31.904-48.687-98.293-61.22-123.86-67.889-138.48-4.7022-10.309-6.9031-14.807-7.7139-15.762-0.82931-0.97742-1.6319-1.0638-2.3704-0.25525-1.1993 1.313-4.1046 10.063-9.3869 28.27-2.0569 7.0899-6.5372 22.425-9.9562 34.077-6.6396 22.629-8.5182 29.037-14.33 48.883-2.0354 6.9495-4.7977 16.369-6.1385 20.931-1.3408 4.5628-4.033 13.81-5.9826 20.549-4.304 14.877-6.136 20.889-7.3886 24.25-2.1371 5.7334-2.5723 6.3292-4.9216 6.7384-0.88855 0.15472-2.4102 0.28196-3.3815 0.28275-2.1993 3e-3 -3.5494 0.36339-4.0558 1.0863-0.42176 0.60215-0.56421 4.8802-0.18251 5.4812 0.20573 0.32388 2.4672 0.37414 23.34 0.51873l8.6151 0.0597-7e-4 -0.95723zm36.751-205.59c4.3282-0.92335 8.4607-4.943 9.4374-9.1796 0.36569-1.5862 0.32543-4.9758-0.077-6.4799-0.85108-3.1813-3.2688-6.291-6.039-7.7675-3.8111-2.0313-9.456-2.0295-13.272 5e-3 -5.9828 3.1888-8.1556 11.089-4.7878 17.408 2.6995 5.0648 8.3611 7.3754 14.738 6.015z" fill="#f0f0f0" stroke-width=".025526"/></g><g transform="matrix(.069892 0 0 -.069892 44.236 474.48)"><path d="m2787 4669c-124-65-123-255 3-319 86-44 196-16 247 62 58 87 26 211-67 258-51 26-132 26-183-1z" fill="#00b6f0" stroke="#00b6f0" stroke-width="4.25"/><path d="m2882 4108c-12-16-63-166-102-303-30-104-101-350-165-565-20-69-58-199-85-290-26-91-64-221-85-290-20-69-58-199-85-290-26-91-64-221-85-290-20-69-57-195-81-280-59-207-93-299-115-310-10-6-35-10-56-10-73 0-84-8-81-54l3-41 228-3 228-2-3 47-3 48-73 3c-66 3-74 5-84 27-13 28 0 104 37 225 13 41 47 156 75 255s66 230 85 290c18 61 56 191 85 290 28 99 66 230 85 290 18 61 56 191 85 290 85 297 123 419 131 429 5 5 17-11 28-35 10-24 192-393 403-819s447-902 523-1058l139-282h168c92 0 168 4 168 8s-75 158-166 342c-588 1183-969 1958-1033 2100-29 63-69 151-89 195-44 95-58 110-80 83z" fill="#575757"/></g></svg>
|
||||
|
After Width: | Height: | Size: 3.4 KiB |
@@ -31,6 +31,11 @@ function get_playlist(plid, retries) {
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/embed/' + xhr.response.nextVideo);
|
||||
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD')) {
|
||||
url.searchParams.set('index', xhr.response.index);
|
||||
}
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
@@ -47,10 +52,6 @@ function get_playlist(plid, retries) {
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD')) {
|
||||
url.searchParams.set('index', xhr.response.index);
|
||||
}
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
// Disable Web Workers. Fixes Video.js CSP violation (created by `new Worker(objURL)`):
|
||||
// Refused to create a worker from 'blob:http://host/id' because it violates the following Content Security Policy directive: "worker-src 'self'".
|
||||
window.Worker = undefined;
|
||||
@@ -22,7 +22,8 @@
|
||||
break;
|
||||
case 'get_youtube_replies':
|
||||
var load_more = e.getAttribute('data-load-more') !== null;
|
||||
get_youtube_replies(e, load_more);
|
||||
var load_replies = e.getAttribute('data-load-replies') !== null;
|
||||
get_youtube_replies(e, load_more, load_replies);
|
||||
break;
|
||||
case 'toggle_parent':
|
||||
toggle_parent(e);
|
||||
@@ -141,4 +142,26 @@
|
||||
var csrf_token = target.parentNode.querySelector('input[name="csrf_token"]').value;
|
||||
xhr.send('csrf_token=' + csrf_token);
|
||||
}
|
||||
|
||||
// Handle keypresses
|
||||
window.addEventListener('keydown', (event) => {
|
||||
// Ignore modifier keys
|
||||
if (event.ctrlKey || event.metaKey) return;
|
||||
|
||||
// Ignore shortcuts if any text input is focused
|
||||
let focused_tag = document.activeElement.tagName.toLowerCase();
|
||||
const allowed = /^(button|checkbox|file|radio|submit)$/;
|
||||
|
||||
if (focused_tag === "textarea") return;
|
||||
if (focused_tag === "input") {
|
||||
let focused_type = document.activeElement.type.toLowerCase();
|
||||
if (!focused_type.match(allowed)) return;
|
||||
}
|
||||
|
||||
// Focus search bar on '/'
|
||||
if (event.key == "/") {
|
||||
document.getElementById('searchbox').focus();
|
||||
event.preventDefault();
|
||||
}
|
||||
});
|
||||
})();
|
||||
|
||||
@@ -14,11 +14,18 @@ var options = {
|
||||
'durationDisplay',
|
||||
'progressControl',
|
||||
'remainingTimeDisplay',
|
||||
'Spacer',
|
||||
'captionsButton',
|
||||
'qualitySelector',
|
||||
'playbackRateMenuButton',
|
||||
'fullscreenToggle'
|
||||
]
|
||||
},
|
||||
html5: {
|
||||
preloadTextTracks: false,
|
||||
vhs: {
|
||||
overrideNative: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,41 +35,119 @@ if (player_data.aspect_ratio) {
|
||||
|
||||
var embed_url = new URL(location);
|
||||
embed_url.searchParams.delete('v');
|
||||
short_url = location.origin + '/' + video_data.id + embed_url.search;
|
||||
var short_url = location.origin + '/' + video_data.id + embed_url.search;
|
||||
embed_url = location.origin + '/embed/' + video_data.id + embed_url.search;
|
||||
|
||||
var save_player_pos_key = "save_player_pos";
|
||||
|
||||
videojs.Vhs.xhr.beforeRequest = function(options) {
|
||||
if (options.uri.indexOf('videoplayback') === -1 && options.uri.indexOf('local=true') === -1) {
|
||||
options.uri = options.uri + '?local=true';
|
||||
}
|
||||
return options;
|
||||
};
|
||||
|
||||
var player = videojs('player', options);
|
||||
|
||||
/**
|
||||
* Function for add time argument to url
|
||||
* @param {String} url
|
||||
* @returns urlWithTimeArg
|
||||
*/
|
||||
function addCurrentTimeToURL(url) {
|
||||
var urlUsed = new URL(url);
|
||||
urlUsed.searchParams.delete('start');
|
||||
var currentTime = Math.ceil(player.currentTime());
|
||||
if (currentTime > 0)
|
||||
urlUsed.searchParams.set('t', currentTime);
|
||||
else if (urlUsed.searchParams.has('t'))
|
||||
urlUsed.searchParams.delete('t');
|
||||
return urlUsed;
|
||||
}
|
||||
|
||||
var shareOptions = {
|
||||
socials: ['fbFeed', 'tw', 'reddit', 'email'],
|
||||
|
||||
url: short_url,
|
||||
get url() {
|
||||
return addCurrentTimeToURL(short_url);
|
||||
},
|
||||
title: player_data.title,
|
||||
description: player_data.description,
|
||||
image: player_data.thumbnail,
|
||||
embedCode: "<iframe id='ivplayer' width='640' height='360' src='" + embed_url + "' style='border:none;'></iframe>"
|
||||
}
|
||||
get embedCode() {
|
||||
return "<iframe id='ivplayer' width='640' height='360' src='" +
|
||||
addCurrentTimeToURL(embed_url) + "' style='border:none;'></iframe>";
|
||||
}
|
||||
};
|
||||
|
||||
var player = videojs('player', options);
|
||||
const storage = (() => {
|
||||
try { if (localStorage.length !== -1) return localStorage; }
|
||||
catch (e) { console.info('No storage available: ' + e); }
|
||||
|
||||
return undefined;
|
||||
})();
|
||||
|
||||
if (location.pathname.startsWith('/embed/')) {
|
||||
var overlay_content = '<h1><a rel="noopener" target="_blank" href="' + location.origin + '/watch?v=' + video_data.id + '">' + player_data.title + '</a></h1>';
|
||||
player.overlay({
|
||||
overlays: [{
|
||||
start: 'loadstart',
|
||||
content: '<h1><a rel="noopener" target="_blank" href="' + location.origin + '/watch?v=' + video_data.id + '">' + player_data.title + '</a></h1>',
|
||||
end: 'playing',
|
||||
align: 'top'
|
||||
}, {
|
||||
start: 'pause',
|
||||
content: '<h1><a rel="noopener" target="_blank" href="' + location.origin + '/watch?v=' + video_data.id + '">' + player_data.title + '</a></h1>',
|
||||
end: 'playing',
|
||||
align: 'top'
|
||||
}]
|
||||
overlays: [
|
||||
{ start: 'loadstart', content: overlay_content, end: 'playing', align: 'top'},
|
||||
{ start: 'pause', content: overlay_content, end: 'playing', align: 'top'}
|
||||
]
|
||||
});
|
||||
}
|
||||
|
||||
// Detect mobile users and initialize mobileUi for better UX
|
||||
// Detection code taken from https://stackoverflow.com/a/20293441
|
||||
|
||||
function isMobile() {
|
||||
try{ document.createEvent("TouchEvent"); return true; }
|
||||
catch(e){ return false; }
|
||||
}
|
||||
|
||||
if (isMobile()) {
|
||||
player.mobileUi();
|
||||
|
||||
buttons = ["playToggle", "volumePanel", "captionsButton"];
|
||||
|
||||
if (video_data.params.quality !== 'dash') buttons.push("qualitySelector")
|
||||
|
||||
// Create new control bar object for operation buttons
|
||||
const ControlBar = videojs.getComponent("controlBar");
|
||||
let operations_bar = new ControlBar(player, {
|
||||
children: [],
|
||||
playbackRates: [0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0]
|
||||
});
|
||||
buttons.slice(1).forEach(child => operations_bar.addChild(child))
|
||||
|
||||
// Remove operation buttons from primary control bar
|
||||
primary_control_bar = player.getChild("controlBar");
|
||||
buttons.forEach(child => primary_control_bar.removeChild(child));
|
||||
|
||||
operations_bar_element = operations_bar.el();
|
||||
operations_bar_element.className += " mobile-operations-bar"
|
||||
player.addChild(operations_bar)
|
||||
|
||||
// Playback menu doesn't work when it's initialized outside of the primary control bar
|
||||
playback_element = document.getElementsByClassName("vjs-playback-rate")[0]
|
||||
operations_bar_element.append(playback_element)
|
||||
|
||||
// The share and http source selector element can't be fetched till the players ready.
|
||||
player.one("playing", () => {
|
||||
share_element = document.getElementsByClassName("vjs-share-control")[0]
|
||||
operations_bar_element.append(share_element)
|
||||
|
||||
if (video_data.params.quality === 'dash') {
|
||||
http_source_selector = document.getElementsByClassName("vjs-http-source-selector vjs-menu-button")[0]
|
||||
operations_bar_element.append(http_source_selector)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
player.on('error', function (event) {
|
||||
if (player.error().code === 2 || player.error().code === 4) {
|
||||
setInterval(setTimeout(function (event) {
|
||||
console.log('An error occured in the player, reloading...');
|
||||
setTimeout(function (event) {
|
||||
console.log('An error occurred in the player, reloading...');
|
||||
|
||||
var currentTime = player.currentTime();
|
||||
var playbackRate = player.playbackRate();
|
||||
@@ -70,20 +155,27 @@ player.on('error', function (event) {
|
||||
|
||||
player.load();
|
||||
|
||||
if (currentTime > 0.5) {
|
||||
currentTime -= 0.5;
|
||||
}
|
||||
if (currentTime > 0.5) currentTime -= 0.5;
|
||||
|
||||
player.currentTime(currentTime);
|
||||
player.playbackRate(playbackRate);
|
||||
|
||||
if (!paused) {
|
||||
player.play();
|
||||
}
|
||||
}, 5000), 5000);
|
||||
if (!paused) player.play();
|
||||
}, 5000);
|
||||
}
|
||||
});
|
||||
|
||||
// Enable VR video support
|
||||
if (!video_data.params.listen && video_data.vr && video_data.params.vr_mode) {
|
||||
player.crossOrigin("anonymous")
|
||||
switch (video_data.projection_type) {
|
||||
case "EQUIRECTANGULAR":
|
||||
player.vr({projection: "equirectangular"});
|
||||
default: // Should only be "MESH" but we'll use this as a fallback.
|
||||
player.vr({projection: "EAC"});
|
||||
}
|
||||
}
|
||||
|
||||
// Add markers
|
||||
if (video_data.params.video_start > 0 || video_data.params.video_end > 0) {
|
||||
var markers = [{ time: video_data.params.video_start, text: 'Start' }];
|
||||
@@ -96,13 +188,8 @@ if (video_data.params.video_start > 0 || video_data.params.video_end > 0) {
|
||||
|
||||
player.markers({
|
||||
onMarkerReached: function (marker) {
|
||||
if (marker.text === 'End') {
|
||||
if (player.loop()) {
|
||||
player.markers.prev('Start');
|
||||
} else {
|
||||
player.pause();
|
||||
}
|
||||
}
|
||||
if (marker.text === 'End')
|
||||
player.loop() ? player.markers.prev('Start') : player.pause();
|
||||
},
|
||||
markers: markers
|
||||
});
|
||||
@@ -124,6 +211,28 @@ if (video_data.premiere_timestamp && Math.round(new Date() / 1000) < video_data.
|
||||
player.getChild('bigPlayButton').hide();
|
||||
}
|
||||
|
||||
if (video_data.params.save_player_pos) {
|
||||
const url = new URL(location);
|
||||
const hasTimeParam = url.searchParams.has("t");
|
||||
const remeberedTime = get_video_time();
|
||||
let lastUpdated = 0;
|
||||
|
||||
if(!hasTimeParam) set_seconds_after_start(remeberedTime);
|
||||
|
||||
const updateTime = () => {
|
||||
const raw = player.currentTime();
|
||||
const time = Math.floor(raw);
|
||||
|
||||
if(lastUpdated !== time && raw <= video_data.length_seconds - 15) {
|
||||
save_video_time(time);
|
||||
lastUpdated = time;
|
||||
}
|
||||
};
|
||||
|
||||
player.on("timeupdate", updateTime);
|
||||
}
|
||||
else remove_all_video_times();
|
||||
|
||||
if (video_data.params.autoplay) {
|
||||
var bpb = player.getChild('bigPlayButton');
|
||||
bpb.hide();
|
||||
@@ -146,10 +255,40 @@ if (video_data.params.autoplay) {
|
||||
|
||||
if (!video_data.params.listen && video_data.params.quality === 'dash') {
|
||||
player.httpSourceSelector();
|
||||
|
||||
if (video_data.params.quality_dash != "auto") {
|
||||
player.ready(() => {
|
||||
player.on("loadedmetadata", () => {
|
||||
const qualityLevels = Array.from(player.qualityLevels()).sort((a, b) => a.height - b.height);
|
||||
let targetQualityLevel;
|
||||
switch (video_data.params.quality_dash) {
|
||||
case "best":
|
||||
targetQualityLevel = qualityLevels.length - 1;
|
||||
break;
|
||||
case "worst":
|
||||
targetQualityLevel = 0;
|
||||
break;
|
||||
default:
|
||||
const targetHeight = Number.parseInt(video_data.params.quality_dash, 10);
|
||||
for (let i = 0; i < qualityLevels.length; i++) {
|
||||
if (qualityLevels[i].height <= targetHeight) {
|
||||
targetQualityLevel = i;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (let i = 0; i < qualityLevels.length; i++) {
|
||||
qualityLevels[i].enabled = (i == targetQualityLevel);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
player.vttThumbnails({
|
||||
src: location.origin + '/api/v1/storyboards/' + video_data.id + '?height=90'
|
||||
src: location.origin + '/api/v1/storyboards/' + video_data.id + '?height=90',
|
||||
showTimestamp: true
|
||||
});
|
||||
|
||||
// Enable annotations
|
||||
@@ -225,19 +364,75 @@ function skip_seconds(delta) {
|
||||
player.currentTime(newTime);
|
||||
}
|
||||
|
||||
function set_seconds_after_start(delta) {
|
||||
const start = video_data.params.video_start;
|
||||
player.currentTime(start + delta);
|
||||
}
|
||||
|
||||
function save_video_time(seconds) {
|
||||
const videoId = video_data.id;
|
||||
const all_video_times = get_all_video_times();
|
||||
|
||||
all_video_times[videoId] = seconds;
|
||||
|
||||
set_all_video_times(all_video_times);
|
||||
}
|
||||
|
||||
function get_video_time() {
|
||||
try {
|
||||
const videoId = video_data.id;
|
||||
const all_video_times = get_all_video_times();
|
||||
const timestamp = all_video_times[videoId];
|
||||
|
||||
return timestamp || 0;
|
||||
}
|
||||
catch {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
function set_all_video_times(times) {
|
||||
if (storage) {
|
||||
if (times) {
|
||||
try {
|
||||
storage.setItem(save_player_pos_key, JSON.stringify(times));
|
||||
} catch (e) {
|
||||
console.debug('set_all_video_times: ' + e);
|
||||
}
|
||||
} else {
|
||||
storage.removeItem(save_player_pos_key);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function get_all_video_times() {
|
||||
if (storage) {
|
||||
const raw = storage.getItem(save_player_pos_key);
|
||||
if (raw !== null) {
|
||||
try {
|
||||
return JSON.parse(raw);
|
||||
} catch (e) {
|
||||
console.debug('get_all_video_times: ' + e);
|
||||
}
|
||||
}
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
function remove_all_video_times() {
|
||||
set_all_video_times(null);
|
||||
}
|
||||
|
||||
function set_time_percent(percent) {
|
||||
const duration = player.duration();
|
||||
const newTime = duration * (percent / 100);
|
||||
player.currentTime(newTime);
|
||||
}
|
||||
|
||||
function toggle_play() {
|
||||
if (player.paused()) {
|
||||
player.play();
|
||||
} else {
|
||||
player.pause();
|
||||
}
|
||||
}
|
||||
function play() { player.play(); }
|
||||
function pause() { player.pause(); }
|
||||
function stop() { player.pause(); player.currentTime(0); }
|
||||
function toggle_play() { player.paused() ? play() : pause(); }
|
||||
|
||||
const toggle_captions = (function () {
|
||||
let toggledTrack = null;
|
||||
@@ -275,9 +470,7 @@ const toggle_captions = (function () {
|
||||
const tracks = player.textTracks();
|
||||
for (let i = 0; i < tracks.length; i++) {
|
||||
const track = tracks[i];
|
||||
if (track.kind !== 'captions') {
|
||||
continue;
|
||||
}
|
||||
if (track.kind !== 'captions') continue;
|
||||
|
||||
if (fallbackCaptionsTrack === null) {
|
||||
fallbackCaptionsTrack = track;
|
||||
@@ -298,11 +491,7 @@ const toggle_captions = (function () {
|
||||
})();
|
||||
|
||||
function toggle_fullscreen() {
|
||||
if (player.isFullscreen()) {
|
||||
player.exitFullscreen();
|
||||
} else {
|
||||
player.requestFullscreen();
|
||||
}
|
||||
player.isFullscreen() ? player.exitFullscreen() : player.requestFullscreen();
|
||||
}
|
||||
|
||||
function increase_playback_rate(steps) {
|
||||
@@ -341,18 +530,19 @@ window.addEventListener('keydown', e => {
|
||||
switch (decoratedKey) {
|
||||
case ' ':
|
||||
case 'k':
|
||||
case 'MediaPlayPause':
|
||||
action = toggle_play;
|
||||
break;
|
||||
|
||||
case 'MediaPlay': action = play; break;
|
||||
case 'MediaPause': action = pause; break;
|
||||
case 'MediaStop': action = stop; break;
|
||||
|
||||
case 'ArrowUp':
|
||||
if (isPlayerFocused) {
|
||||
action = increase_volume.bind(this, 0.1);
|
||||
}
|
||||
if (isPlayerFocused) action = increase_volume.bind(this, 0.1);
|
||||
break;
|
||||
case 'ArrowDown':
|
||||
if (isPlayerFocused) {
|
||||
action = increase_volume.bind(this, -0.1);
|
||||
}
|
||||
if (isPlayerFocused) action = increase_volume.bind(this, -0.1);
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
@@ -360,16 +550,18 @@ window.addEventListener('keydown', e => {
|
||||
break;
|
||||
|
||||
case 'ArrowRight':
|
||||
action = skip_seconds.bind(this, 5);
|
||||
case 'MediaFastForward':
|
||||
action = skip_seconds.bind(this, 5 * player.playbackRate());
|
||||
break;
|
||||
case 'ArrowLeft':
|
||||
action = skip_seconds.bind(this, -5);
|
||||
case 'MediaTrackPrevious':
|
||||
action = skip_seconds.bind(this, -5 * player.playbackRate());
|
||||
break;
|
||||
case 'l':
|
||||
action = skip_seconds.bind(this, 10);
|
||||
action = skip_seconds.bind(this, 10 * player.playbackRate());
|
||||
break;
|
||||
case 'j':
|
||||
action = skip_seconds.bind(this, -10);
|
||||
action = skip_seconds.bind(this, -10 * player.playbackRate());
|
||||
break;
|
||||
|
||||
case '0':
|
||||
@@ -382,21 +574,22 @@ window.addEventListener('keydown', e => {
|
||||
case '7':
|
||||
case '8':
|
||||
case '9':
|
||||
// Ignore numpad numbers
|
||||
if (code > 57) break;
|
||||
|
||||
const percent = (code - 48) * 10;
|
||||
action = set_time_percent.bind(this, percent);
|
||||
break;
|
||||
|
||||
case 'c':
|
||||
action = toggle_captions;
|
||||
break;
|
||||
case 'f':
|
||||
action = toggle_fullscreen;
|
||||
break;
|
||||
case 'c': action = toggle_captions; break;
|
||||
case 'f': action = toggle_fullscreen; break;
|
||||
|
||||
case 'N':
|
||||
case 'MediaTrackNext':
|
||||
action = next_video;
|
||||
break;
|
||||
case 'P':
|
||||
case 'MediaTrackPrevious':
|
||||
// TODO: Add support to play back previous video.
|
||||
break;
|
||||
|
||||
@@ -407,12 +600,8 @@ window.addEventListener('keydown', e => {
|
||||
// TODO: Add support for previous-frame-stepping.
|
||||
break;
|
||||
|
||||
case '>':
|
||||
action = increase_playback_rate.bind(this, 1);
|
||||
break;
|
||||
case '<':
|
||||
action = increase_playback_rate.bind(this, -1);
|
||||
break;
|
||||
case '>': action = increase_playback_rate.bind(this, 1); break;
|
||||
case '<': action = increase_playback_rate.bind(this, -1); break;
|
||||
|
||||
default:
|
||||
console.info('Unhandled key down event: %s:', decoratedKey, e);
|
||||
@@ -471,4 +660,41 @@ window.addEventListener('keydown', e => {
|
||||
}());
|
||||
|
||||
// Since videojs-share can sometimes be blocked, we defer it until last
|
||||
player.share(shareOptions);
|
||||
if (player.share) {
|
||||
player.share(shareOptions);
|
||||
}
|
||||
|
||||
// show the preferred caption by default
|
||||
if (player_data.preferred_caption_found) {
|
||||
player.ready(() => {
|
||||
player.textTracks()[1].mode = 'showing';
|
||||
});
|
||||
}
|
||||
|
||||
// Safari audio double duration fix
|
||||
if (navigator.vendor == "Apple Computer, Inc." && video_data.params.listen) {
|
||||
player.on('loadedmetadata', function () {
|
||||
player.on('timeupdate', function () {
|
||||
if (player.remainingTime() < player.duration() / 2) {
|
||||
player.currentTime(player.duration() + 1);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Watch on Invidious link
|
||||
if (window.location.pathname.startsWith("/embed/")) {
|
||||
const Button = videojs.getComponent('Button');
|
||||
let watch_on_invidious_button = new Button(player);
|
||||
|
||||
// Create hyperlink for current instance
|
||||
redirect_element = document.createElement("a");
|
||||
redirect_element.setAttribute("href", `http://${window.location.host}/watch?v=${window.location.pathname.replace("/embed/","")}`)
|
||||
redirect_element.appendChild(document.createTextNode("Invidious"))
|
||||
|
||||
watch_on_invidious_button.el().appendChild(redirect_element)
|
||||
watch_on_invidious_button.addClass("watch-on-invidious")
|
||||
|
||||
cb = player.getChild('ControlBar')
|
||||
cb.addChild(watch_on_invidious_button)
|
||||
};
|
||||
|
||||
@@ -2,7 +2,7 @@ var toggle_theme = document.getElementById('toggle_theme');
|
||||
toggle_theme.href = 'javascript:void(0);';
|
||||
|
||||
toggle_theme.addEventListener('click', function () {
|
||||
var dark_mode = document.getElementById('dark_theme').media === 'none';
|
||||
var dark_mode = document.body.classList.contains("light-theme");
|
||||
|
||||
var url = '/toggle_theme?redirect=false';
|
||||
var xhr = new XMLHttpRequest();
|
||||
@@ -11,7 +11,9 @@ toggle_theme.addEventListener('click', function () {
|
||||
xhr.open('GET', url, true);
|
||||
|
||||
set_mode(dark_mode);
|
||||
window.localStorage.setItem('dark_mode', dark_mode ? 'dark' : 'light');
|
||||
try {
|
||||
window.localStorage.setItem('dark_mode', dark_mode ? 'dark' : 'light');
|
||||
} catch {}
|
||||
|
||||
xhr.send();
|
||||
});
|
||||
@@ -22,10 +24,13 @@ window.addEventListener('storage', function (e) {
|
||||
}
|
||||
});
|
||||
|
||||
window.addEventListener('load', function () {
|
||||
window.localStorage.setItem('dark_mode', document.getElementById('dark_mode_pref').textContent);
|
||||
// Update localStorage if dark mode preference changed on preferences page
|
||||
update_mode(window.localStorage.dark_mode);
|
||||
window.addEventListener('DOMContentLoaded', function () {
|
||||
const dark_mode = document.getElementById('dark_mode_pref').textContent;
|
||||
try {
|
||||
// Update localStorage if dark mode preference changed on preferences page
|
||||
window.localStorage.setItem('dark_mode', dark_mode);
|
||||
} catch {}
|
||||
update_mode(dark_mode);
|
||||
});
|
||||
|
||||
|
||||
@@ -37,9 +42,11 @@ lightScheme.addListener(scheme_switch);
|
||||
|
||||
function scheme_switch (e) {
|
||||
// ignore this method if we have a preference set
|
||||
if (localStorage.getItem('dark_mode')) {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
if (localStorage.getItem('dark_mode')) {
|
||||
return;
|
||||
}
|
||||
} catch {}
|
||||
if (e.matches) {
|
||||
if (e.media.includes("dark")) {
|
||||
set_mode(true);
|
||||
@@ -50,13 +57,18 @@ function scheme_switch (e) {
|
||||
}
|
||||
|
||||
function set_mode (bool) {
|
||||
document.getElementById('dark_theme').media = !bool ? 'none' : '';
|
||||
document.getElementById('light_theme').media = bool ? 'none' : '';
|
||||
|
||||
if (bool) {
|
||||
// dark
|
||||
toggle_theme.children[0].setAttribute('class', 'icon ion-ios-sunny');
|
||||
document.body.classList.remove('no-theme');
|
||||
document.body.classList.remove('light-theme');
|
||||
document.body.classList.add('dark-theme');
|
||||
} else {
|
||||
// light
|
||||
toggle_theme.children[0].setAttribute('class', 'icon ion-ios-moon');
|
||||
document.body.classList.remove('no-theme');
|
||||
document.body.classList.remove('dark-theme');
|
||||
document.body.classList.add('light-theme');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,7 +77,7 @@ function update_mode (mode) {
|
||||
// If preference for dark mode indicated
|
||||
set_mode(true);
|
||||
}
|
||||
else if (mode === 'false' /* for backwards compaibility */ || mode === 'light') {
|
||||
else if (mode === 'false' /* for backwards compatibility */ || mode === 'light') {
|
||||
// If preference for light mode indicated
|
||||
set_mode(false);
|
||||
}
|
||||
|
||||
21
assets/js/video.min.js
vendored
21
assets/js/video.min.js
vendored
File diff suppressed because one or more lines are too long
@@ -1,2 +0,0 @@
|
||||
/*! @name videojs-contrib-quality-levels @version 2.0.9 @license Apache-2.0 */
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("video.js"),require("global/document")):"function"==typeof define&&define.amd?define(["video.js","global/document"],t):e.videojsContribQualityLevels=t(e.videojs,e.document)}(this,function(e,t){"use strict";function n(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}e=e&&e.hasOwnProperty("default")?e.default:e,t=t&&t.hasOwnProperty("default")?t.default:t;var r=function(r){var i,l;function o(){var i,l=n(n(i=r.call(this)||this));if(e.browser.IS_IE8)for(var s in l=t.createElement("custom"),o.prototype)"constructor"!==s&&(l[s]=o.prototype[s]);return l.levels_=[],l.selectedIndex_=-1,Object.defineProperty(l,"selectedIndex",{get:function(){return l.selectedIndex_}}),Object.defineProperty(l,"length",{get:function(){return l.levels_.length}}),l||n(i)}l=r,(i=o).prototype=Object.create(l.prototype),i.prototype.constructor=i,i.__proto__=l;var s=o.prototype;return s.addQualityLevel=function(n){var r=this.getQualityLevelById(n.id);if(r)return r;var i=this.levels_.length;return r=new function n(r){var i=this;if(e.browser.IS_IE8)for(var l in i=t.createElement("custom"),n.prototype)"constructor"!==l&&(i[l]=n.prototype[l]);return i.id=r.id,i.label=i.id,i.width=r.width,i.height=r.height,i.bitrate=r.bandwidth,i.enabled_=r.enabled,Object.defineProperty(i,"enabled",{get:function(){return i.enabled_()},set:function(e){i.enabled_(e)}}),i}(n),""+i in this||Object.defineProperty(this,i,{get:function(){return this.levels_[i]}}),this.levels_.push(r),this.trigger({qualityLevel:r,type:"addqualitylevel"}),r},s.removeQualityLevel=function(e){for(var t=null,n=0,r=this.length;n<r;n++)if(this[n]===e){t=this.levels_.splice(n,1)[0],this.selectedIndex_===n?this.selectedIndex_=-1:this.selectedIndex_>n&&this.selectedIndex_--;break}return t&&this.trigger({qualityLevel:e,type:"removequalitylevel"}),t},s.getQualityLevelById=function(e){for(var t=0,n=this.length;t<n;t++){var r=this[t];if(r.id===e)return r}return null},s.dispose=function(){this.selectedIndex_=-1,this.levels_.length=0},o}(e.EventTarget);for(var i in r.prototype.allowedEvents_={change:"change",addqualitylevel:"addqualitylevel",removequalitylevel:"removequalitylevel"},r.prototype.allowedEvents_)r.prototype["on"+i]=null;var l=function(t){return n=this,e.mergeOptions({},t),i=n.qualityLevels,l=new r,n.on("dispose",function e(){l.dispose(),n.qualityLevels=i,n.off("dispose",e)}),n.qualityLevels=function(){return l},n.qualityLevels.VERSION="2.0.9",l;var n,i,l};return(e.registerPlugin||e.plugin)("qualityLevels",l),l.VERSION="2.0.9",l});
|
||||
@@ -1,7 +0,0 @@
|
||||
/**
|
||||
* videojs-http-source-selector
|
||||
* @version 1.1.6
|
||||
* @copyright 2019 Justin Fujita <Justin@pivotshare.com>
|
||||
* @license MIT
|
||||
*/
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("video.js")):"function"==typeof define&&define.amd?define(["video.js"],t):(e=e||self)["videojs-http-source-selector"]=t(e.videojs)}(this,function(r){"use strict";function o(e,t){e.prototype=Object.create(t.prototype),(e.prototype.constructor=e).__proto__=t}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var e=(r=r&&r.hasOwnProperty("default")?r.default:r).getComponent("MenuItem"),t=r.getComponent("Component"),a=function(n){function e(e,t){return t.selectable=!0,t.multiSelectable=!1,n.call(this,e,t)||this}o(e,n);var t=e.prototype;return t.handleClick=function(){var e=this.options_;console.log("Changing quality to:",e.label),n.prototype.handleClick.call(this);for(var t=this.player().qualityLevels(),o=0;o<t.length;o++)e.index==t.length?t[o].enabled=!0:e.index==o?t[o].enabled=!0:t[o].enabled=!1},t.update=function(){var e=this.player().qualityLevels().selectedIndex;this.selected(this.options_.index==e)},e}(e);t.registerComponent("SourceMenuItem",a);var u=r.getComponent("MenuButton"),n=function(i){function e(e,t){var o;o=i.call(this,e,t)||this,u.apply(s(o),arguments);var n=o.player().qualityLevels();if(t&&t.default)if("low"==t.default)for(var l=0;l<n.length;l++)n[l].enabled=0==l;else if(t.default="high")for(l=0;l<n.length;l++)n[l].enabled=l==n.length-1;return o.player().qualityLevels().on(["change","addqualitylevel"],r.bind(s(o),o.update)),o}o(e,i);var t=e.prototype;return t.createEl=function(){return r.dom.createEl("div",{className:"vjs-http-source-selector vjs-menu-button vjs-menu-button-popup vjs-control vjs-button"})},t.buildCSSClass=function(){return u.prototype.buildCSSClass.call(this)+" vjs-icon-cog"},t.update=function(){return u.prototype.update.call(this)},t.createItems=function(){for(var e=[],t=this.player().qualityLevels(),o=[],n=0;n<t.length;n++){var l=t.length-(n+1),i=l===t.selectedIndex,r=""+l,s=l;t[l].height?(r=t[l].height+"p",s=parseInt(t[l].height,10)):t[l].bitrate&&(r=Math.floor(t[l].bitrate/1e3)+" kbps",s=parseInt(t[l].bitrate,10)),0<=o.indexOf(r)||(o.push(r),e.push(new a(this.player_,{label:r,index:l,selected:i,sortVal:s})))}return 1<t.length&&e.push(new a(this.player_,{label:"Auto",index:t.length,selected:!1,sortVal:99999})),e.sort(function(e,t){return e.options_.sortVal<t.options_.sortVal?1:e.options_.sortVal>t.options_.sortVal?-1:0}),e},e}(u),l={},i=r.registerPlugin||r.plugin,c=function(e){var t=this;this.ready(function(){!function(n,e){if(n.addClass("vjs-http-source-selector"),console.log("videojs-http-source-selector initialized!"),console.log("player.techName_:"+n.techName_),"Html5"!=n.techName_)return;n.on(["loadedmetadata"],function(e){if(n.qualityLevels(),r.log("loadmetadata event"),"undefined"==n.videojs_http_source_selector_initialized||1==n.videojs_http_source_selector_initialized)console.log("player.videojs_http_source_selector_initialized == true");else{console.log("player.videojs_http_source_selector_initialized == false"),n.videojs_http_source_selector_initialized=!0;var t=n.controlBar,o=t.getChild("fullscreenToggle").el();t.el().insertBefore(t.addChild("SourceMenuButton").el(),o)}})}(t,r.mergeOptions(l,e))}),r.registerComponent("SourceMenuButton",n),r.registerComponent("SourceMenuItem",a)};return i("httpSourceSelector",c),c.VERSION="1.1.6",c});
|
||||
4
assets/js/videojs-markers.min.js
vendored
4
assets/js/videojs-markers.min.js
vendored
File diff suppressed because one or more lines are too long
2
assets/js/videojs-overlay.min.js
vendored
2
assets/js/videojs-overlay.min.js
vendored
@@ -1,2 +0,0 @@
|
||||
/*! @name videojs-overlay @version 2.1.4 @license Apache-2.0 */
|
||||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("video.js"),require("global/window")):"function"==typeof define&&define.amd?define(["video.js","global/window"],e):t.videojsOverlay=e(t.videojs,t.window)}(this,function(t,e){"use strict";function n(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}t=t&&t.hasOwnProperty("default")?t.default:t,e=e&&e.hasOwnProperty("default")?e.default:e;var r={align:"top-left",class:"",content:"This overlay will show up while the video is playing",debug:!1,showBackground:!0,attachToControlBar:!1,overlays:[{start:"playing",end:"paused"}]},i=t.getComponent("Component"),o=t.dom||t,s=t.registerPlugin||t.plugin,a=function(t){return"number"==typeof t&&t==t},h=function(t){return"string"==typeof t&&/^\S+$/.test(t)},d=function(r){var i,s;function d(t,e){var i;return i=r.call(this,t,e)||this,["start","end"].forEach(function(t){var e=i.options_[t];if(a(e))i[t+"Event_"]="timeupdate";else if(h(e))i[t+"Event_"]=e;else if("start"===t)throw new Error('invalid "start" option; expected number or string')}),["endListener_","rewindListener_","startListener_"].forEach(function(t){i[t]=function(e){return d.prototype[t].call(n(n(i)),e)}}),"timeupdate"===i.startEvent_&&i.on(t,"timeupdate",i.rewindListener_),i.debug('created, listening to "'+i.startEvent_+'" for "start" and "'+(i.endEvent_||"nothing")+'" for "end"'),i.hide(),i}s=r,(i=d).prototype=Object.create(s.prototype),i.prototype.constructor=i,i.__proto__=s;var l=d.prototype;return l.createEl=function(){var t=this.options_,n=t.content,r=t.showBackground?"vjs-overlay-background":"vjs-overlay-no-background",i=o.createEl("div",{className:"\n vjs-overlay\n vjs-overlay-"+t.align+"\n "+t.class+"\n "+r+"\n vjs-hidden\n "});return"string"==typeof n?i.innerHTML=n:n instanceof e.DocumentFragment?i.appendChild(n):o.appendContent(i,n),i},l.debug=function(){if(this.options_.debug){for(var e=t.log,n=e,r=arguments.length,i=new Array(r),o=0;o<r;o++)i[o]=arguments[o];e.hasOwnProperty(i[0])&&"function"==typeof e[i[0]]&&(n=e[i.shift()]),n.apply(void 0,["overlay#"+this.id()+": "].concat(i))}},l.hide=function(){return r.prototype.hide.call(this),this.debug("hidden"),this.debug('bound `startListener_` to "'+this.startEvent_+'"'),this.endEvent_&&(this.debug('unbound `endListener_` from "'+this.endEvent_+'"'),this.off(this.player(),this.endEvent_,this.endListener_)),this.on(this.player(),this.startEvent_,this.startListener_),this},l.shouldHide_=function(t,e){var n=this.options_.end;return a(n)?t>=n:n===e},l.show=function(){return r.prototype.show.call(this),this.off(this.player(),this.startEvent_,this.startListener_),this.debug("shown"),this.debug('unbound `startListener_` from "'+this.startEvent_+'"'),this.endEvent_&&(this.debug('bound `endListener_` to "'+this.endEvent_+'"'),this.on(this.player(),this.endEvent_,this.endListener_)),this},l.shouldShow_=function(t,e){var n=this.options_.start,r=this.options_.end;return a(n)?a(r)?t>=n&&t<r:this.hasShownSinceSeek_?Math.floor(t)===n:(this.hasShownSinceSeek_=!0,t>=n):n===e},l.startListener_=function(t){var e=this.player().currentTime();this.shouldShow_(e,t.type)&&this.show()},l.endListener_=function(t){var e=this.player().currentTime();this.shouldHide_(e,t.type)&&this.hide()},l.rewindListener_=function(t){var e=this.player().currentTime(),n=this.previousTime_,r=this.options_.start,i=this.options_.end;e<n&&(this.debug("rewind detected"),a(i)&&!this.shouldShow_(e)?(this.debug("hiding; "+i+" is an integer and overlay should not show at this time"),this.hasShownSinceSeek_=!1,this.hide()):h(i)&&e<r&&(this.debug("hiding; show point ("+r+") is before now ("+e+") and end point ("+i+") is an event"),this.hasShownSinceSeek_=!1,this.hide())),this.previousTime_=e},d}(i);t.registerComponent("Overlay",d);var l=function(e){var n=this,i=t.mergeOptions(r,e);Array.isArray(this.overlays_)&&this.overlays_.forEach(function(t){n.removeChild(t),n.controlBar&&n.controlBar.removeChild(t),t.dispose()});var o=i.overlays;delete i.overlays,this.overlays_=o.map(function(e){var r=t.mergeOptions(i,e),o="string"==typeof r.attachToControlBar||!0===r.attachToControlBar;if(!n.controls()||!n.controlBar)return n.addChild("overlay",r);if(o&&-1!==r.align.indexOf("bottom")){var s=n.controlBar.children()[0];if(void 0!==n.controlBar.getChild(r.attachToControlBar)&&(s=n.controlBar.getChild(r.attachToControlBar)),s){var a=n.controlBar.addChild("overlay",r);return n.controlBar.el().insertBefore(a.el(),s.el()),a}}var h=n.addChild("overlay",r);return n.el().insertBefore(h.el(),n.controlBar.el()),h})};return l.VERSION="2.1.4",s("overlay",l),l});
|
||||
7
assets/js/videojs-share.min.js
vendored
7
assets/js/videojs-share.min.js
vendored
File diff suppressed because one or more lines are too long
7
assets/js/videojs-vtt-thumbnails.min.js
vendored
7
assets/js/videojs-vtt-thumbnails.min.js
vendored
File diff suppressed because one or more lines are too long
@@ -149,11 +149,18 @@ function get_playlist(plid, retries) {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
playlist.innerHTML = xhr.response.playlistHtml;
|
||||
var nextVideo = document.getElementById(xhr.response.nextVideo);
|
||||
nextVideo.parentNode.parentNode.scrollTop = nextVideo.offsetTop;
|
||||
|
||||
if (xhr.response.nextVideo) {
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/watch?v=' + xhr.response.nextVideo);
|
||||
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD')) {
|
||||
url.searchParams.set('index', xhr.response.index);
|
||||
}
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
@@ -170,10 +177,6 @@ function get_playlist(plid, retries) {
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD')) {
|
||||
url.searchParams.set('index', xhr.response.index);
|
||||
}
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
}
|
||||
@@ -271,7 +274,7 @@ function get_reddit_comments(retries) {
|
||||
|
||||
xhr.onerror = function () {
|
||||
console.log('Pulling comments failed... ' + retries + '/5');
|
||||
setInterval(function () { get_reddit_comments(retries - 1) }, 1000);
|
||||
setTimeout(function () { get_reddit_comments(retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
@@ -345,7 +348,7 @@ function get_youtube_comments(retries) {
|
||||
comments.innerHTML =
|
||||
'<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3>';
|
||||
console.log('Pulling comments failed... ' + retries + '/5');
|
||||
setInterval(function () { get_youtube_comments(retries - 1) }, 1000);
|
||||
setTimeout(function () { get_youtube_comments(retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
@@ -358,7 +361,7 @@ function get_youtube_comments(retries) {
|
||||
xhr.send();
|
||||
}
|
||||
|
||||
function get_youtube_replies(target, load_more) {
|
||||
function get_youtube_replies(target, load_more, load_replies) {
|
||||
var continuation = target.getAttribute('data-continuation');
|
||||
|
||||
var body = target.parentNode.parentNode;
|
||||
@@ -370,7 +373,10 @@ function get_youtube_replies(target, load_more) {
|
||||
'?format=html' +
|
||||
'&hl=' + video_data.preferences.locale +
|
||||
'&thin_mode=' + video_data.preferences.thin_mode +
|
||||
'&continuation=' + continuation;
|
||||
'&continuation=' + continuation
|
||||
if (load_replies) {
|
||||
url += '&action=action_get_comment_replies';
|
||||
}
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
User-agent: *
|
||||
Disallow: /search
|
||||
Disallow: /login
|
||||
Disallow: /
|
||||
|
||||
4
assets/videojs/.gitignore
vendored
Normal file
4
assets/videojs/.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# Ignore everything in this directory
|
||||
*
|
||||
# Except this file
|
||||
!.gitignore
|
||||
868
config/config.example.yml
Normal file
868
config/config.example.yml
Normal file
@@ -0,0 +1,868 @@
|
||||
#########################################
|
||||
#
|
||||
# Database configuration
|
||||
#
|
||||
#########################################
|
||||
|
||||
##
|
||||
## Database configuration with separate parameters.
|
||||
## This setting is MANDATORY, unless 'database_url' is used.
|
||||
##
|
||||
db:
|
||||
user: kemal
|
||||
password: kemal
|
||||
host: localhost
|
||||
port: 5432
|
||||
dbname: invidious
|
||||
|
||||
##
|
||||
## Database configuration using a single URI. This is an
|
||||
## alternative to the 'db' parameter above. If both forms
|
||||
## are used, then only database_url is used.
|
||||
## This setting is MANDATORY, unless 'db' is used.
|
||||
##
|
||||
## Note: The 'database_url' setting allows the use of UNIX
|
||||
## sockets. To do so, remove the IP address (or FQDN) and port
|
||||
## and append the 'host' parameter. E.g:
|
||||
## postgres://kemal:kemal@/invidious?host=/var/run/postgresql
|
||||
##
|
||||
## Accepted values: a postgres:// URI
|
||||
## Default: postgres://kemal:kemal@localhost:5432/invidious
|
||||
##
|
||||
#database_url: postgres://kemal:kemal@localhost:5432/invidious
|
||||
|
||||
##
|
||||
## Enable automatic table integrity check. This will create
|
||||
## the required tables and columns if anything is missing.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#check_tables: false
|
||||
|
||||
|
||||
|
||||
#########################################
|
||||
#
|
||||
# Server config
|
||||
#
|
||||
#########################################
|
||||
|
||||
# -----------------------------
|
||||
# Network (inbound)
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Port to listen on for incoming connections.
|
||||
##
|
||||
## Note: Ports lower than 1024 requires either root privileges
|
||||
## (not recommended) or the "CAP_NET_BIND_SERVICE" capability
|
||||
## (See https://stackoverflow.com/a/414258 and `man capabilities`)
|
||||
##
|
||||
## Accepted values: 1-65535
|
||||
## Default: 3000
|
||||
##
|
||||
#port: 3000
|
||||
|
||||
##
|
||||
## When the invidious instance is behind a proxy, and the proxy
|
||||
## listens on a different port than the instance does, this lets
|
||||
## invidious know about it. This is used to craft absolute URLs
|
||||
## to the instance (e.g in the API).
|
||||
##
|
||||
## Note: This setting is MANDATORY if invidious is behind a
|
||||
## reverse proxy.
|
||||
##
|
||||
## Accepted values: 1-65535
|
||||
## Default: <none>
|
||||
##
|
||||
#external_port:
|
||||
|
||||
##
|
||||
## Interface address to listen on for incoming connections.
|
||||
##
|
||||
## Accepted values: a valid IPv4 or IPv6 address.
|
||||
## default: 0.0.0.0 (listen on all interfaces)
|
||||
##
|
||||
#host_binding: 0.0.0.0
|
||||
|
||||
##
|
||||
## Domain name under which this instance is hosted. This is
|
||||
## used to craft absolute URLs to the instance (e.g in the API).
|
||||
## The domain MUST be defined if your instance is accessed from
|
||||
## a domain name (like 'example.com').
|
||||
##
|
||||
## Accepted values: a fully qualified domain name (FQDN)
|
||||
## Default: <none>
|
||||
##
|
||||
domain:
|
||||
|
||||
##
|
||||
## Tell Invidious that it is behind a proxy that provides only
|
||||
## HTTPS, so all links must use the https:// scheme. This
|
||||
## setting MUST be set to true if invidious is behind a
|
||||
## reverse proxy serving HTTPs.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
https_only: false
|
||||
|
||||
##
|
||||
## Enable/Disable 'Strict-Transport-Security'. Make sure that
|
||||
## the domain specified under 'domain' is served securely.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#hsts: true
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Network (outbound)
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Disable proxying server-wide. Can be disable as a whole, or
|
||||
## only for a single function.
|
||||
##
|
||||
## Accepted values: true, false, dash, livestreams, downloads, local
|
||||
## Default: false
|
||||
##
|
||||
#disable_proxy: false
|
||||
|
||||
##
|
||||
## Size of the HTTP pool used to connect to youtube. Each
|
||||
## domain ('youtube.com', 'ytimg.com', ...) has its own pool.
|
||||
##
|
||||
## Accepted values: a positive integer
|
||||
## Default: 100
|
||||
##
|
||||
#pool_size: 100
|
||||
|
||||
##
|
||||
## Enable/Disable the use of QUIC (HTTP/3) when connecting
|
||||
## to the youtube API and websites ('youtube.com', 'ytimg.com').
|
||||
## QUIC's main advantages are its lower latency and lower bandwidth
|
||||
## use, compared to its predecessors. However, the current version
|
||||
## of QUIC used in invidious is still based on the IETF draft 31,
|
||||
## meaning that the underlying library may still not be fully
|
||||
## optimized. You can read more about QUIC at the link below:
|
||||
## https://datatracker.ietf.org/doc/html/draft-ietf-quic-transport-31
|
||||
##
|
||||
## Note: you should try both options and see what is the best for your
|
||||
## instance. In general QUIC is recommended for public instances. Your
|
||||
## mileage may vary.
|
||||
##
|
||||
## Note 2: Using QUIC prevents some captcha challenges from appearing.
|
||||
## See: https://github.com/iv-org/invidious/issues/957#issuecomment-576424042
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#use_quic: false
|
||||
|
||||
##
|
||||
## Additional cookies to be sent when requesting the youtube API.
|
||||
##
|
||||
## Accepted values: a string in the format "name1=value1; name2=value2..."
|
||||
## Default: <none>
|
||||
##
|
||||
#cookies:
|
||||
|
||||
##
|
||||
## Force connection to youtube over a specific IP family.
|
||||
##
|
||||
## Note: This may sometimes resolve issues involving rate-limiting.
|
||||
## See https://github.com/ytdl-org/youtube-dl/issues/21729.
|
||||
##
|
||||
## Accepted values: ipv4, ipv6
|
||||
## Default: <none>
|
||||
##
|
||||
#force_resolve:
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Logging
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Path to log file. Can be absolute or relative to the invidious
|
||||
## binary. This is overridden if "-o OUTPUT" or "--output=OUTPUT"
|
||||
## are passed on the command line.
|
||||
##
|
||||
## Accepted values: a filesystem path or 'STDOUT'
|
||||
## Default: STDOUT
|
||||
##
|
||||
#output: STDOUT
|
||||
|
||||
##
|
||||
## Logging Verbosity. This is overridden if "-l LEVEL" or
|
||||
## "--log-level=LEVEL" are passed on the command line.
|
||||
##
|
||||
## Accepted values: All, Trace, Debug, Info, Warn, Error, Fatal, Off
|
||||
## Default: Info
|
||||
##
|
||||
#log_level: Info
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Features
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Enable/Disable the "Popular" tab on the main page.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#popular_enabled: true
|
||||
|
||||
##
|
||||
## Enable/Disable statstics (available at /api/v1/stats).
|
||||
## The following data is available:
|
||||
## - Software name ("invidious") and version+branch (same data as
|
||||
## displayed in the footer, e.g: "2021.05.13-75e5b49" / "master")
|
||||
## - The value of the 'registration_enabled' config (true/false)
|
||||
## - Number of currently registered users
|
||||
## - Number of registered users who connected in the last month
|
||||
## - Number of registered users who connected in the last 6 months
|
||||
## - Timestamp of the last server restart
|
||||
## - Timestamp of the last "Channel Refresh" job execution
|
||||
##
|
||||
## Warning: This setting MUST be set to true if you plan to run
|
||||
## a public instance. It is used by api.invidious.io to refresh
|
||||
## your instance's status.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#statistics_enabled: false
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Users and accounts
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Allow/Forbid Invidious (local) account creation. Invidious
|
||||
## accounts allow users to subscribe to channels and to create
|
||||
## playlists without a Google account.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#registration_enabled: true
|
||||
|
||||
##
|
||||
## Allow/Forbid users to log-in. This setting affects the ability
|
||||
## to connect with BOTH Google and Invidious (local) accounts.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#login_enabled: true
|
||||
|
||||
##
|
||||
## Enable/Disable the captcha challenge on the login page.
|
||||
##
|
||||
## Note: this is a basic captcha challenge that doesn't
|
||||
## depend on any third parties.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#captcha_enabled: true
|
||||
|
||||
##
|
||||
## List of usernames that will be granted administrator rights.
|
||||
## A user with administrator rights will be able to change the
|
||||
## server configuration options listed below in /preferences,
|
||||
## in addition to the usual user preferences.
|
||||
##
|
||||
## Server-wide settings:
|
||||
## - popular_enabled
|
||||
## - captcha_enabled
|
||||
## - login_enabled
|
||||
## - registration_enabled
|
||||
## - statistics_enabled
|
||||
## Default user preferences:
|
||||
## - default_home
|
||||
## - feed_menu
|
||||
##
|
||||
## Accepted values: an array of strings
|
||||
## Default: [""]
|
||||
##
|
||||
#admins: [""]
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Background jobs
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Number of threads to use when crawling channel videos (during
|
||||
## subscriptions update).
|
||||
##
|
||||
## Notes:
|
||||
## - Setting this to 0 will disable the channel videos crawl job.
|
||||
## - This setting is overridden if "-c THREADS" or
|
||||
## "--channel-threads=THREADS" are passed on the command line.
|
||||
##
|
||||
## Accepted values: a positive integer
|
||||
## Default: 1
|
||||
##
|
||||
channel_threads: 1
|
||||
|
||||
##
|
||||
## Time interval between two executions of the job that crawls
|
||||
## channel videos (subscriptions update).
|
||||
##
|
||||
## Accepted values: a valid time interval (like 1h30m or 90m)
|
||||
## Default: 30m
|
||||
##
|
||||
#channel_refresh_interval: 30m
|
||||
|
||||
##
|
||||
## Forcefully dump and re-download the entire list of uploaded
|
||||
## videos when crawling channel (during subscriptions update).
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
full_refresh: false
|
||||
|
||||
##
|
||||
## Number of threads to use when updating RSS feeds.
|
||||
##
|
||||
## Notes:
|
||||
## - Setting this to 0 will disable the channel videos crawl job.
|
||||
## - This setting is overridden if "-f THREADS" or
|
||||
## "--feed-threads=THREADS" are passed on the command line.
|
||||
##
|
||||
## Accepted values: a positive integer
|
||||
## Default: 1
|
||||
##
|
||||
feed_threads: 1
|
||||
|
||||
##
|
||||
## Enable/Disable the polling job that keeps the decryption
|
||||
## function (for "secured" videos) up to date.
|
||||
##
|
||||
## Note: This part of the code is currently broken, so changing
|
||||
## this setting has no impact.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#decrypt_polling: true
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Captcha API
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## URL of the captcha solving service.
|
||||
##
|
||||
## Accepted values: any URL
|
||||
## Default: https://api.anti-captcha.com
|
||||
##
|
||||
#captcha_api_url: https://api.anti-captcha.com
|
||||
|
||||
##
|
||||
## API key for the captcha solving service.
|
||||
##
|
||||
## Accepted values: a string
|
||||
## Default: <none>
|
||||
##
|
||||
#captcha_key:
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Miscellaneous
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## custom banner displayed at the top of every page. This can
|
||||
## used for instance announcements, e.g.
|
||||
##
|
||||
## Accepted values: any string. HTML is accepted.
|
||||
## Default: <none>
|
||||
##
|
||||
#banner:
|
||||
|
||||
##
|
||||
## Subscribe to channels using PubSubHub (Google PubSubHubbub service).
|
||||
## PubSubHub allows Invidious to be instantly notified when a new video
|
||||
## is published on any subscribed channels. When PubSubHub is not used,
|
||||
## Invidious will check for new videos every minute.
|
||||
##
|
||||
## Note: This setting is recommended for public instances.
|
||||
##
|
||||
## Note 2:
|
||||
## - Requires a public instance (it uses /feed/webhook/v1)
|
||||
## - Requires 'domain' and 'hmac_key' to be set.
|
||||
## - Setting this parameter to any number greater than zero will
|
||||
## enable channel subscriptions via PubSubHub, but will limit the
|
||||
## amount of concurrent subscriptions.
|
||||
##
|
||||
## Accepted values: true, false, a positive integer
|
||||
## Default: false
|
||||
##
|
||||
#use_pubsub_feeds: false
|
||||
|
||||
##
|
||||
## HMAC signing key used for CSRF tokens and pubsub
|
||||
## subscriptions verification.
|
||||
##
|
||||
## Accepted values: a string
|
||||
## Default: <none>
|
||||
##
|
||||
#hmac_key:
|
||||
|
||||
##
|
||||
## List of video IDs where the "download" widget must be
|
||||
## disabled, in order to comply with DMCA requests.
|
||||
##
|
||||
## Accepted values: an array of string
|
||||
## Default: <none>
|
||||
##
|
||||
#dmca_content:
|
||||
|
||||
##
|
||||
## Cache video annotations in the database.
|
||||
##
|
||||
## Warning: empty annotations or annotations that only contain
|
||||
## cards won't be cached.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#cache_annotations: false
|
||||
|
||||
##
|
||||
## Source code URL. If your instance is running a modified source
|
||||
## code, you MUST publish it somewhere and set this option.
|
||||
##
|
||||
## Accepted values: a string
|
||||
## Default: <none>
|
||||
##
|
||||
#modified_source_code_url: ""
|
||||
|
||||
|
||||
|
||||
#########################################
|
||||
#
|
||||
# Default user preferences
|
||||
#
|
||||
#########################################
|
||||
|
||||
##
|
||||
## NOTE: All the settings below define the default user
|
||||
## preferences. They will apply to ALL users connecting
|
||||
## without a preferences cookie (so either on the first
|
||||
## connection to the instance or after clearing the
|
||||
## browser's cookies).
|
||||
##
|
||||
|
||||
default_user_preferences:
|
||||
|
||||
# -----------------------------
|
||||
# Internationalization
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Default user interface language (locale).
|
||||
##
|
||||
## Note: When hosting a public instance, overriding the
|
||||
## default (english) is not recommended, as it may
|
||||
## people using other languages.
|
||||
##
|
||||
## Accepted values:
|
||||
## ar (Arabic)
|
||||
## da (Danish)
|
||||
## de (German)
|
||||
## en-US (english, US)
|
||||
## el (Greek)
|
||||
## eo (Esperanto)
|
||||
## es (Spanish)
|
||||
## fa (Persian)
|
||||
## fi (Finnish)
|
||||
## fr (French)
|
||||
## he (Hebrew)
|
||||
## hr (Hungarian)
|
||||
## id (Indonesian)
|
||||
## is (Icelandic)
|
||||
## it (Italian)
|
||||
## ja (Japanese)
|
||||
## nb-NO (Norwegian, Bokmål)
|
||||
## nl (Dutch)
|
||||
## pl (Polish)
|
||||
## pt-BR (Portuguese, Brazil)
|
||||
## pt-PT (Portuguese, Portugal)
|
||||
## ro (Romanian)
|
||||
## ru (Russian)
|
||||
## sv (Swedish)
|
||||
## tr (Turkish)
|
||||
## uk (Ukrainian)
|
||||
## zh-CN (Chinese, China) (a.k.a "Simplified Chinese")
|
||||
## zh-TW (Chinese, Taiwan) (a.k.a "Traditional Chinese")
|
||||
##
|
||||
## Default: en-US
|
||||
##
|
||||
#locale: en-US
|
||||
|
||||
##
|
||||
## Default geographical location for content.
|
||||
##
|
||||
## Accepted values:
|
||||
## AE, AR, AT, AU, AZ, BA, BD, BE, BG, BH, BO, BR, BY, CA, CH, CL, CO, CR,
|
||||
## CY, CZ, DE, DK, DO, DZ, EC, EE, EG, ES, FI, FR, GB, GE, GH, GR, GT, HK,
|
||||
## HN, HR, HU, ID, IE, IL, IN, IQ, IS, IT, JM, JO, JP, KE, KR, KW, KZ, LB,
|
||||
## LI, LK, LT, LU, LV, LY, MA, ME, MK, MT, MX, MY, NG, NI, NL, NO, NP, NZ,
|
||||
## OM, PA, PE, PG, PH, PK, PL, PR, PT, PY, QA, RO, RS, RU, SA, SE, SG, SI,
|
||||
## SK, SN, SV, TH, TN, TR, TW, TZ, UA, UG, US, UY, VE, VN, YE, ZA, ZW
|
||||
##
|
||||
## Default: US
|
||||
##
|
||||
#region: US
|
||||
|
||||
##
|
||||
## Top 3 preferred languages for video captions.
|
||||
##
|
||||
## Note: overriding the default (no preferred
|
||||
## caption language) is not recommended, in order
|
||||
## to not penalize people using other languages.
|
||||
##
|
||||
## Accepted values: a three-entries array.
|
||||
## Each entry can be one of:
|
||||
## "English", "English (auto-generated)",
|
||||
## "Afrikaans", "Albanian", "Amharic", "Arabic",
|
||||
## "Armenian", "Azerbaijani", "Bangla", "Basque",
|
||||
## "Belarusian", "Bosnian", "Bulgarian", "Burmese",
|
||||
## "Catalan", "Cebuano", "Chinese (Simplified)",
|
||||
## "Chinese (Traditional)", "Corsican", "Croatian",
|
||||
## "Czech", "Danish", "Dutch", "Esperanto", "Estonian",
|
||||
## "Filipino", "Finnish", "French", "Galician", "Georgian",
|
||||
## "German", "Greek", "Gujarati", "Haitian Creole", "Hausa",
|
||||
## "Hawaiian", "Hebrew", "Hindi", "Hmong", "Hungarian",
|
||||
## "Icelandic", "Igbo", "Indonesian", "Irish", "Italian",
|
||||
## "Japanese", "Javanese", "Kannada", "Kazakh", "Khmer",
|
||||
## "Korean", "Kurdish", "Kyrgyz", "Lao", "Latin", "Latvian",
|
||||
## "Lithuanian", "Luxembourgish", "Macedonian",
|
||||
## "Malagasy", "Malay", "Malayalam", "Maltese", "Maori",
|
||||
## "Marathi", "Mongolian", "Nepali", "Norwegian Bokmål",
|
||||
## "Nyanja", "Pashto", "Persian", "Polish", "Portuguese",
|
||||
## "Punjabi", "Romanian", "Russian", "Samoan",
|
||||
## "Scottish Gaelic", "Serbian", "Shona", "Sindhi",
|
||||
## "Sinhala", "Slovak", "Slovenian", "Somali",
|
||||
## "Southern Sotho", "Spanish", "Spanish (Latin America)",
|
||||
## "Sundanese", "Swahili", "Swedish", "Tajik", "Tamil",
|
||||
## "Telugu", "Thai", "Turkish", "Ukrainian", "Urdu",
|
||||
## "Uzbek", "Vietnamese", "Welsh", "Western Frisian",
|
||||
## "Xhosa", "Yiddish", "Yoruba", "Zulu"
|
||||
##
|
||||
## Default: ["", "", ""]
|
||||
##
|
||||
#captions: ["", "", ""]
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Interface
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Enable/Disable dark mode.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: <none>
|
||||
##
|
||||
#dark_mode:
|
||||
|
||||
##
|
||||
## Enable/Disable thin mode (no video thumbnails).
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#thin_mode: false
|
||||
|
||||
##
|
||||
## List of feeds available on the home page.
|
||||
##
|
||||
## Note: "Subscriptions" and "Playlists" are only visible
|
||||
## when the user is logged in.
|
||||
##
|
||||
## Accepted values: A list of strings
|
||||
## Each entry can be one of: "Popular", "Trending",
|
||||
## "Subscriptions", "Playlists"
|
||||
##
|
||||
## Default: ["Popular", "Trending", "Subscriptions", "Playlists"] (show all feeds)
|
||||
##
|
||||
#feed_menu: ["Popular", "Trending", "Subscriptions", "Playlists"]
|
||||
|
||||
##
|
||||
## Default feed to display on the home page.
|
||||
##
|
||||
## Note: setting this option to "Popular" has no
|
||||
## effect when 'popular_enabled' is set to false.
|
||||
##
|
||||
## Accepted values: Popular, Trending, Subscriptions, Playlists, <none>
|
||||
## Default: Popular
|
||||
##
|
||||
#default_home: Popular
|
||||
|
||||
##
|
||||
## Default number of results to display per page.
|
||||
##
|
||||
## Note: this affects invidious-generated pages only, such
|
||||
## as watch history and subscription feeds. Playlists, search
|
||||
## results and channel videos depend on the data returned by
|
||||
## the Youtube API.
|
||||
##
|
||||
## Accepted values: any positive integer
|
||||
## Default: 40
|
||||
##
|
||||
#max_results: 40
|
||||
|
||||
##
|
||||
## Show/hide annotations.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#annotations: false
|
||||
|
||||
##
|
||||
## Show/hide annotation.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#annotations_subscribed: false
|
||||
|
||||
##
|
||||
## Type of comments to display below video.
|
||||
##
|
||||
## Accepted values: a two-entries array.
|
||||
## Each entry can be one of: "youtube", "reddit", ""
|
||||
##
|
||||
## Default: ["youtube", ""]
|
||||
##
|
||||
#comments: ["youtube", ""]
|
||||
|
||||
##
|
||||
## Default player style.
|
||||
##
|
||||
## Accepted values: invidious, youtube
|
||||
## Default: invidious
|
||||
##
|
||||
#player_style: invidious
|
||||
|
||||
##
|
||||
## Show/Hide the "related videos" sidebar when
|
||||
## watching a video.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#related_videos: true
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Video player behavior
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Automatically play videos on page load.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#autoplay: false
|
||||
|
||||
##
|
||||
## Automatically load the "next" video (either next in
|
||||
## playlist or proposed) when the current video ends.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#continue: false
|
||||
|
||||
##
|
||||
## Autoplay next video by default.
|
||||
##
|
||||
## Note: Only effective if 'continue' is set to true.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#continue_autoplay: true
|
||||
|
||||
##
|
||||
## Play videos in Audio-only mode by default.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#listen: false
|
||||
|
||||
##
|
||||
## Loop videos automatically.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#video_loop: false
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Video playback settings
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Default video quality.
|
||||
##
|
||||
## Accepted values: dash, hd720, medium, small
|
||||
## Default: hd720
|
||||
##
|
||||
#quality: hd720
|
||||
|
||||
##
|
||||
## Default dash video quality.
|
||||
##
|
||||
## Note: this setting only takes effet if the
|
||||
## 'quality' parameter is set to "dash".
|
||||
##
|
||||
## Accepted values:
|
||||
## auto, best, 4320p, 2160p, 1440p, 1080p,
|
||||
## 720p, 480p, 360p, 240p, 144p, worst
|
||||
## Default: auto
|
||||
##
|
||||
#quality_dash: auto
|
||||
|
||||
##
|
||||
## Default video playback speed.
|
||||
##
|
||||
## Accepted values: 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0
|
||||
## Default: 1.0
|
||||
##
|
||||
#speed: 1.0
|
||||
|
||||
##
|
||||
## Default volume.
|
||||
##
|
||||
## Accepted values: 0-100
|
||||
## Default: 100
|
||||
##
|
||||
#volume: 100
|
||||
|
||||
##
|
||||
## Allow 360° videos to be played.
|
||||
##
|
||||
## Note: This feature requires a WebGL-enabled browser.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#vr_mode: true
|
||||
|
||||
# -----------------------------
|
||||
# Subscription feed
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## In the "Subscription" feed, only show the latest video
|
||||
## of each channel the user is subscribed to.
|
||||
##
|
||||
## Note: when combined with 'unseen_only', the latest unseen
|
||||
## video of each channel will be displayed instead of the
|
||||
## latest by date.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#latest_only: false
|
||||
|
||||
##
|
||||
## Enable/Disable user subscriptions desktop notifications.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#notifications_only: false
|
||||
|
||||
##
|
||||
## In the "Subscription" feed, Only show the videos that the
|
||||
## user haven't watched yet (i.e which are not in their watch
|
||||
## history).
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#unseen_only: false
|
||||
|
||||
##
|
||||
## Default sorting parameter for subscription feeds.
|
||||
##
|
||||
## Accepted values:
|
||||
## 'alphabetically'
|
||||
## 'alphabetically - reverse'
|
||||
## 'channel name'
|
||||
## 'channel name - reverse'
|
||||
## 'published'
|
||||
## 'published - reverse'
|
||||
##
|
||||
## Default: published
|
||||
##
|
||||
#sort: published
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Miscellaneous
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## Proxy videos through instance by default.
|
||||
##
|
||||
## Warning: As most users won't change this setting in their
|
||||
## preferences, defaulting to true will significantly
|
||||
## increase the instance's network usage, so make sure that
|
||||
## your server's connection can handle it.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#local: false
|
||||
|
||||
##
|
||||
## Show the connected user's nick at the top right.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#show_nick: true
|
||||
|
||||
##
|
||||
## Automatically redirect to a random instance when the user uses
|
||||
## any "switch invidious instance" link (For videos, it's the plane
|
||||
## icon, next to "watch on youtube" and "listen"). When set to false,
|
||||
## the user is sent to https://redirect.invidious.io instead, where
|
||||
## they can manually select an instance.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#automatic_instance_redirect: false
|
||||
|
||||
##
|
||||
## Show the entire video description by default (when set to 'false',
|
||||
## only the first few lines of the description are shown and a
|
||||
## "show more" button allows to expand it).
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#extend_desc: false
|
||||
@@ -1,11 +0,0 @@
|
||||
channel_threads: 1
|
||||
feed_threads: 1
|
||||
db:
|
||||
user: kemal
|
||||
password: kemal
|
||||
host: localhost
|
||||
port: 5432
|
||||
dbname: invidious
|
||||
full_refresh: false
|
||||
https_only: false
|
||||
domain:
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channels ADD COLUMN subscribed bool;"
|
||||
psql invidious kemal -c "UPDATE channels SET subscribed = false;"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channels ADD COLUMN subscribed bool;"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "UPDATE channels SET subscribed = false;"
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos DROP COLUMN live_now CASCADE"
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos DROP COLUMN premiere_timestamp CASCADE"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos ADD COLUMN live_now bool"
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos ADD COLUMN premiere_timestamp timestamptz"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos DROP COLUMN live_now CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos DROP COLUMN premiere_timestamp CASCADE"
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos ADD COLUMN live_now bool"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos ADD COLUMN premiere_timestamp timestamptz"
|
||||
|
||||
22
config/migrate-scripts/migrate-db-1eca969.sh
Executable file
22
config/migrate-scripts/migrate-db-1eca969.sh
Executable file
@@ -0,0 +1,22 @@
|
||||
#!/bin/sh
|
||||
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN title CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN views CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN likes CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN dislikes CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN wilson_score CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN published CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN description CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN language CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN author CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN ucid CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN allowed_regions CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN is_family_friendly CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN genre CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN genre_url CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN license CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN sub_count_text CASCADE"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE videos DROP COLUMN author_thumbnail CASCADE"
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channels ADD COLUMN deleted bool;"
|
||||
psql invidious kemal -c "UPDATE channels SET deleted = false;"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channels ADD COLUMN deleted bool;"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "UPDATE channels SET deleted = false;"
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal < config/sql/session_ids.sql
|
||||
psql invidious kemal -c "INSERT INTO session_ids (SELECT unnest(id), email, CURRENT_TIMESTAMP FROM users) ON CONFLICT (id) DO NOTHING"
|
||||
psql invidious kemal -c "ALTER TABLE users DROP COLUMN id"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" < config/sql/session_ids.sql
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "INSERT INTO session_ids (SELECT unnest(id), email, CURRENT_TIMESTAMP FROM users) ON CONFLICT (id) DO NOTHING"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE users DROP COLUMN id"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal < config/sql/annotations.sql
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" < config/sql/annotations.sql
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos ADD COLUMN views bigint;"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos ADD COLUMN views bigint;"
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos ADD COLUMN live_now bool;"
|
||||
psql invidious kemal -c "UPDATE channel_videos SET live_now = false;"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos ADD COLUMN live_now bool;"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "UPDATE channel_videos SET live_now = false;"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE users ADD COLUMN feed_needs_update boolean"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE users ADD COLUMN feed_needs_update boolean"
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channel_videos ADD COLUMN premiere_timestamp timestamptz;"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channel_videos ADD COLUMN premiere_timestamp timestamptz;"
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
psql invidious kemal -c "ALTER TABLE channels DROP COLUMN subscribed"
|
||||
psql invidious kemal -c "ALTER TABLE channels ADD COLUMN subscribed timestamptz"
|
||||
psql invidious kemal -c "UPDATE channels SET subscribed = '2019-01-01 00:00:00+00'"
|
||||
[ -z "$POSTGRES_USER" ] && POSTGRES_USER=kemal
|
||||
[ -z "$POSTGRES_DB" ] && POSTGRES_DB=invidious
|
||||
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channels DROP COLUMN subscribed"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "ALTER TABLE channels ADD COLUMN subscribed timestamptz"
|
||||
psql "$POSTGRES_DB" "$POSTGRES_USER" -c "UPDATE channels SET subscribed = '2019-01-01 00:00:00+00'"
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
-- DROP TABLE public.annotations;
|
||||
|
||||
CREATE TABLE public.annotations
|
||||
CREATE TABLE IF NOT EXISTS public.annotations
|
||||
(
|
||||
id text NOT NULL,
|
||||
annotations xml,
|
||||
CONSTRAINT annotations_id_key UNIQUE (id)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.annotations TO kemal;
|
||||
GRANT ALL ON TABLE public.annotations TO current_user;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- DROP TABLE public.channel_videos;
|
||||
|
||||
CREATE TABLE public.channel_videos
|
||||
CREATE TABLE IF NOT EXISTS public.channel_videos
|
||||
(
|
||||
id text NOT NULL,
|
||||
title text,
|
||||
@@ -17,13 +17,13 @@ CREATE TABLE public.channel_videos
|
||||
CONSTRAINT channel_videos_id_key UNIQUE (id)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.channel_videos TO kemal;
|
||||
GRANT ALL ON TABLE public.channel_videos TO current_user;
|
||||
|
||||
-- Index: public.channel_videos_ucid_idx
|
||||
|
||||
-- DROP INDEX public.channel_videos_ucid_idx;
|
||||
|
||||
CREATE INDEX channel_videos_ucid_idx
|
||||
CREATE INDEX IF NOT EXISTS channel_videos_ucid_idx
|
||||
ON public.channel_videos
|
||||
USING btree
|
||||
(ucid COLLATE pg_catalog."default");
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- DROP TABLE public.channels;
|
||||
|
||||
CREATE TABLE public.channels
|
||||
CREATE TABLE IF NOT EXISTS public.channels
|
||||
(
|
||||
id text NOT NULL,
|
||||
author text,
|
||||
@@ -12,13 +12,13 @@ CREATE TABLE public.channels
|
||||
CONSTRAINT channels_id_key UNIQUE (id)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.channels TO kemal;
|
||||
GRANT ALL ON TABLE public.channels TO current_user;
|
||||
|
||||
-- Index: public.channels_id_idx
|
||||
|
||||
-- DROP INDEX public.channels_id_idx;
|
||||
|
||||
CREATE INDEX channels_id_idx
|
||||
CREATE INDEX IF NOT EXISTS channels_id_idx
|
||||
ON public.channels
|
||||
USING btree
|
||||
(id COLLATE pg_catalog."default");
|
||||
|
||||
@@ -2,20 +2,20 @@
|
||||
|
||||
-- DROP TABLE public.nonces;
|
||||
|
||||
CREATE TABLE public.nonces
|
||||
CREATE TABLE IF NOT EXISTS public.nonces
|
||||
(
|
||||
nonce text,
|
||||
expire timestamp with time zone,
|
||||
CONSTRAINT nonces_id_key UNIQUE (nonce)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.nonces TO kemal;
|
||||
GRANT ALL ON TABLE public.nonces TO current_user;
|
||||
|
||||
-- Index: public.nonces_nonce_idx
|
||||
|
||||
-- DROP INDEX public.nonces_nonce_idx;
|
||||
|
||||
CREATE INDEX nonces_nonce_idx
|
||||
CREATE INDEX IF NOT EXISTS nonces_nonce_idx
|
||||
ON public.nonces
|
||||
USING btree
|
||||
(nonce COLLATE pg_catalog."default");
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- DROP TABLE public.playlist_videos;
|
||||
|
||||
CREATE TABLE playlist_videos
|
||||
CREATE TABLE IF NOT EXISTS public.playlist_videos
|
||||
(
|
||||
title text,
|
||||
id text,
|
||||
@@ -16,4 +16,4 @@ CREATE TABLE playlist_videos
|
||||
PRIMARY KEY (index,plid)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.playlist_videos TO kemal;
|
||||
GRANT ALL ON TABLE public.playlist_videos TO current_user;
|
||||
|
||||
@@ -13,7 +13,7 @@ CREATE TYPE public.privacy AS ENUM
|
||||
|
||||
-- DROP TABLE public.playlists;
|
||||
|
||||
CREATE TABLE public.playlists
|
||||
CREATE TABLE IF NOT EXISTS public.playlists
|
||||
(
|
||||
title text,
|
||||
id text primary key,
|
||||
@@ -26,4 +26,4 @@ CREATE TABLE public.playlists
|
||||
index int8[]
|
||||
);
|
||||
|
||||
GRANT ALL ON public.playlists TO kemal;
|
||||
GRANT ALL ON public.playlists TO current_user;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- DROP TABLE public.session_ids;
|
||||
|
||||
CREATE TABLE public.session_ids
|
||||
CREATE TABLE IF NOT EXISTS public.session_ids
|
||||
(
|
||||
id text NOT NULL,
|
||||
email text,
|
||||
@@ -10,13 +10,13 @@ CREATE TABLE public.session_ids
|
||||
CONSTRAINT session_ids_pkey PRIMARY KEY (id)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.session_ids TO kemal;
|
||||
GRANT ALL ON TABLE public.session_ids TO current_user;
|
||||
|
||||
-- Index: public.session_ids_id_idx
|
||||
|
||||
-- DROP INDEX public.session_ids_id_idx;
|
||||
|
||||
CREATE INDEX session_ids_id_idx
|
||||
CREATE INDEX IF NOT EXISTS session_ids_id_idx
|
||||
ON public.session_ids
|
||||
USING btree
|
||||
(id COLLATE pg_catalog."default");
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
-- DROP TABLE public.users;
|
||||
|
||||
CREATE TABLE public.users
|
||||
CREATE TABLE IF NOT EXISTS public.users
|
||||
(
|
||||
updated timestamp with time zone,
|
||||
notifications text[],
|
||||
@@ -16,13 +16,13 @@ CREATE TABLE public.users
|
||||
CONSTRAINT users_email_key UNIQUE (email)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.users TO kemal;
|
||||
GRANT ALL ON TABLE public.users TO current_user;
|
||||
|
||||
-- Index: public.email_unique_idx
|
||||
|
||||
-- DROP INDEX public.email_unique_idx;
|
||||
|
||||
CREATE UNIQUE INDEX email_unique_idx
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS email_unique_idx
|
||||
ON public.users
|
||||
USING btree
|
||||
(lower(email) COLLATE pg_catalog."default");
|
||||
|
||||
@@ -2,38 +2,21 @@
|
||||
|
||||
-- DROP TABLE public.videos;
|
||||
|
||||
CREATE TABLE public.videos
|
||||
CREATE UNLOGGED TABLE IF NOT EXISTS public.videos
|
||||
(
|
||||
id text NOT NULL,
|
||||
info text,
|
||||
updated timestamp with time zone,
|
||||
title text,
|
||||
views bigint,
|
||||
likes integer,
|
||||
dislikes integer,
|
||||
wilson_score double precision,
|
||||
published timestamp with time zone,
|
||||
description text,
|
||||
language text,
|
||||
author text,
|
||||
ucid text,
|
||||
allowed_regions text[],
|
||||
is_family_friendly boolean,
|
||||
genre text,
|
||||
genre_url text,
|
||||
license text,
|
||||
sub_count_text text,
|
||||
author_thumbnail text,
|
||||
CONSTRAINT videos_pkey PRIMARY KEY (id)
|
||||
);
|
||||
|
||||
GRANT ALL ON TABLE public.videos TO kemal;
|
||||
GRANT ALL ON TABLE public.videos TO current_user;
|
||||
|
||||
-- Index: public.id_idx
|
||||
|
||||
-- DROP INDEX public.id_idx;
|
||||
|
||||
CREATE UNIQUE INDEX id_idx
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS id_idx
|
||||
ON public.videos
|
||||
USING btree
|
||||
(id COLLATE pg_catalog."default");
|
||||
|
||||
@@ -1,14 +1,12 @@
|
||||
version: '3'
|
||||
# Warning: This docker-compose file is made for development purposes.
|
||||
# Using it will build an image from the locally cloned repository.
|
||||
#
|
||||
# If you want to use Invidious in production, see the docker-compose.yml file provided
|
||||
# in the installation documentation: https://docs.invidious.io/Installation.md
|
||||
|
||||
version: "3"
|
||||
services:
|
||||
postgres:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: docker/Dockerfile.postgres
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- postgresdata:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD", "pg_isready", "-U", "postgres"]
|
||||
|
||||
invidious:
|
||||
build:
|
||||
context: .
|
||||
@@ -17,21 +15,42 @@ services:
|
||||
ports:
|
||||
- "127.0.0.1:3000:3000"
|
||||
environment:
|
||||
# Adapted from ./config/config.yml
|
||||
# Please read the following file for a comprehensive list of all available
|
||||
# configuration options and their associated syntax:
|
||||
# https://github.com/iv-org/invidious/blob/master/config/config.example.yml
|
||||
INVIDIOUS_CONFIG: |
|
||||
channel_threads: 1
|
||||
feed_threads: 1
|
||||
db:
|
||||
dbname: invidious
|
||||
user: kemal
|
||||
password: kemal
|
||||
host: postgres
|
||||
host: invidious-db
|
||||
port: 5432
|
||||
dbname: invidious
|
||||
full_refresh: false
|
||||
https_only: false
|
||||
domain:
|
||||
check_tables: true
|
||||
# external_port:
|
||||
# domain:
|
||||
# https_only: false
|
||||
# statistics_enabled: false
|
||||
healthcheck:
|
||||
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 2
|
||||
depends_on:
|
||||
- postgres
|
||||
- invidious-db
|
||||
|
||||
invidious-db:
|
||||
image: docker.io/library/postgres:14
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- postgresdata:/var/lib/postgresql/data
|
||||
- ./config/sql:/config/sql
|
||||
- ./docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
|
||||
environment:
|
||||
POSTGRES_DB: invidious
|
||||
POSTGRES_USER: kemal
|
||||
POSTGRES_PASSWORD: kemal
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
|
||||
|
||||
volumes:
|
||||
postgresdata:
|
||||
|
||||
@@ -1,38 +1,54 @@
|
||||
FROM alpine:edge AS builder
|
||||
RUN apk add --no-cache curl crystal shards libc-dev \
|
||||
yaml-dev libxml2-dev sqlite-dev zlib-dev openssl-dev \
|
||||
yaml-static sqlite-static zlib-static openssl-libs-static
|
||||
FROM crystallang/crystal:1.2.2-alpine AS builder
|
||||
RUN apk add --no-cache sqlite-static yaml-static
|
||||
|
||||
ARG release
|
||||
|
||||
WORKDIR /invidious
|
||||
RUN curl -Lo /etc/apk/keys/omarroth.rsa.pub https://github.com/omarroth/boringssl-alpine/releases/download/1.1.0-r0/omarroth.rsa.pub && \
|
||||
curl -Lo boringssl-dev.apk https://github.com/omarroth/boringssl-alpine/releases/download/1.1.0-r0/boringssl-dev-1.1.0-r0.apk && \
|
||||
curl -Lo lsquic.apk https://github.com/omarroth/lsquic-alpine/releases/download/2.6.3-r0/lsquic-2.6.3-r0.apk && \
|
||||
apk verify --no-cache boringssl-dev.apk lsquic.apk && \
|
||||
tar -xf boringssl-dev.apk usr/lib/libcrypto.a usr/lib/libssl.a && \
|
||||
tar -xf lsquic.apk usr/lib/liblsquic.a && \
|
||||
rm /etc/apk/keys/omarroth.rsa.pub boringssl-dev.apk lsquic.apk
|
||||
COPY ./shard.yml ./shard.yml
|
||||
RUN shards update && shards install && \
|
||||
mv ./usr/lib/* ./lib/lsquic/src/lsquic/ext && \
|
||||
rm -r ./usr /root/.cache
|
||||
COPY ./shard.lock ./shard.lock
|
||||
RUN shards install --production
|
||||
|
||||
COPY --from=quay.io/invidious/lsquic-compiled /root/liblsquic.a ./lib/lsquic/src/lsquic/ext/liblsquic.a
|
||||
|
||||
COPY ./src/ ./src/
|
||||
# TODO: .git folder is required for building – this is destructive.
|
||||
# See definition of CURRENT_BRANCH, CURRENT_COMMIT and CURRENT_VERSION.
|
||||
COPY ./.git/ ./.git/
|
||||
RUN crystal build ./src/invidious.cr \
|
||||
--static --warnings all --error-on-warnings \
|
||||
|
||||
# Required for fetching player dependencies
|
||||
COPY ./scripts/ ./scripts/
|
||||
COPY ./assets/ ./assets/
|
||||
COPY ./videojs-dependencies.yml ./videojs-dependencies.yml
|
||||
|
||||
RUN crystal spec --warnings all \
|
||||
--link-flags "-lxml2 -llzma"
|
||||
|
||||
RUN if [ "${release}" == 1 ] ; then \
|
||||
crystal build ./src/invidious.cr \
|
||||
--release \
|
||||
--static --warnings all \
|
||||
--link-flags "-lxml2 -llzma"; \
|
||||
else \
|
||||
crystal build ./src/invidious.cr \
|
||||
--static --warnings all \
|
||||
--link-flags "-lxml2 -llzma"; \
|
||||
fi
|
||||
|
||||
|
||||
FROM alpine:latest
|
||||
RUN apk add --no-cache librsvg ttf-opensans
|
||||
WORKDIR /invidious
|
||||
RUN addgroup -g 1000 -S invidious && \
|
||||
adduser -u 1000 -S invidious -G invidious
|
||||
COPY ./assets/ ./assets/
|
||||
COPY --chown=invidious ./config/config.yml ./config/config.yml
|
||||
COPY --chown=invidious ./config/config.* ./config/
|
||||
RUN mv -n config/config.example.yml config/config.yml
|
||||
RUN sed -i 's/host: \(127.0.0.1\|localhost\)/host: postgres/' config/config.yml
|
||||
COPY ./config/sql/ ./config/sql/
|
||||
COPY ./locales/ ./locales/
|
||||
COPY --from=builder /invidious/assets ./assets/
|
||||
COPY --from=builder /invidious/invidious .
|
||||
RUN chmod o+rX -R ./assets ./config ./locales
|
||||
|
||||
EXPOSE 3000
|
||||
USER invidious
|
||||
CMD [ "/invidious/invidious" ]
|
||||
|
||||
53
docker/Dockerfile.arm64
Normal file
53
docker/Dockerfile.arm64
Normal file
@@ -0,0 +1,53 @@
|
||||
FROM alpine:3.15 AS builder
|
||||
RUN apk add --no-cache 'crystal=1.2.2-r0' shards sqlite-static yaml-static yaml-dev libxml2-dev zlib-static openssl-libs-static openssl-dev musl-dev
|
||||
|
||||
ARG release
|
||||
|
||||
WORKDIR /invidious
|
||||
COPY ./shard.yml ./shard.yml
|
||||
COPY ./shard.lock ./shard.lock
|
||||
RUN shards install --production
|
||||
|
||||
COPY --from=quay.io/invidious/lsquic-compiled /root/liblsquic.a ./lib/lsquic/src/lsquic/ext/liblsquic.a
|
||||
|
||||
COPY ./src/ ./src/
|
||||
# TODO: .git folder is required for building – this is destructive.
|
||||
# See definition of CURRENT_BRANCH, CURRENT_COMMIT and CURRENT_VERSION.
|
||||
COPY ./.git/ ./.git/
|
||||
|
||||
# Required for fetching player dependencies
|
||||
COPY ./scripts/ ./scripts/
|
||||
COPY ./assets/ ./assets/
|
||||
COPY ./videojs-dependencies.yml ./videojs-dependencies.yml
|
||||
|
||||
RUN crystal spec --warnings all \
|
||||
--link-flags "-lxml2 -llzma"
|
||||
|
||||
RUN if [ ${release} == 1 ] ; then \
|
||||
crystal build ./src/invidious.cr \
|
||||
--release \
|
||||
--static --warnings all \
|
||||
--link-flags "-lxml2 -llzma"; \
|
||||
else \
|
||||
crystal build ./src/invidious.cr \
|
||||
--static --warnings all \
|
||||
--link-flags "-lxml2 -llzma"; \
|
||||
fi
|
||||
|
||||
FROM alpine:3.15
|
||||
RUN apk add --no-cache librsvg ttf-opensans
|
||||
WORKDIR /invidious
|
||||
RUN addgroup -g 1000 -S invidious && \
|
||||
adduser -u 1000 -S invidious -G invidious
|
||||
COPY --chown=invidious ./config/config.* ./config/
|
||||
RUN mv -n config/config.example.yml config/config.yml
|
||||
RUN sed -i 's/host: \(127.0.0.1\|localhost\)/host: postgres/' config/config.yml
|
||||
COPY ./config/sql/ ./config/sql/
|
||||
COPY ./locales/ ./locales/
|
||||
COPY --from=builder /invidious/assets ./assets/
|
||||
COPY --from=builder /invidious/invidious .
|
||||
RUN chmod o+rX -R ./assets ./config ./locales
|
||||
|
||||
EXPOSE 3000
|
||||
USER invidious
|
||||
CMD [ "/invidious/invidious" ]
|
||||
@@ -1,12 +0,0 @@
|
||||
FROM postgres:10
|
||||
|
||||
ENV POSTGRES_USER postgres
|
||||
# Do not require a PostgreSQL superuser password.
|
||||
# See https://github.com/docker-library/postgres/issues/681.
|
||||
ENV POSTGRES_HOST_AUTH_METHOD trust
|
||||
|
||||
ADD ./config/sql /config/sql
|
||||
ADD ./docker/entrypoint.postgres.sh /entrypoint.sh
|
||||
|
||||
ENTRYPOINT [ "/entrypoint.sh" ]
|
||||
CMD [ "postgres" ]
|
||||
@@ -1,30 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
CMD="$@"
|
||||
if [ ! -f /var/lib/postgresql/data/setupFinished ]; then
|
||||
echo "### first run - setting up invidious database"
|
||||
/usr/local/bin/docker-entrypoint.sh postgres &
|
||||
sleep 10
|
||||
until runuser -l postgres -c 'pg_isready' 2>/dev/null; do
|
||||
>&2 echo "### Postgres is unavailable - waiting"
|
||||
sleep 5
|
||||
done
|
||||
>&2 echo "### importing table schemas"
|
||||
su postgres -c 'createdb invidious'
|
||||
su postgres -c 'psql -c "CREATE USER kemal WITH PASSWORD '"'kemal'"'"'
|
||||
su postgres -c 'psql invidious kemal < config/sql/channels.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/videos.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/channel_videos.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/users.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/session_ids.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/nonces.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/annotations.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/playlists.sql'
|
||||
su postgres -c 'psql invidious kemal < config/sql/playlist_videos.sql'
|
||||
touch /var/lib/postgresql/data/setupFinished
|
||||
echo "### invidious database setup finished"
|
||||
exit
|
||||
fi
|
||||
|
||||
echo "running postgres /usr/local/bin/docker-entrypoint.sh $CMD"
|
||||
exec /usr/local/bin/docker-entrypoint.sh $CMD
|
||||
12
docker/init-invidious-db.sh
Executable file
12
docker/init-invidious-db.sh
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
set -eou pipefail
|
||||
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/channels.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/videos.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/channel_videos.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/users.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/session_ids.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/nonces.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/annotations.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/playlists.sql
|
||||
psql --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" < config/sql/playlist_videos.sql
|
||||
@@ -1,7 +1,7 @@
|
||||
apiVersion: v2
|
||||
name: invidious
|
||||
description: Invidious is an alternative front-end to YouTube
|
||||
version: 1.0.0
|
||||
version: 1.1.0
|
||||
appVersion: 0.20.1
|
||||
keywords:
|
||||
- youtube
|
||||
@@ -9,9 +9,9 @@ keywords:
|
||||
- video
|
||||
- privacy
|
||||
home: https://invidio.us/
|
||||
icon: https://raw.githubusercontent.com/omarroth/invidious/05988c1c49851b7d0094fca16aeaf6382a7f64ab/assets/favicon-32x32.png
|
||||
icon: https://raw.githubusercontent.com/iv-org/invidious/05988c1c49851b7d0094fca16aeaf6382a7f64ab/assets/favicon-32x32.png
|
||||
sources:
|
||||
- https://github.com/omarroth/invidious
|
||||
- https://github.com/iv-org/invidious
|
||||
maintainers:
|
||||
- name: Leon Klingele
|
||||
email: mail@leonklingele.de
|
||||
|
||||
@@ -23,6 +23,13 @@ spec:
|
||||
runAsUser: {{ .Values.securityContext.runAsUser }}
|
||||
runAsGroup: {{ .Values.securityContext.runAsGroup }}
|
||||
fsGroup: {{ .Values.securityContext.fsGroup }}
|
||||
initContainers:
|
||||
- name: wait-for-postgresql
|
||||
image: postgres
|
||||
args:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- until pg_isready -h {{ .Values.config.db.host }} -p {{ .Values.config.db.port }} -U {{ .Values.config.db.user }}; do echo waiting for database; sleep 2; done;
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
@@ -50,4 +57,5 @@ spec:
|
||||
httpGet:
|
||||
port: 3000
|
||||
path: /
|
||||
initialDelaySeconds: 15
|
||||
restartPolicy: Always
|
||||
|
||||
@@ -7,10 +7,14 @@ metadata:
|
||||
chart: {{ .Chart.Name }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- name: http
|
||||
port: 3000
|
||||
port: {{ .Values.service.port }}
|
||||
targetPort: 3000
|
||||
selector:
|
||||
app: {{ template "invidious.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.service.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
name: invidious
|
||||
|
||||
image:
|
||||
repository: omarroth/invidious
|
||||
repository: quay.io/invidious/invidious
|
||||
tag: latest
|
||||
pullPolicy: Always
|
||||
|
||||
@@ -13,6 +13,11 @@ autoscaling:
|
||||
maxReplicas: 16
|
||||
targetCPUUtilizationPercentage: 50
|
||||
|
||||
service:
|
||||
type: clusterIP
|
||||
port: 3000
|
||||
#loadBalancerIP:
|
||||
|
||||
resources: {}
|
||||
#requests:
|
||||
# cpu: 100m
|
||||
|
||||
377
locales/ar.json
377
locales/ar.json
@@ -1,128 +1,127 @@
|
||||
{
|
||||
"`x` subscribers": "`x` المشتركين",
|
||||
"`x` videos": "`x` الفيديوهات",
|
||||
"`x` playlists": "`x` قوائم التشغيل",
|
||||
"LIVE": "مباشر",
|
||||
"Shared `x` ago": "تم رفع الفيديو منذ `x`",
|
||||
"Unsubscribe": "إلغاء الإشتراك",
|
||||
"Subscribe": "إشتراك",
|
||||
"LIVE": "مُباشِر",
|
||||
"Shared `x` ago": "تمَّ رفع المقطع المرئيّ مُنذ `x`",
|
||||
"Unsubscribe": "إلغاء الاشتراك",
|
||||
"Subscribe": "الإشتراك",
|
||||
"View channel on YouTube": "زيارة القناة على موقع يوتيوب",
|
||||
"View playlist on YouTube": "عرض قائمة التشغيل على اليوتيوب",
|
||||
"newest": "الأجدد",
|
||||
"oldest": "الأقدم",
|
||||
"popular": "الأكثر شعبية",
|
||||
"last": "اخر قوائم التشغيل المعدلة",
|
||||
"Next page": "الصفحة الثانية",
|
||||
"last": "الأخيرة",
|
||||
"Next page": "الصفحة التالية",
|
||||
"Previous page": "الصفحة السابقة",
|
||||
"Clear watch history?": "مسح السجل ؟",
|
||||
"New password": "الرقم السرى الجديد",
|
||||
"New passwords must match": "الأرقام السرية يجب ان تكون متطابقة",
|
||||
"Cannot change password for Google accounts": "لا يستطيع تغيير الرقم السرى لحساب جوجل",
|
||||
"Authorize token?": "رمز الإذن ؟",
|
||||
"Authorize token for `x`?": "تصريح الرمز لـ `x` ؟",
|
||||
"Clear watch history?": "هل تريد محو سجل المشاهدة؟",
|
||||
"New password": "كلمة مرور جديدة",
|
||||
"New passwords must match": "يَجبُ أن تكون كلمتا المرور متطابقتين",
|
||||
"Cannot change password for Google accounts": "لا يُمكن تغيير كلمة المرور لِحسابات جوجل",
|
||||
"Authorize token?": "رمز التفويض؟",
|
||||
"Authorize token for `x`?": "السماح بالرمز المميز ل 'x'؟",
|
||||
"Yes": "نعم",
|
||||
"No": "لا",
|
||||
"Import and Export Data": "استخراج و إضافة البيانات",
|
||||
"Import": "إضافة",
|
||||
"Import Invidious data": "إضافة بيانات Invidious",
|
||||
"Import YouTube subscriptions": "إضافةالإشتراكات من موقع يوتيوب",
|
||||
"Import FreeTube subscriptions (.db)": "إضافةالمشتركين من FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "إضافة المشتركين من NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "إضافة بيانات NewPipe (.zip)",
|
||||
"Export": "استخراج",
|
||||
"Export subscriptions as OPML": "استخراج المشتركين كـ OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "استخراج المشتركين كـ OPML (لـ NewPipe و FreeTube)",
|
||||
"Export data as JSON": "استخراج البيانات كـ JSON",
|
||||
"Delete account?": "حذف الحساب ؟",
|
||||
"History": "السجل",
|
||||
"An alternative front-end to YouTube": "البديل الكامل لموقع يوتيوب",
|
||||
"JavaScript license information": "معلومات ترخيص JavaScript",
|
||||
"Import and Export Data": "اِستيراد البيانات وتصديرها",
|
||||
"Import": "استيراد",
|
||||
"Import Invidious data": "استيراد بيانات انفيدياس",
|
||||
"Import YouTube subscriptions": "استيراد اشتراكات يوتيوب",
|
||||
"Import FreeTube subscriptions (.db)": "استيراد اشتراكات فريتيوب (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "استيراد اشتراكات نيو بايب (.json)",
|
||||
"Import NewPipe data (.zip)": "استيراد بيانات نيو بايب (.zip)",
|
||||
"Export": "تصدير",
|
||||
"Export subscriptions as OPML": "تصدير الاشتراكات كـOPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "تصدير الاشتراكات كـOPML (لِنيو بايب و فريتيوب)",
|
||||
"Export data as JSON": "تصدير البيانات بتنسيق JSON",
|
||||
"Delete account?": "حذف الحساب؟",
|
||||
"History": "السِّجل",
|
||||
"An alternative front-end to YouTube": "واجهة أمامية بديلة لموقع يوتيوب",
|
||||
"JavaScript license information": "معلومات ترخيص جافا سكربت",
|
||||
"source": "المصدر",
|
||||
"Log in": "تسجيل الدخول",
|
||||
"Log in/register": "تسجيل الدخول\\إنشاء حساب",
|
||||
"Log in with Google": "تسجيل الدخول بإستخدام جوجل",
|
||||
"User ID": "إسم المستخدم",
|
||||
"Password": "الرقم السرى",
|
||||
"Time (h:mm:ss):": "(يجب ان يكتب مثل هذا التنسيق) الوقت (h(ساعات):mm(دقائق):ss(ثوانى)):",
|
||||
"Text CAPTCHA": "CAPTCHA كلامية",
|
||||
"Image CAPTCHA": "CAPTCHA صورية",
|
||||
"Log in/register": "تسجيل الدخول \\ إنشاء حساب",
|
||||
"Log in with Google": "تسجيل الدخول باستخدام جوجل",
|
||||
"User ID": "مُعرِّف المُستخدم",
|
||||
"Password": "كلمة المرور",
|
||||
"Time (h:mm:ss):": "الوقت (h:mm:ss):",
|
||||
"Text CAPTCHA": "نص الكابتشا",
|
||||
"Image CAPTCHA": "صورة الكابتشا",
|
||||
"Sign In": "تسجيل الدخول",
|
||||
"Register": "انشاء الحساب",
|
||||
"E-mail": "الإيميل",
|
||||
"Register": "التسجيل",
|
||||
"E-mail": "البريد الإلكتروني",
|
||||
"Google verification code": "رمز تحقق جوجل",
|
||||
"Preferences": "التفضيلات",
|
||||
"Player preferences": "التفضيلات المشغل",
|
||||
"Always loop: ": "كرر الفيديو دائما: ",
|
||||
"Autoplay: ": "تشغيل تلقائى: ",
|
||||
"Play next by default: ": "شغل الفيديو التالي تلقائيا: ",
|
||||
"Autoplay next video: ": "شغل الفيديو التالي تلقائيا (في قوائم التشغيل) ",
|
||||
"Listen by default: ": "تشغيل النسخة السمعية تلقائى: ",
|
||||
"Proxy videos: ": "عرض الفيديوهات عن طريق البروكسي؟ ",
|
||||
"Default speed: ": "السرعة الإفتراضية: ",
|
||||
"Preferred video quality: ": "الجودة المفضلة للفيديوهات: ",
|
||||
"Player volume: ": "صوت المشغل: ",
|
||||
"Default comments: ": "إضهار التعليقات الإفتراضية لـ: ",
|
||||
"Preferences": "الإعدادات",
|
||||
"preferences_category_player": "إعدادات المُشغِّل",
|
||||
"preferences_video_loop_label": "كرر المقطع المرئيّ دائما: ",
|
||||
"preferences_autoplay_label": "تشغيل تلقائي: ",
|
||||
"preferences_continue_label": "شغل المقطع التالي تلقائيًا: ",
|
||||
"preferences_continue_autoplay_label": "شغل المقطع التالي تلقائيًا: ",
|
||||
"preferences_listen_label": "تشغيل النسخة السمعية تلقائيًا: ",
|
||||
"preferences_local_label": "بروكسي المقاطع المرئيّة؟ ",
|
||||
"preferences_speed_label": "السرعة الافتراضية: ",
|
||||
"preferences_quality_label": "الجودة المفضلة للمقاطع: ",
|
||||
"preferences_volume_label": "صوت المشغل: ",
|
||||
"preferences_comments_label": "التعليقات الافتراضية: ",
|
||||
"youtube": "يوتيوب",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "الترجمات الإفتراضية: ",
|
||||
"Fallback captions: ": "الترجمات المصاحبة: ",
|
||||
"Show related videos: ": "اعرض الفيديوهات ذات الصلة: ",
|
||||
"Show annotations by default: ": "اعرض الملاحظات في الفيديو تلقائيا: ",
|
||||
"Visual preferences": "التفضيلات المرئية",
|
||||
"Player style: ": "شكل مشغل الفيديوهات: ",
|
||||
"Dark mode: ": "الوضع الليلى: ",
|
||||
"Theme: ": "المظهر: ",
|
||||
"reddit": "ريديت",
|
||||
"preferences_captions_label": "التسميات التوضيحية الإفتراضية: ",
|
||||
"Fallback captions: ": "التسميات التوضيحية الاحتياطيَّة: ",
|
||||
"preferences_related_videos_label": "اعرض الفيديوهات ذات الصلة: ",
|
||||
"preferences_annotations_label": "اعرض الملاحظات في الفيديو تلقائيا: ",
|
||||
"preferences_extend_desc_label": "توسيع وصف الفيديو تلقائيا: ",
|
||||
"preferences_vr_mode_label": "مقاطع فيديو تفاعلية ب درجة 360: ",
|
||||
"preferences_category_visual": "التفضيلات المرئية",
|
||||
"preferences_player_style_label": "شكل مشغل الفيديوهات: ",
|
||||
"Dark mode: ": "الوضع الليلي: ",
|
||||
"preferences_dark_mode_label": "المظهر: ",
|
||||
"dark": "غامق (اسود)",
|
||||
"light": "فاتح (ابيض)",
|
||||
"Thin mode: ": "الوضع الخفيف: ",
|
||||
"Subscription preferences": "تفضيلات الإشتراك",
|
||||
"Show annotations by default for subscribed channels: ": "عرض الملاحظات في الفيديوهات تلقائيا في القنوات المشترك بها فقط: ",
|
||||
"preferences_thin_mode_label": "الوضع الخفيف: ",
|
||||
"preferences_category_misc": "تفضيلات متنوعة",
|
||||
"preferences_automatic_instance_redirect_label": "إعادة توجيه المثيل التلقائي (إعادة التوجيه إلى redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "تفضيلات الاشتراك",
|
||||
"preferences_annotations_subscribed_label": "عرض الملاحظات في الفيديوهات تلقائيا في القنوات المشترك بها فقط: ",
|
||||
"Redirect homepage to feed: ": "إعادة التوجية من الصفحة الرئيسية لصفحة المشتركين (لرؤية اخر فيديوهات المشتركين): ",
|
||||
"Number of videos shown in feed: ": "عدد الفيديوهات التى ستظهر فى صفحة المشتركين: ",
|
||||
"Sort videos by: ": "ترتيب الفيديو بـ: ",
|
||||
"published": "احدث فيديو",
|
||||
"published - reverse": "احدث فيديو - عكسى",
|
||||
"alphabetically": "ترتيب ابجدى",
|
||||
"alphabetically - reverse": "ابجدى - عكسى",
|
||||
"channel name": "بإسم القناة",
|
||||
"channel name - reverse": "بإسم القناة - عكسى",
|
||||
"Only show latest video from channel: ": "فقط إظهر اخر فيديو من القناة: ",
|
||||
"Only show latest unwatched video from channel: ": "فقط اظهر اخر فيديو لم يتم رؤيتة من القناة: ",
|
||||
"Only show unwatched: ": "فقط اظهر الذى لم يتم رؤيتة: ",
|
||||
"Only show notifications (if there are any): ": "إظهار الإشعارات فقط (إذا كان هناك أي): ",
|
||||
"preferences_max_results_label": "عدد الفيديوهات التى ستظهر فى صفحة المشتركين: ",
|
||||
"preferences_sort_label": "ترتيب الفيديوهات بـ: ",
|
||||
"published": "أحدث فيديو",
|
||||
"published - reverse": "أحدث فيديو - عكسي",
|
||||
"alphabetically": "ترتيب أبجدي",
|
||||
"alphabetically - reverse": "أبجدي - عكسي",
|
||||
"channel name": "باسم القناة",
|
||||
"channel name - reverse": "باسم القناة - عكسى",
|
||||
"Only show latest video from channel: ": "فقط أظهر آخر فيديو من القناة: ",
|
||||
"Only show latest unwatched video from channel: ": "فقط أظهر آخر فيديو لم يتم رؤيته من القناة: ",
|
||||
"preferences_unseen_only_label": "فقط أظهر الذي لم يتم رؤيته: ",
|
||||
"preferences_notifications_only_label": "إظهار الإشعارات فقط (إذا كان هناك أي): ",
|
||||
"Enable web notifications": "تفعيل إشعارات المتصفح",
|
||||
"`x` uploaded a video": "`x` رفع فيديو",
|
||||
"`x` is live": "`x` فى بث مباشر",
|
||||
"Data preferences": "إعدادات التفضيلات",
|
||||
"`x` is live": "`x` في بث مباشر",
|
||||
"preferences_category_data": "إعدادات التفضيلات",
|
||||
"Clear watch history": "حذف سجل المشاهدة",
|
||||
"Import/export data": "إضافة\\إستخراج البيانات",
|
||||
"Change password": "غير الرقم السرى",
|
||||
"Manage subscriptions": "إدارة المشتركين",
|
||||
"Import/export data": "إضافة\\استخراج البيانات",
|
||||
"Change password": "غير كلمة السر",
|
||||
"Manage subscriptions": "إدارة الاشتراكات",
|
||||
"Manage tokens": "إدارة الرموز",
|
||||
"Watch history": "سجل المشاهدة",
|
||||
"Delete account": "حذف الحساب",
|
||||
"Administrator preferences": "إعدادات المدير",
|
||||
"Default homepage: ": "الصفحة الرئيسية الافتراضية ",
|
||||
"Feed menu: ": "قائمة التدفقات: ",
|
||||
"preferences_category_admin": "إعدادات المدير",
|
||||
"preferences_default_home_label": "الصفحة الرئيسية الافتراضية: ",
|
||||
"preferences_feed_menu_label": "قائمة التدفقات: ",
|
||||
"preferences_show_nick_label": "إظهار اللقب في الأعلى: ",
|
||||
"Top enabled: ": "تفعيل 'الأفضل' ؟ ",
|
||||
"CAPTCHA enabled: ": "تفعيل الكابتشا: ",
|
||||
"Login enabled: ": "تفعيل الولوج: ",
|
||||
"Registration enabled: ": "تفعيل التسجيل: ",
|
||||
"Report statistics: ": "الإبلاغ عن الإحصائيات: ",
|
||||
"Save preferences": "حفظ التفضيلات",
|
||||
"Subscription manager": "مدير الإشتراكات",
|
||||
"Save preferences": "حفظ الإعدادات",
|
||||
"Subscription manager": "مدير الاشتراكات",
|
||||
"Token manager": "إداره الرمز",
|
||||
"Token": "الرمز",
|
||||
"`x` subscriptions": "`x` مشتركين",
|
||||
"`x` tokens": "`x` رموز",
|
||||
"Import/export": "إضافة\\إستخراج",
|
||||
"unsubscribe": "إلغاء الإشتراك",
|
||||
"Import/export": "استيراد/تصدير",
|
||||
"unsubscribe": "إلغاء الاشتراك",
|
||||
"revoke": "مسح",
|
||||
"Subscriptions": "الإشتراكات",
|
||||
"`x` unseen notifications": "`x` إشعارات لم تشاهدها بعد",
|
||||
"Subscriptions": "الاشتراكات",
|
||||
"search": "بحث",
|
||||
"Log out": "تسجيل الخروج",
|
||||
"Released under the AGPLv3 by Omar Roth.": "تم الإنشاء تحت AGPLv3 بواسطة عمر روث.",
|
||||
"Released under the AGPLv3 on Github.": "صدر تحت AGPLv3 على Github.",
|
||||
"Source available here.": "الأكواد متوفرة هنا.",
|
||||
"View JavaScript license information.": "مشاهدة معلومات حول تراخيص الجافاسكريبت.",
|
||||
"View privacy policy.": "عرض سياسة الخصوصية.",
|
||||
@@ -132,79 +131,83 @@
|
||||
"Private": "خاص",
|
||||
"View all playlists": "عرض جميع قوائم التشغيل",
|
||||
"Updated `x` ago": "تم تحديثه منذ `x`",
|
||||
"Delete playlist `x`?": "حذف قائمه التشغيل `x` ?",
|
||||
"Delete playlist": "حذف قائمه التغشيل",
|
||||
"Create playlist": "إنشاء قائمه تشغيل",
|
||||
"Delete playlist `x`?": "حذف قائمة التشغيل `x`؟",
|
||||
"Delete playlist": "حذف قائمة التغشيل",
|
||||
"Create playlist": "إنشاء قائمة تشغيل",
|
||||
"Title": "العنوان",
|
||||
"Playlist privacy": "إعدادات الخصوصيه",
|
||||
"Editing playlist `x`": "تعديل قائمه التشفيل `x`",
|
||||
"Playlist privacy": "إعدادات الخصوصية",
|
||||
"Editing playlist `x`": "تعديل قائمة التشغيل `x`",
|
||||
"Show more": "إظهار المزيد",
|
||||
"Show less": "عرض اقل",
|
||||
"Watch on YouTube": "مشاهدة الفيديو على اليوتيوب",
|
||||
"Hide annotations": "إخفاء الملاحظات فى الفيديو",
|
||||
"Show annotations": "عرض الملاحظات فى الفيديو",
|
||||
"Switch Invidious Instance": "تبديل المثيل Invidious",
|
||||
"Broken? Try another Invidious Instance": "معطل؟ جرب مثيل Invidious آخر",
|
||||
"Hide annotations": "إخفاء الملاحظات في الفيديو",
|
||||
"Show annotations": "عرض الملاحظات في الفيديو",
|
||||
"Genre: ": "النوع: ",
|
||||
"License: ": "التراخيص: ",
|
||||
"Family friendly? ": "محتوى عائلى? ",
|
||||
"Family friendly? ": "محتوى عائلي؟ ",
|
||||
"Wilson score: ": "درجة ويلسون: ",
|
||||
"Engagement: ": "نسبة المشاركة (عدد المشاهدات\\عدد الإعجابات): ",
|
||||
"Engagement: ": "نسبة المشاركة: ",
|
||||
"Whitelisted regions: ": "الدول المسموح فيها هذا الفيديو: ",
|
||||
"Blacklisted regions: ": "الدول الحظور فيها هذا الفيديو: ",
|
||||
"Blacklisted regions: ": "الدول المحظور فيها هذا الفيديو: ",
|
||||
"Shared `x`": "شارك منذ `x`",
|
||||
"`x` views": "`x` مشاهدات",
|
||||
"Premieres in `x`": "يعرض فى `x`",
|
||||
"Premieres `x`": "يعرض `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "اهلا! يبدو ان الجافاسكريبت معطلة. اضغط هنا لعرض التعليقات, ضع فى إعتبارك انها ستأخذ وقت اطول للعرض.",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "أهلًا! يبدو أن جافاسكريبت معطلٌ لديك. اضغط هنا لعرض التعليقات، وَضَع في اعتبارك أنها ستأخذ وقتًا أطول للتحميل.",
|
||||
"View YouTube comments": "عرض تعليقات اليوتيوب",
|
||||
"View more comments on Reddit": "عرض المزيد من التعليقات على\\من موقع Reddit",
|
||||
"View `x` comments": "عرض `x` تعليقات",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "عرض `x` تعليقات",
|
||||
"": "عرض `x` تعليقات"
|
||||
},
|
||||
"View Reddit comments": "عرض تعليقات ريدإت Reddit",
|
||||
"Hide replies": "إخفاء الردود",
|
||||
"Show replies": "عرض الردود",
|
||||
"Incorrect password": "الرقم السرى غير صحيح",
|
||||
"Quota exceeded, try again in a few hours": "تم تجاوز عدد المرات المسموح بها, حاول مرة اخرى بعد عدة ساعات",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "غير قادر على تسجيل الدخول, تأكد من تشغيل المصادقة الثنائية 2FA.",
|
||||
"Incorrect password": "كلمة السر غير صحيحة",
|
||||
"Quota exceeded, try again in a few hours": "تم تجاوز عدد المرات المسموح بها، حاول مجددًا بعد بضع ساعات",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "غير قادر على تسجيل الدخول، تأكد من تشغيل المصادقة الثنائية 2FA.",
|
||||
"Invalid TFA code": "كود مصادقة ثنائية 2FA غير صحيح",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "لم يتم تسجيل الدخول. هذا ربما بسبب ان المصادقة الثنائية 2FA معطلة فى حسابك.",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "فشل تسجيل الدخول. قد يكون هذا بسبب أن المصادقة الثنائية 2FA معطلة في حسابك.",
|
||||
"Wrong answer": "إجابة خاطئة",
|
||||
"Erroneous CAPTCHA": "الكابتشا CAPTCHA غير صاحلة",
|
||||
"CAPTCHA is a required field": "مكان الكابتشا CAPTCHA مطلوب",
|
||||
"User ID is a required field": "مكان إسم المستخدم مطلوب",
|
||||
"Password is a required field": "مكان الرقم السرى مطلوب",
|
||||
"Wrong username or password": "إسم المستخدم او الرقم السرى غير صحيح",
|
||||
"User ID is a required field": "مكان اسم المستخدم مطلوب",
|
||||
"Password is a required field": "مكان كلمة السر مطلوب",
|
||||
"Wrong username or password": "اسم المستخدم او كلمة السر غير صحيح",
|
||||
"Please sign in using 'Log in with Google'": "الرجاء تسجيل الدخول 'تسجيل الدخول بواسطة جوجل'",
|
||||
"Password cannot be empty": "الرقم السرى لايمكن ان يكون فارغ",
|
||||
"Password cannot be longer than 55 characters": "الرقم السرى لا يتعدى 55 حرف",
|
||||
"Password cannot be empty": "لا يمكن أن تكون كلمة السر فارغة",
|
||||
"Password cannot be longer than 55 characters": "يجب أن لا تتعدى كلمة السر 55 حرفًا",
|
||||
"Please log in": "الرجاء تسجيل الدخول",
|
||||
"Invidious Private Feed for `x`": "صفحة Invidious للمشتركين الخاصة\\مخفية لـ `x`",
|
||||
"Invidious Private Feed for `x`": "تغذية Invidious خاصة ل 'x'",
|
||||
"channel:`x`": "قناة:`x`",
|
||||
"Deleted or invalid channel": "قناة ممسوحة او غير صالحة",
|
||||
"This channel does not exist.": "القناة غير موجودة.",
|
||||
"This channel does not exist.": "هذه القناة غير موجودة.",
|
||||
"Could not get channel info.": "لم يستطع الحصول على معلومات القناة.",
|
||||
"Could not fetch comments": "لم يتمكن من إحضار التعليقات",
|
||||
"View `x` replies": "عرض `x` ردود",
|
||||
"`x` ago": "`x` منذ",
|
||||
"Load more": "عرض المزيد",
|
||||
"`x` points": "`x` نقاط",
|
||||
"Could not create mix.": "لم يستطع عمل خلط.",
|
||||
"Empty playlist": "قائمة التشغيل فارغة",
|
||||
"Not a playlist.": "قائمة التشغيل غير صالحة.",
|
||||
"Playlist does not exist.": "قائمة التشغيل غير موجودة.",
|
||||
"Could not pull trending pages.": "لم يستطع عرض الصفحات الراجئة.",
|
||||
"Hidden field \"challenge\" is a required field": "مكان مخفى \"تحدى\" مكان مطلوب",
|
||||
"Hidden field \"token\" is a required field": "مكان مخفى \"رمز\" مكان مطلوب",
|
||||
"Erroneous challenge": "تحدى غير صالح",
|
||||
"Hidden field \"challenge\" is a required field": "مكان مخفي \"تحدي\" مكان مطلوب",
|
||||
"Hidden field \"token\" is a required field": "مكان مخفي \"رمز\" مكان مطلوب",
|
||||
"Erroneous challenge": "تحدي غير صالح",
|
||||
"Erroneous token": "روز غير صالح",
|
||||
"No such user": "مستخدم غير صالح",
|
||||
"Token is expired, please try again": "الرمز منتهى الصلاحية , الرجاء المحاولة مرة اخرى",
|
||||
"English": "إنجليزى",
|
||||
"English (auto-generated)": "إنجليزى (تم إنشائة تلقائى)",
|
||||
"Token is expired, please try again": "الرمز منتهى الصلاحية، الرجاء المحاولة مرة اخرى",
|
||||
"English": "إنجليزي",
|
||||
"English (auto-generated)": "إنجليزي (تم إنشائه تلقائيًا)",
|
||||
"Afrikaans": "الأفريكانية",
|
||||
"Albanian": "الألبانية",
|
||||
"Amharic": "الأمهرية",
|
||||
"Arabic": "العربية",
|
||||
"Armenian": "الأرميني",
|
||||
"Azerbaijani": "أذربيجان",
|
||||
"Armenian": "الأرمينية",
|
||||
"Azerbaijani": "أذربيجانية",
|
||||
"Bangla": "البنغالية",
|
||||
"Basque": "الباسكي",
|
||||
"Basque": "الباسكية",
|
||||
"Belarusian": "البيلاروسية",
|
||||
"Bosnian": "البوسنية",
|
||||
"Bulgarian": "البلغارية",
|
||||
@@ -301,19 +304,13 @@
|
||||
"Yiddish": "اليديشية",
|
||||
"Yoruba": "اليوروبا",
|
||||
"Zulu": "الزولو",
|
||||
"`x` years": "`x` سنوات",
|
||||
"`x` months": "`x` شهور",
|
||||
"`x` weeks": "`x` اسابيع",
|
||||
"`x` days": "`x` ايام",
|
||||
"`x` hours": "`x` ساعات",
|
||||
"`x` minutes": "`x` دقائق",
|
||||
"`x` seconds": "`x` ثوانى",
|
||||
"Fallback comments: ": "التعليقات البديلة: ",
|
||||
"Popular": "الأكثر شعبية",
|
||||
"Search": "بحث",
|
||||
"Top": "الأفضل",
|
||||
"About": "حول",
|
||||
"Rating: ": "التقييم: ",
|
||||
"Language: ": "اللغة: ",
|
||||
"preferences_locale_label": "اللغة: ",
|
||||
"View as playlist": "عرض كا قائمة التشغيل",
|
||||
"Default": "الكل",
|
||||
"Music": "الاغانى",
|
||||
@@ -321,16 +318,116 @@
|
||||
"News": "الأخبار",
|
||||
"Movies": "الأفلام",
|
||||
"Download": "نزّل",
|
||||
"Download as: ": "نزّله كـ: ",
|
||||
"Download as: ": "نزله كـ: ",
|
||||
"%A %B %-d, %Y": "%A %-d %B %Y",
|
||||
"(edited)": "(تم تعديلة)",
|
||||
"(edited)": "(معدّل)",
|
||||
"YouTube comment permalink": "رابط التعليق على اليوتيوب",
|
||||
"permalink": "الرابط",
|
||||
"`x` marked it with a ❤": "`x` اعجب بهذا",
|
||||
"Audio mode": "الوضع الصوتى",
|
||||
"`x` marked it with a ❤": "`x` أعجب بهذا",
|
||||
"Audio mode": "الوضع الصوتي",
|
||||
"Video mode": "وضع الفيديو",
|
||||
"Videos": "الفيديوهات",
|
||||
"Playlists": "قوائم التشغيل",
|
||||
"Community": "المجتمع",
|
||||
"Current version: ": "الإصدار الحالي: "
|
||||
"relevance": "ملاؤم",
|
||||
"rating": "تقييم",
|
||||
"date": "التاريخ",
|
||||
"views": "مشاهدات",
|
||||
"content_type": "نوع المحتوى",
|
||||
"duration": "المدة الزمنية",
|
||||
"features": "الميزات",
|
||||
"sort": "فرز",
|
||||
"hour": "ساعة",
|
||||
"today": "اليوم",
|
||||
"week": "هذا الأسبوع",
|
||||
"month": "هذا الشهر",
|
||||
"year": "هذه السنة",
|
||||
"video": "فيديو",
|
||||
"channel": "قناة",
|
||||
"playlist": "قائمة التشغيل",
|
||||
"movie": "فيلم",
|
||||
"show": "عرض",
|
||||
"hd": "عالية الدقة",
|
||||
"subtitles": "ترجمات",
|
||||
"creative_commons": "المشاع الإبداعي",
|
||||
"3d": "ثلاثي الأبعاد",
|
||||
"live": "مباشر",
|
||||
"4k": "4k",
|
||||
"location": "الأماكن",
|
||||
"hdr": "وضع التباين العالي",
|
||||
"filter": "معامل الفرز",
|
||||
"Current version: ": "الإصدار الحالي: ",
|
||||
"next_steps_error_message": "بعد ذلك يجب أن تحاول: ",
|
||||
"next_steps_error_message_refresh": "تحديث",
|
||||
"next_steps_error_message_go_to_youtube": "انتقل إلى يوتيوب",
|
||||
"short": "قصير (< 4 دقائق)",
|
||||
"long": "طويل (> 20 دقيقة)",
|
||||
"footer_source_code": "شفرة المصدر",
|
||||
"footer_original_source_code": "شفرة المصدر الأصلية",
|
||||
"footer_modfied_source_code": "شفرة المصدر المعدلة",
|
||||
"adminprefs_modified_source_code_url_label": "URL إلى مستودع التعليمات البرمجية المصدرية المعدلة",
|
||||
"footer_documentation": "التوثيق",
|
||||
"footer_donate_page": "تبرّع",
|
||||
"preferences_region_label": "بلد المحتوى: ",
|
||||
"preferences_quality_dash_label": "جودة فيديو DASH المفضلة: ",
|
||||
"preferences_quality_option_dash": "DASH (جودة تكييفية)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "متوسطة",
|
||||
"preferences_quality_option_small": "صغيرة",
|
||||
"preferences_quality_dash_option_auto": "تلقائي",
|
||||
"preferences_quality_dash_option_best": "الأفضل",
|
||||
"preferences_quality_dash_option_worst": "أسوأ",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"purchased": "تم شراؤها",
|
||||
"none": "لاشيء",
|
||||
"videoinfo_started_streaming_x_ago": "بدأ البث منذ `x`",
|
||||
"videoinfo_watch_on_youTube": "مشاهدة على يوتيوب",
|
||||
"videoinfo_youTube_embed_link": "مضمن",
|
||||
"videoinfo_invidious_embed_link": "رابط مضمن",
|
||||
"user_created_playlists": "'x' إنشاء قوائم التشغيل",
|
||||
"user_saved_playlists": "قوائم التشغيل المحفوظة 'x'",
|
||||
"Video unavailable": "الفيديو غير متوفر",
|
||||
"360": "360°",
|
||||
"download_subtitles": "ترجمات - 'x' (.vtt)",
|
||||
"invidious": "الخيالي",
|
||||
"preferences_save_player_pos_label": "احفظ وقت الفيديو الحالي: ",
|
||||
"crash_page_you_found_a_bug": "يبدو أنك قد وجدت خطأً برمجيًّا في Invidious!",
|
||||
"generic_videos_count_0": "لا فيديوهات",
|
||||
"generic_videos_count_1": "فيديو واحد",
|
||||
"generic_videos_count_2": "فيديوهين",
|
||||
"generic_videos_count_3": "{{count}} فيديوهات",
|
||||
"generic_videos_count_4": "{{count}} فيديو",
|
||||
"generic_videos_count_5": "{{count}} فيديو",
|
||||
"generic_subscribers_count_0": "لا مشتركين",
|
||||
"generic_subscribers_count_1": "مشترك واحد",
|
||||
"generic_subscribers_count_2": "مشتركان",
|
||||
"generic_subscribers_count_3": "{{count}} مشتركين",
|
||||
"generic_subscribers_count_4": "{{count}} مشترك",
|
||||
"generic_subscribers_count_5": "{{count}} مشترك",
|
||||
"generic_views_count_0": "لا مشاهدات",
|
||||
"generic_views_count_1": "مشاهدة واحدة",
|
||||
"generic_views_count_2": "مشاهدتان",
|
||||
"generic_views_count_3": "{{count}} مشاهدات",
|
||||
"generic_views_count_4": "{{count}} مشاهدة",
|
||||
"generic_views_count_5": "{{count}} مشاهدة",
|
||||
"generic_subscriptions_count_0": "لا اشتراكات",
|
||||
"generic_subscriptions_count_1": "اشتراك واحد",
|
||||
"generic_subscriptions_count_2": "اشتراكان",
|
||||
"generic_subscriptions_count_3": "{{count}} اشتراكات",
|
||||
"generic_subscriptions_count_4": "{{count}} اشتراك",
|
||||
"generic_subscriptions_count_5": "{{count}} اشتراك",
|
||||
"generic_playlists_count_0": "لا قوائم تشغيل",
|
||||
"generic_playlists_count_1": "قائمة تشغيل واحدة",
|
||||
"generic_playlists_count_2": "قائمتا تشغيل",
|
||||
"generic_playlists_count_3": "{{count}} قوائم تشغيل",
|
||||
"generic_playlists_count_4": "{{count}} قائمة تشغيل",
|
||||
"generic_playlists_count_5": "{{count}} قائمة تشغيل"
|
||||
}
|
||||
61
locales/bn_BD.json
Normal file
61
locales/bn_BD.json
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"LIVE": "লাইভ",
|
||||
"Shared `x` ago": "`x` আগে শেয়ার করা হয়েছে",
|
||||
"Unsubscribe": "আনসাবস্ক্রাইব",
|
||||
"Subscribe": "সাবস্ক্রাইব",
|
||||
"View channel on YouTube": "ইউটিউবে চ্যানেল দেখুন",
|
||||
"View playlist on YouTube": "ইউটিউবে প্লেলিস্ট দেখুন",
|
||||
"newest": "সর্ব-নতুন",
|
||||
"oldest": "পুরানতম",
|
||||
"popular": "জনপ্রিয়",
|
||||
"last": "শেষটা",
|
||||
"Next page": "পরের পৃষ্ঠা",
|
||||
"Previous page": "আগের পৃষ্ঠা",
|
||||
"Clear watch history?": "দেখার ইতিহাস সাফ করবেন?",
|
||||
"New password": "নতুন পাসওয়ার্ড",
|
||||
"New passwords must match": "নতুন পাসওয়ার্ড অবশ্যই মিলতে হবে",
|
||||
"Cannot change password for Google accounts": "গুগল অ্যাকাউন্টগুলোর জন্য পাসওয়ার্ড পরিবর্তন করা যায় না",
|
||||
"Authorize token?": "টোকেন অনুমোদন করবেন?",
|
||||
"Authorize token for `x`?": "`x` -এর জন্য টোকেন অনুমোদন?",
|
||||
"Yes": "হ্যাঁ",
|
||||
"No": "না",
|
||||
"Import and Export Data": "তথ্য আমদানি ও রপ্তানি",
|
||||
"Import": "আমদানি",
|
||||
"Import Invidious data": "ইনভিডিয়াস তথ্য আমদানি",
|
||||
"Import YouTube subscriptions": "ইউটিউব সাবস্ক্রিপশন আনুন",
|
||||
"Import FreeTube subscriptions (.db)": "ফ্রিটিউব সাবস্ক্রিপশন (.db) আনুন",
|
||||
"Import NewPipe subscriptions (.json)": "নতুন পাইপ সাবস্ক্রিপশন আনুন (.json)",
|
||||
"Import NewPipe data (.zip)": "নিউপাইপ তথ্য আনুন (.zip)",
|
||||
"Export": "তথ্য বের করুন",
|
||||
"Export subscriptions as OPML": "সাবস্ক্রিপশন OPML হিসাবে আনুন",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "OPML-এ সাবস্ক্রিপশন বের করুন(নিউ পাইপ এবং ফ্রিউটিউব এর জন্য)",
|
||||
"Export data as JSON": "JSON হিসাবে তথ্য বের করুন",
|
||||
"Delete account?": "অ্যাকাউন্ট মুছে ফেলবেন?",
|
||||
"History": "ইতিহাস",
|
||||
"An alternative front-end to YouTube": "ইউটিউবের একটি বিকল্পস্বরূপ সম্মুখ-প্রান্ত",
|
||||
"JavaScript license information": "জাভাস্ক্রিপ্ট লাইসেন্সের তথ্য",
|
||||
"source": "সূত্র",
|
||||
"Log in": "লগ ইন",
|
||||
"Log in/register": "লগ ইন/রেজিস্টার",
|
||||
"Log in with Google": "গুগল দিয়ে লগ ইন করুন",
|
||||
"User ID": "ইউজার আইডি",
|
||||
"Password": "পাসওয়ার্ড",
|
||||
"Time (h:mm:ss):": "সময় (ঘণ্টা:মিনিট:সেকেন্ড):",
|
||||
"Text CAPTCHA": "টেক্সট ক্যাপচা",
|
||||
"Image CAPTCHA": "চিত্র ক্যাপচা",
|
||||
"Sign In": "সাইন ইন",
|
||||
"Register": "নিবন্ধন",
|
||||
"E-mail": "ই-মেইল",
|
||||
"Google verification code": "গুগল যাচাইকরণ কোড",
|
||||
"Preferences": "পছন্দসমূহ",
|
||||
"preferences_category_player": "প্লেয়ারের পছন্দসমূহ",
|
||||
"preferences_video_loop_label": "সর্বদা লুপ: ",
|
||||
"preferences_autoplay_label": "স্বয়ংক্রিয় চালু: ",
|
||||
"preferences_continue_label": "ডিফল্টভাবে পরবর্তী চালাও: ",
|
||||
"preferences_continue_autoplay_label": "পরবর্তী ভিডিও স্বয়ংক্রিয়ভাবে চালাও: ",
|
||||
"preferences_listen_label": "সহজাতভাবে শোনো: ",
|
||||
"preferences_local_label": "ভিডিও প্রক্সি করো: ",
|
||||
"preferences_speed_label": "সহজাত গতি: ",
|
||||
"preferences_quality_label": "পছন্দের ভিডিও মান: ",
|
||||
"preferences_volume_label": "প্লেয়ার শব্দের মাত্রা: "
|
||||
}
|
||||
103
locales/ca.json
Normal file
103
locales/ca.json
Normal file
@@ -0,0 +1,103 @@
|
||||
{
|
||||
"oldest": "més antic",
|
||||
"Yes": "Sí",
|
||||
"preferences_quality_label": "Qualitat de vídeo preferida: ",
|
||||
"newest": "més nou",
|
||||
"No": "No",
|
||||
"Google verification code": "Codi de verificació de Google",
|
||||
"User ID": "ID d'usuari",
|
||||
"Preferences": "Preferències",
|
||||
"Dark mode: ": "Mode fosc: ",
|
||||
"dark": "fosc",
|
||||
"light": "clar",
|
||||
"published": "publicat",
|
||||
"published - reverse": "publicat - invers",
|
||||
"alphabetically": "alfabèticament",
|
||||
"alphabetically - reverse": "alfabèticament - invers",
|
||||
"channel name - reverse": "nom del canal - invers",
|
||||
"preferences_category_data": "Preferències de dades",
|
||||
"Delete account": "Elimina compte",
|
||||
"Save preferences": "Guarda preferències",
|
||||
"Private": "Privat",
|
||||
"Show more": "Mostra'n més",
|
||||
"Show less": "Mostra'n menys",
|
||||
"Hide replies": "Amaga respostes",
|
||||
"Arabic": "Àrab",
|
||||
"Armenian": "Armeni",
|
||||
"Basque": "Basc",
|
||||
"Filipino": "Filipí",
|
||||
"Finnish": "Finès",
|
||||
"German": "Alemany",
|
||||
"Greek": "Grec",
|
||||
"Hungarian": "Hongarès",
|
||||
"Icelandic": "Islandès",
|
||||
"Italian": "Italià",
|
||||
"Japanese": "Japonès",
|
||||
"Korean": "Coreà",
|
||||
"Kurdish": "Kurd",
|
||||
"Lithuanian": "Lituà",
|
||||
"Luxembourgish": "Luxemburguès",
|
||||
"Macedonian": "Macedoni",
|
||||
"Polish": "Polonès",
|
||||
"Portuguese": "Portuguès",
|
||||
"Romanian": "Romanès",
|
||||
"Russian": "Rus",
|
||||
"Serbian": "Serbi",
|
||||
"Spanish (Latin America)": "Castellà (Amèrica llatina)",
|
||||
"Turkish": "Turc",
|
||||
"Ukrainian": "Ucraïnès",
|
||||
"preferences_locale_label": "Idioma: ",
|
||||
"Gaming": "Jocs",
|
||||
"Movies": "Películes",
|
||||
"Download": "Descarrega",
|
||||
"Download as: ": "Descarrega com: ",
|
||||
"Videos": "Vídeos",
|
||||
"content_type": "Tipus",
|
||||
"duration": "Duració",
|
||||
"sort": "Ordena per",
|
||||
"week": "Aquesta setmana",
|
||||
"month": "Aquest mes",
|
||||
"year": "Aquest any",
|
||||
"video": "Vídeo",
|
||||
"channel": "Canal",
|
||||
"short": "Curt (< 4 minuts)",
|
||||
"long": "Llarg (> 20 minuts)",
|
||||
"Current version: ": "Versió actual: ",
|
||||
"Malay": "Malai",
|
||||
"Persian": "Persa",
|
||||
"Slovak": "Eslovac",
|
||||
"Search": "Busca",
|
||||
"Show annotations": "Mostra anotacions",
|
||||
"preferences_region_label": "País del contingut: ",
|
||||
"preferences_sort_label": "Ordena vídeos per: ",
|
||||
"Import/export": "Importa/exporta",
|
||||
"channel name": "nom del canal",
|
||||
"Title": "Títol",
|
||||
"Belarusian": "Bielorús",
|
||||
"Enable web notifications": "Activa notificacions web",
|
||||
"search": "busca",
|
||||
"Catalan": "Català",
|
||||
"Croatian": "Croat",
|
||||
"preferences_category_admin": "Preferències d'administrador",
|
||||
"Hide annotations": "Amaga anotacions",
|
||||
"Show replies": "Mostra respostes",
|
||||
"Bulgarian": "Búlgar",
|
||||
"Albanian": "Albanès",
|
||||
"French": "Francès",
|
||||
"Irish": "Irlandès",
|
||||
"Maltese": "Maltès",
|
||||
"Danish": "Danès",
|
||||
"Galician": "Gallec",
|
||||
"Hebrew": "Hebreu",
|
||||
"Indonesian": "Indonesi",
|
||||
"Spanish": "Castellà",
|
||||
"Vietnamese": "Vietnamita",
|
||||
"News": "Notícies",
|
||||
"show": "Mostra",
|
||||
"footer_documentation": "Documentació",
|
||||
"Thai": "Tailandès",
|
||||
"Music": "Música",
|
||||
"relevance": "Rellevància",
|
||||
"hour": "Última hora",
|
||||
"today": "Avui"
|
||||
}
|
||||
288
locales/cs.json
Normal file
288
locales/cs.json
Normal file
@@ -0,0 +1,288 @@
|
||||
{
|
||||
"LIVE": "ŽIVĚ",
|
||||
"Shared `x` ago": "Sdíleno před `x`",
|
||||
"Unsubscribe": "Odhlásit odběr",
|
||||
"Subscribe": "Odebírat",
|
||||
"View channel on YouTube": "Otevřít kanál na YouTube",
|
||||
"View playlist on YouTube": "Zobrazit playlist na YouTube",
|
||||
"newest": "nejnovější",
|
||||
"oldest": "nejstarší",
|
||||
"popular": "populární",
|
||||
"last": "poslední",
|
||||
"Next page": "Další strana",
|
||||
"Previous page": "Předchozí strana",
|
||||
"Clear watch history?": "Smazat historii?",
|
||||
"New password": "Nové heslo",
|
||||
"New passwords must match": "Hesla se musí schodovat",
|
||||
"Cannot change password for Google accounts": "Nelze změnit heslo pro účty Google",
|
||||
"Authorize token?": "Autorizovat token?",
|
||||
"Authorize token for `x`?": "Autorizovat token pro `x`?",
|
||||
"Yes": "Ano",
|
||||
"No": "Ne",
|
||||
"Import and Export Data": "Import a Export údajů",
|
||||
"Import": "Inport",
|
||||
"Import Invidious data": "Importovat údaje Invidious",
|
||||
"Import YouTube subscriptions": "Importovat odběry z YouTube",
|
||||
"Import FreeTube subscriptions (.db)": "Importovat odběry z FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importovat odběry z NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importovat údeje z NewPipe (.zip)",
|
||||
"Export": "Exportovat",
|
||||
"Export subscriptions as OPML": "Exportovat odběry jako OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportovat údaje jako OPML (na NewPipe a FreeTube)",
|
||||
"Export data as JSON": "Exportovat data jako JSON",
|
||||
"Delete account?": "Smazat účet?",
|
||||
"History": "Historie",
|
||||
"An alternative front-end to YouTube": "Alternativní front-end pro YouTube",
|
||||
"JavaScript license information": "Informace o licenci JavaScript",
|
||||
"source": "zdrojový kód",
|
||||
"Log in": "Přihlásit se",
|
||||
"Log in/register": "Přihlásit se/vytvořit účet",
|
||||
"Log in with Google": "Přihlásit se s Googlem",
|
||||
"User ID": "Uživatelské IČ",
|
||||
"Password": "Heslo",
|
||||
"Time (h:mm:ss):": "Čas (h:mm:ss):",
|
||||
"Text CAPTCHA": "Textové CAPTCHA",
|
||||
"Image CAPTCHA": "Obrázkové CAPTCHA",
|
||||
"Sign In": "Přihlásit se",
|
||||
"Register": "Vytvořit účet",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Verifikační číslo Google",
|
||||
"Preferences": "Nastavení",
|
||||
"preferences_category_player": "Nastavení přehravače",
|
||||
"preferences_video_loop_label": "Vždy opakovat: ",
|
||||
"preferences_autoplay_label": "Automatické přehrávání: ",
|
||||
"preferences_continue_label": "Přehrát další ve výchozím stavu: ",
|
||||
"preferences_continue_autoplay_label": "Automaticky přehrát další video: ",
|
||||
"preferences_listen_label": "Poslouchat ve výchozím nastavení: ",
|
||||
"preferences_local_label": "Video přes proxy: ",
|
||||
"preferences_speed_label": "Základní Rychlost: ",
|
||||
"preferences_quality_label": "Preferovaná kvalita videa: ",
|
||||
"preferences_volume_label": "Hlasitost přehrávače: ",
|
||||
"preferences_comments_label": "Předpřipravené komentáře: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "reddit",
|
||||
"preferences_captions_label": "Standartní Titulky: ",
|
||||
"Fallback captions: ": "Záložní titulky: ",
|
||||
"preferences_related_videos_label": "Zobrazit podobné videa: ",
|
||||
"preferences_annotations_label": "Zobrazovat poznámky ve výchozím nastavení: ",
|
||||
"preferences_extend_desc_label": "Rozšířit automaticky popis u videa: ",
|
||||
"preferences_category_visual": "Nastavení vzhledu",
|
||||
"preferences_player_style_label": "Styl přehrávače ",
|
||||
"Dark mode: ": "Tmavý režim ",
|
||||
"preferences_dark_mode_label": "Vzhled: ",
|
||||
"dark": "tmavý",
|
||||
"light": "světlý",
|
||||
"preferences_thin_mode_label": "Kompaktní režim: ",
|
||||
"preferences_category_subscription": "Nastavení předplatných",
|
||||
"preferences_annotations_subscribed_label": "Ve výchozím nastavení zobrazovat poznámky u odebíraných kanálů: ",
|
||||
"Redirect homepage to feed: ": "Přesměrovávat domovskou stránku na informační kanál: ",
|
||||
"preferences_max_results_label": "Počet videí zobrazovaných v informačním kanále: ",
|
||||
"preferences_sort_label": "Roztřídit videa podle: ",
|
||||
"published": "publikováno",
|
||||
"published - reverse": "podle publikování - obrátit",
|
||||
"alphabetically": "podle abecedy",
|
||||
"alphabetically - reverse": "podle abecedy - převrátit",
|
||||
"channel name": "název kanálu",
|
||||
"channel name - reverse": "podle jména kanálu - převrátit",
|
||||
"Only show latest video from channel: ": "Jenom zobrazit nejnovjejší video z kanálu: ",
|
||||
"Only show latest unwatched video from channel: ": "Zobrazit jen nejnovější nezhlédnuté video z daného kanálu: ",
|
||||
"preferences_unseen_only_label": "Zobrazit jen již nezhlédnuté: ",
|
||||
"preferences_notifications_only_label": "Zobrazit pouze upozornění (pokud nějaká jsou): ",
|
||||
"Enable web notifications": "Povolit webové upozornění",
|
||||
"`x` uploaded a video": "`x` nahrál(a) video",
|
||||
"`x` is live": "`x` je živě",
|
||||
"preferences_category_data": "Nastavení dat",
|
||||
"Clear watch history": "Smazat historii",
|
||||
"Import/export data": "importovat/exportovat data",
|
||||
"Change password": "Změnit heslo",
|
||||
"Manage subscriptions": "Spravovat odebírané kanály",
|
||||
"Manage tokens": "Spravovat klíče",
|
||||
"Watch history": "Historie Sledování",
|
||||
"Delete account": "Smazat Účet",
|
||||
"preferences_category_admin": "Administrátorská nastavení",
|
||||
"preferences_default_home_label": "Základní domovská stránka: ",
|
||||
"preferences_feed_menu_label": "Menu doporučených: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA povolen: ",
|
||||
"Login enabled: ": "Přihlášení povoleno: ",
|
||||
"Registration enabled: ": "Registrace povolena ",
|
||||
"Report statistics: ": "Oznámit statistiky: ",
|
||||
"Save preferences": "Uložit nastavení",
|
||||
"Subscription manager": "Správa Odběrů",
|
||||
"Token manager": "Správa klíčů",
|
||||
"Token": "Klíč",
|
||||
"Import/export": "Importovat/exportovat",
|
||||
"unsubscribe": "odhlásit odběr",
|
||||
"revoke": "vrátit zpět",
|
||||
"Subscriptions": "Odběry",
|
||||
"search": "hledat",
|
||||
"Log out": "Odhlásit se",
|
||||
"Source available here.": "Zdrojový kód dostupný zde.",
|
||||
"View JavaScript license information.": "Zobrazit informace o licenci JavaScript .",
|
||||
"View privacy policy.": "Zobrazit Zásady ochrany osobních údajů.",
|
||||
"Trending": "Trendy",
|
||||
"Public": "Veřejné",
|
||||
"Unlisted": "Nevypsáno",
|
||||
"Private": "Soukromé",
|
||||
"View all playlists": "Zobrazit všechny playlisty",
|
||||
"Updated `x` ago": "Aktualizováno před `x`",
|
||||
"Delete playlist `x`?": "Smazat playlist `x`?",
|
||||
"Delete playlist": "Smazat playlist",
|
||||
"Create playlist": "Vytvořit playlist",
|
||||
"Title": "Název",
|
||||
"Editing playlist `x`": "Upravování playlistu `x`",
|
||||
"Show more": "Zobrazit více",
|
||||
"Show less": "Zobrazit méně",
|
||||
"Watch on YouTube": "Sledovat na YouTube",
|
||||
"Hide annotations": "Skrýt vysvětlivky",
|
||||
"Show annotations": "Zobrazit vysvětlivky",
|
||||
"Genre: ": "Žánr: ",
|
||||
"License: ": "Licence: ",
|
||||
"Family friendly? ": "Vhodné pro děti? ",
|
||||
"Engagement: ": "Závaznost: ",
|
||||
"English": "Angličtina",
|
||||
"English (auto-generated)": "Angličtina (automaticky generováno)",
|
||||
"Afrikaans": "Afrikánština",
|
||||
"Albanian": "Albánština",
|
||||
"Amharic": "Amharština",
|
||||
"Arabic": "Arabština",
|
||||
"Armenian": "Arménština",
|
||||
"Azerbaijani": "Azerbajdžánština",
|
||||
"Bangla": "Bengálština",
|
||||
"Basque": "Baskičtina",
|
||||
"Belarusian": "Běloruština",
|
||||
"Bosnian": "Bosenština",
|
||||
"Bulgarian": "Bulharština",
|
||||
"Burmese": "Barmština",
|
||||
"Catalan": "Katalánština",
|
||||
"Cebuano": "Cebuánština",
|
||||
"Chinese (Simplified)": "Čínština (zjednodušená)",
|
||||
"Chinese (Traditional)": "Čínština (tradiční)",
|
||||
"Corsican": "Korsičtina",
|
||||
"Croatian": "Chorvatština",
|
||||
"Czech": "Čeština",
|
||||
"Danish": "Dánština",
|
||||
"Dutch": "Nizozemština",
|
||||
"Esperanto": "Esperanto",
|
||||
"Estonian": "Estonština",
|
||||
"Filipino": "Filipínština",
|
||||
"Finnish": "Finština",
|
||||
"French": "Francouzština",
|
||||
"Galician": "Galicijština",
|
||||
"Georgian": "Gruzínština",
|
||||
"German": "Němčina",
|
||||
"Greek": "Řečtina",
|
||||
"Gujarati": "Gudžarátština",
|
||||
"Haitian Creole": "Haitská kreolština",
|
||||
"Hausa": "Hauština",
|
||||
"Hawaiian": "Havajština",
|
||||
"Hebrew": "Hebrejština",
|
||||
"Hindi": "Hindština",
|
||||
"Hmong": "Hmongština",
|
||||
"Hungarian": "Maďarština",
|
||||
"Icelandic": "Islandština",
|
||||
"Igbo": "Igboština",
|
||||
"Indonesian": "Indonéština",
|
||||
"Irish": "Irština",
|
||||
"Italian": "Italština",
|
||||
"Japanese": "Japonština",
|
||||
"Javanese": "Javánština",
|
||||
"Kannada": "Kannadština",
|
||||
"Kazakh": "Kazaština",
|
||||
"Khmer": "Khmerština",
|
||||
"Korean": "Korejština",
|
||||
"Kurdish": "Kurdština",
|
||||
"Kyrgyz": "Kyrgyzština",
|
||||
"Lao": "Laoština",
|
||||
"Latin": "Latina",
|
||||
"Latvian": "Lotyština",
|
||||
"Lithuanian": "Litevština",
|
||||
"Luxembourgish": "Lucemburština",
|
||||
"Macedonian": "Makedonština",
|
||||
"Malagasy": "Malgaština",
|
||||
"Malay": "Malajština",
|
||||
"Malayalam": "Malajálamština",
|
||||
"Maltese": "Maltština",
|
||||
"Maori": "Maorština",
|
||||
"Marathi": "Maráthština",
|
||||
"Mongolian": "Mongolština",
|
||||
"Nepali": "Nepálština",
|
||||
"Norwegian Bokmål": "Norština Bokmål",
|
||||
"Nyanja": "Čičevština",
|
||||
"Pashto": "Paštština",
|
||||
"Persian": "Perština",
|
||||
"Polish": "Polština",
|
||||
"Portuguese": "Portugalština",
|
||||
"Punjabi": "Paňdžábština",
|
||||
"Romanian": "Rumunština",
|
||||
"Russian": "Ruština",
|
||||
"Samoan": "Samojština",
|
||||
"Scottish Gaelic": "Skotská gaelština",
|
||||
"Serbian": "Srbština",
|
||||
"Shona": "Shona",
|
||||
"Sindhi": "Sindhština",
|
||||
"Sinhala": "Sinhálština",
|
||||
"Slovak": "Slovenština",
|
||||
"Slovenian": "Slovinština",
|
||||
"Somali": "Somálština",
|
||||
"Southern Sotho": "Sesothština",
|
||||
"Spanish": "Španělština",
|
||||
"Spanish (Latin America)": "Španělština (Latinská Amerika)",
|
||||
"Sundanese": "Sundština",
|
||||
"Swahili": "Svahilština",
|
||||
"Swedish": "Švédština",
|
||||
"Tajik": "Tádžičtina",
|
||||
"Tamil": "Tamilština",
|
||||
"Telugu": "Telugština",
|
||||
"Thai": "Thajština",
|
||||
"Turkish": "Turečtina",
|
||||
"Ukrainian": "Ukrajinština",
|
||||
"Urdu": "Urdština",
|
||||
"Uzbek": "Uzbečtina",
|
||||
"Vietnamese": "Vietnamština",
|
||||
"Welsh": "Velština",
|
||||
"Western Frisian": "Západofríština",
|
||||
"Xhosa": "Xhoština",
|
||||
"Yiddish": "Jidiš",
|
||||
"Yoruba": "Jorubština",
|
||||
"Zulu": "Zuluština",
|
||||
"Popular": "Populární",
|
||||
"About": "Informace",
|
||||
"Rating: ": "Hodnocení: ",
|
||||
"preferences_locale_label": "Jazyk: ",
|
||||
"Default": "Výchozí",
|
||||
"Music": "Hudba",
|
||||
"Gaming": "Hry",
|
||||
"News": "Zprávy",
|
||||
"Movies": "Filmy",
|
||||
"Download": "Stáhnout",
|
||||
"Download as: ": "Stáhnout jako: ",
|
||||
"(edited)": "(upraveno)",
|
||||
"`x` marked it with a ❤": "`x` to označil(a) se ❤",
|
||||
"Audio mode": "Audiový režim",
|
||||
"Video mode": "Videový režim",
|
||||
"Videos": "Videa",
|
||||
"Community": "Komunita",
|
||||
"rating": "hodnocení",
|
||||
"date": "datum",
|
||||
"views": "zhlédnutí",
|
||||
"duration": "délka",
|
||||
"hour": "hodina",
|
||||
"today": "dnes",
|
||||
"week": "týden",
|
||||
"month": "měsíc",
|
||||
"year": "rok",
|
||||
"video": "video",
|
||||
"channel": "kanál",
|
||||
"playlist": "playlist",
|
||||
"movie": "film",
|
||||
"show": "zobrazit",
|
||||
"hd": "HD",
|
||||
"subtitles": "titulky",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "živě",
|
||||
"4k": "4k",
|
||||
"location": "umístění",
|
||||
"hdr": "HDR",
|
||||
"filter": "filtr"
|
||||
}
|
||||
402
locales/da.json
Normal file
402
locales/da.json
Normal file
@@ -0,0 +1,402 @@
|
||||
{
|
||||
"LIVE": "LIVE",
|
||||
"Shared `x` ago": "Delt for `x` siden",
|
||||
"Unsubscribe": "Opsig abonnement",
|
||||
"Subscribe": "Abonner",
|
||||
"View channel on YouTube": "Vis kanal på YouTube",
|
||||
"View playlist on YouTube": "Vis afspilningsliste på YouTube",
|
||||
"newest": "nyeste",
|
||||
"oldest": "ældste",
|
||||
"popular": "populært",
|
||||
"last": "sidste",
|
||||
"Next page": "Næste side",
|
||||
"Previous page": "Forrige side",
|
||||
"Clear watch history?": "Ryd afspilningshistorik?",
|
||||
"New password": "Nyt kodeord",
|
||||
"New passwords must match": "Nye kodeord skal matche",
|
||||
"Cannot change password for Google accounts": "Kan ikke skifte kodeord til Google-konti",
|
||||
"Authorize token?": "Godkend token?",
|
||||
"Authorize token for `x`?": "Godkend token til `x`?",
|
||||
"Yes": "Ja",
|
||||
"No": "Nej",
|
||||
"Import and Export Data": "Importer og Eksporter Data",
|
||||
"Import": "Importer",
|
||||
"Import Invidious data": "Importer Invidious data",
|
||||
"Import YouTube subscriptions": "Importer YouTube abonnementer",
|
||||
"Import FreeTube subscriptions (.db)": "Importer FreeTube abonnementer (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importer NewPipe abonnementer (.json)",
|
||||
"Import NewPipe data (.zip)": "Importer NewPipe data (.zip)",
|
||||
"Export": "Exporter",
|
||||
"Export subscriptions as OPML": "Exporter abonnementer som OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exporter abonnementer som OPML (til NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Exporter data som JSON",
|
||||
"Delete account?": "Slet konto?",
|
||||
"History": "Historik",
|
||||
"An alternative front-end to YouTube": "Et alternativt front-end til YouTube",
|
||||
"JavaScript license information": "JavaScript licens information",
|
||||
"source": "kilde",
|
||||
"Log in": "Log på",
|
||||
"Log in/register": "Log på/registrer",
|
||||
"Log in with Google": "Log på med Google",
|
||||
"User ID": "Bruger ID",
|
||||
"Password": "Kodeord",
|
||||
"Time (h:mm:ss):": "Tid (t:mm:ss):",
|
||||
"Text CAPTCHA": "Tekst CAPTCHA",
|
||||
"Image CAPTCHA": "Billede CAPTCHA",
|
||||
"Sign In": "Log ind",
|
||||
"Register": "Registrer",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Google-verifikationskode",
|
||||
"Preferences": "Præferencer",
|
||||
"preferences_category_player": "Afspillerindstillinger",
|
||||
"preferences_video_loop_label": "Altid gentag: ",
|
||||
"preferences_autoplay_label": "Auto afspil: ",
|
||||
"preferences_continue_label": "Afspil næste som standard: ",
|
||||
"preferences_continue_autoplay_label": "Auto afspil næste video: ",
|
||||
"preferences_listen_label": "Lyt som standard: ",
|
||||
"preferences_local_label": "Proxy videoer: ",
|
||||
"preferences_speed_label": "Standard hastighed: ",
|
||||
"preferences_quality_label": "Foretrukken video kvalitet: ",
|
||||
"preferences_volume_label": "Lydstyrke: ",
|
||||
"preferences_comments_label": "Standard kommentarer: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Standard undertekster: ",
|
||||
"Fallback captions: ": "Alternative undertekster: ",
|
||||
"preferences_related_videos_label": "Vis relaterede videoer: ",
|
||||
"preferences_annotations_label": "Vis annotationer som standard: ",
|
||||
"preferences_extend_desc_label": "Automatisk udvid videoens beskrivelse: ",
|
||||
"preferences_vr_mode_label": "Interaktiv 360 graders videoer: ",
|
||||
"preferences_category_visual": "Visuelle præferencer",
|
||||
"preferences_player_style_label": "Afspiller stil: ",
|
||||
"Dark mode: ": "Mørk tilstand: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "mørk",
|
||||
"light": "lys",
|
||||
"preferences_thin_mode_label": "Tynd tilstand: ",
|
||||
"preferences_category_subscription": "Abonnements præferencer",
|
||||
"preferences_annotations_subscribed_label": "Vis annotationer som standard for abonnerede kanaler: ",
|
||||
"Redirect homepage to feed: ": "Omdiriger startside til feed: ",
|
||||
"preferences_max_results_label": "Antal videoer vist i feed: ",
|
||||
"preferences_sort_label": "Sorter videoer efter: ",
|
||||
"published": "offentliggjort",
|
||||
"published - reverse": "offentliggjort - omvendt",
|
||||
"alphabetically": "alfabetisk",
|
||||
"alphabetically - reverse": "alfabetisk - omvendt",
|
||||
"channel name": "kanalnavn",
|
||||
"channel name - reverse": "kanalnavn - omvendt",
|
||||
"Only show latest video from channel: ": "Vis kun seneste video fra kanal: ",
|
||||
"Only show latest unwatched video from channel: ": "Vis kun seneste usete video fra kanal: ",
|
||||
"preferences_unseen_only_label": "Vis kun usete: ",
|
||||
"preferences_notifications_only_label": "Vis kun notifikationer (hvis der er nogle): ",
|
||||
"Enable web notifications": "Aktiver webnotifikationer",
|
||||
"`x` uploaded a video": "`x` uploadede en video",
|
||||
"`x` is live": "`x` er live",
|
||||
"preferences_category_data": "Data præferencer",
|
||||
"Clear watch history": "Ryd afspilningshistorik",
|
||||
"Import/export data": "Importer/exporter data",
|
||||
"Change password": "Skift adgangskode",
|
||||
"Manage subscriptions": "Administrer abonnementer",
|
||||
"Manage tokens": "Administrer tokens",
|
||||
"Watch history": "Afspilningshistorik",
|
||||
"Delete account": "Slet konto",
|
||||
"preferences_category_admin": "Administrator præferencer",
|
||||
"preferences_default_home_label": "Standard startside: ",
|
||||
"preferences_feed_menu_label": "Feed menu: ",
|
||||
"Top enabled: ": "Top aktiveret: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA aktiveret: ",
|
||||
"Login enabled: ": "Login aktiveret: ",
|
||||
"Registration enabled: ": "Registrering aktiveret: ",
|
||||
"Report statistics: ": "Indsend statistik: ",
|
||||
"Save preferences": "Gem præferencer",
|
||||
"Subscription manager": "Abonnementsmanager",
|
||||
"Token manager": "Tokenmanager",
|
||||
"Token": "Token",
|
||||
"Import/export": "Importer/eksporter",
|
||||
"unsubscribe": "opsig abonnement",
|
||||
"revoke": "tilbagekald",
|
||||
"Subscriptions": "Abonnementer",
|
||||
"search": "søg",
|
||||
"Log out": "Log ud",
|
||||
"Source available here.": "Kilde tilgængelig her.",
|
||||
"View JavaScript license information.": "Vis JavaScriptlicensinformation.",
|
||||
"View privacy policy.": "Vis privatpolitik.",
|
||||
"Trending": "Trending",
|
||||
"Public": "Offentlig",
|
||||
"Unlisted": "Skjult",
|
||||
"Private": "Privat",
|
||||
"View all playlists": "Vis alle afspilningslister",
|
||||
"Updated `x` ago": "Opdateret for `x` siden",
|
||||
"Delete playlist `x`?": "Fjern spilleliste `x`?",
|
||||
"Delete playlist": "Slet afspilningsliste",
|
||||
"Create playlist": "Opret afspilningsliste",
|
||||
"Title": "Titel",
|
||||
"Playlist privacy": "Privatlivsindstillinger for afspilningsliste",
|
||||
"Editing playlist `x`": "Redigerer afspilningsliste `x`",
|
||||
"Show more": "Vis mere",
|
||||
"Show less": "Vis mindre",
|
||||
"Watch on YouTube": "Se på YouTube",
|
||||
"Hide annotations": "Skjul annotationer",
|
||||
"Show annotations": "Vis annotationer",
|
||||
"Genre: ": "Genre: ",
|
||||
"License: ": "Licens: ",
|
||||
"Family friendly? ": "Familievenlig? ",
|
||||
"Wilson score: ": "Wilson score: ",
|
||||
"Engagement: ": "Engagement: ",
|
||||
"Whitelisted regions: ": "Whitelistede regioner: ",
|
||||
"Blacklisted regions: ": "Blacklistede regioner: ",
|
||||
"Shared `x`": "Delt `x`",
|
||||
"Premieres in `x`": "Har premiere om `x`",
|
||||
"Premieres `x`": "Har premiere om `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hej! Det ser ud til at du har JavaScript slået fra. Klik her for at se kommentarer, vær opmærksom på at de kan tage længere om at indlæse.",
|
||||
"View YouTube comments": "Vis YouTube kommentarer",
|
||||
"View more comments on Reddit": "Se flere kommentarer på Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vis `x` kommentarer.([^.,0-9]|^)1([^.,0-9]|$)",
|
||||
"": "Vis `x` kommentarer"
|
||||
},
|
||||
"View Reddit comments": "Vis Reddit kommentarer",
|
||||
"Hide replies": "Skjul svar",
|
||||
"Show replies": "Vis svar",
|
||||
"Incorrect password": "Forkert adgangskode",
|
||||
"Quota exceeded, try again in a few hours": "Kvota overskredet, prøv igen om et par timer",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Login fejlet, tjek at totrinsbekræftelse (Authenticator eller SMS) er slået til.",
|
||||
"Invalid TFA code": "Ugyldig TFA kode",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Login fejlede. Dette kan skyldes, at to-faktor autentificering ikke er aktiveret for din konto.",
|
||||
"Wrong answer": "Forkert svar",
|
||||
"Erroneous CAPTCHA": "Fejlagtig CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA er et obligatorisk felt",
|
||||
"User ID is a required field": "Bruger ID er et krævet felt",
|
||||
"Password is a required field": "Adgangskode er et obligatorisk felt",
|
||||
"Wrong username or password": "Forkert brugernavn eller adgangskode",
|
||||
"Please sign in using 'Log in with Google'": "Log ind via 'Log ind med Google'",
|
||||
"Password cannot be empty": "Adgangskoden må ikke være tom",
|
||||
"Password cannot be longer than 55 characters": "Adgangskoden må ikke være længere end 55 tegn",
|
||||
"Please log in": "Venligst log ind",
|
||||
"channel:`x`": "kanal: 'x'",
|
||||
"Deleted or invalid channel": "Slettet eller invalid kanal",
|
||||
"This channel does not exist.": "Denne kanal eksisterer ikke.",
|
||||
"Could not get channel info.": "Kunne ikke hente kanal info.",
|
||||
"Could not fetch comments": "Kunne ikke hente kommentarer",
|
||||
"`x` ago": "'x' siden",
|
||||
"Load more": "Hent flere",
|
||||
"Could not create mix.": "Kunne ikke skabe blanding.",
|
||||
"Empty playlist": "Tom playliste",
|
||||
"Not a playlist.": "Ikke en playliste.",
|
||||
"Playlist does not exist.": "Playlist eksisterer ikke.",
|
||||
"Esperanto": "Esperanto",
|
||||
"Czech": "Tjekkisk",
|
||||
"Danish": "Dansk",
|
||||
"Community": "Samfund",
|
||||
"Afrikaans": "Afrikansk",
|
||||
"Portuguese": "Portugisisk",
|
||||
"Ukrainian": "Ukrainsk",
|
||||
"Fallback comments: ": "Fallback kommentarer: ",
|
||||
"Popular": "Populær",
|
||||
"footer_donate_page": "Doner",
|
||||
"Gujarati": "Gujarati",
|
||||
"Punjabi": "Punjabi",
|
||||
"Sundanese": "Sundanesisk",
|
||||
"Urdu": "Urdu",
|
||||
"preferences_region_label": "Indhold land: ",
|
||||
"Hidden field \"challenge\" is a required field": "Det skjulte felt \"challenge\" er et påkrævet felt",
|
||||
"Albanian": "Albansk",
|
||||
"preferences_quality_dash_label": "Fortrukket DASH video kvalitet: ",
|
||||
"live": "Direkte",
|
||||
"Lao": "Lao-tse",
|
||||
"Filipino": "Filippinsk",
|
||||
"Greek": "Græsk",
|
||||
"Kurdish": "Kurdisk",
|
||||
"Malay": "Malaysisk",
|
||||
"Romanian": "Rumænsk",
|
||||
"Somali": "Somalisk",
|
||||
"preferences_locale_label": "Sprog: ",
|
||||
"News": "Nyheder",
|
||||
"permalink": "permalink",
|
||||
"date": "Upload dato",
|
||||
"features": "Funktioner",
|
||||
"filter": "Filter",
|
||||
"Khmer": "Khmer",
|
||||
"Finnish": "Finsk",
|
||||
"week": "Denne uge",
|
||||
"Korean": "Koreansk",
|
||||
"Telugu": "Telugu",
|
||||
"Malayalam": "Malayalam",
|
||||
"View as playlist": "Se som spilleliste",
|
||||
"Hungarian": "Ungarsk",
|
||||
"Welsh": "Walisisk",
|
||||
"subtitles": "Undertekster/CC",
|
||||
"Bosnian": "Bosnisk",
|
||||
"Yiddish": "Jiddisch",
|
||||
"Belarusian": "Belarussisk",
|
||||
"today": "I dag",
|
||||
"Shona": "Shona",
|
||||
"Slovenian": "Slovensk",
|
||||
"Gaming": "Gaming",
|
||||
"Bangla": "Bengali",
|
||||
"Swahili": "Swahili",
|
||||
"`x` marked it with a ❤": "`x`markeret med et ❤",
|
||||
"Kyrgyz": "Kirgisisk",
|
||||
"Turkish": "Tyrkisk",
|
||||
"adminprefs_modified_source_code_url_label": "URL-adresse til modificeret kildekodelager",
|
||||
"Switch Invidious Instance": "Skift Invidious instans",
|
||||
"Samoan": "Samoansk",
|
||||
"Spanish": "Spansk",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"footer_documentation": "Dokumentation",
|
||||
"Pashto": "Pashto",
|
||||
"footer_modfied_source_code": "Modificeret Kildekode",
|
||||
"Released under the AGPLv3 on Github.": "Udgivet under AGPLv3 på Github.",
|
||||
"Tajik": "Tadsjikisk",
|
||||
"month": "Denne måned",
|
||||
"Hebrew": "Hebraisk",
|
||||
"Kannada": "Kannada",
|
||||
"Current version: ": "Nuværende version: ",
|
||||
"Amharic": "Amharisk",
|
||||
"Swedish": "Svensk",
|
||||
"Corsican": "Korsikansk",
|
||||
"movie": "Film",
|
||||
"Could not pull trending pages.": "Kunne ikke hente trending sider.",
|
||||
"English": "Engelsk",
|
||||
"hd": "HD",
|
||||
"Hausa": "Islandsk",
|
||||
"year": "Dette år",
|
||||
"Japanese": "Japansk",
|
||||
"content_type": "Type",
|
||||
"Icelandic": "Islandsk",
|
||||
"Basque": "Baskisk",
|
||||
"rating": "Bedømmelse",
|
||||
"Yoruba": "Yoruba",
|
||||
"Erroneous token": "Fejlagtig token",
|
||||
"Videos": "Videoer",
|
||||
"show": "Vis",
|
||||
"Luxembourgish": "Luxemboursk",
|
||||
"Vietnamese": "Vietnamesisk",
|
||||
"Latvian": "Lettisk",
|
||||
"Indonesian": "Indonesisk",
|
||||
"duration": "Varighed",
|
||||
"footer_original_source_code": "Original kildekode",
|
||||
"Search": "Søg",
|
||||
"Serbian": "Serbisk",
|
||||
"Armenian": "Armensk",
|
||||
"Bulgarian": "Bulgarsk",
|
||||
"French": "Fransk",
|
||||
"Burmese": "Burmesisk",
|
||||
"Macedonian": "Makedonsk",
|
||||
"Southern Sotho": "Sydlige Sotho",
|
||||
"About": "Omkring",
|
||||
"Malagasy": "Madagaskiske",
|
||||
"Rating: ": "Bedømmelse: ",
|
||||
"Movies": "Film",
|
||||
"YouTube comment permalink": "Youtube kommentarer permalink",
|
||||
"location": "Lokation",
|
||||
"hdr": "HDR",
|
||||
"Cebuano": "Cebuano (Sugbuanon)",
|
||||
"Nyanja": "Nyanja",
|
||||
"Chinese (Simplified)": "Kinesisk (forenklet)",
|
||||
"Chinese (Traditional)": "Kinesisk (traditionelt)",
|
||||
"Dutch": "Hollandsk",
|
||||
"Estonian": "Estisk",
|
||||
"preferences_automatic_instance_redirect_label": "Automatisk eksempel omdirigering (Fallback til redirect.invidious.io): ",
|
||||
"Nepali": "Nepalesisk",
|
||||
"Norwegian Bokmål": "Norsk Bokmål",
|
||||
"(edited)": "(ændret)",
|
||||
"preferences_show_nick_label": "Vis kælenavn på toppen: ",
|
||||
"Galician": "Galisisk",
|
||||
"German": "Tysk",
|
||||
"Maori": "Maori",
|
||||
"Slovak": "Slovakisk",
|
||||
"relevance": "Relevans",
|
||||
"hour": "Sidste time",
|
||||
"playlist": "Spilleliste",
|
||||
"long": "Lang (> 20 minutter)",
|
||||
"creative_commons": "Creative Commons",
|
||||
"Marathi": "Marathi",
|
||||
"Sindhi": "Sindhi",
|
||||
"preferences_category_misc": "Diverse indstillinger",
|
||||
"Erroneous challenge": "Fejlagtig udfordring",
|
||||
"Hindi": "Hindi",
|
||||
"Igbo": "Igbo",
|
||||
"Javanese": "Javanesisk",
|
||||
"Kazakh": "Kasabhisk",
|
||||
"Latin": "Latinsk",
|
||||
"Lithuanian": "Lituaisk",
|
||||
"Mongolian": "Mongolsk",
|
||||
"Spanish (Latin America)": "Spansk (Latinamerika)",
|
||||
"Uzbek": "Usbekisk",
|
||||
"Western Frisian": "Vestfrisisk",
|
||||
"Top": "Top",
|
||||
"Music": "Musik",
|
||||
"views": "Antal visninger",
|
||||
"sort": "Sorter efter",
|
||||
"Zulu": "Zulu",
|
||||
"Invidious Private Feed for `x`": "Invidious Privat Feed til `x`",
|
||||
"English (auto-generated)": "Engelsk (autogenereret)",
|
||||
"Arabic": "Arabisk",
|
||||
"Croatian": "Kroatisk",
|
||||
"Hawaiian": "Hawaiiansk",
|
||||
"Maltese": "Maltesisk",
|
||||
"Polish": "Polsk",
|
||||
"Russian": "Russisk",
|
||||
"Download": "Hent",
|
||||
"Download as: ": "Hent som: ",
|
||||
"Playlists": "Spillelister",
|
||||
"next_steps_error_message_refresh": "Opdater",
|
||||
"next_steps_error_message_go_to_youtube": "Gå til Youtube",
|
||||
"footer_source_code": "Kildekode",
|
||||
"Tamil": "Tamil",
|
||||
"Xhosa": "Xhosa",
|
||||
"next_steps_error_message": "Efter det burde du prøve at: ",
|
||||
"Sinhala": "Singalesisk (Sinhala)",
|
||||
"Thai": "Thai",
|
||||
"Broken? Try another Invidious Instance": "I stykker? Prøv en anden Invidious instans",
|
||||
"No such user": "Brugeren findes ikke",
|
||||
"Token is expired, please try again": "Token er udløbet, prøv igen",
|
||||
"Catalan": "Catalansk",
|
||||
"Haitian Creole": "Haitiansk",
|
||||
"Irish": "Irsk",
|
||||
"Persian": "Persisk",
|
||||
"Scottish Gaelic": "Skotsk Gælisk",
|
||||
"Default": "Standard",
|
||||
"Video mode": "Videotilstand",
|
||||
"short": "Kort (< 4 minutter)",
|
||||
"Hidden field \"token\" is a required field": "Det skjulte felt \"token\" er et påkrævet felt",
|
||||
"Azerbaijani": "Aserbajdsjansk",
|
||||
"Georgian": "Georgisk",
|
||||
"Italian": "Italiensk",
|
||||
"Audio mode": "Lydtilstand",
|
||||
"video": "Video",
|
||||
"channel": "Kanal",
|
||||
"3d": "3D",
|
||||
"4k": "4K",
|
||||
"Hmong": "Hmong",
|
||||
"preferences_quality_option_medium": "Medium",
|
||||
"preferences_quality_option_small": "Lille",
|
||||
"preferences_quality_dash_option_best": "Bedste",
|
||||
"preferences_quality_dash_option_worst": "Værste",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Købt",
|
||||
"360": "360°",
|
||||
"none": "ingen",
|
||||
"videoinfo_started_streaming_x_ago": "Streamen blev startet for `x`siden",
|
||||
"videoinfo_watch_on_youTube": "Se på YouTube",
|
||||
"videoinfo_youTube_embed_link": "Integrer",
|
||||
"videoinfo_invidious_embed_link": "Integrer Link",
|
||||
"download_subtitles": "Undertekster - `x`(.vtt)",
|
||||
"user_created_playlists": "`x`opretede spillelister",
|
||||
"user_saved_playlists": "´x`gemte spillelister",
|
||||
"Video unavailable": "Video ikke tilgængelig",
|
||||
"preferences_save_player_pos_label": "Gem den nuværende videotid: ",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_option_dash": "DASH (adaptiv kvalitet)",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_240p": "240p"
|
||||
}
|
||||
212
locales/de.json
212
locales/de.json
@@ -1,22 +1,19 @@
|
||||
{
|
||||
"`x` subscribers": "`x` Abonnenten",
|
||||
"`x` videos": "`x` Videos",
|
||||
"`x` playlists": "`x` Wiedergabelisten",
|
||||
"LIVE": "LIVE",
|
||||
"Shared `x` ago": "Vor `x` geteilt",
|
||||
"Unsubscribe": "Abbestellen",
|
||||
"Unsubscribe": "Abo beenden",
|
||||
"Subscribe": "Abonnieren",
|
||||
"View channel on YouTube": "Kanal auf YouTube anzeigen",
|
||||
"View playlist on YouTube": "Wiedergabeliste auf YouTube anzeigen",
|
||||
"newest": "neueste",
|
||||
"oldest": "älteste",
|
||||
"popular": "beliebt",
|
||||
"last": "letzte",
|
||||
"popular": "beliebteste",
|
||||
"last": "neueste",
|
||||
"Next page": "Nächste Seite",
|
||||
"Previous page": "Vorherige Seite",
|
||||
"Clear watch history?": "Verlauf löschen?",
|
||||
"New password": "Neues Passwort",
|
||||
"New passwords must match": "Neue Passwörter müssen gleich sein",
|
||||
"New passwords must match": "Neue Passwörter müssen übereinstimmen",
|
||||
"Cannot change password for Google accounts": "Ich kann das Passwort deines Google Kontos nicht ändern",
|
||||
"Authorize token?": "Token autorisieren?",
|
||||
"Authorize token for `x`?": "Token für `x` autorisieren?",
|
||||
@@ -33,15 +30,15 @@
|
||||
"Export subscriptions as OPML": "Abonnements als OPML exportieren",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Abonnements als OPML exportieren (für NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Daten als JSON exportieren",
|
||||
"Delete account?": "Account löschen?",
|
||||
"Delete account?": "Konto löschen?",
|
||||
"History": "Verlauf",
|
||||
"An alternative front-end to YouTube": "Eine alternative Oberfläche für YouTube",
|
||||
"JavaScript license information": "JavaScript Lizenzinformationen",
|
||||
"source": "Quelle",
|
||||
"Log in": "Einloggen",
|
||||
"Log in/register": "Einloggen/Registrieren",
|
||||
"Log in with Google": "Mit Google einloggen",
|
||||
"User ID": "Benutzer ID",
|
||||
"Log in": "Anmelden",
|
||||
"Log in/register": "Anmelden/registrieren",
|
||||
"Log in with Google": "Mit Google anmelden",
|
||||
"User ID": "Benutzer-ID",
|
||||
"Password": "Passwort",
|
||||
"Time (h:mm:ss):": "Zeit (h:mm:ss):",
|
||||
"Text CAPTCHA": "Text CAPTCHA",
|
||||
@@ -51,35 +48,39 @@
|
||||
"E-mail": "E-Mail",
|
||||
"Google verification code": "Google-Bestätigungscode",
|
||||
"Preferences": "Einstellungen",
|
||||
"Player preferences": "Wiedergabeeinstellungen",
|
||||
"Always loop: ": "Immer wiederholen: ",
|
||||
"Autoplay: ": "Automatisch abspielen: ",
|
||||
"Play next by default: ": "Immer automatisch nächstes Video spielen: ",
|
||||
"Autoplay next video: ": "nächstes Video automatisch abspielen: ",
|
||||
"Listen by default: ": "Nur Ton als Standard: ",
|
||||
"Proxy videos: ": "Proxy-Videos: ",
|
||||
"Default speed: ": "Standardgeschwindigkeit: ",
|
||||
"Preferred video quality: ": "Bevorzugte Videoqualität: ",
|
||||
"Player volume: ": "Wiedergabelautstärke: ",
|
||||
"Default comments: ": "Standardkommentare: ",
|
||||
"youtube": "youtube",
|
||||
"reddit": "reddit",
|
||||
"Default captions: ": "Standarduntertitel: ",
|
||||
"preferences_category_player": "Wiedergabeeinstellungen",
|
||||
"preferences_video_loop_label": "Immer wiederholen: ",
|
||||
"preferences_autoplay_label": "Automatisch abspielen: ",
|
||||
"preferences_continue_label": "Immer automatisch nächstes Video spielen: ",
|
||||
"preferences_continue_autoplay_label": "nächstes Video automatisch abspielen: ",
|
||||
"preferences_listen_label": "Nur Ton als Standard: ",
|
||||
"preferences_local_label": "Proxy-Videos: ",
|
||||
"preferences_speed_label": "Standardgeschwindigkeit: ",
|
||||
"preferences_quality_label": "Bevorzugte Videoqualität: ",
|
||||
"preferences_volume_label": "Wiedergabelautstärke: ",
|
||||
"preferences_comments_label": "Standardkommentare: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Standarduntertitel: ",
|
||||
"Fallback captions: ": "Ersatzuntertitel: ",
|
||||
"Show related videos: ": "Ähnliche Videos anzeigen? ",
|
||||
"Show annotations by default: ": "Standardmäßig Anmerkungen anzeigen? ",
|
||||
"Visual preferences": "Anzeigeeinstellungen",
|
||||
"Player style: ": "Abspielgeräterstil: ",
|
||||
"preferences_related_videos_label": "Ähnliche Videos anzeigen? ",
|
||||
"preferences_annotations_label": "Standardmäßig Anmerkungen anzeigen? ",
|
||||
"preferences_extend_desc_label": "Videobeschreibung automatisch erweitern: ",
|
||||
"preferences_vr_mode_label": "Interaktive 360 Grad Videos: ",
|
||||
"preferences_category_visual": "Anzeigeeinstellungen",
|
||||
"preferences_player_style_label": "Abspielgeräterstil: ",
|
||||
"Dark mode: ": "Nachtmodus: ",
|
||||
"Theme: ": "Modus: ",
|
||||
"preferences_dark_mode_label": "Modus: ",
|
||||
"dark": "Nachtmodus",
|
||||
"light": "klarer Modus",
|
||||
"Thin mode: ": "Schlanker Modus: ",
|
||||
"Subscription preferences": "Abonnementeinstellungen",
|
||||
"Show annotations by default for subscribed channels: ": "Anmerkungen für abonnierte Kanäle standardmäßig anzeigen? ",
|
||||
"light": "hell",
|
||||
"preferences_thin_mode_label": "Schlanker Modus: ",
|
||||
"preferences_category_misc": "Sonstige Einstellungen",
|
||||
"preferences_automatic_instance_redirect_label": "Automatische Instanzweiterleitung (über redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Abonnementeinstellungen",
|
||||
"preferences_annotations_subscribed_label": "Anmerkungen für abonnierte Kanäle standardmäßig anzeigen? ",
|
||||
"Redirect homepage to feed: ": "Startseite zu Feed umleiten: ",
|
||||
"Number of videos shown in feed: ": "Anzahl von Videos die im Feed angezeigt werden: ",
|
||||
"Sort videos by: ": "Videos sortieren nach: ",
|
||||
"preferences_max_results_label": "Anzahl von Videos die im Feed angezeigt werden: ",
|
||||
"preferences_sort_label": "Videos sortieren nach: ",
|
||||
"published": "veröffentlicht",
|
||||
"published - reverse": "veröffentlicht - invertiert",
|
||||
"alphabetically": "alphabetisch",
|
||||
@@ -88,45 +89,43 @@
|
||||
"channel name - reverse": "Kanalname - invertiert",
|
||||
"Only show latest video from channel: ": "Nur neueste Videos des Kanals anzeigen: ",
|
||||
"Only show latest unwatched video from channel: ": "Nur neueste ungesehene Videos des Kanals anzeigen: ",
|
||||
"Only show unwatched: ": "Nur ungesehene anzeigen: ",
|
||||
"Only show notifications (if there are any): ": "Nur Benachrichtigungen anzeigen (wenn es welche gibt): ",
|
||||
"preferences_unseen_only_label": "Nur ungesehene anzeigen: ",
|
||||
"preferences_notifications_only_label": "Nur Benachrichtigungen anzeigen (wenn es welche gibt): ",
|
||||
"Enable web notifications": "Webbenachrichtigungen aktivieren",
|
||||
"`x` uploaded a video": "`x` hat ein Video hochgeladen",
|
||||
"`x` is live": "`x` ist live",
|
||||
"Data preferences": "Dateneinstellungen",
|
||||
"preferences_category_data": "Dateneinstellungen",
|
||||
"Clear watch history": "Verlauf löschen",
|
||||
"Import/export data": "Daten im-/exportieren",
|
||||
"Import/export data": "Daten importieren/exportieren",
|
||||
"Change password": "Passwort ändern",
|
||||
"Manage subscriptions": "Abonnements verwalten",
|
||||
"Manage tokens": "Tokens verwalten",
|
||||
"Watch history": "Verlauf",
|
||||
"Delete account": "Account löschen",
|
||||
"Administrator preferences": "Administrator-Einstellungen",
|
||||
"Default homepage: ": "Standard-Startseite: ",
|
||||
"Feed menu: ": "Feed-Menü: ",
|
||||
"preferences_category_admin": "Administrator-Einstellungen",
|
||||
"preferences_default_home_label": "Standard-Startseite: ",
|
||||
"preferences_feed_menu_label": "Feed-Menü: ",
|
||||
"preferences_show_nick_label": "Nutzernamen oben anzeigen: ",
|
||||
"Top enabled: ": "Top aktiviert? ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA aktiviert? ",
|
||||
"Login enabled: ": "Login aktiviert? ",
|
||||
"Login enabled: ": "Anmeldung aktiviert: ",
|
||||
"Registration enabled: ": "Registrierung aktiviert? ",
|
||||
"Report statistics: ": "Statistiken berichten? ",
|
||||
"Save preferences": "Einstellungen speichern",
|
||||
"Subscription manager": "Abonnementverwaltung",
|
||||
"Token manager": "Tokenverwalter",
|
||||
"Token": "Token",
|
||||
"`x` subscriptions": "`x` Abonnements",
|
||||
"`x` tokens": "`x` Tokens",
|
||||
"Import/export": "Importieren/Exportieren",
|
||||
"unsubscribe": "abbestellen",
|
||||
"revoke": "widerrufen",
|
||||
"Subscriptions": "Abonnements",
|
||||
"`x` unseen notifications": "`x` ungesehene Benachrichtigungen",
|
||||
"search": "Suchen",
|
||||
"Log out": "Abmelden",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Veröffentlicht unter AGPLv3 von Omar Roth.",
|
||||
"Released under the AGPLv3 on Github.": "Auf Github unter der AGPLv3 Lizenz veröffentlicht.",
|
||||
"Source available here.": "Quellcode verfügbar hier.",
|
||||
"View JavaScript license information.": "Javascript Lizenzinformationen anzeigen.",
|
||||
"View privacy policy.": "Datenschutzerklärung einsehen.",
|
||||
"Trending": "Trending",
|
||||
"Trending": "Angesagt",
|
||||
"Public": "Öffentlich",
|
||||
"Unlisted": "Nicht aufgeführt",
|
||||
"Private": "Privat",
|
||||
@@ -138,7 +137,11 @@
|
||||
"Title": "Titel",
|
||||
"Playlist privacy": "Vertrauliche Wiedergabeliste",
|
||||
"Editing playlist `x`": "Wiedergabeliste bearbeiten `x`",
|
||||
"Show more": "Mehr anzeigen",
|
||||
"Show less": "Weniger anzeigen",
|
||||
"Watch on YouTube": "Video auf YouTube ansehen",
|
||||
"Switch Invidious Instance": "Invidious Instanz wechseln",
|
||||
"Broken? Try another Invidious Instance": "Funktioniert nicht? Probiere eine andere Invidious Instanz aus",
|
||||
"Hide annotations": "Anmerkungen ausblenden",
|
||||
"Show annotations": "Anmerkungen anzeigen",
|
||||
"Genre: ": "Genre: ",
|
||||
@@ -149,28 +152,30 @@
|
||||
"Whitelisted regions: ": "Erlaubte Regionen: ",
|
||||
"Blacklisted regions: ": "Unerlaubte Regionen: ",
|
||||
"Shared `x`": "Geteilt `x`",
|
||||
"`x` views": "`x` Aufrufe",
|
||||
"Premieres in `x`": "Zuerst gesehen in `x`",
|
||||
"Premieres `x`": "Erster Start `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hallo! Anscheinend haben Sie JavaScript deaktiviert. Klicken Sie hier um Kommentare anzuzeigen, beachten sie dass es etwas länger dauern kann um sie zu laden.",
|
||||
"View YouTube comments": "YouTube Kommentare anzeigen",
|
||||
"View more comments on Reddit": "Mehr Kommentare auf Reddit anzeigen",
|
||||
"View `x` comments": "`x` Kommentare anzeigen",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` Kommentare anzeigen",
|
||||
"": "`x` Kommentare anzeigen"
|
||||
},
|
||||
"View Reddit comments": "Reddit Kommentare anzeigen",
|
||||
"Hide replies": "Antworten verstecken",
|
||||
"Show replies": "Antworten anzeigen",
|
||||
"Incorrect password": "Falsches Passwort",
|
||||
"Quota exceeded, try again in a few hours": "Kontingent überschritten, versuche es in ein paar Stunden erneut",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Login nicht möglich, stellen Sie sicher dass two-factor Authentifikation (Authentifizierung oder SMS) aktiviert ist.",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Anmeldung nicht möglich, stellen Sie sicher, dass die Zwei-Faktor-Authentisierung (Authenticator oder SMS) aktiviert ist.",
|
||||
"Invalid TFA code": "Ungültiger TFA Code",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Login fehlgeschlagen. Das kann daran liegen dass two-factor Authentifizierung in ihrem Account nicht aktiviert ist.",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Die Anmeldung ist fehlgeschlagen. Dies kann daran liegen, dass die Zwei-Faktor-Authentisierung für Ihr Konto nicht aktiviert ist.",
|
||||
"Wrong answer": "Ungültige Antwort",
|
||||
"Erroneous CAPTCHA": "Ungültiges CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA ist eine erforderliche Eingabe",
|
||||
"User ID is a required field": "Benutzer ID ist eine erforderliche Eingabe",
|
||||
"Password is a required field": "Passwort ist eine erforderliche Eingabe",
|
||||
"Wrong username or password": "Ungültiger Benutzername oder Passwort",
|
||||
"Please sign in using 'Log in with Google'": "Bitte melden sie sich mit 'Mit Google anmelden' an",
|
||||
"Please sign in using 'Log in with Google'": "Bitte melden Sie sich mit „Mit Google anmelden“ an",
|
||||
"Password cannot be empty": "Passwort darf nicht leer sein",
|
||||
"Password cannot be longer than 55 characters": "Passwort darf nicht länger als 55 Zeichen sein",
|
||||
"Please log in": "Bitte anmelden",
|
||||
@@ -180,17 +185,15 @@
|
||||
"This channel does not exist.": "Dieser Kanal existiert nicht.",
|
||||
"Could not get channel info.": "Kanalinformationen konnten nicht geladen werden.",
|
||||
"Could not fetch comments": "Kommentare konnten nicht geladen werden",
|
||||
"View `x` replies": "Zeige `x` Antworten",
|
||||
"`x` ago": "vor `x`",
|
||||
"Load more": "Mehr laden",
|
||||
"`x` points": "`x` Punkte",
|
||||
"Could not create mix.": "Mix konnte nicht erstellt werden.",
|
||||
"Empty playlist": "Playlist ist leer",
|
||||
"Not a playlist.": "Ungültige Playlist.",
|
||||
"Playlist does not exist.": "Playlist existiert nicht.",
|
||||
"Could not pull trending pages.": "Trending Seiten konnten nicht geladen werden.",
|
||||
"Hidden field \"challenge\" is a required field": "Verstecktes Feld \"challenge\" ist eine erforderliche Eingabe",
|
||||
"Hidden field \"token\" is a required field": "Verstecktes Feld \"token\" ist eine erforderliche Eingabe",
|
||||
"Empty playlist": "Wiedergabeliste ist leer",
|
||||
"Not a playlist.": "Ungültige Wiedergabeliste.",
|
||||
"Playlist does not exist.": "Wiedergabeliste existiert nicht.",
|
||||
"Could not pull trending pages.": "Trendenz-Seiten konnten nicht geladen werden.",
|
||||
"Hidden field \"challenge\" is a required field": "Verstecktes Feld „challenge“ ist eine erforderliche Eingabe",
|
||||
"Hidden field \"token\" is a required field": "Verstecktes Feld „token“ ist eine erforderliche Eingabe",
|
||||
"Erroneous challenge": "Ungültiger Test",
|
||||
"Erroneous token": "Ungültiger Token",
|
||||
"No such user": "Ungültiger Benutzer",
|
||||
@@ -301,19 +304,13 @@
|
||||
"Yiddish": "Jiddisch",
|
||||
"Yoruba": "Joruba",
|
||||
"Zulu": "Zulu",
|
||||
"`x` years": "`x` Jahre",
|
||||
"`x` months": "`x` Monate",
|
||||
"`x` weeks": "`x` Wochen",
|
||||
"`x` days": "`x` Tage",
|
||||
"`x` hours": "`x` Stunden",
|
||||
"`x` minutes": "`x` Minuten",
|
||||
"`x` seconds": "`x` Sekunden",
|
||||
"Fallback comments: ": "Alternative Kommentare: ",
|
||||
"Popular": "Populär",
|
||||
"Search": "Suchen",
|
||||
"Top": "Top",
|
||||
"About": "Über",
|
||||
"Rating: ": "Bewertung: ",
|
||||
"Language: ": "Sprache: ",
|
||||
"preferences_locale_label": "Sprache: ",
|
||||
"View as playlist": "Als Wiedergabeliste anzeigen",
|
||||
"Default": "Standard",
|
||||
"Music": "Musik",
|
||||
@@ -322,7 +319,7 @@
|
||||
"Movies": "Filme",
|
||||
"Download": "Herunterladen",
|
||||
"Download as: ": "Herunterladen als: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"%A %B %-d, %Y": "%A %-d %B %Y",
|
||||
"(edited)": "(editiert)",
|
||||
"YouTube comment permalink": "YouTube-Kommentar Permalink",
|
||||
"permalink": "Permalink",
|
||||
@@ -332,5 +329,74 @@
|
||||
"Videos": "Videos",
|
||||
"Playlists": "Wiedergabelisten",
|
||||
"Community": "Gemeinschaft",
|
||||
"Current version: ": "Aktuelle Version: "
|
||||
"relevance": "Relevanz",
|
||||
"rating": "Bewertung",
|
||||
"date": "Datum",
|
||||
"views": "Aufrufe",
|
||||
"content_type": "Inhaltstyp",
|
||||
"duration": "Dauer",
|
||||
"features": "Eigenschaften",
|
||||
"sort": "sortieren",
|
||||
"hour": "Letzte Stunde",
|
||||
"today": "Heute",
|
||||
"week": "Diese Woche",
|
||||
"month": "Diesen Monat",
|
||||
"year": "Dieses Jahr",
|
||||
"video": "Video",
|
||||
"channel": "Kanal",
|
||||
"playlist": "Wiedergabeliste",
|
||||
"movie": "Film",
|
||||
"show": "Anzeigen",
|
||||
"hd": "HD",
|
||||
"subtitles": "Untertitel / CC",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Live",
|
||||
"4k": "4K",
|
||||
"location": "Standort",
|
||||
"hdr": "HDR",
|
||||
"filter": "Filtern",
|
||||
"Current version: ": "Aktuelle Version: ",
|
||||
"next_steps_error_message": "Danach folgendes versuchen: ",
|
||||
"next_steps_error_message_refresh": "Aktualisieren",
|
||||
"next_steps_error_message_go_to_youtube": "Zu YouTube gehen",
|
||||
"footer_donate_page": "Spende",
|
||||
"long": "Lang (> 20 Minuten)",
|
||||
"footer_original_source_code": "Original Quellcode",
|
||||
"footer_modfied_source_code": "Modifizierter Quellcode",
|
||||
"footer_documentation": "Dokumentation",
|
||||
"footer_source_code": "Quellcode",
|
||||
"adminprefs_modified_source_code_url_label": "URL zum Repositorie des modifizierten Quellcodes",
|
||||
"short": "Kurz (< 4 Minuten)",
|
||||
"preferences_region_label": "Land der Inhalte: ",
|
||||
"preferences_quality_option_dash": "DASH (automatische Qualität)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Mittel",
|
||||
"preferences_quality_option_small": "Niedrig",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"videoinfo_invidious_embed_link": "Link zum Einbetten",
|
||||
"download_subtitles": "Untertitel - `x` (.vtt)",
|
||||
"Video unavailable": "Video nicht verfügbar",
|
||||
"user_created_playlists": "`x` Wiedergabelisten erstellt",
|
||||
"user_saved_playlists": "`x` Wiedergabelisten gespeichert",
|
||||
"preferences_save_player_pos_label": "Aktuelle Position speichern: ",
|
||||
"360": "360°",
|
||||
"preferences_quality_dash_option_best": "Höchste",
|
||||
"preferences_quality_dash_option_worst": "Niedrigste",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"videoinfo_youTube_embed_link": "Eingebettet",
|
||||
"purchased": "Gekauft",
|
||||
"none": "keine",
|
||||
"videoinfo_started_streaming_x_ago": "Stream begann vor `x`",
|
||||
"videoinfo_watch_on_youTube": "Auf YouTube ansehen",
|
||||
"preferences_quality_dash_label": "Bevorzugte DASH-Videoqualität: "
|
||||
}
|
||||
315
locales/el.json
315
locales/el.json
@@ -1,19 +1,10 @@
|
||||
{
|
||||
"`x` subscribers": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` συνδρομητής",
|
||||
"": "`x` συνδρομητές"
|
||||
},
|
||||
"`x` videos": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` βίντεο",
|
||||
"": "`x` βίντεο"
|
||||
},
|
||||
"`x` playlists": "",
|
||||
"LIVE": "ΖΩΝΤΑΝΑ",
|
||||
"Shared `x` ago": "Μοιράστηκε πριν `x`",
|
||||
"Shared `x` ago": "Μοιράστηκε πριν από `x`",
|
||||
"Unsubscribe": "Απεγγραφή",
|
||||
"Subscribe": "Εγγραφή",
|
||||
"View channel on YouTube": "Προβολή καναλιού στο YouTube",
|
||||
"View playlist on YouTube": "",
|
||||
"View playlist on YouTube": "Προβολή καταλόγου αναπαραγωγής στο YouTube",
|
||||
"newest": "νεότερα",
|
||||
"oldest": "παλιότερα",
|
||||
"popular": "δημοφιλή",
|
||||
@@ -30,15 +21,15 @@
|
||||
"No": "Όχι",
|
||||
"Import and Export Data": "Εισαγωγή και Εξαγωγή Δεδομένων",
|
||||
"Import": "Εισαγωγή",
|
||||
"Import Invidious data": "Εισαγωγή δεδομένων Invidious",
|
||||
"Import YouTube subscriptions": "Εισαγωγή συνδρομών YouTube",
|
||||
"Import Invidious data": "Εsαγωγή δεδομένων Invidious JSON",
|
||||
"Import YouTube subscriptions": "Εισαγωγή συνδρομών YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Εισαγωγή συνδρομών FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Εισαγωγή συνδρομών NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Εισαγωγή δεδομένων NewPipe (.zip)",
|
||||
"Export": "Εξαγωγή",
|
||||
"Export subscriptions as OPML": "Εξαγωγή συνδρομών ως OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Εξαγωγή συνδρομών ως OPML (για NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Εξαγωγή δεδομένων ως JSON",
|
||||
"Export data as JSON": "Εξαγωγή δεδομένων Invidious ως JSON",
|
||||
"Delete account?": "Διαγραφή λογαριασμού;",
|
||||
"History": "Ιστορικό",
|
||||
"An alternative front-end to YouTube": "Μία εναλλακτική πλατφόρμα για το YouTube",
|
||||
@@ -54,38 +45,38 @@
|
||||
"Image CAPTCHA": "Εικόνα CAPTCHA",
|
||||
"Sign In": "Σύνδεση",
|
||||
"Register": "Εγγραφή",
|
||||
"E-mail": "E-mail",
|
||||
"E-mail": "Ηλεκτρονικό ταχυδρομείο",
|
||||
"Google verification code": "Κωδικός επαλήθευσης Google",
|
||||
"Preferences": "Προτιμήσεις",
|
||||
"Player preferences": "Προτιμήσεις αναπαραγωγής",
|
||||
"Always loop: ": "Αυτόματη επανάληψη: ",
|
||||
"Autoplay: ": "Αυτόματη αναπαραγωγή: ",
|
||||
"Play next by default: ": "Αναπαραγωγή επόμενου: ",
|
||||
"Autoplay next video: ": "Αυτόματη αναπαραγωγή επόμενου: ",
|
||||
"Listen by default: ": "Φόρτωση μόνο ήχου: ",
|
||||
"Proxy videos: ": "Αναπαραγωγή με διακομιστή μεσολάβησης (proxy): ",
|
||||
"Default speed: ": "Προεπιλεγμένη ταχύτητα: ",
|
||||
"Preferred video quality: ": "Προτιμώμενη ανάλυση: ",
|
||||
"Player volume: ": "Ένταση αναπαραγωγής: ",
|
||||
"Default comments: ": "Προεπιλεγμένα σχόλια: ",
|
||||
"youtube": "youtube",
|
||||
"reddit": "reddit",
|
||||
"Default captions: ": "Προεπιλεγμένοι υπότιτλοι: ",
|
||||
"preferences_category_player": "Προτιμήσεις αναπαραγωγής",
|
||||
"preferences_video_loop_label": "Αυτόματη επανάληψη: ",
|
||||
"preferences_autoplay_label": "Αυτόματη αναπαραγωγή: ",
|
||||
"preferences_continue_label": "Αναπαραγωγή επόμενου: ",
|
||||
"preferences_continue_autoplay_label": "Αυτόματη αναπαραγωγή επόμενου: ",
|
||||
"preferences_listen_label": "Φόρτωση μόνο ήχου: ",
|
||||
"preferences_local_label": "Αναπαραγωγή με διακομιστή μεσολάβησης (proxy): ",
|
||||
"preferences_speed_label": "Προεπιλεγμένη ταχύτητα: ",
|
||||
"preferences_quality_label": "Προτιμώμενη ανάλυση: ",
|
||||
"preferences_volume_label": "Ένταση αναπαραγωγής: ",
|
||||
"preferences_comments_label": "Προεπιλεγμένα σχόλια: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Προεπιλεγμένοι υπότιτλοι: ",
|
||||
"Fallback captions: ": "Εναλλακτικοί υπότιτλοι: ",
|
||||
"Show related videos: ": "Προβολή σχετικών βίντεο; ",
|
||||
"Show annotations by default: ": "Αυτόματη προβολή σημειώσεων; :",
|
||||
"Visual preferences": "Προτιμήσεις εμφάνισης",
|
||||
"Player style: ": "",
|
||||
"preferences_related_videos_label": "Προβολή σχετικών βίντεο; ",
|
||||
"preferences_annotations_label": "Αυτόματη προβολή σημειώσεων: ",
|
||||
"preferences_category_visual": "Προτιμήσεις εμφάνισης",
|
||||
"preferences_player_style_label": "Τεχνοτροπία της συσκευής αναπαραγωγης: ",
|
||||
"Dark mode: ": "Σκοτεινή λειτουργία: ",
|
||||
"Theme: ": "",
|
||||
"dark": "",
|
||||
"light": "",
|
||||
"Thin mode: ": "Ελαφριά λειτουργία: ",
|
||||
"Subscription preferences": "Προτιμήσεις συνδρομών",
|
||||
"Show annotations by default for subscribed channels: ": "Προβολή σημειώσεων μόνο για κανάλια στα οποία είστε συνδρομητής; ",
|
||||
"preferences_dark_mode_label": "Θέμα: ",
|
||||
"dark": "σκοτεινό",
|
||||
"light": "φωτεινό",
|
||||
"preferences_thin_mode_label": "Ελαφριά λειτουργία: ",
|
||||
"preferences_category_subscription": "Προτιμήσεις συνδρομών",
|
||||
"preferences_annotations_subscribed_label": "Προβολή σημειώσεων μόνο για κανάλια στα οποία είστε συνδρομητής; ",
|
||||
"Redirect homepage to feed: ": "Ανακατεύθυνση αρχικής στη ροή συνδρομών: ",
|
||||
"Number of videos shown in feed: ": "Αριθμός βίντεο ανά σελίδα ροής συνδρομών: ",
|
||||
"Sort videos by: ": "Ταξινόμηση ανά: ",
|
||||
"preferences_max_results_label": "Αριθμός βίντεο ανά σελίδα ροής συνδρομών: ",
|
||||
"preferences_sort_label": "Ταξινόμηση ανά: ",
|
||||
"published": "ημερομηνία δημοσίευσης",
|
||||
"published - reverse": "ημερομηνία δημοσίευσης - ανάποδα",
|
||||
"alphabetically": "αλφαβητικά",
|
||||
@@ -94,12 +85,12 @@
|
||||
"channel name - reverse": "όνομα καναλιού - ανάποδα",
|
||||
"Only show latest video from channel: ": "Προβολή μόνο του τελευταίου βίντεο του καναλιού: ",
|
||||
"Only show latest unwatched video from channel: ": "Προβολή μόνο του τελευταίου μη-προβεβλημένου βίντεο του καναλιού: ",
|
||||
"Only show unwatched: ": "Προβολή μόνο μη-προβεβλημένων: ",
|
||||
"Only show notifications (if there are any): ": "Προβολή μόνο ειδοποιήσεων (αν υπάρχουν): ",
|
||||
"Enable web notifications": "",
|
||||
"`x` uploaded a video": "",
|
||||
"`x` is live": "",
|
||||
"Data preferences": "Προτιμήσεις δεδομένων",
|
||||
"preferences_unseen_only_label": "Προβολή μόνο μη-προβεβλημένων: ",
|
||||
"preferences_notifications_only_label": "Προβολή μόνο ειδοποιήσεων (αν υπάρχουν): ",
|
||||
"Enable web notifications": "Ενεργοποίηση ειδοποιήσεων δικτύου",
|
||||
"`x` uploaded a video": "`x` κοινοποίησε ένα βίντεο",
|
||||
"`x` is live": "`x` κάνει live",
|
||||
"preferences_category_data": "Προτιμήσεις δεδομένων",
|
||||
"Clear watch history": "Εκκαθάριση ιστορικού προβολής",
|
||||
"Import/export data": "Εισαγωγή/εξαγωγή δεδομένων",
|
||||
"Change password": "Αλλαγή κωδικού πρόσβασης",
|
||||
@@ -107,9 +98,9 @@
|
||||
"Manage tokens": "Διαχείριση διασυνδέσεων",
|
||||
"Watch history": "Ιστορικό προβολής",
|
||||
"Delete account": "Διαγραφή λογαριασμού",
|
||||
"Administrator preferences": "Προτιμήσεις διαχειριστή",
|
||||
"Default homepage: ": "Προεπιλεγμένη αρχική: ",
|
||||
"Feed menu: ": "Μενού ροής συνδρομών: ",
|
||||
"preferences_category_admin": "Προτιμήσεις διαχειριστή",
|
||||
"preferences_default_home_label": "Προεπιλεγμένη αρχική: ",
|
||||
"preferences_feed_menu_label": "Μενού ροής συνδρομών: ",
|
||||
"Top enabled: ": "Ενεργοποίηση κορυφαίων; ",
|
||||
"CAPTCHA enabled: ": "Ενεργοποίηση CAPTCHA; ",
|
||||
"Login enabled: ": "Ενεργοποίηση σύνδεσης; ",
|
||||
@@ -119,61 +110,47 @@
|
||||
"Subscription manager": "Διαχειριστής συνδρομών",
|
||||
"Token manager": "Διαχειριστής διασυνδέσεων",
|
||||
"Token": "Διασύνδεση",
|
||||
"`x` subscriptions": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` συνδρομή",
|
||||
"": "`x` συνδρομές"
|
||||
},
|
||||
"`x` tokens": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` διασύνδεση",
|
||||
"": "`x` διασυνδέσεις"
|
||||
},
|
||||
"Import/export": "Εισαγωγή/εξαγωγή",
|
||||
"unsubscribe": "κατάργηση συνδρομής",
|
||||
"revoke": "ανάκληση",
|
||||
"Subscriptions": "Συνδρομές",
|
||||
"`x` unseen notifications": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` καινούρια ειδοποίηση",
|
||||
"": "`x` καινούριες ειδοποιήσεις"
|
||||
},
|
||||
"search": "αναζήτηση",
|
||||
"Log out": "Αποσύνδεση",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Κυκλοφορεί υπό την άδεια AGPLv3 από τον Omar Roth.",
|
||||
"Source available here.": "Προβολή πηγαίου κώδικα εδώ.",
|
||||
"View JavaScript license information.": "Προβολή πληροφοριών άδειας JavaScript.",
|
||||
"View privacy policy.": "Προβολή πολιτικής απορρήτου.",
|
||||
"Trending": "Τάσεις",
|
||||
"Public": "",
|
||||
"Public": "Δημόσιο",
|
||||
"Unlisted": "Κρυφό",
|
||||
"Private": "",
|
||||
"View all playlists": "",
|
||||
"Updated `x` ago": "",
|
||||
"Delete playlist `x`?": "",
|
||||
"Delete playlist": "",
|
||||
"Create playlist": "",
|
||||
"Title": "",
|
||||
"Playlist privacy": "",
|
||||
"Editing playlist `x`": "",
|
||||
"Private": "Ιδιωτικό",
|
||||
"View all playlists": "Προβολή όλων των καταλόγων αναπαραγωγής",
|
||||
"Updated `x` ago": "Ενημερώθηκε πριν από `x`",
|
||||
"Delete playlist `x`?": "Διαγραφή `x` καταλόγου αναπαραγωγής;",
|
||||
"Delete playlist": "Διαγραφή καταλόγου αναπαραγωγής",
|
||||
"Create playlist": "Δημιουργία καταλόγου αναπαραγωγής",
|
||||
"Title": "Τίτλος",
|
||||
"Playlist privacy": "Ιδιωτικότητα καταλόγων αναπαραγωγής",
|
||||
"Editing playlist `x`": "Επεξεργασία `x` καταλόγου αναπαραγωγής",
|
||||
"Watch on YouTube": "Προβολή στο YouTube",
|
||||
"Hide annotations": "Απόκρυψη σημειώσεων",
|
||||
"Show annotations": "Προβολή σημειώσεων",
|
||||
"Genre: ": "Είδος: ",
|
||||
"License: ": "Άδεια: ",
|
||||
"Family friendly? ": "Φιλικό προς την οικογένεια; ",
|
||||
"Wilson score: ": "Wilson score: ",
|
||||
"Wilson score: ": "Αποτελέσματα Wilson: ",
|
||||
"Engagement: ": "Ενδιαφέρον: ",
|
||||
"Whitelisted regions: ": "Επιτρεπτές περιοχές: ",
|
||||
"Blacklisted regions: ": "Μη-επιτρεπτές περιοχές: ",
|
||||
"Shared `x`": "Μοιράστηκε το `x`",
|
||||
"`x` views": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` προβολή",
|
||||
"": "`x` προβολές"
|
||||
},
|
||||
"Premieres in `x`": "Πρώτη προβολή σε `x`",
|
||||
"Premieres `x`": "",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Γεια! Φαίνεται πως έχετε απενεργοποιήσει το JavaScript. Πατήστε εδώ για προβολή σχολίων, αλλά έχετε υπ'όψιν σας πως ίσως φορτώσουν πιο αργά. ",
|
||||
"Premieres `x`": "Επίσημη πρώτη παράσταση του `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Γεια! Φαίνεται πως έχετε απενεργοποιήσει το JavaScript. Πατήστε εδώ για προβολή σχολίων, αλλά έχετε υπ'όψιν σας πως ίσως φορτώσουν πιο αργά.",
|
||||
"View YouTube comments": "Προβολή σχολίων από το YouTube",
|
||||
"View more comments on Reddit": "Προβολή περισσότερων σχολίων στο Reddit",
|
||||
"View `x` comments": "Προβολή `x` σχολίων",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Προβολή `x` σχολίων",
|
||||
"": "Προβολή `x` σχολίων"
|
||||
},
|
||||
"View Reddit comments": "Προβολή σχολίων από το Reddit",
|
||||
"Hide replies": "Απόκρυψη απαντήσεων",
|
||||
"Show replies": "Προβολή απαντήσεων",
|
||||
@@ -198,19 +175,11 @@
|
||||
"This channel does not exist.": "Αυτό το κανάλι δεν υπάρχει.",
|
||||
"Could not get channel info.": "Αδύναμια εύρεσης πληροφοριών καναλιού.",
|
||||
"Could not fetch comments": "Αδυναμία λήψης σχολίων",
|
||||
"View `x` replies": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Προβολή `x` απάντησης",
|
||||
"": "Προβολή `x` απαντήσεων"
|
||||
},
|
||||
"`x` ago": "Πριν `x`",
|
||||
"Load more": "Φόρτωση περισσότερων",
|
||||
"`x` points": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` βαθμός",
|
||||
"": "`x` βαθμοί"
|
||||
},
|
||||
"Could not create mix.": "Αδυναμία δημιουργίας μίξης.",
|
||||
"Empty playlist": "Κενή λίστα αναπαραγωγής",
|
||||
"Not a playlist.": "Μη έγκυρη λίστα αναπαραγωγής",
|
||||
"Not a playlist.": "Μη έγκυρη λίστα αναπαραγωγής.",
|
||||
"Playlist does not exist.": "Μη υπαρκτή λίστα αναπαραγωγής.",
|
||||
"Could not pull trending pages.": "Αδυναμία λήψης σελίδας τάσεων.",
|
||||
"Hidden field \"challenge\" is a required field": "Το Κρυφό πεδίο \"δοκιμασία\" είναι απαραίτητο",
|
||||
@@ -325,40 +294,12 @@
|
||||
"Yiddish": "Γίντις",
|
||||
"Yoruba": "Γιορούμπα",
|
||||
"Zulu": "Ζουλού",
|
||||
"`x` years": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` χρόνο",
|
||||
"": "`x` χρόνια"
|
||||
},
|
||||
"`x` months": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` μήνα",
|
||||
"": "`x` μήνες"
|
||||
},
|
||||
"`x` weeks": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` εβδομάδα",
|
||||
"": "`x` εβδομάδες"
|
||||
},
|
||||
"`x` days": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` ημέρα",
|
||||
"": "`x` ημέρες"
|
||||
},
|
||||
"`x` hours": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` ώρα",
|
||||
"": "`x` ώρες"
|
||||
},
|
||||
"`x` minutes": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` λεπτό",
|
||||
"": "`x` λεπτά"
|
||||
},
|
||||
"`x` seconds": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` δευτερόλεπτο",
|
||||
"": "`x` δευτερόλεπτα"
|
||||
},
|
||||
"Fallback comments: ": "Εναλλακτικά σχόλια: ",
|
||||
"Popular": "Δημοφιλή",
|
||||
"Top": "Κορυφαία",
|
||||
"About": "Σχετικά",
|
||||
"Rating: ": "Aξιολόγηση: ",
|
||||
"Language: ": "Γλώσσα: ",
|
||||
"preferences_locale_label": "Γλώσσα: ",
|
||||
"View as playlist": "Προβολή ως λίστα αναπαραγωγής",
|
||||
"Default": "Προεπιλογή",
|
||||
"Music": "Μουσική",
|
||||
@@ -370,12 +311,142 @@
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(τροποποιημένο)",
|
||||
"YouTube comment permalink": "Σύνδεσμος YouTube σχολίου",
|
||||
"permalink": "",
|
||||
"permalink": "μόνιμος σύνδεσμος",
|
||||
"`x` marked it with a ❤": "Ο χρηστης `x` έβαλε ❤",
|
||||
"Audio mode": "Λειτουργία ήχου",
|
||||
"Video mode": "Λειτουργία βίντεο",
|
||||
"Videos": "Βίντεο",
|
||||
"Playlists": "Λίστες Αναπαραγωγής",
|
||||
"Community": "",
|
||||
"Current version: ": "Τρέχουσα έκδοση: "
|
||||
"Community": "Κοινότητα",
|
||||
"Current version: ": "Τρέχουσα έκδοση: ",
|
||||
"generic_playlists_count": "{{count}} λίστα αναπαραγωγής",
|
||||
"generic_playlists_count_plural": "{{count}} λίστες αναπαραγωγής",
|
||||
"preferences_quality_dash_option_worst": "Χειρότερη",
|
||||
"preferences_quality_dash_option_2160p": "2160 p",
|
||||
"Video unavailable": "Το βίντεο δεν είναι διαθέσιμο",
|
||||
"preferences_quality_dash_option_auto": "Αυτόματη",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"comments_view_x_replies": "Προβολή {{count}} απάντησης",
|
||||
"comments_view_x_replies_plural": "Προβολή {{count}} απαντήσεων",
|
||||
"crash_page_report_issue": "Εάν κανένα από τα παραπάνω δεν βοήθησε, παρακαλούμε <a href=\"`x`\">ανοίξτε ένα νέο θέμα στο GitHub</a> (κατά προτίμηση στα αγγλικά) και συμπεριλάβετε το ακόλουθο κείμενο στο μήνυμά σας (ΜΗΝ μεταφράζετε αυτό το κείμενο):",
|
||||
"generic_count_hours": "{{count}} ώρα",
|
||||
"generic_count_hours_plural": "{{count}} ώρες",
|
||||
"generic_count_minutes": "{{count}} λεπτό",
|
||||
"generic_count_minutes_plural": "{{count}} λεπτά",
|
||||
"generic_count_seconds": "{{count}} δευτερόλεπτο",
|
||||
"generic_count_seconds_plural": "{{count}} δευτερόλεπτα",
|
||||
"preferences_quality_dash_label": "Προτιμώμενη ποιότητα βίντεο DASH: ",
|
||||
"preferences_quality_dash_option_best": "Καλύτερη",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"generic_subscribers_count": "{{count}} συνδρομητής",
|
||||
"generic_subscribers_count_plural": "{{count}} συνδρομητές",
|
||||
"generic_subscriptions_count": "{{count}} συνδρομή",
|
||||
"generic_subscriptions_count_plural": "{{count}} συνδρομές",
|
||||
"generic_count_years": "{{count}} έτος",
|
||||
"generic_count_years_plural": "{{count}} έτη",
|
||||
"generic_count_months": "{{count}} μήνας",
|
||||
"generic_count_months_plural": "{{count}} μήνες",
|
||||
"generic_count_weeks": "{{count}} εβδομάδα",
|
||||
"generic_count_weeks_plural": "{{count}} εβδομάδες",
|
||||
"generic_count_days": "{{count}} ημέρα",
|
||||
"generic_count_days_plural": "{{count}} ημέρες",
|
||||
"crash_page_you_found_a_bug": "Φαίνεται ότι βρήκατε ένα σφάλμα στο Invidious!",
|
||||
"crash_page_before_reporting": "Πριν αναφέρετε ένα σφάλμα, βεβαιωθείτε ότι έχετε:",
|
||||
"crash_page_refresh": "προσπαθήσει να <a href=\"`x`\">ανανεώσετε τη σελίδα</a>",
|
||||
"crash_page_read_the_faq": "διαβάσει τις <a href=\"`x`\">Συχνές Ερωτήσεις (ΣΕ)</a>",
|
||||
"crash_page_search_issue": "αναζητήσει για <a href=\"`x`\">υπάρχοντα θέματα στο Github</a>",
|
||||
"generic_views_count": "{{count}} προβολή",
|
||||
"generic_views_count_plural": "{{count}} προβολές",
|
||||
"generic_videos_count": "{{count}} βίντεο",
|
||||
"generic_videos_count_plural": "{{count}} βίντεο",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Μεσαία",
|
||||
"preferences_quality_option_small": "Μικρό",
|
||||
"preferences_quality_option_dash": "DASH (προσαρμοστική ποιότητα)",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_region_label": "Χώρα περιεχομένου: ",
|
||||
"preferences_category_misc": "Διάφορες προτιμήσεις",
|
||||
"Show more": "Εμφάνιση περισσότερων",
|
||||
"today": "Σήμερα",
|
||||
"360": "360°",
|
||||
"videoinfo_started_streaming_x_ago": "Ξεκίνησε η ροή `x` πριν από",
|
||||
"videoinfo_watch_on_youTube": "Παρακολουθήστε στο YouTube",
|
||||
"download_subtitles": "Υπότιτλοι - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` δημιουργημένες λίστες αναπαραγωγής",
|
||||
"user_saved_playlists": "`x` αποθηκευμένες λίστες αναπαραγωγής",
|
||||
"rating": "Αξιολόγηση",
|
||||
"relevance": "Συνάφεια",
|
||||
"purchased": "Αγορασμένο",
|
||||
"date": "Ημερομηνία μεταφόρτωσης",
|
||||
"content_type": "Τύπος",
|
||||
"duration": "Διάρκεια",
|
||||
"week": "Αυτή την εβδομάδα",
|
||||
"year": "Φέτος",
|
||||
"channel": "Κανάλι",
|
||||
"playlist": "Λίστα αναπαραγωγής",
|
||||
"long": "Μεγάλο (> 20 λεπτά)",
|
||||
"hd": "HD",
|
||||
"location": "Τοποθεσία",
|
||||
"3d": "3D",
|
||||
"next_steps_error_message": "Μετά από αυτό θα πρέπει να προσπαθήσετε να: ",
|
||||
"next_steps_error_message_go_to_youtube": "Μεταβείτε στο YouTube",
|
||||
"footer_donate_page": "Δωρεά",
|
||||
"footer_original_source_code": "Πρωτότυπος πηγαίος κώδικας",
|
||||
"preferences_show_nick_label": "Εμφάνιση ψευδώνυμου στην κορυφή: ",
|
||||
"hour": "Τελευταία ώρα",
|
||||
"adminprefs_modified_source_code_url_label": "URL σε αποθετήριο τροποποιημένου πηγαίου κώδικα",
|
||||
"subtitles": "Υπότιτλοι/CC",
|
||||
"month": "Αυτόν τον μήνα",
|
||||
"Released under the AGPLv3 on Github.": "Κυκλοφορεί υπό την AGPLv3 στο Github.",
|
||||
"sort": "Ταξινόμηση κατά",
|
||||
"filter": "Φίλτρο",
|
||||
"movie": "Ταινία",
|
||||
"footer_modfied_source_code": "Τροποποιημένος πηγαίος κώδικας",
|
||||
"features": "Χαρακτηριστικά",
|
||||
"4k": "4K",
|
||||
"footer_documentation": "Τεκμηρίωση",
|
||||
"short": "Σύντομο (< 4 λεπτά)",
|
||||
"next_steps_error_message_refresh": "Ανανέωση",
|
||||
"video": "Βίντεο",
|
||||
"live": "Ζωντανά",
|
||||
"creative_commons": "Creative Commons",
|
||||
"Search": "Αναζήτηση",
|
||||
"hdr": "HDR",
|
||||
"preferences_extend_desc_label": "Αυτόματη επέκταση της περιγραφής του βίντεο: ",
|
||||
"preferences_vr_mode_label": "Διαδραστικά βίντεο 360 μοιρών (απαιτεί WebGL): ",
|
||||
"Show less": "Εμφάνιση λιγότερων",
|
||||
"footer_source_code": "Πηγαίος κώδικας",
|
||||
"Chinese (Taiwan)": "Κινέζικα (Ταϊβάν)",
|
||||
"Portuguese (Brazil)": "Πορτογαλικά (Βραζιλία)",
|
||||
"German (auto-generated)": "Γερμανικά (αυτόματη παραγωγή)",
|
||||
"Korean (auto-generated)": "Κορεάτικα (αυτόματη παραγωγή)",
|
||||
"Russian (auto-generated)": "Ρωσικά (αυτόματη παραγωγή)",
|
||||
"Spanish (auto-generated)": "Ισπανικά (αυτόματη παραγωγή)",
|
||||
"Vietnamese (auto-generated)": "Βιετναμέζικα (αυτόματη παραγωγή)",
|
||||
"English (United Kingdom)": "Αγγλικά (Ηνωμένο Βασίλειο)",
|
||||
"English (United States)": "Αγγλικά (Ηνωμένων Πολιτειών)",
|
||||
"Cantonese (Hong Kong)": "Καντονέζικα (Χονγκ Κονγκ)",
|
||||
"Chinese": "Κινεζικά",
|
||||
"Chinese (China)": "Κινέζικα (Κίνα)",
|
||||
"Chinese (Hong Kong)": "Κινεζικά (Χονγκ Κονγκ)",
|
||||
"Dutch (auto-generated)": "Ολαμδικά (αυτόματη παραγωγή)",
|
||||
"French (auto-generated)": "Γαλλικά (αυτόματη παραγωγή)",
|
||||
"Interlingue": "Ιντερλίνγκουα",
|
||||
"Indonesian (auto-generated)": "Ινδονησιακά (αυτόματη παραγωγή)",
|
||||
"Italian (auto-generated)": "Ιταλικά (αυτόματη παραγωγή)",
|
||||
"Japanese (auto-generated)": "Ιαπωνικά (αυτόματη παραγωγή)",
|
||||
"Portuguese (auto-generated)": "Πορτογαλικά (αυτόματη παραγωγή)",
|
||||
"Spanish (Mexico)": "Ισπανικά (Μεξικό)",
|
||||
"Spanish (Spain)": "Ισπανικά (Ισπανία)",
|
||||
"Turkish (auto-generated)": "Τούρκικα (αυτόματη παραγωγή)",
|
||||
"none": "κανένα",
|
||||
"videoinfo_youTube_embed_link": "Ενσωμάτωση",
|
||||
"videoinfo_invidious_embed_link": "Σύνδεσμος Ενσωμάτωσης",
|
||||
"show": "Μπάρα προόδου διαβάσματος"
|
||||
}
|
||||
@@ -1,16 +1,14 @@
|
||||
{
|
||||
"`x` subscribers": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` subscriber",
|
||||
"": "`x` subscribers"
|
||||
},
|
||||
"`x` videos": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` video",
|
||||
"": "`x` videos"
|
||||
},
|
||||
"`x` playlists": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` playlist",
|
||||
"": "`x` playlists"
|
||||
},
|
||||
"generic_views_count": "{{count}} view",
|
||||
"generic_views_count_plural": "{{count}} views",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videos",
|
||||
"generic_playlists_count": "{{count}} playlist",
|
||||
"generic_playlists_count_plural": "{{count}} playlists",
|
||||
"generic_subscribers_count": "{{count}} subscriber",
|
||||
"generic_subscribers_count_plural": "{{count}} subscribers",
|
||||
"generic_subscriptions_count": "{{count}} subscription",
|
||||
"generic_subscriptions_count_plural": "{{count}} subscriptions",
|
||||
"LIVE": "LIVE",
|
||||
"Shared `x` ago": "Shared `x` ago",
|
||||
"Unsubscribe": "Unsubscribe",
|
||||
@@ -33,15 +31,15 @@
|
||||
"No": "No",
|
||||
"Import and Export Data": "Import and Export Data",
|
||||
"Import": "Import",
|
||||
"Import Invidious data": "Import Invidious data",
|
||||
"Import YouTube subscriptions": "Import YouTube subscriptions",
|
||||
"Import Invidious data": "Import Invidious JSON data",
|
||||
"Import YouTube subscriptions": "Import YouTube/OPML subscriptions",
|
||||
"Import FreeTube subscriptions (.db)": "Import FreeTube subscriptions (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Import NewPipe subscriptions (.json)",
|
||||
"Import NewPipe data (.zip)": "Import NewPipe data (.zip)",
|
||||
"Export": "Export",
|
||||
"Export subscriptions as OPML": "Export subscriptions as OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Export subscriptions as OPML (for NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Export data as JSON",
|
||||
"Export data as JSON": "Export Invidious data as JSON",
|
||||
"Delete account?": "Delete account?",
|
||||
"History": "History",
|
||||
"An alternative front-end to YouTube": "An alternative front-end to YouTube",
|
||||
@@ -60,35 +58,60 @@
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Google verification code",
|
||||
"Preferences": "Preferences",
|
||||
"Player preferences": "Player preferences",
|
||||
"Always loop: ": "Always loop: ",
|
||||
"Autoplay: ": "Autoplay: ",
|
||||
"Play next by default: ": "Play next by default: ",
|
||||
"Autoplay next video: ": "Autoplay next video: ",
|
||||
"Listen by default: ": "Listen by default: ",
|
||||
"Proxy videos: ": "Proxy videos: ",
|
||||
"Default speed: ": "Default speed: ",
|
||||
"Preferred video quality: ": "Preferred video quality: ",
|
||||
"Player volume: ": "Player volume: ",
|
||||
"Default comments: ": "Default comments: ",
|
||||
"youtube": "youtube",
|
||||
"reddit": "reddit",
|
||||
"Default captions: ": "Default captions: ",
|
||||
"preferences_category_player": "Player preferences",
|
||||
"preferences_video_loop_label": "Always loop: ",
|
||||
"preferences_autoplay_label": "Autoplay: ",
|
||||
"preferences_continue_label": "Play next by default: ",
|
||||
"preferences_continue_autoplay_label": "Autoplay next video: ",
|
||||
"preferences_listen_label": "Listen by default: ",
|
||||
"preferences_local_label": "Proxy videos: ",
|
||||
"preferences_watch_history_label": "Enable watch history: ",
|
||||
"preferences_notifications_label": "Enable notifications: ",
|
||||
"preferences_speed_label": "Default speed: ",
|
||||
"preferences_quality_label": "Preferred video quality: ",
|
||||
"preferences_quality_option_dash": "DASH (adaptative quality)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Medium",
|
||||
"preferences_quality_option_small": "Small",
|
||||
"preferences_quality_dash_label": "Preferred DASH video quality: ",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_best": "Best",
|
||||
"preferences_quality_dash_option_worst": "Worst",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_volume_label": "Player volume: ",
|
||||
"preferences_comments_label": "Default comments: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"invidious": "Invidious",
|
||||
"preferences_captions_label": "Default captions: ",
|
||||
"Fallback captions: ": "Fallback captions: ",
|
||||
"Show related videos: ": "Show related videos: ",
|
||||
"Show annotations by default: ": "Show annotations by default: ",
|
||||
"Visual preferences": "Visual preferences",
|
||||
"Player style: ": "Player style: ",
|
||||
"preferences_related_videos_label": "Show related videos: ",
|
||||
"preferences_annotations_label": "Show annotations by default: ",
|
||||
"preferences_extend_desc_label": "Automatically extend video description: ",
|
||||
"preferences_vr_mode_label": "Interactive 360 degree videos (requires WebGL): ",
|
||||
"preferences_category_visual": "Visual preferences",
|
||||
"preferences_region_label": "Content country: ",
|
||||
"preferences_player_style_label": "Player style: ",
|
||||
"Dark mode: ": "Dark mode: ",
|
||||
"Theme: ": "Theme: ",
|
||||
"preferences_dark_mode_label": "Theme: ",
|
||||
"dark": "dark",
|
||||
"light": "light",
|
||||
"Thin mode: ": "Thin mode: ",
|
||||
"Subscription preferences": "Subscription preferences",
|
||||
"Show annotations by default for subscribed channels: ": "Show annotations by default for subscribed channels? ",
|
||||
"preferences_thin_mode_label": "Thin mode: ",
|
||||
"preferences_category_misc": "Miscellaneous preferences",
|
||||
"preferences_automatic_instance_redirect_label": "Automatic instance redirection (fallback to redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Subscription preferences",
|
||||
"preferences_annotations_subscribed_label": "Show annotations by default for subscribed channels? ",
|
||||
"Redirect homepage to feed: ": "Redirect homepage to feed: ",
|
||||
"Number of videos shown in feed: ": "Number of videos shown in feed: ",
|
||||
"Sort videos by: ": "Sort videos by: ",
|
||||
"preferences_max_results_label": "Number of videos shown in feed: ",
|
||||
"preferences_sort_label": "Sort videos by: ",
|
||||
"published": "published",
|
||||
"published - reverse": "published - reverse",
|
||||
"alphabetically": "alphabetically",
|
||||
@@ -97,12 +120,12 @@
|
||||
"channel name - reverse": "channel name - reverse",
|
||||
"Only show latest video from channel: ": "Only show latest video from channel: ",
|
||||
"Only show latest unwatched video from channel: ": "Only show latest unwatched video from channel: ",
|
||||
"Only show unwatched: ": "Only show unwatched: ",
|
||||
"Only show notifications (if there are any): ": "Only show notifications (if there are any): ",
|
||||
"preferences_unseen_only_label": "Only show unwatched: ",
|
||||
"preferences_notifications_only_label": "Only show notifications (if there are any): ",
|
||||
"Enable web notifications": "Enable web notifications",
|
||||
"`x` uploaded a video": "`x` uploaded a video",
|
||||
"`x` is live": "`x` is live",
|
||||
"Data preferences": "Data preferences",
|
||||
"preferences_category_data": "Data preferences",
|
||||
"Clear watch history": "Clear watch history",
|
||||
"Import/export data": "Import/export data",
|
||||
"Change password": "Change password",
|
||||
@@ -110,9 +133,10 @@
|
||||
"Manage tokens": "Manage tokens",
|
||||
"Watch history": "Watch history",
|
||||
"Delete account": "Delete account",
|
||||
"Administrator preferences": "Administrator preferences",
|
||||
"Default homepage: ": "Default homepage: ",
|
||||
"Feed menu: ": "Feed menu: ",
|
||||
"preferences_category_admin": "Administrator preferences",
|
||||
"preferences_default_home_label": "Default homepage: ",
|
||||
"preferences_feed_menu_label": "Feed menu: ",
|
||||
"preferences_show_nick_label": "Show nickname on top: ",
|
||||
"Top enabled: ": "Top enabled: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA enabled: ",
|
||||
"Login enabled: ": "Login enabled: ",
|
||||
@@ -122,25 +146,17 @@
|
||||
"Subscription manager": "Subscription manager",
|
||||
"Token manager": "Token manager",
|
||||
"Token": "Token",
|
||||
"`x` subscriptions": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` subscription",
|
||||
"": "`x` subscriptions"
|
||||
},
|
||||
"`x` tokens": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` token",
|
||||
"": "`x` tokens"
|
||||
},
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"Import/export": "Import/export",
|
||||
"unsubscribe": "unsubscribe",
|
||||
"revoke": "revoke",
|
||||
"Subscriptions": "Subscriptions",
|
||||
"`x` unseen notifications": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` unseen notification",
|
||||
"": "`x` unseen notifications"
|
||||
},
|
||||
"subscriptions_unseen_notifs_count": "{{count}} unseen notification",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} unseen notifications",
|
||||
"search": "search",
|
||||
"Log out": "Log out",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Released under the AGPLv3 by Omar Roth.",
|
||||
"Released under the AGPLv3 on Github.": "Released under the AGPLv3 on Github.",
|
||||
"Source available here.": "Source available here.",
|
||||
"View JavaScript license information.": "View JavaScript license information.",
|
||||
"View privacy policy.": "View privacy policy.",
|
||||
@@ -156,7 +172,11 @@
|
||||
"Title": "Title",
|
||||
"Playlist privacy": "Playlist privacy",
|
||||
"Editing playlist `x`": "Editing playlist `x`",
|
||||
"Show more": "Show more",
|
||||
"Show less": "Show less",
|
||||
"Watch on YouTube": "Watch on YouTube",
|
||||
"Switch Invidious Instance": "Switch Invidious Instance",
|
||||
"Broken? Try another Invidious Instance": "Broken? Try another Invidious Instance",
|
||||
"Hide annotations": "Hide annotations",
|
||||
"Show annotations": "Show annotations",
|
||||
"Genre: ": "Genre: ",
|
||||
@@ -167,10 +187,6 @@
|
||||
"Whitelisted regions: ": "Whitelisted regions: ",
|
||||
"Blacklisted regions: ": "Blacklisted regions: ",
|
||||
"Shared `x`": "Shared `x`",
|
||||
"`x` views": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` view",
|
||||
"": "`x` views"
|
||||
},
|
||||
"Premieres in `x`": "Premieres in `x`",
|
||||
"Premieres `x`": "Premieres `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.",
|
||||
@@ -204,16 +220,12 @@
|
||||
"This channel does not exist.": "This channel does not exist.",
|
||||
"Could not get channel info.": "Could not get channel info.",
|
||||
"Could not fetch comments": "Could not fetch comments",
|
||||
"View `x` replies": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "View `x` reply",
|
||||
"": "View `x` replies"
|
||||
},
|
||||
"comments_view_x_replies": "View {{count}} reply",
|
||||
"comments_view_x_replies_plural": "View {{count}} replies",
|
||||
"`x` ago": "`x` ago",
|
||||
"Load more": "Load more",
|
||||
"`x` points": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` point",
|
||||
"": "`x` points"
|
||||
},
|
||||
"comments_points_count": "{{count}} point",
|
||||
"comments_points_count_plural": "{{count}} points",
|
||||
"Could not create mix.": "Could not create mix.",
|
||||
"Empty playlist": "Empty playlist",
|
||||
"Not a playlist.": "Not a playlist.",
|
||||
@@ -226,6 +238,8 @@
|
||||
"No such user": "No such user",
|
||||
"Token is expired, please try again": "Token is expired, please try again",
|
||||
"English": "English",
|
||||
"English (United Kingdom)": "English (United Kingdom)",
|
||||
"English (United States)": "English (United States)",
|
||||
"English (auto-generated)": "English (auto-generated)",
|
||||
"Afrikaans": "Afrikaans",
|
||||
"Albanian": "Albanian",
|
||||
@@ -239,23 +253,31 @@
|
||||
"Bosnian": "Bosnian",
|
||||
"Bulgarian": "Bulgarian",
|
||||
"Burmese": "Burmese",
|
||||
"Cantonese (Hong Kong)": "Cantonese (Hong Kong)",
|
||||
"Catalan": "Catalan",
|
||||
"Cebuano": "Cebuano",
|
||||
"Chinese": "Chinese",
|
||||
"Chinese (China)": "Chinese (China)",
|
||||
"Chinese (Hong Kong)": "Chinese (Hong Kong)",
|
||||
"Chinese (Simplified)": "Chinese (Simplified)",
|
||||
"Chinese (Taiwan)": "Chinese (Taiwan)",
|
||||
"Chinese (Traditional)": "Chinese (Traditional)",
|
||||
"Corsican": "Corsican",
|
||||
"Croatian": "Croatian",
|
||||
"Czech": "Czech",
|
||||
"Danish": "Danish",
|
||||
"Dutch": "Dutch",
|
||||
"Dutch (auto-generated)": "Dutch (auto-generated)",
|
||||
"Esperanto": "Esperanto",
|
||||
"Estonian": "Estonian",
|
||||
"Filipino": "Filipino",
|
||||
"Finnish": "Finnish",
|
||||
"French": "French",
|
||||
"French (auto-generated)": "French (auto-generated)",
|
||||
"Galician": "Galician",
|
||||
"Georgian": "Georgian",
|
||||
"German": "German",
|
||||
"German (auto-generated)": "German (auto-generated)",
|
||||
"Greek": "Greek",
|
||||
"Gujarati": "Gujarati",
|
||||
"Haitian Creole": "Haitian Creole",
|
||||
@@ -268,14 +290,19 @@
|
||||
"Icelandic": "Icelandic",
|
||||
"Igbo": "Igbo",
|
||||
"Indonesian": "Indonesian",
|
||||
"Indonesian (auto-generated)": "Indonesian (auto-generated)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Irish": "Irish",
|
||||
"Italian": "Italian",
|
||||
"Italian (auto-generated)": "Italian (auto-generated)",
|
||||
"Japanese": "Japanese",
|
||||
"Japanese (auto-generated)": "Japanese (auto-generated)",
|
||||
"Javanese": "Javanese",
|
||||
"Kannada": "Kannada",
|
||||
"Kazakh": "Kazakh",
|
||||
"Khmer": "Khmer",
|
||||
"Korean": "Korean",
|
||||
"Korean (auto-generated)": "Korean (auto-generated)",
|
||||
"Kurdish": "Kurdish",
|
||||
"Kyrgyz": "Kyrgyz",
|
||||
"Lao": "Lao",
|
||||
@@ -298,9 +325,12 @@
|
||||
"Persian": "Persian",
|
||||
"Polish": "Polish",
|
||||
"Portuguese": "Portuguese",
|
||||
"Portuguese (auto-generated)": "Portuguese (auto-generated)",
|
||||
"Portuguese (Brazil)": "Portuguese (Brazil)",
|
||||
"Punjabi": "Punjabi",
|
||||
"Romanian": "Romanian",
|
||||
"Russian": "Russian",
|
||||
"Russian (auto-generated)": "Russian (auto-generated)",
|
||||
"Samoan": "Samoan",
|
||||
"Scottish Gaelic": "Scottish Gaelic",
|
||||
"Serbian": "Serbian",
|
||||
@@ -312,7 +342,10 @@
|
||||
"Somali": "Somali",
|
||||
"Southern Sotho": "Southern Sotho",
|
||||
"Spanish": "Spanish",
|
||||
"Spanish (auto-generated)": "Spanish (auto-generated)",
|
||||
"Spanish (Latin America)": "Spanish (Latin America)",
|
||||
"Spanish (Mexico)": "Spanish (Mexico)",
|
||||
"Spanish (Spain)": "Spanish (Spain)",
|
||||
"Sundanese": "Sundanese",
|
||||
"Swahili": "Swahili",
|
||||
"Swedish": "Swedish",
|
||||
@@ -321,50 +354,39 @@
|
||||
"Telugu": "Telugu",
|
||||
"Thai": "Thai",
|
||||
"Turkish": "Turkish",
|
||||
"Turkish (auto-generated)": "Turkish (auto-generated)",
|
||||
"Ukrainian": "Ukrainian",
|
||||
"Urdu": "Urdu",
|
||||
"Uzbek": "Uzbek",
|
||||
"Vietnamese": "Vietnamese",
|
||||
"Vietnamese (auto-generated)": "Vietnamese (auto-generated)",
|
||||
"Welsh": "Welsh",
|
||||
"Western Frisian": "Western Frisian",
|
||||
"Xhosa": "Xhosa",
|
||||
"Yiddish": "Yiddish",
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zulu",
|
||||
"`x` years": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` year",
|
||||
"": "`x` years"
|
||||
},
|
||||
"`x` months": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` month",
|
||||
"": "`x` months"
|
||||
},
|
||||
"`x` weeks": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` week",
|
||||
"": "`x` weeks"
|
||||
},
|
||||
"`x` days": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` day",
|
||||
"": "`x` days"
|
||||
},
|
||||
"`x` hours": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` hour",
|
||||
"": "`x` hours"
|
||||
},
|
||||
"`x` minutes": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` minute",
|
||||
"": "`x` minutes"
|
||||
},
|
||||
"`x` seconds": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` second",
|
||||
"": "`x` seconds"
|
||||
},
|
||||
"generic_count_years": "{{count}} year",
|
||||
"generic_count_years_plural": "{{count}} years",
|
||||
"generic_count_months": "{{count}} month",
|
||||
"generic_count_months_plural": "{{count}} months",
|
||||
"generic_count_weeks": "{{count}} week",
|
||||
"generic_count_weeks_plural": "{{count}} weeks",
|
||||
"generic_count_days": "{{count}} day",
|
||||
"generic_count_days_plural": "{{count}} days",
|
||||
"generic_count_hours": "{{count}} hour",
|
||||
"generic_count_hours_plural": "{{count}} hours",
|
||||
"generic_count_minutes": "{{count}} minute",
|
||||
"generic_count_minutes_plural": "{{count}} minutes",
|
||||
"generic_count_seconds": "{{count}} second",
|
||||
"generic_count_seconds_plural": "{{count}} seconds",
|
||||
"Fallback comments: ": "Fallback comments: ",
|
||||
"Popular": "Popular",
|
||||
"Search": "Search",
|
||||
"Top": "Top",
|
||||
"About": "About",
|
||||
"Rating: ": "Rating: ",
|
||||
"Language: ": "Language: ",
|
||||
"preferences_locale_label": "Language: ",
|
||||
"View as playlist": "View as playlist",
|
||||
"Default": "Default",
|
||||
"Music": "Music",
|
||||
@@ -383,5 +405,62 @@
|
||||
"Videos": "Videos",
|
||||
"Playlists": "Playlists",
|
||||
"Community": "Community",
|
||||
"Current version: ": "Current version: "
|
||||
"relevance": "Relevance",
|
||||
"rating": "Rating",
|
||||
"date": "Upload date",
|
||||
"views": "View count",
|
||||
"content_type": "Type",
|
||||
"duration": "Duration",
|
||||
"features": "Features",
|
||||
"sort": "Sort By",
|
||||
"hour": "Last Hour",
|
||||
"today": "Today",
|
||||
"week": "This week",
|
||||
"month": "This month",
|
||||
"year": "This year",
|
||||
"video": "Video",
|
||||
"channel": "Channel",
|
||||
"playlist": "Playlist",
|
||||
"movie": "Movie",
|
||||
"show": "Show",
|
||||
"short": "Short (< 4 minutes)",
|
||||
"long": "Long (> 20 minutes)",
|
||||
"hd": "HD",
|
||||
"subtitles": "Subtitles/CC",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Live",
|
||||
"4k": "4K",
|
||||
"location": "Location",
|
||||
"hdr": "HDR",
|
||||
"purchased": "Purchased",
|
||||
"360": "360°",
|
||||
"filter": "Filter",
|
||||
"Current version: ": "Current version: ",
|
||||
"next_steps_error_message": "After which you should try to: ",
|
||||
"next_steps_error_message_refresh": "Refresh",
|
||||
"next_steps_error_message_go_to_youtube": "Go to YouTube",
|
||||
"footer_donate_page": "Donate",
|
||||
"footer_documentation": "Documentation",
|
||||
"footer_source_code": "Source code",
|
||||
"footer_original_source_code": "Original source code",
|
||||
"footer_modfied_source_code": "Modified Source code",
|
||||
"adminprefs_modified_source_code_url_label": "URL to modified source code repository",
|
||||
"none": "none",
|
||||
"videoinfo_started_streaming_x_ago": "Started streaming `x` ago",
|
||||
"videoinfo_watch_on_youTube": "Watch on YouTube",
|
||||
"videoinfo_youTube_embed_link": "Embed",
|
||||
"videoinfo_invidious_embed_link": "Embed Link",
|
||||
"download_subtitles": "Subtitles - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` created playlists",
|
||||
"user_saved_playlists": "`x` saved playlists",
|
||||
"Video unavailable": "Video unavailable",
|
||||
"preferences_save_player_pos_label": "Save playback position: ",
|
||||
"crash_page_you_found_a_bug": "It looks like you found a bug in Invidious!",
|
||||
"crash_page_before_reporting": "Before reporting a bug, make sure that you have:",
|
||||
"crash_page_refresh": "tried to <a href=\"`x`\">refresh the page</a>",
|
||||
"crash_page_switch_instance": "tried to <a href=\"`x`\">use another instance</a>",
|
||||
"crash_page_read_the_faq": "read the <a href=\"`x`\">Frenquently Asked Questions (FAQ)</a>",
|
||||
"crash_page_search_issue": "searched for <a href=\"`x`\">existing issues on Github</a>",
|
||||
"crash_page_report_issue": "If none of the above helped, please <a href=\"`x`\">open a new issue on GitHub</a> (preferably in English) and include the following text in your message (do NOT translate that text):"
|
||||
}
|
||||
145
locales/eo.json
145
locales/eo.json
@@ -1,13 +1,10 @@
|
||||
{
|
||||
"`x` subscribers": "`x` abonantoj",
|
||||
"`x` videos": "`x` filmetoj",
|
||||
"`x` playlists": "`x` ludlistoj",
|
||||
"LIVE": "NUNA",
|
||||
"Shared `x` ago": "Konigita antaŭ `x`",
|
||||
"Unsubscribe": "Malaboni",
|
||||
"Subscribe": "Aboni",
|
||||
"View channel on YouTube": "Vidi kanalon en JuTubo",
|
||||
"View playlist on YouTube": "Vidi ludliston en JuTubo",
|
||||
"Unsubscribe": "Malabonu",
|
||||
"Subscribe": "Abonu",
|
||||
"View channel on YouTube": "Vidu kanalon en JuTubo",
|
||||
"View playlist on YouTube": "Vidu ludliston en JuTubo",
|
||||
"newest": "pli novaj",
|
||||
"oldest": "pli malnovaj",
|
||||
"popular": "popularaj",
|
||||
@@ -51,35 +48,39 @@
|
||||
"E-mail": "Retpoŝto",
|
||||
"Google verification code": "Kontrolkodo de Google",
|
||||
"Preferences": "Agordoj",
|
||||
"Player preferences": "Spektilaj agordoj",
|
||||
"Always loop: ": "Ĉiam ripeti: ",
|
||||
"Autoplay: ": "Aŭtomate ludi: ",
|
||||
"Play next by default: ": "Ludi sekvan defaŭlte: ",
|
||||
"Autoplay next video: ": "Aŭtomate ludi sekvan filmeton: ",
|
||||
"Listen by default: ": "Aŭskulti defaŭlte: ",
|
||||
"Proxy videos: ": "Ĉu uzi prokuran servilon por filmetojn? ",
|
||||
"Default speed: ": "Defaŭlta rapido: ",
|
||||
"Preferred video quality: ": "Preferita filmetkvalito: ",
|
||||
"Player volume: ": "Ludila sonforteco: ",
|
||||
"Default comments: ": "Defaŭltaj komentoj: ",
|
||||
"preferences_category_player": "Spektilaj agordoj",
|
||||
"preferences_video_loop_label": "Ĉiam ripeti: ",
|
||||
"preferences_autoplay_label": "Aŭtomate ludi: ",
|
||||
"preferences_continue_label": "Ludi sekvan defaŭlte: ",
|
||||
"preferences_continue_autoplay_label": "Aŭtomate ludi sekvan filmeton: ",
|
||||
"preferences_listen_label": "Aŭskulti defaŭlte: ",
|
||||
"preferences_local_label": "Ĉu uzi prokuran servilon por filmetojn? ",
|
||||
"preferences_speed_label": "Defaŭlta rapido: ",
|
||||
"preferences_quality_label": "Preferita filmetkvalito: ",
|
||||
"preferences_volume_label": "Ludila sonforteco: ",
|
||||
"preferences_comments_label": "Defaŭltaj komentoj: ",
|
||||
"youtube": "JuTubo",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "Defaŭltaj subtekstoj: ",
|
||||
"preferences_captions_label": "Defaŭltaj subtekstoj: ",
|
||||
"Fallback captions: ": "Retrodefaŭltaj subtekstoj: ",
|
||||
"Show related videos: ": "Ĉu montri rilatajn filmetojn? ",
|
||||
"Show annotations by default: ": "Ĉu montri prinotojn defaŭlte? ",
|
||||
"Visual preferences": "Vidaj preferoj",
|
||||
"Player style: ": "Ludila stilo: ",
|
||||
"preferences_related_videos_label": "Ĉu montri rilatajn filmetojn? ",
|
||||
"preferences_annotations_label": "Ĉu montri prinotojn defaŭlte? ",
|
||||
"preferences_extend_desc_label": "Aŭtomate etendi priskribon de filmeto: ",
|
||||
"preferences_vr_mode_label": "Interagaj 360-gradaj filmetoj: ",
|
||||
"preferences_category_visual": "Vidaj preferoj",
|
||||
"preferences_player_style_label": "Ludila stilo: ",
|
||||
"Dark mode: ": "Malhela reĝimo: ",
|
||||
"Theme: ": "Etoso: ",
|
||||
"preferences_dark_mode_label": "Etoso: ",
|
||||
"dark": "malhela",
|
||||
"light": "hela",
|
||||
"Thin mode: ": "Maldika reĝimo: ",
|
||||
"Subscription preferences": "Abonaj agordoj",
|
||||
"Show annotations by default for subscribed channels: ": "Ĉu montri prinotojn defaŭlte por abonitaj kanaloj? ",
|
||||
"preferences_thin_mode_label": "Maldika reĝimo: ",
|
||||
"preferences_category_misc": "Aliaj agordoj",
|
||||
"preferences_automatic_instance_redirect_label": "Aŭtomata alidirektado de instalaĵo (retropaŝo al redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Abonaj agordoj",
|
||||
"preferences_annotations_subscribed_label": "Ĉu montri prinotojn defaŭlte por abonitaj kanaloj? ",
|
||||
"Redirect homepage to feed: ": "Alidirekti hejmpâgon al fluo: ",
|
||||
"Number of videos shown in feed: ": "Nombro da filmetoj montritaj en fluo: ",
|
||||
"Sort videos by: ": "Ordi filmetojn per: ",
|
||||
"preferences_max_results_label": "Nombro da filmetoj montritaj en fluo: ",
|
||||
"preferences_sort_label": "Ordi filmetojn per: ",
|
||||
"published": "publikigo",
|
||||
"published - reverse": "publitigo - renverse",
|
||||
"alphabetically": "alfabete",
|
||||
@@ -88,12 +89,12 @@
|
||||
"channel name - reverse": "kanala nombro - renverse",
|
||||
"Only show latest video from channel: ": "Nur montri pli novan filmeton el kanalo: ",
|
||||
"Only show latest unwatched video from channel: ": "Nur montri pli novan malviditan filmeton el kanalo: ",
|
||||
"Only show unwatched: ": "Nur montri malviditajn: ",
|
||||
"Only show notifications (if there are any): ": "Nur montri sciigojn (se estas): ",
|
||||
"preferences_unseen_only_label": "Nur montri malviditajn: ",
|
||||
"preferences_notifications_only_label": "Nur montri sciigojn (se estas): ",
|
||||
"Enable web notifications": "Ebligi retejajn sciigojn",
|
||||
"`x` uploaded a video": "`x` alŝutis filmeton",
|
||||
"`x` is live": "`x` estas nuna",
|
||||
"Data preferences": "Datumagordoj",
|
||||
"preferences_category_data": "Datumagordoj",
|
||||
"Clear watch history": "Forigi vidohistorion",
|
||||
"Import/export data": "Importi/Eksporti datumojn",
|
||||
"Change password": "Ŝanĝi pasvorton",
|
||||
@@ -101,9 +102,10 @@
|
||||
"Manage tokens": "Administri ĵetonojn",
|
||||
"Watch history": "Vidohistorio",
|
||||
"Delete account": "Forigi konton",
|
||||
"Administrator preferences": "Agordoj de administranto",
|
||||
"Default homepage: ": "Defaŭlta hejmpaĝo: ",
|
||||
"Feed menu: ": "Flua menuo: ",
|
||||
"preferences_category_admin": "Agordoj de administranto",
|
||||
"preferences_default_home_label": "Defaŭlta hejmpaĝo: ",
|
||||
"preferences_feed_menu_label": "Flua menuo: ",
|
||||
"preferences_show_nick_label": "Montri kromnomon supre: ",
|
||||
"Top enabled: ": "Ĉu pli bonaj ŝaltitaj? ",
|
||||
"CAPTCHA enabled: ": "Ĉu CAPTCHA ŝaltita? ",
|
||||
"Login enabled: ": "Ĉu ensaluto aktivita? ",
|
||||
@@ -113,16 +115,13 @@
|
||||
"Subscription manager": "Administrilo de abonoj",
|
||||
"Token manager": "Ĵetona administrilo",
|
||||
"Token": "Ĵetono",
|
||||
"`x` subscriptions": "`x` abonoj",
|
||||
"`x` tokens": "`x` ĵetonoj",
|
||||
"Import/export": "Importi/Eksporti",
|
||||
"unsubscribe": "malaboni",
|
||||
"unsubscribe": "malabonu",
|
||||
"revoke": "senvalidigi",
|
||||
"Subscriptions": "Abonoj",
|
||||
"`x` unseen notifications": "`x` neviditaj sciigoj",
|
||||
"search": "serĉi",
|
||||
"Log out": "Elsaluti",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Eldonita sub la AGPLv3 de Omar Roth.",
|
||||
"Released under the AGPLv3 on Github.": "Eldonita sub la AGPLv3 en Github.",
|
||||
"Source available here.": "Fonto havebla ĉi tie.",
|
||||
"View JavaScript license information.": "Vidi Ĝavoskriptan licencan informon.",
|
||||
"View privacy policy.": "Vidi regularon pri privateco.",
|
||||
@@ -138,7 +137,11 @@
|
||||
"Title": "Titolo",
|
||||
"Playlist privacy": "Privateco de ludlisto",
|
||||
"Editing playlist `x`": "Redaktante ludlisto `x`",
|
||||
"Show more": "Montri pli",
|
||||
"Show less": "Montri malpli",
|
||||
"Watch on YouTube": "Vidi filmeton en JuTubo",
|
||||
"Switch Invidious Instance": "Ŝanĝi instalaĵon de Indivious",
|
||||
"Broken? Try another Invidious Instance": "Ĉu misfunkcio? Provu alian instalaĵon de Indivious",
|
||||
"Hide annotations": "Kaŝi prinotojn",
|
||||
"Show annotations": "Montri prinotojn",
|
||||
"Genre: ": "Ĝenro: ",
|
||||
@@ -149,13 +152,15 @@
|
||||
"Whitelisted regions: ": "Regionoj listigitaj en blanka listo: ",
|
||||
"Blacklisted regions: ": "Regionoj listigitaj en nigra listo: ",
|
||||
"Shared `x`": "Konigita `x`",
|
||||
"`x` views": "`x` spektaĵoj",
|
||||
"Premieres in `x`": "Premieras en `x`",
|
||||
"Premieres `x`": "Premieras `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Saluton! Ŝajnas, ke vi havas Ĝavoskripton malebligitan. Klaku ĉi tie por vidi komentojn, memoru, ke la ŝargado povus daŭri iom pli.",
|
||||
"View YouTube comments": "Vidi komentojn de JuTubo",
|
||||
"View more comments on Reddit": "Vidi pli komentoj en Reddit",
|
||||
"View `x` comments": "Vidi `x` komentojn",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vidi `x` komentojn",
|
||||
"": "Vidi `x` komentojn"
|
||||
},
|
||||
"View Reddit comments": "Vidi komentojn de Reddit",
|
||||
"Hide replies": "Kaŝi respondojn",
|
||||
"Show replies": "Montri respondojn",
|
||||
@@ -180,10 +185,8 @@
|
||||
"This channel does not exist.": "Ĉi tiu kanalo ne ekzistas.",
|
||||
"Could not get channel info.": "Ne povis havigi kanalan informon.",
|
||||
"Could not fetch comments": "Ne povis venigi komentojn",
|
||||
"View `x` replies": "Vidi `x` respondojn",
|
||||
"`x` ago": "antaŭ `x`",
|
||||
"Load more": "Ŝarĝi pli",
|
||||
"`x` points": "`x` poentoj",
|
||||
"Could not create mix.": "Ne povis krei mikson.",
|
||||
"Empty playlist": "Ludlisto estas malplena",
|
||||
"Not a playlist.": "Nevalida ludlisto.",
|
||||
@@ -301,22 +304,16 @@
|
||||
"Yiddish": "Jida",
|
||||
"Yoruba": "Joruba",
|
||||
"Zulu": "Zulua",
|
||||
"`x` years": "`x` jaroj",
|
||||
"`x` months": "`x` monatoj",
|
||||
"`x` weeks": "`x` semajnoj",
|
||||
"`x` days": "`x` tagoj",
|
||||
"`x` hours": "`x` horoj",
|
||||
"`x` minutes": "`x` minutoj",
|
||||
"`x` seconds": "`x` sekundoj",
|
||||
"Fallback comments: ": "Retrodefaŭltaj komentoj: ",
|
||||
"Popular": "Popularaj",
|
||||
"Search": "Serĉi",
|
||||
"Top": "Supraj",
|
||||
"About": "Pri",
|
||||
"Rating: ": "Takso: ",
|
||||
"Language: ": "Lingvo: ",
|
||||
"preferences_locale_label": "Lingvo: ",
|
||||
"View as playlist": "Vidi kiel ludlisto",
|
||||
"Default": "Defaŭlte",
|
||||
"Music": "Musiko",
|
||||
"Music": "Muziko",
|
||||
"Gaming": "Komputiloludoj",
|
||||
"News": "Novaĵoj",
|
||||
"Movies": "Filmoj",
|
||||
@@ -332,5 +329,45 @@
|
||||
"Videos": "Filmetoj",
|
||||
"Playlists": "Ludlistoj",
|
||||
"Community": "Komunumo",
|
||||
"Current version: ": "Nuna versio: "
|
||||
"relevance": "rilateco",
|
||||
"rating": "takso",
|
||||
"date": "dato",
|
||||
"views": "vidoj",
|
||||
"content_type": "enhavtipo",
|
||||
"duration": "daŭro",
|
||||
"features": "trajtoj",
|
||||
"sort": "ordigi",
|
||||
"hour": "horo",
|
||||
"today": "hodiaŭ",
|
||||
"week": "semajno",
|
||||
"month": "monato",
|
||||
"year": "jaro",
|
||||
"video": "filmeto",
|
||||
"channel": "kanalo",
|
||||
"playlist": "ludlisto",
|
||||
"movie": "filmo",
|
||||
"show": "spektaĵo",
|
||||
"hd": "altdistingiva",
|
||||
"subtitles": "subtekstoj",
|
||||
"creative_commons": "Krea Komunaĵo",
|
||||
"3d": "3D",
|
||||
"live": "nuna",
|
||||
"4k": "4k",
|
||||
"location": "loko",
|
||||
"hdr": "granddinamikgama",
|
||||
"filter": "filtri",
|
||||
"Current version: ": "Nuna versio: ",
|
||||
"next_steps_error_message": "Poste, vi provu: ",
|
||||
"next_steps_error_message_refresh": "Reŝargi",
|
||||
"next_steps_error_message_go_to_youtube": "Iri al JuTubo",
|
||||
"long": "Longa (> 20 minutos)",
|
||||
"short": "Mallonga (< 4 minutos)",
|
||||
"footer_documentation": "Dokumentaro",
|
||||
"footer_source_code": "Fontkodo",
|
||||
"adminprefs_modified_source_code_url_label": "URL al modifita deponejo de fontkodo",
|
||||
"footer_modfied_source_code": "Modifita Fontkodo",
|
||||
"footer_original_source_code": "Originala fontkodo",
|
||||
"footer_donate_page": "Donaci",
|
||||
"preferences_region_label": "Lando de la enhavo: ",
|
||||
"preferences_quality_dash_label": "Preferata DASH-a videkvalito: "
|
||||
}
|
||||
239
locales/es.json
239
locales/es.json
@@ -1,7 +1,4 @@
|
||||
{
|
||||
"`x` subscribers": "`x` suscriptores",
|
||||
"`x` videos": "`x` vídeos",
|
||||
"`x` playlists": "`x` listas de reproducción",
|
||||
"LIVE": "DIRECTO",
|
||||
"Shared `x` ago": "Compartido hace `x`",
|
||||
"Unsubscribe": "Desuscribirse",
|
||||
@@ -24,15 +21,15 @@
|
||||
"No": "No",
|
||||
"Import and Export Data": "Importación y exportación de datos",
|
||||
"Import": "Importar",
|
||||
"Import Invidious data": "Importar datos de Invidious",
|
||||
"Import YouTube subscriptions": "Importar suscripciones de YouTube",
|
||||
"Import Invidious data": "Importar datos JSON de Invidious",
|
||||
"Import YouTube subscriptions": "Importar suscripciones de YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importar suscripciones de FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importar suscripciones de NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importar datos de NewPipe (.zip)",
|
||||
"Export": "Exportar",
|
||||
"Export subscriptions as OPML": "Exportar suscripciones como OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportar suscripciones como OPML (para NewPipe y FreeTube)",
|
||||
"Export data as JSON": "Exportar datos como JSON",
|
||||
"Export data as JSON": "Exportar datos de Invidious como JSON",
|
||||
"Delete account?": "¿Quiere borrar la cuenta?",
|
||||
"History": "Historial",
|
||||
"An alternative front-end to YouTube": "Una interfaz alternativa para YouTube",
|
||||
@@ -51,35 +48,39 @@
|
||||
"E-mail": "Correo",
|
||||
"Google verification code": "Código de verificación de Google",
|
||||
"Preferences": "Preferencias",
|
||||
"Player preferences": "Preferencias del reproductor",
|
||||
"Always loop: ": "Repetir siempre: ",
|
||||
"Autoplay: ": "Reproducción automática: ",
|
||||
"Play next by default: ": "Reproducir siguiente por defecto: ",
|
||||
"Autoplay next video: ": "Reproducir automáticamente el vídeo siguiente: ",
|
||||
"Listen by default: ": "Activar el sonido por defecto: ",
|
||||
"Proxy videos: ": "¿Usar un proxy para los vídeos? ",
|
||||
"Default speed: ": "Velocidad por defecto: ",
|
||||
"Preferred video quality: ": "Calidad de vídeo preferida: ",
|
||||
"Player volume: ": "Volumen del reproductor: ",
|
||||
"Default comments: ": "Comentarios por defecto: ",
|
||||
"preferences_category_player": "Preferencias del reproductor",
|
||||
"preferences_video_loop_label": "Repetir siempre: ",
|
||||
"preferences_autoplay_label": "Reproducción automática: ",
|
||||
"preferences_continue_label": "Reproducir siguiente por defecto: ",
|
||||
"preferences_continue_autoplay_label": "Reproducir automáticamente el vídeo siguiente: ",
|
||||
"preferences_listen_label": "Activar el sonido por defecto: ",
|
||||
"preferences_local_label": "¿Usar un proxy para los vídeos? ",
|
||||
"preferences_speed_label": "Velocidad por defecto: ",
|
||||
"preferences_quality_label": "Calidad de vídeo preferida: ",
|
||||
"preferences_volume_label": "Volumen del reproductor: ",
|
||||
"preferences_comments_label": "Comentarios por defecto: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "Subtítulos por defecto: ",
|
||||
"preferences_captions_label": "Subtítulos por defecto: ",
|
||||
"Fallback captions: ": "Subtítulos alternativos: ",
|
||||
"Show related videos: ": "¿Mostrar vídeos relacionados? ",
|
||||
"Show annotations by default: ": "¿Mostrar anotaciones por defecto? ",
|
||||
"Visual preferences": "Preferencias visuales",
|
||||
"Player style: ": "Estilo de reproductor: ",
|
||||
"preferences_related_videos_label": "¿Mostrar vídeos relacionados? ",
|
||||
"preferences_annotations_label": "¿Mostrar anotaciones por defecto? ",
|
||||
"preferences_extend_desc_label": "Extender automáticamente la descripción del vídeo: ",
|
||||
"preferences_vr_mode_label": "Vídeos interactivos de 360 grados (necesita WebGL): ",
|
||||
"preferences_category_visual": "Preferencias visuales",
|
||||
"preferences_player_style_label": "Estilo de reproductor: ",
|
||||
"Dark mode: ": "Modo oscuro: ",
|
||||
"Theme: ": "Tema: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "oscuro",
|
||||
"light": "claro",
|
||||
"Thin mode: ": "Modo compacto: ",
|
||||
"Subscription preferences": "Preferencias de la suscripción",
|
||||
"Show annotations by default for subscribed channels: ": "¿Mostrar anotaciones por defecto para los canales suscritos? ",
|
||||
"preferences_thin_mode_label": "Modo compacto: ",
|
||||
"preferences_category_misc": "Preferencias misceláneas",
|
||||
"preferences_automatic_instance_redirect_label": "Redirección automática de instancia (segunda opción a redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Preferencias de la suscripción",
|
||||
"preferences_annotations_subscribed_label": "¿Mostrar anotaciones por defecto para los canales suscritos? ",
|
||||
"Redirect homepage to feed: ": "Redirigir la página de inicio a la fuente: ",
|
||||
"Number of videos shown in feed: ": "Número de vídeos mostrados en la fuente: ",
|
||||
"Sort videos by: ": "Ordenar los vídeos por: ",
|
||||
"preferences_max_results_label": "Número de vídeos mostrados en la fuente: ",
|
||||
"preferences_sort_label": "Ordenar los vídeos por: ",
|
||||
"published": "fecha de publicación",
|
||||
"published - reverse": "fecha de publicación: orden inverso",
|
||||
"alphabetically": "alfabéticamente",
|
||||
@@ -88,12 +89,12 @@
|
||||
"channel name - reverse": "nombre del canal: orden inverso",
|
||||
"Only show latest video from channel: ": "Mostrar solo el último vídeo del canal: ",
|
||||
"Only show latest unwatched video from channel: ": "Mostrar solo el último vídeo sin ver del canal: ",
|
||||
"Only show unwatched: ": "Mostrar solo los no vistos: ",
|
||||
"Only show notifications (if there are any): ": "Mostrar solo notificaciones (si hay alguna): ",
|
||||
"preferences_unseen_only_label": "Mostrar solo los no vistos: ",
|
||||
"preferences_notifications_only_label": "Mostrar solo notificaciones (si hay alguna): ",
|
||||
"Enable web notifications": "Habilitar notificaciones web",
|
||||
"`x` uploaded a video": "`x` subió un video",
|
||||
"`x` is live": "`x` esta en vivo",
|
||||
"Data preferences": "Preferencias de los datos",
|
||||
"preferences_category_data": "Preferencias de los datos",
|
||||
"Clear watch history": "Borrar el historial de reproducción",
|
||||
"Import/export data": "Importar/Exportar datos",
|
||||
"Change password": "Cambiar contraseña",
|
||||
@@ -101,9 +102,10 @@
|
||||
"Manage tokens": "Gestionar tokens",
|
||||
"Watch history": "Historial de reproducción",
|
||||
"Delete account": "Borrar cuenta",
|
||||
"Administrator preferences": "Preferencias de administrador",
|
||||
"Default homepage: ": "Página de inicio por defecto: ",
|
||||
"Feed menu: ": "Menú de fuentes: ",
|
||||
"preferences_category_admin": "Preferencias de administrador",
|
||||
"preferences_default_home_label": "Página de inicio por defecto: ",
|
||||
"preferences_feed_menu_label": "Menú de fuentes: ",
|
||||
"preferences_show_nick_label": "Mostrar nombre de usuario arriba: ",
|
||||
"Top enabled: ": "¿Habilitar los destacados? ",
|
||||
"CAPTCHA enabled: ": "¿Habilitar los CAPTCHA? ",
|
||||
"Login enabled: ": "¿Habilitar el inicio de sesión? ",
|
||||
@@ -113,16 +115,13 @@
|
||||
"Subscription manager": "Gestor de suscripciones",
|
||||
"Token manager": "Gestor de tokens",
|
||||
"Token": "Token",
|
||||
"`x` subscriptions": "`x` suscripciones",
|
||||
"`x` tokens": "`x` tokens",
|
||||
"Import/export": "Importar/Exportar",
|
||||
"unsubscribe": "Desuscribirse",
|
||||
"revoke": "revocar",
|
||||
"Subscriptions": "Suscripciones",
|
||||
"`x` unseen notifications": "`x` notificaciones sin ver",
|
||||
"search": "buscar",
|
||||
"Log out": "Cerrar la sesión",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Publicado bajo licencia AGPLv3 por Omar Roth.",
|
||||
"Released under the AGPLv3 on Github.": "Publicado bajo la AGPLv3 en Github.",
|
||||
"Source available here.": "Código fuente disponible aquí.",
|
||||
"View JavaScript license information.": "Ver información de licencia de JavaScript.",
|
||||
"View privacy policy.": "Ver la política de privacidad.",
|
||||
@@ -132,13 +131,17 @@
|
||||
"Private": "Privado",
|
||||
"View all playlists": "Ver todas las listas de reproducción",
|
||||
"Updated `x` ago": "Actualizado hace `x`",
|
||||
"Delete playlist `x`?": "¿Eliminar la lista de reproducción `x`?",
|
||||
"Delete playlist": "Eliminar lista de reproducción",
|
||||
"Delete playlist `x`?": "¿Borrar la lista de reproducción `x`?",
|
||||
"Delete playlist": "Borrar lista de reproducción",
|
||||
"Create playlist": "Crear lista de reproducción",
|
||||
"Title": "Título",
|
||||
"Playlist privacy": "Privacidad de la lista de reproducción",
|
||||
"Editing playlist `x`": "Editando la lista de reproducción 'x'",
|
||||
"Watch on YouTube": "Ver el vídeo en Youtube",
|
||||
"Show more": "Mostrar más",
|
||||
"Show less": "Mostrar menos",
|
||||
"Watch on YouTube": "Ver el vídeo en YouTube",
|
||||
"Switch Invidious Instance": "Cambiar Instancia de Invidious",
|
||||
"Broken? Try another Invidious Instance": "¿Algún error? Prueba otra instancia de Invidious",
|
||||
"Hide annotations": "Ocultar anotaciones",
|
||||
"Show annotations": "Mostrar anotaciones",
|
||||
"Genre: ": "Género: ",
|
||||
@@ -149,13 +152,15 @@
|
||||
"Whitelisted regions: ": "Regiones permitidas: ",
|
||||
"Blacklisted regions: ": "Regiones bloqueadas: ",
|
||||
"Shared `x`": "Compartido `x`",
|
||||
"`x` views": "`x` visualizaciones",
|
||||
"Premieres in `x`": "Se estrena en `x`",
|
||||
"Premieres `x`": "Estrenos `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "¡Hola! Parece que tiene JavaScript desactivado. Haga clic aquí para ver los comentarios, pero tenga en cuenta que pueden tardar un poco más en cargarse.",
|
||||
"View YouTube comments": "Ver los comentarios de YouTube",
|
||||
"View more comments on Reddit": "Ver más comentarios en Reddit",
|
||||
"View `x` comments": "Ver `x` comentarios",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentarios",
|
||||
"": "Ver `x` comentarios"
|
||||
},
|
||||
"View Reddit comments": "Ver los comentarios de Reddit",
|
||||
"Hide replies": "Ocultar las respuestas",
|
||||
"Show replies": "Mostrar las respuestas",
|
||||
@@ -180,10 +185,8 @@
|
||||
"This channel does not exist.": "El canal no existe.",
|
||||
"Could not get channel info.": "No se ha podido obtener información del canal.",
|
||||
"Could not fetch comments": "No se han podido recuperar los comentarios",
|
||||
"View `x` replies": "Ver `x` respuestas",
|
||||
"`x` ago": "hace `x`",
|
||||
"Load more": "Cargar más",
|
||||
"`x` points": "`x` puntos",
|
||||
"Could not create mix.": "No se ha podido crear la mezcla.",
|
||||
"Empty playlist": "La lista de reproducción está vacía",
|
||||
"Not a playlist.": "Lista de reproducción no válida.",
|
||||
@@ -196,7 +199,7 @@
|
||||
"No such user": "Usuario no válido",
|
||||
"Token is expired, please try again": "El símbolo ha caducado, inténtelo de nuevo",
|
||||
"English": "Inglés",
|
||||
"English (auto-generated)": "Inglés (autogenerado)",
|
||||
"English (auto-generated)": "Inglés (generados automáticamente)",
|
||||
"Afrikaans": "Afrikáans",
|
||||
"Albanian": "Albanés",
|
||||
"Amharic": "Amárico",
|
||||
@@ -301,19 +304,13 @@
|
||||
"Yiddish": "Yidis",
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zulú",
|
||||
"`x` years": "`x` años",
|
||||
"`x` months": "`x` meses",
|
||||
"`x` weeks": "`x` semanas",
|
||||
"`x` days": "`x` días",
|
||||
"`x` hours": "`x` horas",
|
||||
"`x` minutes": "`x` minutos",
|
||||
"`x` seconds": "`x` segundos",
|
||||
"Fallback comments: ": "Comentarios alternativos: ",
|
||||
"Popular": "Populares",
|
||||
"Search": "Buscar",
|
||||
"Top": "Destacados",
|
||||
"About": "Acerca de",
|
||||
"Rating: ": "Valoración: ",
|
||||
"Language: ": "Idioma: ",
|
||||
"preferences_locale_label": "Idioma: ",
|
||||
"View as playlist": "Ver como lista de reproducción",
|
||||
"Default": "Por defecto",
|
||||
"Music": "Música",
|
||||
@@ -325,12 +322,142 @@
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(editado)",
|
||||
"YouTube comment permalink": "Enlace permanente de YouTube del comentario",
|
||||
"permalink": "permalink",
|
||||
"permalink": "enlace permanente",
|
||||
"`x` marked it with a ❤": "`x` lo ha marcado con un ❤",
|
||||
"Audio mode": "Modo de audio",
|
||||
"Video mode": "Modo de vídeo",
|
||||
"Videos": "Vídeos",
|
||||
"Playlists": "Listas de reproducción",
|
||||
"Community": "Comunidad",
|
||||
"Current version: ": "Versión actual: "
|
||||
"relevance": "relevancia",
|
||||
"rating": "valoración",
|
||||
"date": "fecha",
|
||||
"views": "visualizaciones",
|
||||
"content_type": "content_type",
|
||||
"duration": "duración",
|
||||
"features": "funcionalidades",
|
||||
"sort": "ordenar",
|
||||
"hour": "hora",
|
||||
"today": "hoy",
|
||||
"week": "semana",
|
||||
"month": "mes",
|
||||
"year": "año",
|
||||
"video": "vídeo",
|
||||
"channel": "canal",
|
||||
"playlist": "lista de reproducción",
|
||||
"movie": "película",
|
||||
"show": "programa",
|
||||
"hd": "hd",
|
||||
"subtitles": "subtítulos",
|
||||
"creative_commons": "creative_commons",
|
||||
"3d": "3d",
|
||||
"live": "directo",
|
||||
"4k": "4k",
|
||||
"location": "ubicación",
|
||||
"hdr": "hdr",
|
||||
"filter": "filtro",
|
||||
"Current version: ": "Versión actual: ",
|
||||
"next_steps_error_message": "Después de lo cual deberías intentar: ",
|
||||
"next_steps_error_message_refresh": "Recargar",
|
||||
"next_steps_error_message_go_to_youtube": "Ir a YouTube",
|
||||
"short": "Corto (< 4 minutos)",
|
||||
"long": "Largo (> 20 minutos)",
|
||||
"footer_documentation": "Documentación",
|
||||
"footer_original_source_code": "Código fuente original",
|
||||
"adminprefs_modified_source_code_url_label": "URL al repositorio de código fuente modificado",
|
||||
"footer_source_code": "Código fuente",
|
||||
"footer_modfied_source_code": "Código fuente modificado",
|
||||
"footer_donate_page": "Donar",
|
||||
"preferences_region_label": "País del contenido: ",
|
||||
"preferences_quality_dash_label": "Calidad de vídeo DASH preferida: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Intermedia",
|
||||
"preferences_quality_dash_option_auto": "Automática",
|
||||
"none": "ninguno",
|
||||
"videoinfo_started_streaming_x_ago": "Comenzó difusión hace `x`",
|
||||
"download_subtitles": "Subtítulos- `x` (.vtt)",
|
||||
"user_created_playlists": "`x` listas de reproducción creadas",
|
||||
"user_saved_playlists": "`x` listas de reproducción guardadas",
|
||||
"Video unavailable": "Vídeo no disponible",
|
||||
"videoinfo_youTube_embed_link": "Insertar",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_option_dash": "DASH (calidad adaptativa)",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_quality_option_small": "Pequeña",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_best": "La mejor",
|
||||
"preferences_quality_dash_option_worst": "La peor",
|
||||
"videoinfo_invidious_embed_link": "Enlace para Insertar",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"purchased": "Comprado",
|
||||
"360": "360°",
|
||||
"videoinfo_watch_on_youTube": "Ver en YouTube",
|
||||
"preferences_save_player_pos_label": "Guardar posición de reproducción: ",
|
||||
"generic_views_count": "{{count}} visualización",
|
||||
"generic_views_count_plural": "{{count}} visualizaciones",
|
||||
"generic_subscribers_count": "{{count}} suscriptor",
|
||||
"generic_subscribers_count_plural": "{{count}} suscriptores",
|
||||
"generic_subscriptions_count": "{{count}} suscripción",
|
||||
"generic_subscriptions_count_plural": "{{count}} suscripciones",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notificación no vista",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notificaciones no vistas",
|
||||
"generic_count_days": "{{count}} día",
|
||||
"generic_count_days_plural": "{{count}} días",
|
||||
"comments_view_x_replies": "Ver {{count}} respuesta",
|
||||
"comments_view_x_replies_plural": "Ver {{count}} respuestas",
|
||||
"generic_count_weeks": "{{count}} semana",
|
||||
"generic_count_weeks_plural": "{{count}} semanas",
|
||||
"generic_playlists_count": "{{count}} lista de reproducción",
|
||||
"generic_playlists_count_plural": "{{count}} listas de reproducción",
|
||||
"generic_videos_count": "{{count}} vídeo",
|
||||
"generic_videos_count_plural": "{{count}} vídeos",
|
||||
"generic_count_months": "{{count}} mes",
|
||||
"generic_count_months_plural": "{{count}} meses",
|
||||
"comments_points_count": "{{count}} punto",
|
||||
"comments_points_count_plural": "{{count}} puntos",
|
||||
"generic_count_years": "{{count}} año",
|
||||
"generic_count_years_plural": "{{count}} años",
|
||||
"generic_count_hours": "{{count}} hora",
|
||||
"generic_count_hours_plural": "{{count}} horas",
|
||||
"generic_count_minutes": "{{count}} minuto",
|
||||
"generic_count_minutes_plural": "{{count}} minutos",
|
||||
"generic_count_seconds": "{{count}} segundo",
|
||||
"generic_count_seconds_plural": "{{count}} segundos",
|
||||
"crash_page_before_reporting": "Antes de notificar un error asegúrate de que has:",
|
||||
"crash_page_switch_instance": "probado a <a href=\"`x`\">usar otra instancia</a>",
|
||||
"crash_page_read_the_faq": "leído las <a href=\"`x`\">Preguntas Frecuentes</a>",
|
||||
"crash_page_search_issue": "buscado <a href=\"`x`\">problemas existentes en Github</a>",
|
||||
"crash_page_you_found_a_bug": "¡Parece que has encontrado un error en Invidious!",
|
||||
"crash_page_refresh": "probado a <a href=\"`x`\">recargar la página</a>",
|
||||
"crash_page_report_issue": "Si nada de lo anterior ha sido de ayuda, por favor, <a href=\"`x`\">abre una nueva incidencia en GitHub</a> (preferiblemente en inglés) e incluye el siguiente texto en tu mensaje (NO traduzcas este texto):",
|
||||
"English (United States)": "Inglés (Estados Unidos)",
|
||||
"Cantonese (Hong Kong)": "Cantonés (Hong Kong)",
|
||||
"Dutch (auto-generated)": "Neerlandés (generados automáticamente)",
|
||||
"French (auto-generated)": "Francés (generados automáticamente)",
|
||||
"Interlingue": "Occidental",
|
||||
"Japanese (auto-generated)": "Japonés (generados automáticamente)",
|
||||
"Russian (auto-generated)": "Ruso (generados automáticamente)",
|
||||
"Spanish (Spain)": "Español (España)",
|
||||
"Vietnamese (auto-generated)": "Vietnamita (generados automáticamente)",
|
||||
"English (United Kingdom)": "Inglés (Reino Unido)",
|
||||
"Chinese (Taiwan)": "Chino (Taiwán)",
|
||||
"German (auto-generated)": "Alemán (generados automáticamente)",
|
||||
"Italian (auto-generated)": "Italiano (generados automáticamente)",
|
||||
"Turkish (auto-generated)": "Turco (generados automáticamente)",
|
||||
"Portuguese (Brazil)": "Portugués (Brasil)",
|
||||
"Indonesian (auto-generated)": "Indonesio (generados automáticamente)",
|
||||
"Portuguese (auto-generated)": "Portugués (generados automáticamente)",
|
||||
"Chinese": "Chino",
|
||||
"Chinese (Hong Kong)": "Chino (Hong Kong)",
|
||||
"Chinese (China)": "Chino (China)",
|
||||
"Korean (auto-generated)": "Coreano (generados automáticamente)",
|
||||
"Spanish (Mexico)": "Español (Méjico)",
|
||||
"Spanish (auto-generated)": "Español (generados automáticamente)",
|
||||
"preferences_watch_history_label": "Habilitar historial de reproducciones: "
|
||||
}
|
||||
298
locales/eu.json
298
locales/eu.json
@@ -1,7 +1,4 @@
|
||||
{
|
||||
"`x` subscribers": "`x` harpidedun",
|
||||
"`x` videos": "`x` bideo",
|
||||
"`x` playlists": "`x` erreprodukzio-zerrenda",
|
||||
"LIVE": "ZUZENEAN",
|
||||
"Shared `x` ago": "Duela `x` partekatua",
|
||||
"Unsubscribe": "Harpidetza kendu",
|
||||
@@ -19,7 +16,6 @@
|
||||
"New passwords must match": "Pasahitza berriek bat egin behar dute",
|
||||
"Cannot change password for Google accounts": "Ezin da pasahitza aldatu Google kontuetan",
|
||||
"Authorize token?": "Baimendu tokena?",
|
||||
"Authorize token for `x`?": "",
|
||||
"Yes": "Bai",
|
||||
"No": "Ez",
|
||||
"Import and Export Data": "Datuak inportatu eta esportatu",
|
||||
@@ -49,288 +45,22 @@
|
||||
"Sign In": "Hasi saioa",
|
||||
"Register": "Eman izena",
|
||||
"E-mail": "E-posta",
|
||||
"Google verification code": "",
|
||||
"Preferences": "Hobespenak",
|
||||
"Player preferences": "Erreproduzigailuaren hobespenak",
|
||||
"Always loop: ": "",
|
||||
"Autoplay: ": "Automatikoki erreproduzitu: ",
|
||||
"Play next by default: ": "",
|
||||
"Autoplay next video: ": "Erreproduzitu automatikoki hurrengo bideoa: ",
|
||||
"Listen by default: ": "",
|
||||
"Proxy videos: ": "",
|
||||
"Default speed: ": "",
|
||||
"Preferred video quality: ": "Hobetsitako bideoaren kalitatea: ",
|
||||
"Player volume: ": "Erreproduzigailuaren bolumena: ",
|
||||
"Default comments: ": "Lehenetsitako iruzkinak: ",
|
||||
"youtube": "youtube",
|
||||
"preferences_category_player": "Erreproduzigailuaren hobespenak",
|
||||
"preferences_autoplay_label": "Automatikoki erreproduzitu: ",
|
||||
"preferences_continue_autoplay_label": "Erreproduzitu automatikoki hurrengo bideoa: ",
|
||||
"preferences_quality_label": "Hobetsitako bideoaren kalitatea: ",
|
||||
"preferences_volume_label": "Erreproduzigailuaren bolumena: ",
|
||||
"preferences_comments_label": "Lehenetsitako iruzkinak: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "reddit",
|
||||
"Default captions: ": "Lehenetsitako azpitituluak: ",
|
||||
"Fallback captions: ": "",
|
||||
"Show related videos: ": "Erakutsi erlazionatutako bideoak: ",
|
||||
"Show annotations by default: ": "Erakutsi oharrak modu lehenetsian: ",
|
||||
"Visual preferences": "Hobespen bisualak",
|
||||
"Player style: ": "Erreproduzigailu mota: ",
|
||||
"preferences_captions_label": "Lehenetsitako azpitituluak: ",
|
||||
"preferences_related_videos_label": "Erakutsi erlazionatutako bideoak: ",
|
||||
"preferences_annotations_label": "Erakutsi oharrak modu lehenetsian: ",
|
||||
"preferences_category_visual": "Hobespen bisualak",
|
||||
"preferences_player_style_label": "Erreproduzigailu mota: ",
|
||||
"Dark mode: ": "Gai iluna: ",
|
||||
"Theme: ": "Gaia: ",
|
||||
"preferences_dark_mode_label": "Gaia: ",
|
||||
"dark": "iluna",
|
||||
"light": "argia",
|
||||
"Thin mode: ": "",
|
||||
"Subscription preferences": "Harpidetzen hobespenak",
|
||||
"Show annotations by default for subscribed channels: ": "",
|
||||
"Redirect homepage to feed: ": "",
|
||||
"Number of videos shown in feed: ": "",
|
||||
"Sort videos by: ": "",
|
||||
"published": "",
|
||||
"published - reverse": "",
|
||||
"alphabetically": "",
|
||||
"alphabetically - reverse": "",
|
||||
"channel name": "",
|
||||
"channel name - reverse": "",
|
||||
"Only show latest video from channel: ": "",
|
||||
"Only show latest unwatched video from channel: ": "",
|
||||
"Only show unwatched: ": "",
|
||||
"Only show notifications (if there are any): ": "",
|
||||
"Enable web notifications": "",
|
||||
"`x` uploaded a video": "",
|
||||
"`x` is live": "",
|
||||
"Data preferences": "",
|
||||
"Clear watch history": "",
|
||||
"Import/export data": "",
|
||||
"Change password": "",
|
||||
"Manage subscriptions": "",
|
||||
"Manage tokens": "",
|
||||
"Watch history": "",
|
||||
"Delete account": "",
|
||||
"Administrator preferences": "",
|
||||
"Default homepage: ": "",
|
||||
"Feed menu: ": "",
|
||||
"Top enabled: ": "",
|
||||
"CAPTCHA enabled: ": "",
|
||||
"Login enabled: ": "",
|
||||
"Registration enabled: ": "",
|
||||
"Report statistics: ": "",
|
||||
"Save preferences": "",
|
||||
"Subscription manager": "",
|
||||
"Token manager": "",
|
||||
"Token": "",
|
||||
"`x` subscriptions": "",
|
||||
"`x` tokens": "",
|
||||
"Import/export": "",
|
||||
"unsubscribe": "",
|
||||
"revoke": "",
|
||||
"Subscriptions": "",
|
||||
"`x` unseen notifications": "",
|
||||
"search": "",
|
||||
"Log out": "",
|
||||
"Released under the AGPLv3 by Omar Roth.": "",
|
||||
"Source available here.": "",
|
||||
"View JavaScript license information.": "",
|
||||
"View privacy policy.": "",
|
||||
"Trending": "",
|
||||
"Public": "",
|
||||
"Unlisted": "",
|
||||
"Private": "",
|
||||
"View all playlists": "",
|
||||
"Updated `x` ago": "",
|
||||
"Delete playlist `x`?": "",
|
||||
"Delete playlist": "",
|
||||
"Create playlist": "",
|
||||
"Title": "",
|
||||
"Playlist privacy": "",
|
||||
"Editing playlist `x`": "",
|
||||
"Watch on YouTube": "",
|
||||
"Hide annotations": "",
|
||||
"Show annotations": "",
|
||||
"Genre: ": "",
|
||||
"License: ": "",
|
||||
"Family friendly? ": "",
|
||||
"Wilson score: ": "",
|
||||
"Engagement: ": "",
|
||||
"Whitelisted regions: ": "",
|
||||
"Blacklisted regions: ": "",
|
||||
"Shared `x`": "",
|
||||
"`x` views": "",
|
||||
"Premieres in `x`": "",
|
||||
"Premieres `x`": "",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "",
|
||||
"View YouTube comments": "",
|
||||
"View more comments on Reddit": "",
|
||||
"View `x` comments": "",
|
||||
"View Reddit comments": "",
|
||||
"Hide replies": "",
|
||||
"Show replies": "",
|
||||
"Incorrect password": "",
|
||||
"Quota exceeded, try again in a few hours": "",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "",
|
||||
"Invalid TFA code": "",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "",
|
||||
"Wrong answer": "",
|
||||
"Erroneous CAPTCHA": "",
|
||||
"CAPTCHA is a required field": "",
|
||||
"User ID is a required field": "",
|
||||
"Password is a required field": "",
|
||||
"Wrong username or password": "",
|
||||
"Please sign in using 'Log in with Google'": "",
|
||||
"Password cannot be empty": "",
|
||||
"Password cannot be longer than 55 characters": "",
|
||||
"Please log in": "",
|
||||
"Invidious Private Feed for `x`": "",
|
||||
"channel:`x`": "",
|
||||
"Deleted or invalid channel": "",
|
||||
"This channel does not exist.": "",
|
||||
"Could not get channel info.": "",
|
||||
"Could not fetch comments": "",
|
||||
"View `x` replies": "",
|
||||
"`x` ago": "",
|
||||
"Load more": "",
|
||||
"`x` points": "",
|
||||
"Could not create mix.": "",
|
||||
"Empty playlist": "",
|
||||
"Not a playlist.": "",
|
||||
"Playlist does not exist.": "",
|
||||
"Could not pull trending pages.": "",
|
||||
"Hidden field \"challenge\" is a required field": "",
|
||||
"Hidden field \"token\" is a required field": "",
|
||||
"Erroneous challenge": "",
|
||||
"Erroneous token": "",
|
||||
"No such user": "",
|
||||
"Token is expired, please try again": "",
|
||||
"English": "",
|
||||
"English (auto-generated)": "",
|
||||
"Afrikaans": "",
|
||||
"Albanian": "",
|
||||
"Amharic": "",
|
||||
"Arabic": "",
|
||||
"Armenian": "",
|
||||
"Azerbaijani": "",
|
||||
"Bangla": "",
|
||||
"Basque": "",
|
||||
"Belarusian": "",
|
||||
"Bosnian": "",
|
||||
"Bulgarian": "",
|
||||
"Burmese": "",
|
||||
"Catalan": "",
|
||||
"Cebuano": "",
|
||||
"Chinese (Simplified)": "",
|
||||
"Chinese (Traditional)": "",
|
||||
"Corsican": "",
|
||||
"Croatian": "",
|
||||
"Czech": "",
|
||||
"Danish": "",
|
||||
"Dutch": "",
|
||||
"Esperanto": "",
|
||||
"Estonian": "",
|
||||
"Filipino": "",
|
||||
"Finnish": "",
|
||||
"French": "",
|
||||
"Galician": "",
|
||||
"Georgian": "",
|
||||
"German": "",
|
||||
"Greek": "",
|
||||
"Gujarati": "",
|
||||
"Haitian Creole": "",
|
||||
"Hausa": "",
|
||||
"Hawaiian": "",
|
||||
"Hebrew": "",
|
||||
"Hindi": "",
|
||||
"Hmong": "",
|
||||
"Hungarian": "",
|
||||
"Icelandic": "",
|
||||
"Igbo": "",
|
||||
"Indonesian": "",
|
||||
"Irish": "",
|
||||
"Italian": "",
|
||||
"Japanese": "",
|
||||
"Javanese": "",
|
||||
"Kannada": "",
|
||||
"Kazakh": "",
|
||||
"Khmer": "",
|
||||
"Korean": "",
|
||||
"Kurdish": "",
|
||||
"Kyrgyz": "",
|
||||
"Lao": "",
|
||||
"Latin": "",
|
||||
"Latvian": "",
|
||||
"Lithuanian": "",
|
||||
"Luxembourgish": "",
|
||||
"Macedonian": "",
|
||||
"Malagasy": "",
|
||||
"Malay": "",
|
||||
"Malayalam": "",
|
||||
"Maltese": "",
|
||||
"Maori": "",
|
||||
"Marathi": "",
|
||||
"Mongolian": "",
|
||||
"Nepali": "",
|
||||
"Norwegian Bokmål": "",
|
||||
"Nyanja": "",
|
||||
"Pashto": "",
|
||||
"Persian": "",
|
||||
"Polish": "",
|
||||
"Portuguese": "",
|
||||
"Punjabi": "",
|
||||
"Romanian": "",
|
||||
"Russian": "",
|
||||
"Samoan": "",
|
||||
"Scottish Gaelic": "",
|
||||
"Serbian": "",
|
||||
"Shona": "",
|
||||
"Sindhi": "",
|
||||
"Sinhala": "",
|
||||
"Slovak": "",
|
||||
"Slovenian": "",
|
||||
"Somali": "",
|
||||
"Southern Sotho": "",
|
||||
"Spanish": "",
|
||||
"Spanish (Latin America)": "",
|
||||
"Sundanese": "",
|
||||
"Swahili": "",
|
||||
"Swedish": "",
|
||||
"Tajik": "",
|
||||
"Tamil": "",
|
||||
"Telugu": "",
|
||||
"Thai": "",
|
||||
"Turkish": "",
|
||||
"Ukrainian": "",
|
||||
"Urdu": "",
|
||||
"Uzbek": "",
|
||||
"Vietnamese": "",
|
||||
"Welsh": "",
|
||||
"Western Frisian": "",
|
||||
"Xhosa": "",
|
||||
"Yiddish": "",
|
||||
"Yoruba": "",
|
||||
"Zulu": "",
|
||||
"`x` years": "",
|
||||
"`x` months": "",
|
||||
"`x` weeks": "",
|
||||
"`x` days": "",
|
||||
"`x` hours": "",
|
||||
"`x` minutes": "",
|
||||
"`x` seconds": "",
|
||||
"Fallback comments: ": "",
|
||||
"Popular": "",
|
||||
"Top": "",
|
||||
"About": "",
|
||||
"Rating: ": "",
|
||||
"Language: ": "",
|
||||
"View as playlist": "",
|
||||
"Default": "",
|
||||
"Music": "",
|
||||
"Gaming": "",
|
||||
"News": "",
|
||||
"Movies": "",
|
||||
"Download": "",
|
||||
"Download as: ": "",
|
||||
"%A %B %-d, %Y": "",
|
||||
"(edited)": "",
|
||||
"YouTube comment permalink": "",
|
||||
"permalink": "",
|
||||
"`x` marked it with a ❤": "",
|
||||
"Audio mode": "",
|
||||
"Video mode": "",
|
||||
"Videos": "",
|
||||
"Playlists": "",
|
||||
"Community": "",
|
||||
"Current version: ": ""
|
||||
"light": "argia"
|
||||
}
|
||||
416
locales/fa.json
Normal file
416
locales/fa.json
Normal file
@@ -0,0 +1,416 @@
|
||||
{
|
||||
"generic_views_count_0": "{{count}} بازدید",
|
||||
"generic_videos_count_0": "{{count}} ویدئو",
|
||||
"generic_playlists_count_0": "{{count}} فهرست پخش",
|
||||
"generic_subscribers_count_0": "{{count}} دنبال کننده",
|
||||
"generic_subscriptions_count_0": "{{count}} اشتراک ها",
|
||||
"LIVE": "زنده",
|
||||
"Shared `x` ago": "`x` پیش به اشتراک گذاشته شده",
|
||||
"Unsubscribe": "لغو اشتراک",
|
||||
"Subscribe": "مشترک شدن",
|
||||
"View channel on YouTube": "دیدن کانال در یوتیوب",
|
||||
"View playlist on YouTube": "دیدن فهرست پخش در یوتیوب",
|
||||
"newest": "تازهترین",
|
||||
"oldest": "کهنهترین",
|
||||
"popular": "محبوب",
|
||||
"last": "آخرین",
|
||||
"Next page": "صفحه بعد",
|
||||
"Previous page": "صفحه قبل",
|
||||
"Clear watch history?": "پاک کردن تاریخچه نمایش؟",
|
||||
"New password": "گذرواژه تازه",
|
||||
"New passwords must match": "گذارواژه های تازه باید باهم همخوانی داشته باشند",
|
||||
"Cannot change password for Google accounts": "نمیتوان گذرواژه را برای حساب های کاربری گوگل تغییر داد",
|
||||
"Authorize token?": "توکن دسترسی؟",
|
||||
"Authorize token for `x`?": "توکن دسترسی برای `x`؟",
|
||||
"Yes": "بله",
|
||||
"No": "خیر",
|
||||
"Import and Export Data": "درونبرد و برونبرد داده",
|
||||
"Import": "درونبرد",
|
||||
"Import Invidious data": "درونبرد داده اینویدیوس",
|
||||
"Import YouTube subscriptions": "درونبرد اشتراکهای یوتیوب",
|
||||
"Import FreeTube subscriptions (.db)": "درونبرد اشتراکهای فریتیوب (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "درونبرد اشتراکهای نیوپایپ (.json)",
|
||||
"Import NewPipe data (.zip)": "درونبرد داده نیوپایپ (.zip)",
|
||||
"Export": "برونبرد",
|
||||
"Export subscriptions as OPML": "برونبرد اشتراکها در قالب OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "برونبرد اشتراکها در قالب OPML (برای نیوپایپ و فریتیوب)",
|
||||
"Export data as JSON": "برونبرد داده در قالب JSON",
|
||||
"Delete account?": "حذف حساب کاربری؟",
|
||||
"History": "تاریخچه",
|
||||
"An alternative front-end to YouTube": "یک پیشانه جایگزین برای یوتیوب",
|
||||
"JavaScript license information": "اطلاعات پروانه جاوااسکریپت",
|
||||
"source": "منبع",
|
||||
"Log in": "ورود",
|
||||
"Log in/register": "ورود/ثبت نام",
|
||||
"Log in with Google": "ورود با گوگل",
|
||||
"User ID": "شناسه کاربری",
|
||||
"Password": "گذرواژه",
|
||||
"Time (h:mm:ss):": "زمان (h:mm:ss):",
|
||||
"Text CAPTCHA": "کپچای متنی",
|
||||
"Image CAPTCHA": "کپچای تصویری",
|
||||
"Sign In": "ورود",
|
||||
"Register": "ثبت نام",
|
||||
"E-mail": "ایمیل",
|
||||
"Google verification code": "کد تایید گوگل",
|
||||
"Preferences": "ترجیحات",
|
||||
"preferences_category_player": "ترجیحات نمایشدهنده",
|
||||
"preferences_video_loop_label": "همواره ویدئو را بازپخش کن ",
|
||||
"preferences_autoplay_label": "نمایش خودکار: ",
|
||||
"preferences_continue_label": "پخش بعدی به طور پیشفرض: ",
|
||||
"preferences_continue_autoplay_label": "پخش خودکار ویدیو بعدی: ",
|
||||
"preferences_listen_label": "گوش کردن به طور پیشفرض: ",
|
||||
"preferences_local_label": "پروکسی ویدیو ها: ",
|
||||
"preferences_speed_label": "سرعت پیشفرض: ",
|
||||
"preferences_quality_label": "کیفیت ویدیوی ترجیحی: ",
|
||||
"preferences_volume_label": "صدای پخش کننده: ",
|
||||
"preferences_comments_label": "نظرات پیشفرض: ",
|
||||
"youtube": "یوتیوب",
|
||||
"reddit": "ردیت",
|
||||
"preferences_captions_label": "زیرنویس های پیشفرض: ",
|
||||
"Fallback captions: ": "عقب گرد زیرنویس ها: ",
|
||||
"preferences_related_videos_label": "نمایش ویدیو های مرتبط: ",
|
||||
"preferences_annotations_label": "نمایش حاشیه نویسی ها به طور پیشفرض: ",
|
||||
"preferences_extend_desc_label": "گسترش خودکار توضیحات ویدئو: ",
|
||||
"preferences_vr_mode_label": "ویدئوها ۳۶۰ درجه تعاملی: ",
|
||||
"preferences_category_visual": "ترجیحات بصری",
|
||||
"preferences_player_style_label": "حالت پخش کننده: ",
|
||||
"Dark mode: ": "حالت تاریک: ",
|
||||
"preferences_dark_mode_label": "تم: ",
|
||||
"dark": "تاریک",
|
||||
"light": "روشن",
|
||||
"preferences_thin_mode_label": "حالت نازک: ",
|
||||
"preferences_category_misc": "ترجیحات متفرقه",
|
||||
"preferences_automatic_instance_redirect_label": "هدایت خودکار نمونه (به طور پیشفرض به redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "ترجیحات اشتراک",
|
||||
"preferences_annotations_subscribed_label": "نمایش حاشیه نویسی ها به طور پیشفرض برای کانال های مشترک شده: ",
|
||||
"Redirect homepage to feed: ": "تغییر مسیر صفحه خانه به خوراک: ",
|
||||
"preferences_max_results_label": "تعداد ویدیو های نمایش داده شده در خوراک: ",
|
||||
"preferences_sort_label": "مرتب سازی ویدیو ها بر اساس: ",
|
||||
"published": "منتشر شده",
|
||||
"published - reverse": "منتشر شده - معکوس",
|
||||
"alphabetically": "بر اساس حروف الفبا",
|
||||
"alphabetically - reverse": "بر اساس حروف الفبا - معکوس",
|
||||
"channel name": "نام کانال",
|
||||
"channel name - reverse": "نام کانال - معکوس",
|
||||
"Only show latest video from channel: ": "تنها نمایش آخرین ویدیو های کانال: ",
|
||||
"Only show latest unwatched video from channel: ": "تنها نمایش آخرین ویدیو های تماشا نشده از کانال: ",
|
||||
"preferences_unseen_only_label": "تنها نمایش ویدیو های تماشا نشده: ",
|
||||
"preferences_notifications_only_label": "تنها نمایش اعلان ها (اگر وجود داشته باشد) ",
|
||||
"Enable web notifications": "فعال کردن اعلان های وب",
|
||||
"`x` uploaded a video": "`x` یک ویدیو بارگذاری کرد",
|
||||
"`x` is live": "`x` زنده است",
|
||||
"preferences_category_data": "ترجیحات داده",
|
||||
"Clear watch history": "پاککردن تاریخچه تماشا",
|
||||
"Import/export data": "وارد کردن/خارج کردن داده",
|
||||
"Change password": "تغییر گذرواژه",
|
||||
"Manage subscriptions": "مدیریت اشتراک ها",
|
||||
"Manage tokens": "مدیریت توکن ها",
|
||||
"Watch history": "تاریخچه تماشا",
|
||||
"Delete account": "حذف حساب کاربری",
|
||||
"preferences_category_admin": "ترجیحات مدیریت",
|
||||
"preferences_default_home_label": "صفحه خانه پیشفرض ",
|
||||
"preferences_feed_menu_label": "منو خوراک: ",
|
||||
"preferences_show_nick_label": "نمایش نام مستعار در بالا: ",
|
||||
"Top enabled: ": "بالا فعال شده: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA فعال شده: ",
|
||||
"Login enabled: ": "ورود فعال شده: ",
|
||||
"Registration enabled: ": "ثبت نام فعال شده: ",
|
||||
"Report statistics: ": "گذارش آمار: ",
|
||||
"Save preferences": "ذخیره ترجیحات",
|
||||
"Subscription manager": "مدیریت اشتراک",
|
||||
"Token manager": "مدیر توکن",
|
||||
"Token": "توکن",
|
||||
"tokens_count_0": "{{count}} توکن ها",
|
||||
"Import/export": "وارد کردن/خارج کردن",
|
||||
"unsubscribe": "لغو اشتراک",
|
||||
"revoke": "ابطال",
|
||||
"Subscriptions": "اشتراک ها",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} اعلان نادیده",
|
||||
"search": "جستجو",
|
||||
"Log out": "خروج",
|
||||
"Released under the AGPLv3 on Github.": "منتشر شده تحت پروانه AGPLv3 روی گیتهاب.",
|
||||
"Source available here.": "منبع اینجا دردسترس است.",
|
||||
"View JavaScript license information.": "نمایش اطلاعات مجوز جاوا اسکریپت.",
|
||||
"View privacy policy.": "نمایش سیاست حفظ حریم خصوصی.",
|
||||
"Trending": "روند",
|
||||
"Public": "عمومی",
|
||||
"Unlisted": "لیست نشده",
|
||||
"Private": "خصوصی",
|
||||
"View all playlists": "نمایش همه سیاهههای پخش",
|
||||
"Updated `x` ago": "بروز شده `x` پیش",
|
||||
"Delete playlist `x`?": "حذف سیاههٔ پخش `x`؟",
|
||||
"Delete playlist": "حذف سیاههٔ پخش",
|
||||
"Create playlist": "ایجاد سیاههٔ پخش",
|
||||
"Title": "عنوان",
|
||||
"Playlist privacy": "حریم خصوصی سیاههٔ پخش",
|
||||
"Editing playlist `x`": "تغییر سیاههٔ پخش `x`",
|
||||
"Show more": "نمایش بیشتر",
|
||||
"Show less": "نمایش کمتر",
|
||||
"Watch on YouTube": "تماشا در یوتیوب",
|
||||
"Switch Invidious Instance": "تعویض نمونه اینویدیوس",
|
||||
"Broken? Try another Invidious Instance": "کار نمیکند؟ نمونه دیگری از اینویدیوس را امتحان کنید",
|
||||
"Hide annotations": "مخفی کردن حاشیه نویسی ها",
|
||||
"Show annotations": "نمایش حاشیه نویسی ها",
|
||||
"Genre: ": "ژانر: ",
|
||||
"License: ": "مجوز: ",
|
||||
"Family friendly? ": "خانواده دوستانه؟ ",
|
||||
"Wilson score: ": "امتیاز ویلسون: ",
|
||||
"Engagement: ": "نامزدی: ",
|
||||
"Whitelisted regions: ": "مناطق لیست سفید: ",
|
||||
"Blacklisted regions: ": "مناطق لیست سیاه: ",
|
||||
"Shared `x`": "به اشتراک گذاشته شده `x`",
|
||||
"Premieres in `x`": "برای اولین بار در `x`",
|
||||
"Premieres `x`": "برای اولین بار `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "سلام! مثل اینکه تو جاوا اسکریپت رو خاموش کرده ای. اینجا کلیک کن تا نظرات را ببینی، این رو یادت باشه که ممکنه بارگذاری اونها کمی طول بکشه.",
|
||||
"View YouTube comments": "نمایش نظرات یوتیوب",
|
||||
"View more comments on Reddit": "نمایش نظرات بیشتر در ردیت",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "نمایش `x` نظرات",
|
||||
"": "نمایش `x` نظرات"
|
||||
},
|
||||
"View Reddit comments": "نمایش نظرات ردیت",
|
||||
"Hide replies": "مخفی کردن پاسخ ها",
|
||||
"Show replies": "نمایش پاسخ ها",
|
||||
"Incorrect password": "گذرواژه نا درست",
|
||||
"Quota exceeded, try again in a few hours": "سهمیه بیشتر شده است، چند ساعت بعد دوباره تلاش کنید",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "قادر به ورود نیستید، مطمئن شوید احراز تایید-دومرحله (Authenticator یا پیامکوتاه) خاموش باشد.",
|
||||
"Invalid TFA code": "کد TFA نادرست است",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "ورود با خطا مواجه شد. این ممکن است به خاطر احراز تایید-دومرحله باشد که برای حساب کاربری شما فعال نشده است.",
|
||||
"Wrong answer": "پاسخ غلط",
|
||||
"Erroneous CAPTCHA": "CAPTCHA نا درست",
|
||||
"CAPTCHA is a required field": "CAPTCHA یک فیلد ضروری است",
|
||||
"User ID is a required field": "شناسه کاربری یک فیلد ضروری است",
|
||||
"Password is a required field": "گذرواژه یک فیلد ضروری است",
|
||||
"Wrong username or password": "نام کاربری یا گذرواژه غلط است",
|
||||
"Please sign in using 'Log in with Google'": "لطفا با استفاده از 'ورود توسط گوگل' وارد شوید",
|
||||
"Password cannot be empty": "گذرواژه نمیتواند خالی باشد",
|
||||
"Password cannot be longer than 55 characters": "گذر واژه نمیتواند از ۵۵ کاراکتر بیشتر باشد",
|
||||
"Please log in": "لطفا وارد شوید",
|
||||
"Invidious Private Feed for `x`": "خوراک خصوصی زشت برای `x`",
|
||||
"channel:`x`": "کانال: `x`",
|
||||
"Deleted or invalid channel": "کانال نا معتبر یا پاک شده است",
|
||||
"This channel does not exist.": "این کانال وجود ندارد.",
|
||||
"Could not get channel info.": "نمیتوان اطلاعات کانال را دریافت کرد.",
|
||||
"Could not fetch comments": "نمیتوان نظرات را دریافت کرد",
|
||||
"comments_view_x_replies_0": "نمایش {{count}} پاسخ ها",
|
||||
"`x` ago": "`x` پیش",
|
||||
"Load more": "بارگذاری بیشتر",
|
||||
"comments_points_count_0": "{{count}} نقطه ها",
|
||||
"Could not create mix.": "نمیتوان میکس ساخت.",
|
||||
"Empty playlist": "سیاههٔ پخش خالی",
|
||||
"Not a playlist.": "یک سیاههٔ پخش نیست.",
|
||||
"Playlist does not exist.": "سیاههٔ پخش وجود ندارد.",
|
||||
"Could not pull trending pages.": "نمیتوان صفحه های پر طرفدار را بکشد.",
|
||||
"Hidden field \"challenge\" is a required field": "فیلد مخفی \"چالش\" یک فیلد ضروری است",
|
||||
"Hidden field \"token\" is a required field": "فیلد مخفی \"توکن\" یک فیلد ضروری است",
|
||||
"Erroneous challenge": "چالش غلط",
|
||||
"Erroneous token": "توکن غلط",
|
||||
"No such user": "چنین کاربری وجود ندارد",
|
||||
"Token is expired, please try again": "توکن ضروری است، لطفا دوباره تلاش کنید",
|
||||
"English": "انگلیسی",
|
||||
"English (auto-generated)": "انگلیسی (خودکار-تولیدشده)",
|
||||
"Afrikaans": "آفریکانس",
|
||||
"Albanian": "آلبانیایی",
|
||||
"Amharic": "امهری",
|
||||
"Arabic": "عربی",
|
||||
"Armenian": "ارمنی",
|
||||
"Azerbaijani": "آذربایجانی",
|
||||
"Bangla": "بنگالی",
|
||||
"Basque": "باسکی",
|
||||
"Belarusian": "بلاروسی",
|
||||
"Bosnian": "بوسنیایی",
|
||||
"Bulgarian": "بلغاری",
|
||||
"Burmese": "برمهای",
|
||||
"Catalan": "کاتالان",
|
||||
"Cebuano": "سبوانو",
|
||||
"Chinese (Simplified)": "چینی (ساده شده)",
|
||||
"Chinese (Traditional)": "چینی (سنتی)",
|
||||
"Corsican": "کرس",
|
||||
"Croatian": "کرواسی",
|
||||
"Czech": "چکی",
|
||||
"Danish": "دانمارکی",
|
||||
"Dutch": "هلندی",
|
||||
"Esperanto": "اسپرانتو",
|
||||
"Estonian": "استونیایی",
|
||||
"Filipino": "فلیپینی",
|
||||
"Finnish": "فنلاندی",
|
||||
"French": "فرانسوی",
|
||||
"Galician": "گالیسی",
|
||||
"Georgian": "گرجی",
|
||||
"German": "آلمانی",
|
||||
"Greek": "یونانی",
|
||||
"Gujarati": "گجراتی",
|
||||
"Haitian Creole": "کریول آییسینی",
|
||||
"Hausa": "هوسه",
|
||||
"Hawaiian": "هاوائی",
|
||||
"Hebrew": "عبری",
|
||||
"Hindi": "هندی",
|
||||
"Hmong": "همونگ",
|
||||
"Hungarian": "مجاری",
|
||||
"Icelandic": "ایسلندی",
|
||||
"Igbo": "ایگبو",
|
||||
"Indonesian": "اندونزیایی",
|
||||
"Irish": "شلتا",
|
||||
"Italian": "ایتالیایی",
|
||||
"Japanese": "ژاپنی",
|
||||
"Javanese": "جاوهای",
|
||||
"Kannada": "کانارا",
|
||||
"Kazakh": "قزاقی",
|
||||
"Khmer": "خمر",
|
||||
"Korean": "کرهای",
|
||||
"Kurdish": "کردی",
|
||||
"Kyrgyz": "قرقیزی",
|
||||
"Lao": "لائو",
|
||||
"Latin": "لاتین",
|
||||
"Latvian": "لتونیایی",
|
||||
"Lithuanian": "لیتوانیایی",
|
||||
"Luxembourgish": "لوکزامبورگی",
|
||||
"Macedonian": "مقدونی",
|
||||
"Malagasy": "مالاگاسی",
|
||||
"Malay": "مالایی",
|
||||
"Malayalam": "مالایالم",
|
||||
"Maltese": "مالتی",
|
||||
"Maori": "مائوری",
|
||||
"Marathi": "مراتی",
|
||||
"Mongolian": "مغولی",
|
||||
"Nepali": "نپالی",
|
||||
"Norwegian Bokmål": "بوکمل",
|
||||
"Nyanja": "چوایی",
|
||||
"Pashto": "پشتو",
|
||||
"Persian": "فارسی",
|
||||
"Polish": "لهستانی",
|
||||
"Portuguese": "پرتغالی",
|
||||
"Punjabi": "پنجابی",
|
||||
"Romanian": "رومانیایی",
|
||||
"Russian": "روسی",
|
||||
"Samoan": "ساموآیی",
|
||||
"Scottish Gaelic": "گیلیک اسکاتلندی",
|
||||
"Serbian": "صربی",
|
||||
"Shona": "شونا",
|
||||
"Sindhi": "سندی",
|
||||
"Sinhala": "سینهالی",
|
||||
"Slovak": "اسلواکی",
|
||||
"Slovenian": "اسلونیایی",
|
||||
"Somali": "سومالیایی",
|
||||
"Southern Sotho": "سوتو",
|
||||
"Spanish": "اسپانیایی",
|
||||
"Spanish (Latin America)": "اسپانیایی (آمریکای لاتین)",
|
||||
"Sundanese": "سوندایی",
|
||||
"Swahili": "سواحلی",
|
||||
"Swedish": "سوئدی",
|
||||
"Tajik": "تاجیک",
|
||||
"Tamil": "تامیلی",
|
||||
"Telugu": "تلوگو",
|
||||
"Thai": "تای",
|
||||
"Turkish": "ترکی",
|
||||
"Ukrainian": "اوکراینی",
|
||||
"Urdu": "اردو",
|
||||
"Uzbek": "ازبکی",
|
||||
"Vietnamese": "ویتنامی",
|
||||
"Welsh": "ولزی",
|
||||
"Western Frisian": "فریسی غربی",
|
||||
"Xhosa": "خوسایی",
|
||||
"Yiddish": "ییدیش",
|
||||
"Yoruba": "یوروبایی",
|
||||
"Zulu": "زولو",
|
||||
"generic_count_years_0": "{{count}} سال",
|
||||
"generic_count_months_0": "{{count}} ماه",
|
||||
"generic_count_weeks_0": "{{count}} هفته",
|
||||
"generic_count_days_0": "{{count}} روز",
|
||||
"generic_count_hours_0": "{{count}} ساعت",
|
||||
"generic_count_minutes_0": "{{count}} دقیقه",
|
||||
"generic_count_seconds_0": "{{count}} ثانیه",
|
||||
"Fallback comments: ": "نظرات عقب گرد: ",
|
||||
"Popular": "محبوب",
|
||||
"Search": "جستجو",
|
||||
"Top": "بالا",
|
||||
"About": "درباره",
|
||||
"Rating: ": "رتبه دهی: ",
|
||||
"preferences_locale_label": "زبان: ",
|
||||
"View as playlist": "نمایش به عنوان سیاههٔ پخش",
|
||||
"Default": "پیشفرض",
|
||||
"Music": "موسیقی",
|
||||
"Gaming": "بازی",
|
||||
"News": "اخبار",
|
||||
"Movies": "فیلمها",
|
||||
"Download": "بارگیری",
|
||||
"Download as: ": "بارگیری به عنوان: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d، %Y",
|
||||
"(edited)": "(ویرایش شده)",
|
||||
"YouTube comment permalink": "پیوست ثابت نظرات یوتیوب",
|
||||
"permalink": "پیوست ثابت",
|
||||
"`x` marked it with a ❤": "`x` نشان گذاری شده با یک ❤",
|
||||
"Audio mode": "حالت صدا",
|
||||
"Video mode": "حالت ویدیو",
|
||||
"Videos": "ویدیو ها",
|
||||
"Playlists": "سیاهههای پخش",
|
||||
"Community": "اجتماع",
|
||||
"relevance": "مرتبط بودن",
|
||||
"rating": "امتیاز",
|
||||
"date": "تاریخ بارگذاری",
|
||||
"views": "تعداد بازدید",
|
||||
"content_type": "نوع",
|
||||
"duration": "مدت",
|
||||
"features": "ویژگیها",
|
||||
"sort": "به ترتیب",
|
||||
"hour": "یک ساعت گذشته",
|
||||
"today": "امروز",
|
||||
"week": "این هفته",
|
||||
"month": "این ماه",
|
||||
"year": "امسال",
|
||||
"video": "ویدئو",
|
||||
"channel": "کانال",
|
||||
"playlist": "سیاههٔ پخش",
|
||||
"movie": "فیلم",
|
||||
"show": "نمایش",
|
||||
"hd": "HD",
|
||||
"subtitles": "زیرنویس",
|
||||
"creative_commons": "کریتیو کامونز",
|
||||
"3d": "سهبعدی",
|
||||
"live": "زنده",
|
||||
"4k": "4K",
|
||||
"location": "مکان",
|
||||
"hdr": "HDR",
|
||||
"filter": "پالایه",
|
||||
"Current version: ": "نسخه فعلی: ",
|
||||
"next_steps_error_message": "اکنون بایستی یکی از این موارد را امتحان کنید: ",
|
||||
"next_steps_error_message_refresh": "تازهسازی",
|
||||
"next_steps_error_message_go_to_youtube": "رفتن به یوتیوب",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_dash": "DASH (کیفیت قابل تطبیق)",
|
||||
"preferences_quality_option_medium": "میانه",
|
||||
"preferences_quality_option_small": "پایین",
|
||||
"preferences_quality_dash_option_auto": "خودکار",
|
||||
"preferences_quality_dash_option_best": "بهترین",
|
||||
"preferences_quality_dash_option_worst": "بدترین",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "اینویدیوس",
|
||||
"360": "360°",
|
||||
"footer_donate_page": "کمک مالی",
|
||||
"footer_source_code": "کد منبع",
|
||||
"footer_modfied_source_code": "کد منبع ویرایش شده",
|
||||
"none": "هیچکدام",
|
||||
"videoinfo_started_streaming_x_ago": "پخش جریانی `x` پیش آغاز شد",
|
||||
"videoinfo_watch_on_youTube": "تماشا در یوتیوب",
|
||||
"videoinfo_youTube_embed_link": "توکار",
|
||||
"videoinfo_invidious_embed_link": "پیوند توکار",
|
||||
"download_subtitles": "زیرنویسها - `x` (.vtt)",
|
||||
"Video unavailable": "ویدئو دردسترس نیست",
|
||||
"preferences_save_player_pos_label": "ذخیره زمان کنونی ویدئو: ",
|
||||
"purchased": "خریداری شده",
|
||||
"preferences_quality_dash_label": "کیفیت ترجیحی ویدئو DASH: ",
|
||||
"preferences_region_label": "کشور محتوا: ",
|
||||
"footer_documentation": "مستندات",
|
||||
"footer_original_source_code": "کد منبع اصلی",
|
||||
"long": "بلند (> 20 دقیقه)",
|
||||
"adminprefs_modified_source_code_url_label": "URL مخزن کد منبع ویریش شده",
|
||||
"short": "کوتاه (< 4 دقیقه)"
|
||||
}
|
||||
441
locales/fi.json
Normal file
441
locales/fi.json
Normal file
@@ -0,0 +1,441 @@
|
||||
{
|
||||
"LIVE": "SUORA",
|
||||
"Shared `x` ago": "Jaettu `x` sitten",
|
||||
"Unsubscribe": "Peruuta tilaus",
|
||||
"Subscribe": "Tilaa",
|
||||
"View channel on YouTube": "Näytä kanava YouTubessa",
|
||||
"View playlist on YouTube": "Näytä soittolista YouTubessa",
|
||||
"newest": "uusin",
|
||||
"oldest": "vanhin",
|
||||
"popular": "suosittu",
|
||||
"last": "viimeisin",
|
||||
"Next page": "Seuraava sivu",
|
||||
"Previous page": "Edellinen sivu",
|
||||
"Clear watch history?": "Tyhjennä katseluhistoria?",
|
||||
"New password": "Uusi salasana",
|
||||
"New passwords must match": "Uusien salasanojen täytyy täsmätä",
|
||||
"Cannot change password for Google accounts": "Google-tilien salasanaa ei voi vaihtaa",
|
||||
"Authorize token?": "Valuutetaanko tunnus?",
|
||||
"Authorize token for `x`?": "Valtuutetaanko tunnus `x`:lle?",
|
||||
"Yes": "Kyllä",
|
||||
"No": "Ei",
|
||||
"Import and Export Data": "Tuo ja vie tietoja",
|
||||
"Import": "Tuo",
|
||||
"Import Invidious data": "Tuo Invidious-tietoja",
|
||||
"Import YouTube subscriptions": "Tuo YouTube-tilaukset",
|
||||
"Import FreeTube subscriptions (.db)": "Tuo FreeTube-tilaukset (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Tuo NewPipe-tilaukset (.json)",
|
||||
"Import NewPipe data (.zip)": "Tuo NewPipe-tietoja (.zip)",
|
||||
"Export": "Vie",
|
||||
"Export subscriptions as OPML": "Vie tilaukset OPML-muodossa",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Vie tilaukset OPML-muodossa (NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Vie data JSON-muodossa",
|
||||
"Delete account?": "Poista tili?",
|
||||
"History": "Historia",
|
||||
"An alternative front-end to YouTube": "Vaihtoehtoinen front-end YouTubelle",
|
||||
"JavaScript license information": "JavaScript-lisenssitiedot",
|
||||
"source": "lähde",
|
||||
"Log in": "Kirjaudu sisään",
|
||||
"Log in/register": "Kirjaudu sisään/rekisteröidy",
|
||||
"Log in with Google": "Kirjaudu sisään Googlella",
|
||||
"User ID": "Käyttäjätunnus",
|
||||
"Password": "Salasana",
|
||||
"Time (h:mm:ss):": "Aika (h:mm:ss):",
|
||||
"Text CAPTCHA": "Teksti-CAPTCHA",
|
||||
"Image CAPTCHA": "Kuva-CAPTCHA",
|
||||
"Sign In": "Kirjaudu sisään",
|
||||
"Register": "Rekisteröidy",
|
||||
"E-mail": "Sähköposti",
|
||||
"Google verification code": "Google-vahvistuskoodi",
|
||||
"Preferences": "Asetukset",
|
||||
"preferences_category_player": "Soittimen asetukset",
|
||||
"preferences_video_loop_label": "Toista jatkuvasti aina: ",
|
||||
"preferences_autoplay_label": "Automaattinen toisto: ",
|
||||
"preferences_continue_label": "Toista seuraava oletuksena: ",
|
||||
"preferences_continue_autoplay_label": "Toista seuraava video automaattisesti: ",
|
||||
"preferences_listen_label": "Kuuntele oletuksena: ",
|
||||
"preferences_local_label": "Proxytä videot: ",
|
||||
"preferences_speed_label": "Oletusnopeus: ",
|
||||
"preferences_quality_label": "Ensisijainen videon laatu: ",
|
||||
"preferences_volume_label": "Soittimen äänenvoimakkuus: ",
|
||||
"preferences_comments_label": "Oletuskommentit: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Oletustekstitykset: ",
|
||||
"Fallback captions: ": "Toissijaiset tekstitykset: ",
|
||||
"preferences_related_videos_label": "Näytä aiheeseen liittyviä videoita: ",
|
||||
"preferences_annotations_label": "Näytä huomautukset oletuksena: ",
|
||||
"preferences_extend_desc_label": "Laajenna automaattisesti videon kuvausta: ",
|
||||
"preferences_vr_mode_label": "Interaktiiviset 360-asteiset videot: ",
|
||||
"preferences_category_visual": "Visuaaliset asetukset",
|
||||
"preferences_player_style_label": "Soittimen tyyli: ",
|
||||
"Dark mode: ": "Tumma tila: ",
|
||||
"preferences_dark_mode_label": "Teema: ",
|
||||
"dark": "tumma",
|
||||
"light": "vaalea",
|
||||
"preferences_thin_mode_label": "Kapea tila: ",
|
||||
"preferences_category_misc": "Sekalaiset asetukset",
|
||||
"preferences_automatic_instance_redirect_label": "Automaattinen instanssin uudelleenohjaus (perääntyminen sivulle redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Tilausten asetukset",
|
||||
"preferences_annotations_subscribed_label": "Näytä oletuksena tilattujen kanavien huomautukset: ",
|
||||
"Redirect homepage to feed: ": "Uudelleenohjaa kotisivu syötteeseen: ",
|
||||
"preferences_max_results_label": "Syötteessä näytettävien videoiden määrä: ",
|
||||
"preferences_sort_label": "Videoiden lajitteluperuste: ",
|
||||
"published": "julkaistu",
|
||||
"published - reverse": "julkaistu - käänteinen",
|
||||
"alphabetically": "aakkosjärjestys",
|
||||
"alphabetically - reverse": "aakkosjärjestys - käänteinen",
|
||||
"channel name": "kanavan nimi",
|
||||
"channel name - reverse": "kanavan nimi - käänteinen",
|
||||
"Only show latest video from channel: ": "Näytä vain uusin video kanavalta: ",
|
||||
"Only show latest unwatched video from channel: ": "Näytä vain uusin katsomaton video kanavalta: ",
|
||||
"preferences_unseen_only_label": "Näytä vain katsomattomat: ",
|
||||
"preferences_notifications_only_label": "Näytä vain ilmoitukset (jos niitä on): ",
|
||||
"Enable web notifications": "Näytä verkkoilmoitukset",
|
||||
"`x` uploaded a video": "`x` latasi videon",
|
||||
"`x` is live": "`x` lähettää suorana",
|
||||
"preferences_category_data": "Tietojen asetukset",
|
||||
"Clear watch history": "Tyhjennä katseluhistoria",
|
||||
"Import/export data": "Tuo/vie tiedot",
|
||||
"Change password": "Vaihda salasana",
|
||||
"Manage subscriptions": "Hallinnoi tilauksia",
|
||||
"Manage tokens": "Hallinnoi tunnuksia",
|
||||
"Watch history": "Katseluhistoria",
|
||||
"Delete account": "Poista tili",
|
||||
"preferences_category_admin": "Järjestelmänvalvojan asetukset",
|
||||
"preferences_default_home_label": "Oletuskotisivu: ",
|
||||
"preferences_feed_menu_label": "Syötevalikko: ",
|
||||
"preferences_show_nick_label": "Näytä nimimerkki ylimpänä: ",
|
||||
"Top enabled: ": "Yläosa käytössä: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA käytössä: ",
|
||||
"Login enabled: ": "Kirjautuminen käytössä: ",
|
||||
"Registration enabled: ": "Rekisteröityminen käytössä: ",
|
||||
"Report statistics: ": "Raportoi tilastot: ",
|
||||
"Save preferences": "Tallenna asetukset",
|
||||
"Subscription manager": "Tilausten hallinnoija",
|
||||
"Token manager": "Tunnusten hallinnoija",
|
||||
"Token": "Tunnus",
|
||||
"Import/export": "Tuo/vie",
|
||||
"unsubscribe": "peru tilaus",
|
||||
"revoke": "kumoa",
|
||||
"Subscriptions": "Tilaukset",
|
||||
"search": "haku",
|
||||
"Log out": "Kirjaudu ulos",
|
||||
"Source available here.": "Lähdekoodi on saatavilla täällä.",
|
||||
"View JavaScript license information.": "Katso JavaScript-koodin lisenssitiedot.",
|
||||
"View privacy policy.": "Katso tietosuojaseloste.",
|
||||
"Trending": "Nousussa",
|
||||
"Public": "Julkinen",
|
||||
"Unlisted": "Listaamaton",
|
||||
"Private": "Yksityinen",
|
||||
"View all playlists": "Kaikki soittolistat",
|
||||
"Updated `x` ago": "Päivitetty `x` sitten",
|
||||
"Delete playlist `x`?": "Poista soittolista `x`?",
|
||||
"Delete playlist": "Poista soittolista",
|
||||
"Create playlist": "Luo soittolista",
|
||||
"Title": "Nimi",
|
||||
"Playlist privacy": "Soittolistan yksityisyys",
|
||||
"Editing playlist `x`": "Muokataan soittolistaa `x`",
|
||||
"Show more": "Näytä enemmän",
|
||||
"Show less": "Näytä vähemmän",
|
||||
"Watch on YouTube": "Katso YouTubessa",
|
||||
"Switch Invidious Instance": "Vaihda Invidious-instanssia",
|
||||
"Broken? Try another Invidious Instance": "Rikki? Kokeile toista Invidious-instanssia",
|
||||
"Hide annotations": "Piilota merkkaukset",
|
||||
"Show annotations": "Näytä merkkaukset",
|
||||
"Genre: ": "Genre: ",
|
||||
"License: ": "Lisenssi: ",
|
||||
"Family friendly? ": "Kaiken ikäisille sopiva? ",
|
||||
"Wilson score: ": "Wilson-pistemäärä: ",
|
||||
"Engagement: ": "Huomio: ",
|
||||
"Whitelisted regions: ": "Sallitut alueet: ",
|
||||
"Blacklisted regions: ": "Estetyt alueet: ",
|
||||
"Shared `x`": "Jaettu `x`",
|
||||
"Premieres in `x`": "Ensiesitykseen aikaa `x`",
|
||||
"Premieres `x`": "Ensiesitykseen `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hei! Vaikuttaa siltä, että sinulla on JavaScript pois käytöstä. Klikkaa tästä nähdäksesi kommentit, huomioi että lataamisessa voi kestää melko kauan.",
|
||||
"View YouTube comments": "Näytä YouTube-kommentit",
|
||||
"View more comments on Reddit": "Katso lisää kommentteja Redditissä",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Katso `x` kommentti",
|
||||
"": "Katso `x` kommenttia"
|
||||
},
|
||||
"View Reddit comments": "Katso Reddit-kommentit",
|
||||
"Hide replies": "Piilota vastaukset",
|
||||
"Show replies": "Näytä vastaukset",
|
||||
"Incorrect password": "Väärä salasana",
|
||||
"Quota exceeded, try again in a few hours": "Kiintiö ylitetty, yritä parin tunnin kuluttua uudestaan",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Sisäänkirjautuminen epäonnistui. Varmista, että kaksivaiheinen tunnistautuminen (Authenticator tai tekstiviesti) on käytössä.",
|
||||
"Invalid TFA code": "Virheellinen turvakoodi",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Sisäänkirjautuminen epäonnistui. Tämä voi johtua siitä, että kaksivaiheinen tunnistautuminen on pois käytöstä tunnuksellasi.",
|
||||
"Wrong answer": "Väärä vastaus",
|
||||
"Erroneous CAPTCHA": "Virheellinen CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA-kenttä vaaditaan",
|
||||
"User ID is a required field": "Käyttäjätunnus vaaditaan",
|
||||
"Password is a required field": "Salasana vaaditaan",
|
||||
"Wrong username or password": "Väärä käyttäjänimi tai salasana",
|
||||
"Please sign in using 'Log in with Google'": "Ole hyvä ja kirjaudu sisään Google-tunnuksella",
|
||||
"Password cannot be empty": "Salasana ei voi olla tyhjä",
|
||||
"Password cannot be longer than 55 characters": "Salasana ei voi olla yli 55 merkkiä pitkä",
|
||||
"Please log in": "Kirjaudu sisään, ole hyvä",
|
||||
"Invidious Private Feed for `x`": "Invidiousin yksityinen syöte `x`:lle",
|
||||
"channel:`x`": "kanava:`x`",
|
||||
"Deleted or invalid channel": "Poistettu tai virheellinen kanava",
|
||||
"This channel does not exist.": "Tätä kanavaa ei ole olemassa.",
|
||||
"Could not get channel info.": "Kanavatietoa ei saatu ladattua.",
|
||||
"Could not fetch comments": "Kommenttien nouto epäonnistui",
|
||||
"`x` ago": "`x` sitten",
|
||||
"Load more": "Lataa lisää",
|
||||
"Could not create mix.": "Sekoituksen luominen epäonnistui.",
|
||||
"Empty playlist": "Tyhjennä soittolista",
|
||||
"Not a playlist.": "Ei ole soittolista.",
|
||||
"Playlist does not exist.": "Soittolistaa ei ole olemassa.",
|
||||
"Could not pull trending pages.": "Nousussa olevien sivujen lataus epäonnistui.",
|
||||
"Hidden field \"challenge\" is a required field": "Piilotettu kenttä \"challenge\" vaaditaan",
|
||||
"Hidden field \"token\" is a required field": "Piilotettu kenttä \"tunnus\" vaaditaan",
|
||||
"Erroneous challenge": "Virheellinen haaste",
|
||||
"Erroneous token": "Virheellinen tunnus",
|
||||
"No such user": "Käyttäjää ei ole olemassa",
|
||||
"Token is expired, please try again": "Tunnus on vanhentunut, yritä uudestaan",
|
||||
"English": "englanti",
|
||||
"English (auto-generated)": "englanti (automaattisesti luotu)",
|
||||
"Afrikaans": "afrikaans",
|
||||
"Albanian": "albania",
|
||||
"Amharic": "amhara",
|
||||
"Arabic": "arabia",
|
||||
"Armenian": "armenia",
|
||||
"Azerbaijani": "azeri",
|
||||
"Bangla": "bengali",
|
||||
"Basque": "baski",
|
||||
"Belarusian": "valkovenäjä",
|
||||
"Bosnian": "bosnia",
|
||||
"Bulgarian": "bulgaria",
|
||||
"Burmese": "burma",
|
||||
"Catalan": "katalaani",
|
||||
"Cebuano": "cebuano",
|
||||
"Chinese (Simplified)": "kiina (yksinkertaistettu)",
|
||||
"Chinese (Traditional)": "kiina (perinteinen)",
|
||||
"Corsican": "korsika",
|
||||
"Croatian": "kroaatti",
|
||||
"Czech": "tšekki",
|
||||
"Danish": "tanska",
|
||||
"Dutch": "hollanti",
|
||||
"Esperanto": "esperanto",
|
||||
"Estonian": "viro",
|
||||
"Filipino": "filipino",
|
||||
"Finnish": "suomi",
|
||||
"French": "ranska",
|
||||
"Galician": "galego",
|
||||
"Georgian": "georgia",
|
||||
"German": "saksa",
|
||||
"Greek": "kreikka",
|
||||
"Gujarati": "gujarati",
|
||||
"Haitian Creole": "haitinkreoli",
|
||||
"Hausa": "hausa",
|
||||
"Hawaiian": "havaiji",
|
||||
"Hebrew": "heprea",
|
||||
"Hindi": "hindi",
|
||||
"Hmong": "hmong",
|
||||
"Hungarian": "unkari",
|
||||
"Icelandic": "islanti",
|
||||
"Igbo": "igbo",
|
||||
"Indonesian": "indonesia",
|
||||
"Irish": "iiri",
|
||||
"Italian": "italia",
|
||||
"Japanese": "japani",
|
||||
"Javanese": "jaava",
|
||||
"Kannada": "kannada",
|
||||
"Kazakh": "kazakki",
|
||||
"Khmer": "khmer",
|
||||
"Korean": "korea",
|
||||
"Kurdish": "kurdi",
|
||||
"Kyrgyz": "kirgiisi",
|
||||
"Lao": "lao",
|
||||
"Latin": "latina",
|
||||
"Latvian": "latvia",
|
||||
"Lithuanian": "liettua",
|
||||
"Luxembourgish": "luksemburgi",
|
||||
"Macedonian": "makedonia",
|
||||
"Malagasy": "malagassi",
|
||||
"Malay": "malaiji",
|
||||
"Malayalam": "malajalam",
|
||||
"Maltese": "malta",
|
||||
"Maori": "maori",
|
||||
"Marathi": "marathi",
|
||||
"Mongolian": "mongoli",
|
||||
"Nepali": "nepali",
|
||||
"Norwegian Bokmål": "kirjanorja",
|
||||
"Nyanja": "njandža",
|
||||
"Pashto": "paštu",
|
||||
"Persian": "persia",
|
||||
"Polish": "puola",
|
||||
"Portuguese": "portugali",
|
||||
"Punjabi": "pandžabi",
|
||||
"Romanian": "romania",
|
||||
"Russian": "venäjä",
|
||||
"Samoan": "samoa",
|
||||
"Scottish Gaelic": "gaeli",
|
||||
"Serbian": "serbia",
|
||||
"Shona": "šona",
|
||||
"Sindhi": "sindhi",
|
||||
"Sinhala": "sinhali",
|
||||
"Slovak": "slovakki",
|
||||
"Slovenian": "sloveeni",
|
||||
"Somali": "somali",
|
||||
"Southern Sotho": "eteläsotho",
|
||||
"Spanish": "espanja",
|
||||
"Spanish (Latin America)": "espanja (Latinalainen Amerikka)",
|
||||
"Sundanese": "sunda",
|
||||
"Swahili": "swahili",
|
||||
"Swedish": "ruotsi",
|
||||
"Tajik": "tadžikki",
|
||||
"Tamil": "tamili",
|
||||
"Telugu": "telugu",
|
||||
"Thai": "thai",
|
||||
"Turkish": "turkki",
|
||||
"Ukrainian": "ukraina",
|
||||
"Urdu": "urdu",
|
||||
"Uzbek": "uzbekki",
|
||||
"Vietnamese": "vietnam",
|
||||
"Welsh": "kymri",
|
||||
"Western Frisian": "länsifriisi",
|
||||
"Xhosa": "xhosa",
|
||||
"Yiddish": "jiddiš",
|
||||
"Yoruba": "joruba",
|
||||
"Zulu": "zulu",
|
||||
"Fallback comments: ": "Varakommentit: ",
|
||||
"Popular": "Suosittu",
|
||||
"Search": "Etsi",
|
||||
"Top": "Ylin",
|
||||
"About": "Tietoa",
|
||||
"Rating: ": "Arvosana: ",
|
||||
"preferences_locale_label": "Kieli: ",
|
||||
"View as playlist": "Katso soittolistana",
|
||||
"Default": "Oletus",
|
||||
"Music": "Musiikki",
|
||||
"Gaming": "Videopelit",
|
||||
"News": "Uutiset",
|
||||
"Movies": "Elokuvat",
|
||||
"Download": "Tallenna",
|
||||
"Download as: ": "Tallennusmuoto: ",
|
||||
"%A %B %-d, %Y": "%A %-d. %Bta, %Y",
|
||||
"(edited)": "(muokattu)",
|
||||
"YouTube comment permalink": "Pysyvä linkki YouTube-kommenttiin",
|
||||
"permalink": "pysyvä linkki",
|
||||
"`x` marked it with a ❤": "`x` merkkasi ❤:llä",
|
||||
"Audio mode": "Äänitila",
|
||||
"Video mode": "Videotila",
|
||||
"Videos": "Videot",
|
||||
"Playlists": "Soittolistat",
|
||||
"Community": "Yhteisö",
|
||||
"relevance": "Osuvuus",
|
||||
"rating": "Arvostelu",
|
||||
"date": "Latauspäivämäärä",
|
||||
"views": "Katselukerrat",
|
||||
"content_type": "Tyyppi",
|
||||
"duration": "Kesto",
|
||||
"features": "Ominaisuudet",
|
||||
"sort": "Luokittele",
|
||||
"hour": "Viimeisin tunti",
|
||||
"today": "Tänään",
|
||||
"week": "Tämä viikko",
|
||||
"month": "Tämä kuukausi",
|
||||
"year": "Tämä vuosi",
|
||||
"video": "Video",
|
||||
"channel": "Kanava",
|
||||
"playlist": "Soittolista",
|
||||
"movie": "Elokuva",
|
||||
"show": "Ohjelma",
|
||||
"hd": "HD",
|
||||
"subtitles": "Tekstitys/CC",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Suora lähetys",
|
||||
"4k": "4K",
|
||||
"location": "Sijainti",
|
||||
"hdr": "HDR",
|
||||
"filter": "Suodatin",
|
||||
"Current version: ": "Tämänhetkinen versio: ",
|
||||
"next_steps_error_message": "Sinun tulisi kokeilla seuraavia: ",
|
||||
"next_steps_error_message_refresh": "Päivitä",
|
||||
"next_steps_error_message_go_to_youtube": "Siirry YouTubeen",
|
||||
"generic_count_hours": "{{count}} tunti",
|
||||
"generic_count_hours_plural": "{{count}} tuntia",
|
||||
"download_subtitles": "Tekstitykset - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` luotua soittolistaa",
|
||||
"Video unavailable": "Video ei ole saatavilla",
|
||||
"videoinfo_youTube_embed_link": "Upota",
|
||||
"tokens_count": "{{count}} tunnus",
|
||||
"tokens_count_plural": "{{count}} tunnusta",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videota",
|
||||
"generic_playlists_count": "{{count}} soittolista",
|
||||
"generic_playlists_count_plural": "{{count}} soittolistaa",
|
||||
"generic_subscriptions_count": "{{count}} tilaus",
|
||||
"generic_subscriptions_count_plural": "{{count}} tilausta",
|
||||
"comments_view_x_replies": "Katso {{count}} vastaus",
|
||||
"comments_view_x_replies_plural": "Katso {{count}} vastausta",
|
||||
"generic_count_months": "{{count}} kuukausi",
|
||||
"generic_count_months_plural": "{{count}} kuukautta",
|
||||
"generic_count_weeks": "{{count}} viikko",
|
||||
"generic_count_weeks_plural": "{{count}} viikkoa",
|
||||
"generic_count_days": "{{count}} päivä",
|
||||
"generic_count_days_plural": "{{count}} päivää",
|
||||
"generic_count_minutes": "{{count}} minuutti",
|
||||
"generic_count_minutes_plural": "{{count}} minuuttia",
|
||||
"comments_points_count": "{{count}} piste",
|
||||
"comments_points_count_plural": "{{count}} pistettä",
|
||||
"generic_count_seconds": "{{count}} sekunti",
|
||||
"generic_count_seconds_plural": "{{count}} sekuntia",
|
||||
"crash_page_before_reporting": "Varmista ennen bugin ilmoittamista, että sinä olet:",
|
||||
"crash_page_refresh": "yrittänyt <a href=\"`x`\">päivittää sivun</a>",
|
||||
"crash_page_read_the_faq": "lukenut <a href=\"`x`\">Usein kysytyt kysymykset (FAQ)</a>",
|
||||
"crash_page_search_issue": "etsinyt <a href=\"`x`\">olemassa olevia issueita Githubissa</a>",
|
||||
"generic_views_count": "{{count}} katselu",
|
||||
"generic_views_count_plural": "{{count}} katselua",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"generic_subscribers_count": "{{count}} tilaaja",
|
||||
"generic_subscribers_count_plural": "{{count}} tilaajaa",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"crash_page_you_found_a_bug": "Vaikuttaa siltä, että löysit bugin Invidiousista!",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} näkemätön ilmoitus",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} näkemätöntä ilmoitusta",
|
||||
"crash_page_switch_instance": "yrittänyt <a href=\"`x`\">käyttää toista instassia</a>",
|
||||
"videoinfo_invidious_embed_link": "Upotuslinkki",
|
||||
"user_saved_playlists": "`x` tallennetua soittolistaa",
|
||||
"crash_page_report_issue": "Jos mikään näistä ei auttanut, <a href=\"`x`\">avaathan uuden issuen GitHubissa</a> (mieluiten englanniksi) ja sisällytät seuraavan tekstin viestissäsi (ÄLÄ käännä tätä tekstiä):",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_worst": "Huonoin",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_region_label": "Sisältömaa: ",
|
||||
"preferences_quality_option_medium": "Keskitaso",
|
||||
"preferences_quality_option_small": "Pieni",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_best": "Paras",
|
||||
"preferences_quality_option_dash": "DASH (mukautuva laatu)",
|
||||
"preferences_quality_dash_label": "Haluttava DASH-videolaatu: ",
|
||||
"generic_count_years": "{{count}} vuosi",
|
||||
"generic_count_years_plural": "{{count}} vuotta",
|
||||
"purchased": "Ostettu",
|
||||
"360": "360°",
|
||||
"videoinfo_watch_on_youTube": "Katso YouTubessa",
|
||||
"none": "ei mikään",
|
||||
"videoinfo_started_streaming_x_ago": "Striimaaminen aloitettu `x` sitten",
|
||||
"preferences_save_player_pos_label": "Tallenna toistokohta: ",
|
||||
"footer_donate_page": "Lahjoita",
|
||||
"footer_source_code": "Lähdekoodi",
|
||||
"adminprefs_modified_source_code_url_label": "URL muokattuun lähdekoodirepositoryyn",
|
||||
"Released under the AGPLv3 on Github.": "Julkaistu AGPLv3-lisenssin alla GitHubissa.",
|
||||
"short": "Lyhyt (< 4 minuuttia)",
|
||||
"long": "Pitkä (> 20 minuuttia)",
|
||||
"footer_documentation": "Dokumentaatio",
|
||||
"footer_original_source_code": "Alkuperäinen lähdekoodi",
|
||||
"footer_modfied_source_code": "Muokattu lähdekoodi"
|
||||
}
|
||||
291
locales/fr.json
291
locales/fr.json
@@ -1,7 +1,14 @@
|
||||
{
|
||||
"`x` subscribers": "`x` abonnés",
|
||||
"`x` videos": "`x` vidéos",
|
||||
"`x` playlists": "`x` listes de lecture",
|
||||
"generic_views_count": "{{count}} vue",
|
||||
"generic_views_count_plural": "{{count}} vues",
|
||||
"generic_videos_count": "{{count}} vidéo",
|
||||
"generic_videos_count_plural": "{{count}} vidéos",
|
||||
"generic_playlists_count": "{{count}} liste de lecture",
|
||||
"generic_playlists_count_plural": "{{count}} listes de lecture",
|
||||
"generic_subscribers_count": "{{count}} abonné",
|
||||
"generic_subscribers_count_plural": "{{count}} abonnés",
|
||||
"generic_subscriptions_count": "{{count}} abonnement",
|
||||
"generic_subscriptions_count_plural": "{{count}} abonnements",
|
||||
"LIVE": "EN DIRECT",
|
||||
"Shared `x` ago": "Ajoutée il y a `x`",
|
||||
"Unsubscribe": "Se désabonner",
|
||||
@@ -16,84 +23,88 @@
|
||||
"Previous page": "Page précédente",
|
||||
"Clear watch history?": "Êtes-vous sûr de vouloir supprimer l'historique des vidéos regardées ?",
|
||||
"New password": "Nouveau mot de passe",
|
||||
"New passwords must match": "Les champs \"Nouveau mot de passe\" doivent être identiques",
|
||||
"New passwords must match": "Les nouveaux mots de passe doivent correspondre",
|
||||
"Cannot change password for Google accounts": "Le mot de passe d'un compte Google ne peut pas être changé depuis Invidious",
|
||||
"Authorize token?": "Autoriser le token ?",
|
||||
"Authorize token?": "Autoriser le token ?",
|
||||
"Authorize token for `x`?": "Autoriser le token pour `x` ?",
|
||||
"Yes": "Oui",
|
||||
"No": "Non",
|
||||
"Import and Export Data": "Importer et exporter des données",
|
||||
"Import": "Importer",
|
||||
"Import Invidious data": "Importer des données Invidious",
|
||||
"Import YouTube subscriptions": "Importer des abonnements YouTube",
|
||||
"Import Invidious data": "Importer des données Invidious au format JSON",
|
||||
"Import YouTube subscriptions": "Importer des abonnements YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importer des abonnements FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importer des abonnements NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importer des données NewPipe (.zip)",
|
||||
"Export": "Exporter",
|
||||
"Export subscriptions as OPML": "Exporter les abonnements au format OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exporter les abonnements au format OPML (pour NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Exporter les données au format JSON",
|
||||
"Export data as JSON": "Exporter les données Invidious au format JSON",
|
||||
"Delete account?": "Êtes-vous sûr de vouloir supprimer votre compte ?",
|
||||
"History": "Historique",
|
||||
"An alternative front-end to YouTube": "Un front-end alternatif à YouTube",
|
||||
"JavaScript license information": "Informations sur les licences JavaScript",
|
||||
"source": "source",
|
||||
"Log in": "Se connecter",
|
||||
"Log in/register": "Se connecter/Créer un compte",
|
||||
"Log in/register": "Se connecter/S'inscrire",
|
||||
"Log in with Google": "Se connecter avec Google",
|
||||
"User ID": "Identifiant utilisateur",
|
||||
"Password": "Mot de passe",
|
||||
"Time (h:mm:ss):": "Heure (h:mm:ss) :",
|
||||
"Text CAPTCHA": "CAPTCHA Texte",
|
||||
"Image CAPTCHA": "CAPTCHA Image",
|
||||
"Text CAPTCHA": "CAPTCHA textuel",
|
||||
"Image CAPTCHA": "CAPTCHA graphique",
|
||||
"Sign In": "Se connecter",
|
||||
"Register": "S'inscrire",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Code de vérification Google",
|
||||
"Preferences": "Préférences",
|
||||
"Player preferences": "Préférences du lecteur",
|
||||
"Always loop: ": "Lire en boucle : ",
|
||||
"Autoplay: ": "Lancer la lecture automatiquement : ",
|
||||
"Play next by default: ": "Lire les vidéos suivantes par défaut : ",
|
||||
"Autoplay next video: ": "Lancer la lecture automatiquement pour la vidéo suivant la vidéo regardée : ",
|
||||
"Listen by default: ": "Audio uniquement : ",
|
||||
"Proxy videos: ": "Charger les vidéos à travers un proxy : ",
|
||||
"Default speed: ": "Vitesse par défaut : ",
|
||||
"Preferred video quality: ": "Qualité vidéo souhaitée : ",
|
||||
"Player volume: ": "Volume du lecteur : ",
|
||||
"Default comments: ": "Source des commentaires : ",
|
||||
"preferences_category_player": "Préférences du lecteur",
|
||||
"preferences_video_loop_label": "Lire en boucle : ",
|
||||
"preferences_autoplay_label": "Lancer la lecture automatiquement : ",
|
||||
"preferences_continue_label": "Lire les vidéos suivantes par défaut : ",
|
||||
"preferences_continue_autoplay_label": "Lire automatiquement la vidéo suivante : ",
|
||||
"preferences_listen_label": "Audio uniquement : ",
|
||||
"preferences_local_label": "Charger les vidéos à travers un proxy : ",
|
||||
"preferences_speed_label": "Vitesse par défaut : ",
|
||||
"preferences_quality_label": "Qualité vidéo souhaitée : ",
|
||||
"preferences_volume_label": "Volume du lecteur : ",
|
||||
"preferences_comments_label": "Source des commentaires : ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "Sous-titres par défaut : ",
|
||||
"preferences_captions_label": "Sous-titres par défaut : ",
|
||||
"Fallback captions: ": "Sous-titres alternatifs : ",
|
||||
"Show related videos: ": "Voir les vidéos liées : ",
|
||||
"Show annotations by default: ": "Afficher les annotations par défaut : ",
|
||||
"Visual preferences": "Préférences du site",
|
||||
"Player style: ": "Style du lecteur : ",
|
||||
"preferences_related_videos_label": "Voir les vidéos liées : ",
|
||||
"preferences_annotations_label": "Afficher les annotations par défaut : ",
|
||||
"preferences_extend_desc_label": "Etendre automatiquement la description : ",
|
||||
"preferences_vr_mode_label": "Vidéos interactives à 360° (nécessite WebGL) : ",
|
||||
"preferences_category_visual": "Préférences du site",
|
||||
"preferences_player_style_label": "Style du lecteur : ",
|
||||
"Dark mode: ": "Mode sombre : ",
|
||||
"Theme: ": "Thème : ",
|
||||
"preferences_dark_mode_label": "Thème : ",
|
||||
"dark": "sombre",
|
||||
"light": "clair",
|
||||
"Thin mode: ": "Mode léger : ",
|
||||
"Subscription preferences": "Préférences de la page d'abonnements",
|
||||
"Show annotations by default for subscribed channels: ": "Afficher les annotations par défaut sur les chaînes auxquelles vous êtes abonnés : ",
|
||||
"preferences_thin_mode_label": "Mode léger : ",
|
||||
"preferences_category_misc": "Paramètres divers",
|
||||
"preferences_automatic_instance_redirect_label": "Redirection automatique vers une autre instance (via redirect.invidious.io) : ",
|
||||
"preferences_category_subscription": "Préférences des abonnements",
|
||||
"preferences_annotations_subscribed_label": "Afficher les annotations par défaut sur les chaînes auxquelles vous êtes abonnés : ",
|
||||
"Redirect homepage to feed: ": "Rediriger la page d'accueil vers la page d'abonnements : ",
|
||||
"Number of videos shown in feed: ": "Nombre de vidéos affichées dans la page d'abonnements : ",
|
||||
"Sort videos by: ": "Trier les vidéos par : ",
|
||||
"preferences_max_results_label": "Nombre de vidéos affichées dans la page d'abonnements : ",
|
||||
"preferences_sort_label": "Trier les vidéos par : ",
|
||||
"published": "date de publication",
|
||||
"published - reverse": "date de publication - inversé",
|
||||
"alphabetically": "alphabétiquement",
|
||||
"alphabetically - reverse": "alphabétiquement - inversé",
|
||||
"alphabetically": "ordre alphabétique",
|
||||
"alphabetically - reverse": "ordre alphabétique - inversé",
|
||||
"channel name": "nom de la chaîne",
|
||||
"channel name - reverse": "nom de la chaîne - inversé",
|
||||
"Only show latest video from channel: ": "Afficher uniquement la dernière vidéo des chaînes auxquelles vous êtes abonnés : ",
|
||||
"Only show latest unwatched video from channel: ": "Afficher uniquement la dernière vidéo des chaînes auxquelles vous êtes abonnés qui n'a pas été regardée : ",
|
||||
"Only show unwatched: ": "Afficher uniquement les vidéos qui n'ont pas été regardées : ",
|
||||
"Only show notifications (if there are any): ": "Afficher uniquement les notifications (s'il y en a) : ",
|
||||
"preferences_unseen_only_label": "Afficher uniquement les vidéos qui n'ont pas été regardées : ",
|
||||
"preferences_notifications_only_label": "Afficher uniquement les notifications (s'il y en a) : ",
|
||||
"Enable web notifications": "Activer les notifications web",
|
||||
"`x` uploaded a video": "`x` a partagé(e) une vidéo",
|
||||
"`x` uploaded a video": "`x` a partagé une vidéo",
|
||||
"`x` is live": "`x` est en direct",
|
||||
"Data preferences": "Préférences liées aux données",
|
||||
"preferences_category_data": "Préférences liées aux données",
|
||||
"Clear watch history": "Supprimer l'historique des vidéos regardées",
|
||||
"Import/export data": "Importer/exporter les données",
|
||||
"Change password": "Modifier le mot de passe",
|
||||
@@ -101,28 +112,30 @@
|
||||
"Manage tokens": "Gérer les tokens",
|
||||
"Watch history": "Historique de visionnage",
|
||||
"Delete account": "Supprimer votre compte",
|
||||
"Administrator preferences": "Préferences d'Administration",
|
||||
"Default homepage: ": "Page d'accueil par défaut : ",
|
||||
"Feed menu: ": "Préferences des abonnements : ",
|
||||
"preferences_category_admin": "Préferences d'Administration",
|
||||
"preferences_default_home_label": "Page d'accueil par défaut : ",
|
||||
"preferences_feed_menu_label": "Préferences des abonnements : ",
|
||||
"preferences_show_nick_label": "Afficher le nom d'utilisateur en haut à droite : ",
|
||||
"Top enabled: ": "Top activé : ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA activé : ",
|
||||
"Login enabled: ": "Connexion activé : ",
|
||||
"Registration enabled: ": "Inscription activée : ",
|
||||
"Report statistics: ": "Télémétrie activé : ",
|
||||
"Login enabled: ": "Autoriser l'ouverture de sessions utilisateur : ",
|
||||
"Registration enabled: ": "Autoriser la création de comptes utilisateur : ",
|
||||
"Report statistics: ": "Activer les statistiques d'instance : ",
|
||||
"Save preferences": "Enregistrer les préférences",
|
||||
"Subscription manager": "Gestionnaire d'abonnement",
|
||||
"Token manager": "Gestionnaire de tokens",
|
||||
"Token manager": "Gestionnaire de token",
|
||||
"Token": "Token",
|
||||
"`x` subscriptions": "`x` abonnements",
|
||||
"`x` tokens": "`x` tokens",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"Import/export": "Importer/Exporter",
|
||||
"unsubscribe": "se désabonner",
|
||||
"revoke": "révoquer",
|
||||
"Subscriptions": "Abonnements",
|
||||
"`x` unseen notifications": "`x` notifications non vues",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notification non vue",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notifications non vues",
|
||||
"search": "rechercher",
|
||||
"Log out": "Déconnexion",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Publié sous licence AGPLv3 par Omar Roth.",
|
||||
"Log out": "Se déconnecter",
|
||||
"Released under the AGPLv3 on Github.": "Publié sous licence AGPLv3 sur Github.",
|
||||
"Source available here.": "Code source disponible ici.",
|
||||
"View JavaScript license information.": "Informations des licences JavaScript.",
|
||||
"View privacy policy.": "Politique de confidentialité.",
|
||||
@@ -137,25 +150,31 @@
|
||||
"Create playlist": "Créer une liste de lecture",
|
||||
"Title": "Titre",
|
||||
"Playlist privacy": "Paramètres de confidentialité de la liste de lecture",
|
||||
"Editing playlist `x`": "Liste de lecture modifier le `x`",
|
||||
"Editing playlist `x`": "Modifier la liste de lecture `x`",
|
||||
"Show more": "Afficher plus",
|
||||
"Show less": "Afficher moins",
|
||||
"Watch on YouTube": "Voir la vidéo sur Youtube",
|
||||
"Switch Invidious Instance": "Changer d'instance",
|
||||
"Broken? Try another Invidious Instance": "Instance Invidious défectueuse ? Essayez-en une autre",
|
||||
"Hide annotations": "Masquer les annotations",
|
||||
"Show annotations": "Afficher les annotations",
|
||||
"Genre: ": "Genre : ",
|
||||
"License: ": "Licence : ",
|
||||
"Family friendly? ": "Vidéo tout public ? ",
|
||||
"Wilson score: ": "Score de Wilson : ",
|
||||
"Engagement: ": "Pourcentage de spectateur aillant appuyé sur \"J'aime\" ou \"J'aime Pas\" : ",
|
||||
"Engagement: ": "Taux d'implication : ",
|
||||
"Whitelisted regions: ": "Régions sur liste blanche : ",
|
||||
"Blacklisted regions: ": "Régions sur liste noire : ",
|
||||
"Shared `x`": "Ajoutée le `x`",
|
||||
"`x` views": "`x` vues",
|
||||
"Premieres in `x`": "Première dans `x`",
|
||||
"Premieres `x`": "Première le `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Il semblerait que JavaScript soit désactivé. Cliquez ici pour voir les commentaires, mais gardez à l'esprit que le chargement peut prendre plus de temps.",
|
||||
"View YouTube comments": "Voir les commentaires YouTube",
|
||||
"View more comments on Reddit": "Voir plus de commentaires sur Reddit",
|
||||
"View `x` comments": "Voir `x` commentaires",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Voir `x` commentaire",
|
||||
"": "Voir `x` commentaires"
|
||||
},
|
||||
"View Reddit comments": "Voir les commentaires Reddit",
|
||||
"Hide replies": "Masquer les réponses",
|
||||
"Show replies": "Afficher les réponses",
|
||||
@@ -175,22 +194,24 @@
|
||||
"Password cannot be longer than 55 characters": "Le mot de passe ne doit pas comporter plus de 55 caractères",
|
||||
"Please log in": "Veuillez vous connecter",
|
||||
"Invidious Private Feed for `x`": "Flux RSS privé pour `x`",
|
||||
"channel:`x`": "chaîne:`x`",
|
||||
"channel:`x`": "chaîne :`x`",
|
||||
"Deleted or invalid channel": "Chaîne supprimée ou invalide",
|
||||
"This channel does not exist.": "Cette chaine n'existe pas.",
|
||||
"Could not get channel info.": "Impossible de charger les informations de cette chaîne.",
|
||||
"Could not fetch comments": "Impossible de charger les commentaires",
|
||||
"View `x` replies": "Voir `x` réponses",
|
||||
"comments_view_x_replies": "Voir {{count}} réponse",
|
||||
"comments_view_x_replies_plural": "Voir {{count}} réponses",
|
||||
"`x` ago": "il y a `x`",
|
||||
"Load more": "Voir plus",
|
||||
"`x` points": "`x` points",
|
||||
"comments_points_count": "{{count}} point",
|
||||
"comments_points_count_plural": "{{count}} points",
|
||||
"Could not create mix.": "Impossible de charger cette liste de lecture.",
|
||||
"Empty playlist": "La liste de lecture est vide",
|
||||
"Not a playlist.": "La liste de lecture est invalide.",
|
||||
"Playlist does not exist.": "La liste de lecture n'existe pas.",
|
||||
"Could not pull trending pages.": "Impossible de charger les pages de tendances.",
|
||||
"Hidden field \"challenge\" is a required field": "Le champ masqué \"challenge\" est un champ obligatoire",
|
||||
"Hidden field \"token\" is a required field": "Le champ caché \"token\" est requis",
|
||||
"Hidden field \"token\" is a required field": "Le champ caché « token » est requis",
|
||||
"Erroneous challenge": "Challenge invalide",
|
||||
"Erroneous token": "Token invalide",
|
||||
"No such user": "Cet utilisateur n'existe pas",
|
||||
@@ -217,21 +238,21 @@
|
||||
"Croatian": "Croate",
|
||||
"Czech": "Tchèque",
|
||||
"Danish": "Danois",
|
||||
"Dutch": "Hollandais",
|
||||
"Dutch": "Néerlandais",
|
||||
"Esperanto": "Espéranto",
|
||||
"Estonian": "Estonien",
|
||||
"Filipino": "Philippin",
|
||||
"Finnish": "Finlandais",
|
||||
"Finnish": "Finnois",
|
||||
"French": "Français",
|
||||
"Galician": "Galicien",
|
||||
"Georgian": "Géorgien",
|
||||
"German": "Allemand",
|
||||
"Greek": "Grec",
|
||||
"Gujarati": "Gujarati",
|
||||
"Haitian Creole": "Créole Haïtien",
|
||||
"Haitian Creole": "Créole haïtien",
|
||||
"Hausa": "Haoussa",
|
||||
"Hawaiian": "Hawaïen",
|
||||
"Hebrew": "Hébraïque",
|
||||
"Hebrew": "Hébreu",
|
||||
"Hindi": "Hindi",
|
||||
"Hmong": "Hmong",
|
||||
"Hungarian": "Hongrois",
|
||||
@@ -262,21 +283,21 @@
|
||||
"Marathi": "Marathi",
|
||||
"Mongolian": "Mongol",
|
||||
"Nepali": "Népalais",
|
||||
"Norwegian Bokmål": "Norvégien",
|
||||
"Norwegian Bokmål": "Norvégien bokmål",
|
||||
"Nyanja": "Nyanja",
|
||||
"Pashto": "Pachtou",
|
||||
"Pashto": "Pachto",
|
||||
"Persian": "Persan",
|
||||
"Polish": "Polonais",
|
||||
"Portuguese": "Portugais",
|
||||
"Punjabi": "Punjabi",
|
||||
"Punjabi": "Pendjabi",
|
||||
"Romanian": "Roumain",
|
||||
"Russian": "Russe",
|
||||
"Samoan": "Samoan",
|
||||
"Scottish Gaelic": "Eaélique Ècossais",
|
||||
"Scottish Gaelic": "Gaélique écossais",
|
||||
"Serbian": "Serbe",
|
||||
"Shona": "Shona",
|
||||
"Sindhi": "Sindhi",
|
||||
"Sinhala": "Cinghalais",
|
||||
"Sinhala": "Singhalais",
|
||||
"Slovak": "Slovaque",
|
||||
"Slovenian": "Slovène",
|
||||
"Somali": "Somalien",
|
||||
@@ -286,9 +307,9 @@
|
||||
"Sundanese": "Sundanais",
|
||||
"Swahili": "Swahili",
|
||||
"Swedish": "Suédois",
|
||||
"Tajik": "Tajik",
|
||||
"Tajik": "Tadjik",
|
||||
"Tamil": "Tamil",
|
||||
"Telugu": "Telugu",
|
||||
"Telugu": "Télougou",
|
||||
"Thai": "Thaï",
|
||||
"Turkish": "Turc",
|
||||
"Ukrainian": "Ukrainien",
|
||||
@@ -301,23 +322,31 @@
|
||||
"Yiddish": "Yiddish",
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zoulou",
|
||||
"`x` years": "`x` ans",
|
||||
"`x` months": "`x` mois",
|
||||
"`x` weeks": "`x` semaines",
|
||||
"`x` days": "`x` jours",
|
||||
"`x` hours": "`x` heures",
|
||||
"`x` minutes": "`x` minutes",
|
||||
"`x` seconds": "`x` secondes",
|
||||
"generic_count_years": "{{count}} an",
|
||||
"generic_count_years_plural": "{{count}} ans",
|
||||
"generic_count_months": "{{count}} mois",
|
||||
"generic_count_months_plural": "{{count}} mois",
|
||||
"generic_count_weeks": "{{count}} semaine",
|
||||
"generic_count_weeks_plural": "{{count}} semaines",
|
||||
"generic_count_days": "{{count}} jour",
|
||||
"generic_count_days_plural": "{{count}} jours",
|
||||
"generic_count_hours": "{{count}} heure",
|
||||
"generic_count_hours_plural": "{{count}} heures",
|
||||
"generic_count_minutes": "{{count}} minute",
|
||||
"generic_count_minutes_plural": "{{count}} minutes",
|
||||
"generic_count_seconds": "{{count}} seconde",
|
||||
"generic_count_seconds_plural": "{{count}} secondes",
|
||||
"Fallback comments: ": "Commentaires alternatifs : ",
|
||||
"Popular": "Populaire",
|
||||
"Search": "Rechercher",
|
||||
"Top": "Top",
|
||||
"About": "À propos",
|
||||
"Rating: ": "Évaluation : ",
|
||||
"Language: ": "Langue : ",
|
||||
"preferences_locale_label": "Langue : ",
|
||||
"View as playlist": "Voir en tant que liste de lecture",
|
||||
"Default": "Défaut",
|
||||
"Music": "Musique",
|
||||
"Gaming": "Jeux Vidéo",
|
||||
"Gaming": "Jeux vidéo",
|
||||
"News": "Actualités",
|
||||
"Movies": "Films",
|
||||
"Download": "Télécharger",
|
||||
@@ -325,12 +354,112 @@
|
||||
"%A %B %-d, %Y": "%A %-d %B %Y",
|
||||
"(edited)": "(modifié)",
|
||||
"YouTube comment permalink": "Lien permanent vers le commentaire sur YouTube",
|
||||
"permalink": "Lien permanent",
|
||||
"permalink": "permalien",
|
||||
"`x` marked it with a ❤": "`x` l'a marqué d'un ❤",
|
||||
"Audio mode": "Mode audio",
|
||||
"Video mode": "Mode vidéo",
|
||||
"Videos": "Vidéos",
|
||||
"Playlists": "Listes de lecture",
|
||||
"Community": "Communauté",
|
||||
"Current version: ": "Version actuelle : "
|
||||
"relevance": "pertinence",
|
||||
"rating": "évaluation",
|
||||
"date": "date",
|
||||
"views": "nombre de vues",
|
||||
"content_type": "type",
|
||||
"duration": "durée",
|
||||
"features": "fonctionnalités",
|
||||
"sort": "Trier par",
|
||||
"hour": "dernière heure",
|
||||
"today": "aujourd'hui",
|
||||
"week": "semaine",
|
||||
"month": "mois",
|
||||
"year": "année",
|
||||
"video": "vidéo",
|
||||
"channel": "chaîne",
|
||||
"playlist": "liste de lecture",
|
||||
"movie": "film",
|
||||
"show": "émission",
|
||||
"hd": "HD",
|
||||
"subtitles": "sous-titres / CC",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "en direct",
|
||||
"4k": "4K",
|
||||
"location": "emplacement",
|
||||
"hdr": "HDR",
|
||||
"filter": "filtrer",
|
||||
"Current version: ": "Version actuelle : ",
|
||||
"next_steps_error_message": "Vous pouvez essayer de : ",
|
||||
"next_steps_error_message_refresh": "Rafraîchir la page",
|
||||
"next_steps_error_message_go_to_youtube": "Aller sur YouTube",
|
||||
"preferences_quality_dash_label": "Qualité vidéo DASH préférée : ",
|
||||
"footer_source_code": "Code source",
|
||||
"preferences_region_label": "Pays du contenu : ",
|
||||
"footer_donate_page": "Faire un don",
|
||||
"footer_modfied_source_code": "Code source modifié",
|
||||
"short": "Courte (< 4 minutes)",
|
||||
"long": "Longue (> 20 minutes)",
|
||||
"adminprefs_modified_source_code_url_label": "URL du dépôt du code source modifié",
|
||||
"footer_documentation": "Documentation",
|
||||
"footer_original_source_code": "Code source original",
|
||||
"preferences_quality_option_medium": "Moyenne",
|
||||
"preferences_quality_option_small": "Petite",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_best": "La plus haute",
|
||||
"preferences_quality_dash_option_worst": "La plus basse",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"360": "360°",
|
||||
"none": "aucun",
|
||||
"videoinfo_started_streaming_x_ago": "En stream depuis `x`",
|
||||
"videoinfo_watch_on_youTube": "Regarder sur YouTube",
|
||||
"videoinfo_youTube_embed_link": "Intégrer",
|
||||
"purchased": "Acheter",
|
||||
"videoinfo_invidious_embed_link": "Lien intégré",
|
||||
"download_subtitles": "Sous-titres - `x` (.vtt)",
|
||||
"user_saved_playlists": "`x` listes de lecture sauvegardées",
|
||||
"Video unavailable": "Vidéo non disponible",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_dash": "DASH (qualité adaptative)",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"user_created_playlists": "`x` listes de lecture créées",
|
||||
"preferences_save_player_pos_label": "Sauvegarder la position du lecteur : ",
|
||||
"crash_page_you_found_a_bug": "Il semblerait que vous ayez trouvé un bug dans Invidious !",
|
||||
"crash_page_refresh": "tenté de <a href=\"`x`\">rafraîchir la page</a>",
|
||||
"crash_page_switch_instance": "essayé d'<a href=\"`x`\">utiliser une autre instance</a>",
|
||||
"crash_page_read_the_faq": "lu la <a href=\"`x`\">Foire Aux Questions (FAQ)</a>",
|
||||
"crash_page_search_issue": "<a href=\"`x`\">cherché ce bug sur Github</a>",
|
||||
"crash_page_before_reporting": "Avant de signaler un bug, veuillez vous assurez que vous avez :",
|
||||
"crash_page_report_issue": "Si aucune des solutions proposées ci-dessus ne vous a aidé, veuillez <a href=\"`x`\">ouvrir une \"issue\" sur GitHub</a> (de préférence en anglais) et d'y inclure le message suivant (ne PAS traduire le texte) :",
|
||||
"English (United States)": "Anglais (Etats-Unis)",
|
||||
"Chinese (China)": "Chinois (Chine)",
|
||||
"Chinese (Hong Kong)": "Chinois (Hong Kong)",
|
||||
"Dutch (auto-generated)": "Danoi (auto-généré)",
|
||||
"French (auto-generated)": "Français (auto-généré)",
|
||||
"German (auto-generated)": "Allemand (auto-généré)",
|
||||
"Japanese (auto-generated)": "Japonais (auto-généré)",
|
||||
"Korean (auto-generated)": "Coréen (auto-généré)",
|
||||
"Indonesian (auto-generated)": "Indonésien (auto-généré)",
|
||||
"Portuguese (auto-generated)": "Portuguais (auto-généré)",
|
||||
"Portuguese (Brazil)": "Portugais (Brésil)",
|
||||
"Spanish (auto-generated)": "Espagnol (auto-généré)",
|
||||
"Spanish (Mexico)": "Espagnol (Mexique)",
|
||||
"Turkish (auto-generated)": "Turque (auto-généré)",
|
||||
"Chinese": "Chinois",
|
||||
"English (United Kingdom)": "Anglais (Royaume-Uni)",
|
||||
"Chinese (Taiwan)": "Chinois (Taiwan)",
|
||||
"Cantonese (Hong Kong)": "Cantonais (Hong Kong)",
|
||||
"Interlingue": "Occidental",
|
||||
"Italian (auto-generated)": "Italien (auto-généré)",
|
||||
"Vietnamese (auto-generated)": "Vietnamien (auto-généré)",
|
||||
"Russian (auto-generated)": "Russe (auto-généré)",
|
||||
"Spanish (Spain)": "Espagnol (Espagne)",
|
||||
"preferences_watch_history_label": "Activer l'historique de visionnage : "
|
||||
}
|
||||
305
locales/he.json
Normal file
305
locales/he.json
Normal file
@@ -0,0 +1,305 @@
|
||||
{
|
||||
"LIVE": "שידור חי",
|
||||
"Shared `x` ago": "שותף לפני `x`",
|
||||
"Unsubscribe": "ביטול מינוי",
|
||||
"Subscribe": "הרשמה למינוי",
|
||||
"View channel on YouTube": "צפייה בערוץ ב־YouTube",
|
||||
"View playlist on YouTube": "צפייה בפלייליסט ב־YouTube",
|
||||
"newest": "החדש ביותר",
|
||||
"oldest": "הישן ביותר",
|
||||
"popular": "סרטונים פופולריים",
|
||||
"last": "אחרון",
|
||||
"Next page": "העמוד הבא",
|
||||
"Previous page": "העמוד הקודם",
|
||||
"Clear watch history?": "לנקות את היסטוריית הצפייה?",
|
||||
"New password": "סיסמה חדשה",
|
||||
"New passwords must match": "על הסיסמאות החדשות להתאים",
|
||||
"Cannot change password for Google accounts": "לא ניתן לשנות את הסיסמה לחשבונות Google",
|
||||
"Authorize token?": "לאשר את האסימון?",
|
||||
"Authorize token for `x`?": "האם לאשר את האסימון עבור `x`?",
|
||||
"Yes": "כן",
|
||||
"No": "לא",
|
||||
"Import and Export Data": "ייבוא וייצוא נתונים",
|
||||
"Import": "ייבוא",
|
||||
"Import Invidious data": "ייבוא נתוני Invidious",
|
||||
"Import YouTube subscriptions": "ייבוא מינויים מ־YouTube",
|
||||
"Import FreeTube subscriptions (.db)": "ייבוא מינויים מ־FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "ייבוא מינויים מ־NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "ייבוא נתוני NewPipe (.zip)",
|
||||
"Export": "ייצוא",
|
||||
"Export subscriptions as OPML": "ייצוא המינויים בתור OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "ייצוא המינויים בתור OPML (עבור NewPipe ו־FreeTube)",
|
||||
"Export data as JSON": "ייצוא הנתונים בתור קובץ JSON",
|
||||
"Delete account?": "למחוק את החשבון?",
|
||||
"History": "היסטוריה",
|
||||
"An alternative front-end to YouTube": "ממשק משתמש חלופי ל־YouTube",
|
||||
"JavaScript license information": "מידע על רישיון JavaScript",
|
||||
"source": "source",
|
||||
"Log in": "כניסה",
|
||||
"Log in/register": "כניסה/הרשמה",
|
||||
"Log in with Google": "כניסה עם Google",
|
||||
"User ID": "שם משתמש",
|
||||
"Password": "סיסמה",
|
||||
"Time (h:mm:ss):": "זמן (h:mm:ss):",
|
||||
"Text CAPTCHA": "Text CAPTCHA",
|
||||
"Image CAPTCHA": "Image CAPTCHA",
|
||||
"Sign In": "התחברות",
|
||||
"Register": "הרשמה",
|
||||
"E-mail": "דוא״ל",
|
||||
"Google verification code": "קוד האימות של Google",
|
||||
"Preferences": "העדפות",
|
||||
"preferences_category_player": "העדפות הנגן",
|
||||
"preferences_autoplay_label": "ניגון אוטומטי: ",
|
||||
"preferences_continue_label": "ניגון הסרטון הבא כברירת מחדל: ",
|
||||
"preferences_continue_autoplay_label": "ניגון הסרטון הבא באופן אוטומטי: ",
|
||||
"preferences_listen_label": "שמע כברירת מחדל: ",
|
||||
"preferences_speed_label": "מהירות ברירת המחדל: ",
|
||||
"preferences_quality_label": "איכות הווידאו המועדפת: ",
|
||||
"preferences_volume_label": "עצמת השמע של הנגן: ",
|
||||
"preferences_comments_label": "תגובות ברירת מחדל ",
|
||||
"youtube": "יוטיוב",
|
||||
"reddit": "reddit",
|
||||
"preferences_captions_label": "כתוביות ברירת מחדל ",
|
||||
"Fallback captions: ": "כתוביות גיבוי ",
|
||||
"preferences_related_videos_label": "הצגת סרטונים קשורים: ",
|
||||
"preferences_annotations_label": "הצגת הערות כברירת מחדל: ",
|
||||
"preferences_category_visual": "העדפות חזותיות",
|
||||
"preferences_player_style_label": "סגנון הנגן: ",
|
||||
"Dark mode: ": "מצב כהה: ",
|
||||
"preferences_dark_mode_label": "ערכת נושא: ",
|
||||
"dark": "כהה",
|
||||
"light": "בהיר",
|
||||
"preferences_category_subscription": "העדפות מינויים",
|
||||
"preferences_annotations_subscribed_label": "Show annotations by default for subscribed channels? ",
|
||||
"preferences_max_results_label": "מספר הסרטונים שמוצגים בהזנה: ",
|
||||
"preferences_sort_label": "מיון הסרטונים לפי: ",
|
||||
"published": "פורסם",
|
||||
"alphabetically": "בסדר אלפביתי",
|
||||
"alphabetically - reverse": "בסדר אלפביתי - הפוך",
|
||||
"channel name": "שם הערוץ",
|
||||
"channel name - reverse": "שם הערוץ - הפוך",
|
||||
"Only show latest video from channel: ": "הצגת הסרטון האחרון מהערוץ בלבד: ",
|
||||
"Only show latest unwatched video from channel: ": "הצגת הסרטון האחרון שלא נצפה מהערוץ בלבד: ",
|
||||
"preferences_unseen_only_label": "הצגת סרטונים שלא נצפו בלבד: ",
|
||||
"preferences_notifications_only_label": "הצגת התראות בלבד (אם ישנן): ",
|
||||
"`x` uploaded a video": "סרטון הועלה על ידי `x`",
|
||||
"`x` is live": "`x` בשידור חי",
|
||||
"preferences_category_data": "העדפות נתונים",
|
||||
"Clear watch history": "ניקוי היסטוריית הצפייה",
|
||||
"Import/export data": "ייבוא/ייצוא נתונים",
|
||||
"Change password": "שינוי הסיסמה",
|
||||
"Manage subscriptions": "ניהול מינויים",
|
||||
"Manage tokens": "ניהול אסימונים",
|
||||
"Watch history": "היסטוריית צפייה",
|
||||
"Delete account": "מחיקת החשבון",
|
||||
"preferences_category_admin": "הגדרות ניהול מערכת",
|
||||
"preferences_default_home_label": "Default homepage: ",
|
||||
"preferences_feed_menu_label": "תפריט ההזנה: ",
|
||||
"Save preferences": "שמירת ההעדפות",
|
||||
"Subscription manager": "מנהל המינויים",
|
||||
"Token manager": "Token manager",
|
||||
"Token": "Token",
|
||||
"Import/export": "ייבוא/ייצוא",
|
||||
"unsubscribe": "ביטול מנוי",
|
||||
"Subscriptions": "מינויים",
|
||||
"search": "חיפוש",
|
||||
"Log out": "יציאה",
|
||||
"Source available here.": "קוד המקור זמין כאן.",
|
||||
"View privacy policy.": "להצגת מדיניות הפרטיות.",
|
||||
"Trending": "הסרטונים החמים",
|
||||
"Public": "ציבורי",
|
||||
"Unlisted": "לא רשום",
|
||||
"Private": "פרטי",
|
||||
"View all playlists": "הצגת כל הפלייליסטים",
|
||||
"Updated `x` ago": "הועלה לפני `x`",
|
||||
"Delete playlist `x`?": "למחוק את פלייליסט `x`?",
|
||||
"Delete playlist": "מחיקת פלייליסט",
|
||||
"Create playlist": "יצירת פלייליסט",
|
||||
"Playlist privacy": "Playlist privacy",
|
||||
"Watch on YouTube": "צפייה ב־YouTube",
|
||||
"Genre: ": "Genre: ",
|
||||
"License: ": "רישיון: ",
|
||||
"Family friendly? ": "לכל המשפחה? ",
|
||||
"Wilson score: ": "ציון וילסון: ",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "שלום! נראה ש־JavaScript כבוי. יש ללחוץ כאן להצגת התגובות, נא לקחת בחשבון שהטעינה תיקח קצת יותר זמן.",
|
||||
"View YouTube comments": "הצגת התגובות מ־YouTube",
|
||||
"View more comments on Reddit": "להצגת תגובות נוספות ב־Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "הצגת `x` תגובות.([^.,0-9]|^)1([^.,0-9]|$)",
|
||||
"": "הצגת `x` תגובות"
|
||||
},
|
||||
"View Reddit comments": "להצגת התגובות ב־Reddit",
|
||||
"Hide replies": "הסתרת תגובות",
|
||||
"Show replies": "הצגת תגובות",
|
||||
"Incorrect password": "סיסמה שגויה",
|
||||
"Wrong answer": "תשובה שגויה",
|
||||
"CAPTCHA is a required field": "שדה CAPTCHA הוא שדה חובה",
|
||||
"User ID is a required field": "חובה למלא את שדה שם המשתמש",
|
||||
"Password is a required field": "חובה למלא את שדה הסיסמה",
|
||||
"Wrong username or password": "שם משתמש שגוי או סיסמה שגויה",
|
||||
"Please sign in using 'Log in with Google'": "נא להתחבר בעזרת \"התחברות עם Google\"",
|
||||
"Password cannot be longer than 55 characters": "על אורך הסיסמה להיות 55 תווים לכל היותר",
|
||||
"Please log in": "נא להתחבר",
|
||||
"channel:`x`": "ערוץ:`x`",
|
||||
"Deleted or invalid channel": "הערוץ נמחק או שאינו תקין",
|
||||
"This channel does not exist.": "הערוץ הזה אינו קיים.",
|
||||
"Could not get channel info.": "לא היה ניתן לקבל מידע על הערוץ.",
|
||||
"Could not fetch comments": "לא היה ניתן למשוך את התגובות",
|
||||
"`x` ago": "לפני `x`",
|
||||
"Load more": "לטעון עוד",
|
||||
"Empty playlist": "פלייליסט ריק",
|
||||
"Not a playlist.": "לא פלייליסט.",
|
||||
"Playlist does not exist.": "הפלייליסט אינו קיים.",
|
||||
"No such user": "אין משתמש כזה",
|
||||
"Token is expired, please try again": "תוקף האסימון פג, נא לנסות שוב",
|
||||
"English": "אנגלית",
|
||||
"English (auto-generated)": "אנגלית (נוצר באופן אוטומטי)",
|
||||
"Afrikaans": "Afrikaans",
|
||||
"Albanian": "אלבנית",
|
||||
"Amharic": "אמהרית",
|
||||
"Arabic": "ערבית",
|
||||
"Armenian": "ארמנית",
|
||||
"Azerbaijani": "Azerbaijani",
|
||||
"Bangla": "בנגלית",
|
||||
"Basque": "בסקית",
|
||||
"Belarusian": "Belarusian",
|
||||
"Bosnian": "Bosnian",
|
||||
"Bulgarian": "בולגרית",
|
||||
"Burmese": "Burmese",
|
||||
"Catalan": "Catalan",
|
||||
"Cebuano": "סבואנו",
|
||||
"Chinese (Simplified)": "סינית (מפושטת)",
|
||||
"Chinese (Traditional)": "סינית (מסורתית)",
|
||||
"Corsican": "קורסיקאית",
|
||||
"Croatian": "קרואטית",
|
||||
"Czech": "צ׳כית",
|
||||
"Danish": "Danish",
|
||||
"Dutch": "Dutch",
|
||||
"Esperanto": "אספרנטו",
|
||||
"Estonian": "אסטונית",
|
||||
"Filipino": "Filipino",
|
||||
"Finnish": "Finnish",
|
||||
"French": "צרפתית",
|
||||
"Galician": "גליסית",
|
||||
"Georgian": "גאורגית",
|
||||
"German": "גרמנית",
|
||||
"Greek": "יוונית",
|
||||
"Gujarati": "גוג׳ראטית",
|
||||
"Haitian Creole": "קריאולית האיטית",
|
||||
"Hausa": "האוסה",
|
||||
"Hawaiian": "הוואית",
|
||||
"Hebrew": "עברית",
|
||||
"Hindi": "הינדית",
|
||||
"Hmong": "המונג",
|
||||
"Hungarian": "הונגרית",
|
||||
"Icelandic": "איסלנדית",
|
||||
"Igbo": "איגבו",
|
||||
"Indonesian": "אינדונזית",
|
||||
"Irish": "Irish",
|
||||
"Italian": "איטלקית",
|
||||
"Japanese": "יפנית",
|
||||
"Javanese": "ג'אווה",
|
||||
"Kannada": "קאנדה",
|
||||
"Kazakh": "קזחית",
|
||||
"Khmer": "חמרית",
|
||||
"Korean": "קוריאנית",
|
||||
"Kurdish": "כורדית",
|
||||
"Kyrgyz": "קירגיזית",
|
||||
"Lao": "לאית",
|
||||
"Latin": "לטינית",
|
||||
"Latvian": "לטבית",
|
||||
"Lithuanian": "ליטאית",
|
||||
"Luxembourgish": "לוקסמבורגית",
|
||||
"Macedonian": "מקדונית",
|
||||
"Malagasy": "מלגשית",
|
||||
"Malay": "מלאית",
|
||||
"Malayalam": "מלאיאלאם",
|
||||
"Maltese": "מלטזית",
|
||||
"Maori": "מאורית",
|
||||
"Marathi": "מראטהית",
|
||||
"Mongolian": "מונגולית",
|
||||
"Nepali": "נפאלית",
|
||||
"Norwegian Bokmål": "Norwegian Bokmål",
|
||||
"Pashto": "פשטו",
|
||||
"Persian": "פרסית",
|
||||
"Polish": "פולנית",
|
||||
"Portuguese": "פורטוגלית",
|
||||
"Punjabi": "פנג'אבי",
|
||||
"Romanian": "רומנית",
|
||||
"Russian": "רוסית",
|
||||
"Samoan": "סמואית",
|
||||
"Scottish Gaelic": "גאלית סקוטית",
|
||||
"Serbian": "Serbian",
|
||||
"Sindhi": "סינדהי",
|
||||
"Sinhala": "סינהלית",
|
||||
"Slovak": "Slovak",
|
||||
"Slovenian": "Slovenian",
|
||||
"Somali": "סומלית",
|
||||
"Spanish": "ספרדית",
|
||||
"Spanish (Latin America)": "ספרדית (אמריקה הלטינית)",
|
||||
"Swahili": "סווהילי",
|
||||
"Swedish": "שוודית",
|
||||
"Tajik": "טג׳יקית",
|
||||
"Tamil": "טמילית",
|
||||
"Telugu": "טלוגו",
|
||||
"Thai": "תאית",
|
||||
"Turkish": "טורקית",
|
||||
"Ukrainian": "אוקראינית",
|
||||
"Urdu": "אורדו",
|
||||
"Uzbek": "אוזבקית",
|
||||
"Vietnamese": "וייטנאמית",
|
||||
"Welsh": "ולשית",
|
||||
"Xhosa": "קוסה",
|
||||
"Yiddish": "יידיש",
|
||||
"Yoruba": "יורובה",
|
||||
"Zulu": "זולו",
|
||||
"Popular": "סרטונים פופולריים",
|
||||
"Top": "Top",
|
||||
"About": "על אודות",
|
||||
"Rating: ": "דירוג: ",
|
||||
"preferences_locale_label": "שפה: ",
|
||||
"View as playlist": "הצגה כפלייליסט",
|
||||
"Default": "ברירת מחדל",
|
||||
"Music": "מוזיקה",
|
||||
"Gaming": "משחקים",
|
||||
"News": "חדשות",
|
||||
"Movies": "סרטים",
|
||||
"Download": "הורדה",
|
||||
"Download as: ": "הורדה בתור: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(לאחר עריכה)",
|
||||
"`x` marked it with a ❤": "סומנה ב־❤ על ידי `x`",
|
||||
"Audio mode": "Audio mode",
|
||||
"Video mode": "Video mode",
|
||||
"Videos": "סרטונים",
|
||||
"Playlists": "פלייליסטים",
|
||||
"Community": "קהילה",
|
||||
"relevance": "רלוונטיות",
|
||||
"rating": "דירוג",
|
||||
"date": "תאריך העלאה",
|
||||
"views": "מספר צפיות",
|
||||
"content_type": "סוג",
|
||||
"duration": "משך זמן",
|
||||
"features": "תכונות",
|
||||
"sort": "מיון לפי",
|
||||
"hour": "השעה האחרונה",
|
||||
"today": "היום",
|
||||
"week": "השבוע",
|
||||
"month": "החודש",
|
||||
"year": "השנה",
|
||||
"video": "סרטון",
|
||||
"channel": "ערוץ",
|
||||
"playlist": "פלייליסט",
|
||||
"movie": "סרט",
|
||||
"show": "תכנית טלוויזיה",
|
||||
"hd": "HD",
|
||||
"subtitles": "כתוביות",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Live",
|
||||
"4k": "4K",
|
||||
"location": "מיקום",
|
||||
"hdr": "HDR",
|
||||
"filter": "סינון",
|
||||
"Current version: ": "הגרסה הנוכחית: "
|
||||
}
|
||||
480
locales/hr.json
Normal file
480
locales/hr.json
Normal file
@@ -0,0 +1,480 @@
|
||||
{
|
||||
"LIVE": "UŽIVO",
|
||||
"Shared `x` ago": "Dijeljeno prije `x`",
|
||||
"Unsubscribe": "Odjavi pretplatu",
|
||||
"Subscribe": "Pretplati se",
|
||||
"View channel on YouTube": "Prikaži kanal na YouTubeu",
|
||||
"View playlist on YouTube": "Prikaži zbirku na YouTubeu",
|
||||
"newest": "najnovije",
|
||||
"oldest": "najstarije",
|
||||
"popular": "popularni",
|
||||
"last": "zadnji",
|
||||
"Next page": "Sljedeća stranica",
|
||||
"Previous page": "Prethodna stranica",
|
||||
"Clear watch history?": "Izbrisati povijest gledanja?",
|
||||
"New password": "Nova lozinka",
|
||||
"New passwords must match": "Nove lozinke se moraju poklapati",
|
||||
"Cannot change password for Google accounts": "Nije moguće promijeniti lozinku za Google račune",
|
||||
"Authorize token?": "Autorizirati token?",
|
||||
"Authorize token for `x`?": "Autorizirati token za `x`?",
|
||||
"Yes": "Da",
|
||||
"No": "Ne",
|
||||
"Import and Export Data": "Uvezi i izvezi podatke",
|
||||
"Import": "Uvezi",
|
||||
"Import Invidious data": "Uvezi Invidious JSON podatke",
|
||||
"Import YouTube subscriptions": "Uvezi YouTube/OPML pretplate",
|
||||
"Import FreeTube subscriptions (.db)": "Uvezi FreeTube pretplate (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Uvezi NewPipe pretplate (.json)",
|
||||
"Import NewPipe data (.zip)": "Uvezi NewPipe podatke (.zip)",
|
||||
"Export": "Izvezi",
|
||||
"Export subscriptions as OPML": "Izvezi pretplate kao OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Izvezi pretplate kao OPML (za NewPipe i FreeTube)",
|
||||
"Export data as JSON": "Izvezi Invidious podatke kao JSON",
|
||||
"Delete account?": "Izbrisati račun?",
|
||||
"History": "Povijest",
|
||||
"An alternative front-end to YouTube": "Alternativa za YouTube",
|
||||
"JavaScript license information": "Informacije o JavaScript licenci",
|
||||
"source": "izvor",
|
||||
"Log in": "Prijavi se",
|
||||
"Log in/register": "Prijavi se/registriraj se",
|
||||
"Log in with Google": "Prijavi se pomoću Googlea",
|
||||
"User ID": "Korisnički ID",
|
||||
"Password": "Lozinka",
|
||||
"Time (h:mm:ss):": "Vrijeme (h:mm:ss):",
|
||||
"Text CAPTCHA": "Tekstualni CAPTCHA",
|
||||
"Image CAPTCHA": "Slikovni CAPTCHA",
|
||||
"Sign In": "Prijava",
|
||||
"Register": "Registriraj se",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Googleov potvrdni kod",
|
||||
"Preferences": "Postavke",
|
||||
"preferences_category_player": "Postavke playera",
|
||||
"preferences_video_loop_label": "Uvijek ponavljaj: ",
|
||||
"preferences_autoplay_label": "Automatski reproduciraj: ",
|
||||
"preferences_continue_label": "Standardno reproduciraj sljedeći: ",
|
||||
"preferences_continue_autoplay_label": "Automatski reproduciraj sljedeći video: ",
|
||||
"preferences_listen_label": "Standardno slušaj: ",
|
||||
"preferences_local_label": "Koristi posrednika videa: ",
|
||||
"preferences_speed_label": "Standardna brzina: ",
|
||||
"preferences_quality_label": "Preferirana kvaliteta videa: ",
|
||||
"preferences_volume_label": "Glasnoća playera: ",
|
||||
"preferences_comments_label": "Standardni komentari: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Standardni titlovi: ",
|
||||
"Fallback captions: ": "Alternativni titlovi: ",
|
||||
"preferences_related_videos_label": "Prikaži povezana videa: ",
|
||||
"preferences_annotations_label": "Standardno prikaži napomene: ",
|
||||
"preferences_extend_desc_label": "Automatski proširi opis videa: ",
|
||||
"preferences_vr_mode_label": "Interaktivna videa od 360 stupnjeva (zahtijeva WebGL): ",
|
||||
"preferences_category_visual": "Postavke prikaza",
|
||||
"preferences_player_style_label": "Stil playera: ",
|
||||
"Dark mode: ": "Tamni modus: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "tamno",
|
||||
"light": "svijetlo",
|
||||
"preferences_thin_mode_label": "Pojednostavljen prikaz: ",
|
||||
"preferences_category_misc": "Razne postavke",
|
||||
"preferences_automatic_instance_redirect_label": "Automatsko preusmjeravanje instance (u krajnjem slučaju će se koristiti redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Postavke pretplata",
|
||||
"preferences_annotations_subscribed_label": "Standardno prikaži napomene za pretplaćene kanale: ",
|
||||
"Redirect homepage to feed: ": "Preusmjeri početnu stranicu na feed: ",
|
||||
"preferences_max_results_label": "Broj prikazanih videa u feedu: ",
|
||||
"preferences_sort_label": "Razvrstaj videa prema: ",
|
||||
"published": "objavljeno",
|
||||
"published - reverse": "objavljeno – obrnuto",
|
||||
"alphabetically": "abecednim redom",
|
||||
"alphabetically - reverse": "abecednim redom – obrnuto",
|
||||
"channel name": "ime kanala",
|
||||
"channel name - reverse": "ime kanala – obrnuto",
|
||||
"Only show latest video from channel: ": "Prikaži samo najnovija videa kanala: ",
|
||||
"Only show latest unwatched video from channel: ": "Prikaži samo najnovija nepogledana videa kanala: ",
|
||||
"preferences_unseen_only_label": "Prikaži samo nepogledane: ",
|
||||
"preferences_notifications_only_label": "Prikaži samo obavijesti (ako ih ima): ",
|
||||
"Enable web notifications": "Aktiviraj web-obavijesti",
|
||||
"`x` uploaded a video": "`x` je poslao/la video",
|
||||
"`x` is live": "`x` je uživo",
|
||||
"preferences_category_data": "Postavke podataka",
|
||||
"Clear watch history": "Izbriši povijest gledanja",
|
||||
"Import/export data": "Uvezi/izvezi podatke",
|
||||
"Change password": "Promijeni lozinku",
|
||||
"Manage subscriptions": "Upravljaj pretplatama",
|
||||
"Manage tokens": "Upravljaj tokenima",
|
||||
"Watch history": "Povijest gledanja",
|
||||
"Delete account": "Izbriši račun",
|
||||
"preferences_category_admin": "Postavke administratora",
|
||||
"preferences_default_home_label": "Standardna početna stranica: ",
|
||||
"preferences_feed_menu_label": "Izbornik za feedove: ",
|
||||
"preferences_show_nick_label": "Prikaži nadimak na vrhu: ",
|
||||
"Top enabled: ": "Najbolji aktivirani: ",
|
||||
"CAPTCHA enabled: ": "Aktivirani CAPTCHA: ",
|
||||
"Login enabled: ": "Prijava aktivirana: ",
|
||||
"Registration enabled: ": "Registracija aktivirana: ",
|
||||
"Report statistics: ": "Izvještaj o statistici: ",
|
||||
"Save preferences": "Spremi postavke",
|
||||
"Subscription manager": "Upravljanje pretplatama",
|
||||
"Token manager": "Upravljanje tokenima",
|
||||
"Token": "Token",
|
||||
"Import/export": "Uvezi/izvezi",
|
||||
"unsubscribe": "odjavi pretplatu",
|
||||
"revoke": "opozovi",
|
||||
"Subscriptions": "Pretplate",
|
||||
"search": "traži",
|
||||
"Log out": "Odjavi se",
|
||||
"Released under the AGPLv3 on Github.": "Izdano pod licencom AGPLv3 na Github-u.",
|
||||
"Source available here.": "Izvor je ovdje dostupan.",
|
||||
"View JavaScript license information.": "Prikaži informacije o JavaScript licenci.",
|
||||
"View privacy policy.": "Prikaži politiku privatnosti.",
|
||||
"Trending": "U trendu",
|
||||
"Public": "Javno",
|
||||
"Unlisted": "Nenavedeno",
|
||||
"Private": "Privatno",
|
||||
"View all playlists": "Prikaži sve zbirke",
|
||||
"Updated `x` ago": "Aktualizirano prije `x`",
|
||||
"Delete playlist `x`?": "Izbrisati zbirku `x`?",
|
||||
"Delete playlist": "Izbriši zbirku",
|
||||
"Create playlist": "Stvori zbirku",
|
||||
"Title": "Naslov",
|
||||
"Playlist privacy": "Privatnost zbirke",
|
||||
"Editing playlist `x`": "Uređivanje zbirke `x`",
|
||||
"Show more": "Pokaži više",
|
||||
"Show less": "Pokaži manje",
|
||||
"Watch on YouTube": "Gledaj na YouTubeu",
|
||||
"Switch Invidious Instance": "Promijeni Invidious instancu",
|
||||
"Broken? Try another Invidious Instance": "Pokvarena? Probaj jednu drugu Invidious instancu",
|
||||
"Hide annotations": "Sakrij napomene",
|
||||
"Show annotations": "Prikaži napomene",
|
||||
"Genre: ": "Žanr: ",
|
||||
"License: ": "Licenca: ",
|
||||
"Family friendly? ": "Pogodan za cijelu obitelj? ",
|
||||
"Wilson score: ": "Wilson rezultat: ",
|
||||
"Engagement: ": "Sudjelovanje: ",
|
||||
"Whitelisted regions: ": "Odobrene regije: ",
|
||||
"Blacklisted regions: ": "Blokirane regije: ",
|
||||
"Shared `x`": "Dijeljeno `x`",
|
||||
"Premieres in `x`": "Premijera za `x`",
|
||||
"Premieres `x`": "Premijera `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Bok! Izgleda da je JavaScript isključen. Pritisni ovdje za prikaz komentara. Učitavanje će možda trajati malo duže.",
|
||||
"View YouTube comments": "Prikaži YouTube komentare",
|
||||
"View more comments on Reddit": "Prikaži još komentara na Redditu",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Prikaži `x` komentara.([^.,0-9]|^)1([^.,0-9]|$)",
|
||||
"": "Prikaži `x` komentara"
|
||||
},
|
||||
"View Reddit comments": "Prikaži Reddit komentare",
|
||||
"Hide replies": "Sakrij odgovore",
|
||||
"Show replies": "Prikaži odgovore",
|
||||
"Incorrect password": "Neispravna lozinka",
|
||||
"Quota exceeded, try again in a few hours": "Kvota je prekoračena. Pokušaj ponovo za par sati",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Prijava neuspjela. Provjeri da je dvofaktorska autentifikacija uključena (Authenticator ili SMS).",
|
||||
"Invalid TFA code": "Neispravan TFA kod",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Prijava neuspjela. Možda zato što za tvoj račun nije uključena dvofaktorska autentifikacija.",
|
||||
"Wrong answer": "Krivi odgovor",
|
||||
"Erroneous CAPTCHA": "Neispravan CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA je obavezno polje",
|
||||
"User ID is a required field": "Korisnički ID je obavezno polje",
|
||||
"Password is a required field": "Polje lozinke je obavezno polje",
|
||||
"Wrong username or password": "Krivo korisničko ime ili lozinka",
|
||||
"Please sign in using 'Log in with Google'": "Za prijavu koristi „Prijavi se pomoću Googlea”",
|
||||
"Password cannot be empty": "Polje lozinke ne smije ostati prazno",
|
||||
"Password cannot be longer than 55 characters": "Lozinka ne može biti duža od 55 znakova",
|
||||
"Please log in": "Prijavi se",
|
||||
"Invidious Private Feed for `x`": "Invidious privatni feed za `x`",
|
||||
"channel:`x`": "kanal:`x`",
|
||||
"Deleted or invalid channel": "Izbrisan ili neispravan kanal",
|
||||
"This channel does not exist.": "Ovaj kanal ne postoji.",
|
||||
"Could not get channel info.": "Neuspjelo dobivanje podataka kanala.",
|
||||
"Could not fetch comments": "Neuspjelo dohvaćanje komentara",
|
||||
"`x` ago": "prije `x`",
|
||||
"Load more": "Učitaj više",
|
||||
"Could not create mix.": "Neuspjelo stvaranje miksa.",
|
||||
"Empty playlist": "Prazna zbirka",
|
||||
"Not a playlist.": "Nije zbirka.",
|
||||
"Playlist does not exist.": "Zbirka ne postoji.",
|
||||
"Could not pull trending pages.": "Neuspjelo preuzimanje stranica u trendu.",
|
||||
"Hidden field \"challenge\" is a required field": "Skriveno polje „izazov” je obavezno polje",
|
||||
"Hidden field \"token\" is a required field": "Skriveno polje „token” je obavezno polje",
|
||||
"Erroneous challenge": "Neispravan izazov",
|
||||
"Erroneous token": "Neispravan token",
|
||||
"No such user": "Takav korisnik ne postoji",
|
||||
"Token is expired, please try again": "Token je istekao, pokušaj ponovo",
|
||||
"English": "Engleski",
|
||||
"English (auto-generated)": "Engleski (automatki generirano)",
|
||||
"Afrikaans": "Afrikaanski",
|
||||
"Albanian": "Albanski",
|
||||
"Amharic": "Amharski",
|
||||
"Arabic": "Arapski",
|
||||
"Armenian": "Armenski",
|
||||
"Azerbaijani": "Azerbajdžanski",
|
||||
"Bangla": "Bengalski",
|
||||
"Basque": "Baskijski",
|
||||
"Belarusian": "Bjeloruski",
|
||||
"Bosnian": "Bošnjački",
|
||||
"Bulgarian": "Bugarski",
|
||||
"Burmese": "Burmanski",
|
||||
"Catalan": "Katalonski",
|
||||
"Cebuano": "Cebuano",
|
||||
"Chinese (Simplified)": "Kineski (pojednostavljeni)",
|
||||
"Chinese (Traditional)": "Kineski (tradicionalni)",
|
||||
"Corsican": "Korzikanski",
|
||||
"Croatian": "Hrvatski",
|
||||
"Czech": "Češki",
|
||||
"Danish": "Danski",
|
||||
"Dutch": "Nizozemski",
|
||||
"Esperanto": "Esperanto",
|
||||
"Estonian": "Estonski",
|
||||
"Filipino": "Filipinski",
|
||||
"Finnish": "Finski",
|
||||
"French": "Francuski",
|
||||
"Galician": "Galicijski",
|
||||
"Georgian": "Gruzijski",
|
||||
"German": "Njemački",
|
||||
"Greek": "Grčki",
|
||||
"Gujarati": "Gudžaratski",
|
||||
"Haitian Creole": "Haitjanski kreolski",
|
||||
"Hausa": "Hauski",
|
||||
"Hawaiian": "Havajski",
|
||||
"Hebrew": "Hebrejski",
|
||||
"Hindi": "Hindski",
|
||||
"Hmong": "Hmong",
|
||||
"Hungarian": "Mađarski",
|
||||
"Icelandic": "Islandski",
|
||||
"Igbo": "Igboški",
|
||||
"Indonesian": "Indonezijski",
|
||||
"Irish": "Irski",
|
||||
"Italian": "Talijanski",
|
||||
"Japanese": "Japanski",
|
||||
"Javanese": "Javanski",
|
||||
"Kannada": "Kannada",
|
||||
"Kazakh": "Kazaški",
|
||||
"Khmer": "Kmerski",
|
||||
"Korean": "Korejski",
|
||||
"Kurdish": "Kurdski",
|
||||
"Kyrgyz": "Kirgiški",
|
||||
"Lao": "Laoški",
|
||||
"Latin": "Latinski",
|
||||
"Latvian": "Latvijski",
|
||||
"Lithuanian": "Litvanski",
|
||||
"Luxembourgish": "Luksemburgški",
|
||||
"Macedonian": "Makedonski",
|
||||
"Malagasy": "Malagaški",
|
||||
"Malay": "Malajski",
|
||||
"Malayalam": "Malajalamski",
|
||||
"Maltese": "Malteški",
|
||||
"Maori": "Maorski",
|
||||
"Marathi": "Marathi",
|
||||
"Mongolian": "Mongolski",
|
||||
"Nepali": "Nepalski",
|
||||
"Norwegian Bokmål": "Norveški Bokmål",
|
||||
"Nyanja": "Nijanja",
|
||||
"Pashto": "Paštunski",
|
||||
"Persian": "Perzijski",
|
||||
"Polish": "Poljski",
|
||||
"Portuguese": "Portugalski",
|
||||
"Punjabi": "Pandžapski",
|
||||
"Romanian": "Rumunjski",
|
||||
"Russian": "Ruski",
|
||||
"Samoan": "Samoanski",
|
||||
"Scottish Gaelic": "Škotski galski",
|
||||
"Serbian": "Srpski",
|
||||
"Shona": "Šona",
|
||||
"Sindhi": "Sindhi",
|
||||
"Sinhala": "Singaleški",
|
||||
"Slovak": "Slovački",
|
||||
"Slovenian": "Slovenski",
|
||||
"Somali": "Somalijski",
|
||||
"Southern Sotho": "Sjeverno samski",
|
||||
"Spanish": "Španjolski",
|
||||
"Spanish (Latin America)": "Španjolski (Latinska Amerika)",
|
||||
"Sundanese": "Sundski",
|
||||
"Swahili": "Svahili",
|
||||
"Swedish": "Švedski",
|
||||
"Tajik": "Tadžički",
|
||||
"Tamil": "Tamilski",
|
||||
"Telugu": "Teluški",
|
||||
"Thai": "Tajlandski",
|
||||
"Turkish": "Turski",
|
||||
"Ukrainian": "Ukrajinski",
|
||||
"Urdu": "Urdski",
|
||||
"Uzbek": "Uzbečki",
|
||||
"Vietnamese": "Vijetnamski",
|
||||
"Welsh": "Velški",
|
||||
"Western Frisian": "Zapadni frizijski",
|
||||
"Xhosa": "Xhosa",
|
||||
"Yiddish": "Jidiš",
|
||||
"Yoruba": "Jorubški",
|
||||
"Zulu": "Zulu",
|
||||
"Fallback comments: ": "Alternativni komentari: ",
|
||||
"Popular": "Popularni",
|
||||
"Search": "Traži",
|
||||
"Top": "Najbolji",
|
||||
"About": "Informacije",
|
||||
"Rating: ": "Ocjena: ",
|
||||
"preferences_locale_label": "Jezik: ",
|
||||
"View as playlist": "Prikaži kao zbirku",
|
||||
"Default": "Standardno",
|
||||
"Music": "Glazba",
|
||||
"Gaming": "Videoigre",
|
||||
"News": "Vijesti",
|
||||
"Movies": "Filmovi",
|
||||
"Download": "Preuzmi",
|
||||
"Download as: ": "Preuzmi kao: ",
|
||||
"%A %B %-d, %Y": "%A, %-d. %B %Y",
|
||||
"(edited)": "(uređeno)",
|
||||
"YouTube comment permalink": "Stalna poveznica YouTube komentara",
|
||||
"permalink": "stalna poveznica",
|
||||
"`x` marked it with a ❤": "Označeno sa ❤ od `x`",
|
||||
"Audio mode": "Audio modus",
|
||||
"Video mode": "Videomodus",
|
||||
"Videos": "Videa",
|
||||
"Playlists": "Zbirke",
|
||||
"Community": "Zajednica",
|
||||
"relevance": "značaj",
|
||||
"rating": "ocjena",
|
||||
"date": "datum",
|
||||
"views": "prikazi",
|
||||
"content_type": "vrsta_sadržaja",
|
||||
"duration": "trajanje",
|
||||
"features": "funkcije",
|
||||
"sort": "redoslijed",
|
||||
"hour": "sat",
|
||||
"today": "danas",
|
||||
"week": "tjedan",
|
||||
"month": "mjesec",
|
||||
"year": "godina",
|
||||
"video": "video",
|
||||
"channel": "kanal",
|
||||
"playlist": "Zbirka",
|
||||
"movie": "film",
|
||||
"show": "emisija",
|
||||
"hd": "hd",
|
||||
"subtitles": "titlovi",
|
||||
"creative_commons": "creative_commons",
|
||||
"3d": "3d",
|
||||
"live": "uživo",
|
||||
"4k": "4k",
|
||||
"location": "lokacija",
|
||||
"hdr": "hdr",
|
||||
"filter": "filtar",
|
||||
"Current version: ": "Trenutačna verzija: ",
|
||||
"next_steps_error_message": "Nakon toga bi trebali pokušati sljedeće: ",
|
||||
"next_steps_error_message_refresh": "Aktualiziraj stranicu",
|
||||
"next_steps_error_message_go_to_youtube": "Idi na YouTube",
|
||||
"footer_donate_page": "Doniraj",
|
||||
"adminprefs_modified_source_code_url_label": "URL do repozitorija izmijenjenog izvornog koda",
|
||||
"short": "Kratki (< 4 minute)",
|
||||
"long": "Dugi (> 20 minute)",
|
||||
"footer_source_code": "Izvorni kod",
|
||||
"footer_modfied_source_code": "Izmijenjeni izvorni kod",
|
||||
"footer_documentation": "Dokumentacija",
|
||||
"footer_original_source_code": "Izvoran izvorni kod",
|
||||
"preferences_region_label": "Zemlja sadržaja: ",
|
||||
"preferences_quality_dash_label": "Preferirana DASH videokvaliteta: ",
|
||||
"preferences_quality_option_dash": "DASH (adaptativna kvaliteta)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Srednja",
|
||||
"preferences_quality_dash_option_worst": "Najgora",
|
||||
"preferences_quality_dash_option_4320p": "4320 p",
|
||||
"preferences_quality_dash_option_2160p": "2160 p",
|
||||
"preferences_quality_dash_option_1440p": "1440 p",
|
||||
"preferences_quality_dash_option_1080p": "1080 p",
|
||||
"preferences_quality_dash_option_360p": "360 p",
|
||||
"preferences_quality_dash_option_240p": "240 p",
|
||||
"preferences_quality_dash_option_144p": "144 p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Kupljeno",
|
||||
"360": "360 °",
|
||||
"none": "bez",
|
||||
"videoinfo_youTube_embed_link": "Ugradi",
|
||||
"user_created_playlists": "`x` stvorene zbirke",
|
||||
"user_saved_playlists": "`x` spremljene zbirke",
|
||||
"Video unavailable": "Video nedostupan",
|
||||
"preferences_save_player_pos_label": "Spremi mjesto reprodukcije: ",
|
||||
"videoinfo_watch_on_youTube": "Gledaj na YouTubeu",
|
||||
"download_subtitles": "Podnaslovi - `x` (.vtt)",
|
||||
"preferences_quality_dash_option_auto": "Automatska",
|
||||
"preferences_quality_option_small": "Niska",
|
||||
"preferences_quality_dash_option_best": "Najbolja",
|
||||
"preferences_quality_dash_option_720p": "720 p",
|
||||
"preferences_quality_dash_option_480p": "480 p",
|
||||
"videoinfo_started_streaming_x_ago": "Započet prijenos prije `x`",
|
||||
"videoinfo_invidious_embed_link": "Ugradi poveznicu",
|
||||
"generic_count_hours_0": "{{count}} sat",
|
||||
"generic_count_hours_1": "{{count}} sata",
|
||||
"generic_count_hours_2": "{{count}} sati",
|
||||
"generic_subscribers_count_0": "{{count}} pretplatnik",
|
||||
"generic_subscribers_count_1": "{{count}} pretplatnika",
|
||||
"generic_subscribers_count_2": "{{count}} pretplatnika",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"tokens_count_1": "{{count}} tokena",
|
||||
"tokens_count_2": "{{count}} tokena",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} neviđena obavijest",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} neviđene obavijesti",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} neviđenih obavijesti",
|
||||
"generic_count_years_0": "{{count}} godina",
|
||||
"generic_count_years_1": "{{count}} godine",
|
||||
"generic_count_years_2": "{{count}} godina",
|
||||
"generic_count_months_0": "{{count}} mjesec",
|
||||
"generic_count_months_1": "{{count}} mjeseca",
|
||||
"generic_count_months_2": "{{count}} mjeseci",
|
||||
"generic_count_weeks_0": "{{count}} tjedan",
|
||||
"generic_count_weeks_1": "{{count}} tjedna",
|
||||
"generic_count_weeks_2": "{{count}} tjedana",
|
||||
"generic_count_minutes_0": "{{count}} minuta",
|
||||
"generic_count_minutes_1": "{{count}} minute",
|
||||
"generic_count_minutes_2": "{{count}} minuta",
|
||||
"generic_count_seconds_0": "{{count}} sekunda",
|
||||
"generic_count_seconds_1": "{{count}} sekunde",
|
||||
"generic_count_seconds_2": "{{count}} sekundi",
|
||||
"comments_points_count_0": "{{count}} točka",
|
||||
"comments_points_count_1": "{{count}} točke",
|
||||
"comments_points_count_2": "{{count}} točaka",
|
||||
"generic_subscriptions_count_0": "{{count}} pretplata",
|
||||
"generic_subscriptions_count_1": "{{count}} pretplate",
|
||||
"generic_subscriptions_count_2": "{{count}} pretplata",
|
||||
"generic_playlists_count_0": "{{count}} zbirka",
|
||||
"generic_playlists_count_1": "{{count}} zbirke",
|
||||
"generic_playlists_count_2": "{{count}} zbirka",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} videa",
|
||||
"generic_videos_count_2": "{{count}} videa",
|
||||
"generic_count_days_0": "{{count}} dan",
|
||||
"generic_count_days_1": "{{count}} dana",
|
||||
"generic_count_days_2": "{{count}} dana",
|
||||
"generic_views_count_0": "{{count}} prikaz",
|
||||
"generic_views_count_1": "{{count}} prikaza",
|
||||
"generic_views_count_2": "{{count}} prikaza",
|
||||
"comments_view_x_replies_0": "Prikaži {{count}} odgovor",
|
||||
"comments_view_x_replies_1": "Prikaži {{count}} odgovora",
|
||||
"comments_view_x_replies_2": "Prikaži {{count}} odgovora",
|
||||
"crash_page_you_found_a_bug": "Čini se da si pronašao/la grešku u Invidiousu!",
|
||||
"crash_page_before_reporting": "Prije prijavljivanja greške:",
|
||||
"crash_page_refresh": "pokušaj <a href=\"`x`\">aktualizirati stranicu</a>",
|
||||
"crash_page_switch_instance": "pokušaj <a href=\"`x`\">koristiti jednu drugu instancu</a>",
|
||||
"crash_page_read_the_faq": "pročitaj <a href=\"`x`\">Često postavljena pitanja (ČPP)</a>",
|
||||
"crash_page_search_issue": "pretraži <a href=\"`x`\">postojeće probleme na Github-u</a>",
|
||||
"crash_page_report_issue": "Ako ništa od gore navedenog ne pomaže, <a href=\"`x`\">prijavi novi problem na GitHub-u</a> (po mogućnosti na engleskom) i uključi sljedeći tekst u poruku (NEMOJ prevoditi taj tekst):",
|
||||
"English (United Kingdom)": "Engleski (Ujedinjeno Kraljevstvo)",
|
||||
"English (United States)": "Engleski (Sjedinjene Američke Države)",
|
||||
"Cantonese (Hong Kong)": "Kantonski (Hong Kong)",
|
||||
"Chinese": "Kineski",
|
||||
"Chinese (Taiwan)": "Kineski (Tajvan)",
|
||||
"Dutch (auto-generated)": "Nizozemski (automatski generiran)",
|
||||
"French (auto-generated)": "Francuski (automatski generiran)",
|
||||
"Indonesian (auto-generated)": "Indonezijski (automatski generiran)",
|
||||
"Interlingue": "Interlingua",
|
||||
"Japanese (auto-generated)": "Japanski (automatski generiran)",
|
||||
"Russian (auto-generated)": "Ruski (automatski generiran)",
|
||||
"Turkish (auto-generated)": "Turski (automatski generiran)",
|
||||
"Vietnamese (auto-generated)": "Vijetnamski (automatski generiran)",
|
||||
"Spanish (Spain)": "Španjolski (Španjolska)",
|
||||
"Italian (auto-generated)": "Talijanski (automatski generiran)",
|
||||
"Portuguese (Brazil)": "Portugalski (Brazil)",
|
||||
"Spanish (Mexico)": "Španjolski (Meksiko)",
|
||||
"German (auto-generated)": "Njemački (automatski generiran)",
|
||||
"Chinese (China)": "Kineski (Kina)",
|
||||
"Chinese (Hong Kong)": "Kineski (Hong Kong)",
|
||||
"Korean (auto-generated)": "Korejski (automatski generiran)",
|
||||
"Portuguese (auto-generated)": "Portugalski (automatski generiran)",
|
||||
"Spanish (auto-generated)": "Španjolski (automatski generiran)"
|
||||
}
|
||||
@@ -1,335 +1,464 @@
|
||||
{
|
||||
"`x` subscribers": "`x` feliratkozó",
|
||||
"`x` videos": "`x` videó",
|
||||
"`x` playlists": "`x` playlist",
|
||||
"generic_views_count": "{{count}} már látta",
|
||||
"generic_views_count_plural": "{{count}} már látta",
|
||||
"generic_videos_count": "{{count}} videó",
|
||||
"generic_videos_count_plural": "{{count}} videó",
|
||||
"generic_playlists_count": "{{count}} lejátszási lista",
|
||||
"generic_playlists_count_plural": "{{count}} lejátszási lista",
|
||||
"generic_subscribers_count": "{{count}} feliratkozó",
|
||||
"generic_subscribers_count_plural": "{{count}} feliratkozó",
|
||||
"generic_subscriptions_count": "{{count}} csatornára van feliratkozás",
|
||||
"generic_subscriptions_count_plural": "{{count}} csatornára van feliratkozás",
|
||||
"LIVE": "ÉLŐ",
|
||||
"Shared `x` ago": "`x` óta megosztva",
|
||||
"Shared `x` ago": "`x` ezelőtt megosztva",
|
||||
"Unsubscribe": "Leiratkozás",
|
||||
"Subscribe": "Feliratkozás",
|
||||
"View channel on YouTube": "Csatokrna megtekintése a YouTube-on",
|
||||
"View playlist on YouTube": "Playlist megtekintése a YouTube-on",
|
||||
"View channel on YouTube": "Csatorna megnézése YouTube-on",
|
||||
"View playlist on YouTube": "Lejátszási lista megnézése YouTube-on",
|
||||
"newest": "legújabb",
|
||||
"oldest": "legrégibb",
|
||||
"popular": "népszerű",
|
||||
"last": "utolsó",
|
||||
"Next page": "Következő oldal",
|
||||
"Previous page": "Előző oldal",
|
||||
"Clear watch history?": "Megtekintési napló törlése?",
|
||||
"Clear watch history?": "Törölve legyen a megnézett videók naplója?",
|
||||
"New password": "Új jelszó",
|
||||
"New passwords must match": "Az új jelszavaknak egyezniük kell",
|
||||
"Cannot change password for Google accounts": "Google fiók jelszavát nem lehet cserélni",
|
||||
"Authorize token?": "Token felhatalmazása?",
|
||||
"Authorize token for `x`?": "Token felhatalmazása `x`-ra?",
|
||||
"New passwords must match": "Az új jelszavaknak egyezniük kell.",
|
||||
"Cannot change password for Google accounts": "A Google-fiók jelszavát nem lehet megváltoztatni.",
|
||||
"Authorize token?": "Engedélyezve legyen a token?",
|
||||
"Authorize token for `x`?": "Engedélyezve legyen a token erre? „`x`”",
|
||||
"Yes": "Igen",
|
||||
"No": "Nem",
|
||||
"Import and Export Data": "Adatok importálása és exportálása",
|
||||
"Import": "Importálás",
|
||||
"Import Invidious data": "Invidious adatainak importálása",
|
||||
"Import YouTube subscriptions": "YouTube feliratkozások importálása",
|
||||
"Import FreeTube subscriptions (.db)": "FreeTube feliratkozások importálása (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "NewPipe feliratkozások importálása (.json)",
|
||||
"Import Invidious data": "Az Invidious adatainak importálása",
|
||||
"Import YouTube subscriptions": "YouTube-feliratkozások importálása",
|
||||
"Import FreeTube subscriptions (.db)": "FreeTube-feliratkozások importálása (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "NewPipe-feliratkozások importálása (.json)",
|
||||
"Import NewPipe data (.zip)": "NewPipe adatainak importálása (.zip)",
|
||||
"Export": "Exportálás",
|
||||
"Export subscriptions as OPML": "Feliratkozások exportálása OPML-ként",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Feliratkozások exportálása OPML-ként (NewPipe és FreeTube számára)",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Feliratkozások exportálása OPML-ként (NewPipe-hoz és FreeTube-hoz)",
|
||||
"Export data as JSON": "Adat exportálása JSON-ként",
|
||||
"Delete account?": "Fiók törlése?",
|
||||
"History": "Megtekintési napló",
|
||||
"An alternative front-end to YouTube": "Alternatív YouTube front-end",
|
||||
"JavaScript license information": "JavaScript licensz információ",
|
||||
"Delete account?": "Törlésre kerüljön a fiók?",
|
||||
"History": "Megnézett videók naplója",
|
||||
"An alternative front-end to YouTube": "Ez az oldal egyike a YouTube alternatív kezelőfelületeinek",
|
||||
"JavaScript license information": "A JavaScript licencinformációja",
|
||||
"source": "forrás",
|
||||
"Log in": "Bejelentkezés",
|
||||
"Log in/register": "Bejelentkezés/Regisztráció",
|
||||
"Log in with Google": "Bejelentkezés Google fiókkal",
|
||||
"User ID": "Felhasználó-ID",
|
||||
"Log in/register": "Bejelentkezés/Regisztrálás",
|
||||
"Log in with Google": "Bejelentkezés Google-fiókkal",
|
||||
"User ID": "Felhasználói azonosító",
|
||||
"Password": "Jelszó",
|
||||
"Time (h:mm:ss):": "Idő (h:mm:ss):",
|
||||
"Text CAPTCHA": "Szöveg-CAPTCHA",
|
||||
"Image CAPTCHA": "Kép-CAPTCHA",
|
||||
"Time (h:mm:ss):": "A pontos idő (ó:pp:mm):",
|
||||
"Text CAPTCHA": "Szöveges CAPTCHA kérése",
|
||||
"Image CAPTCHA": "Kép CAPTCHA kérése",
|
||||
"Sign In": "Bejelentkezés",
|
||||
"Register": "Regisztráció",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Google verifikációs kód",
|
||||
"Register": "Regisztrálás",
|
||||
"E-mail": "E-mail-cím",
|
||||
"Google verification code": "A Google ellenőrző kódja",
|
||||
"Preferences": "Beállítások",
|
||||
"Player preferences": "Lejátszó beállítások",
|
||||
"Always loop: ": "Mindig loop-ol: ",
|
||||
"Autoplay: ": "Automatikus lejátszás: ",
|
||||
"Play next by default: ": "Következő lejátszása alapértelmezésben: ",
|
||||
"Autoplay next video: ": "Következő automatikus lejátszása: ",
|
||||
"Listen by default: ": "Hallgatás alapértelmezésben: ",
|
||||
"Proxy videos: ": "Proxy videók: ",
|
||||
"Default speed: ": "Alapértelmezett sebesség: ",
|
||||
"Preferred video quality: ": "Kívánt video minőség: ",
|
||||
"Player volume: ": "Hangerő: ",
|
||||
"Default comments: ": "Alapértelmezett kommentek: ",
|
||||
"preferences_category_player": "Lejátszó beállításai",
|
||||
"preferences_video_loop_label": "Videó állandó ismétlése: ",
|
||||
"preferences_autoplay_label": "Automatikus lejátszás: ",
|
||||
"preferences_continue_label": "A következő videót mindig automatikusan játssza le: ",
|
||||
"preferences_continue_autoplay_label": "A következő videó automatikus lejátszása: ",
|
||||
"preferences_listen_label": "Mindig csak a hangsáv lejátszása: ",
|
||||
"preferences_local_label": "Videók proxyn keresztüli lejátszása: ",
|
||||
"preferences_speed_label": "Alapértelmezett sebesség: ",
|
||||
"preferences_quality_label": "Videó minősége: ",
|
||||
"preferences_volume_label": "Hangerő: ",
|
||||
"preferences_comments_label": "Mindig innen legyenek betöltve a hozzászólások: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "Alapértelmezett feliratok: ",
|
||||
"preferences_captions_label": "Felirat nyelvének sorrendje: ",
|
||||
"Fallback captions: ": "Másodlagos feliratok: ",
|
||||
"Show related videos: ": "Kapcsolódó videók mutatása: ",
|
||||
"Show annotations by default: ": "Annotációk mutatása alapértelmetésben: ",
|
||||
"Visual preferences": "Vizuális preferenciák",
|
||||
"Player style: ": "Lejátszó stílusa: ",
|
||||
"Dark mode: ": "Sötét mód: ",
|
||||
"Theme: ": "Téma: ",
|
||||
"dark": "Sötét",
|
||||
"light": "Világos",
|
||||
"Thin mode: ": "Vékony mód: ",
|
||||
"Subscription preferences": "Feliratkozási beállítások",
|
||||
"Show annotations by default for subscribed channels: ": "Annotációk mutatása alapértelmezésben feliratkozott csatornák esetében: ",
|
||||
"Redirect homepage to feed: ": "Kezdő oldal átirányitása a feed-re: ",
|
||||
"Number of videos shown in feed: ": "Feed-ben mutatott videók száma: ",
|
||||
"Sort videos by: ": "Videók sorrendje: ",
|
||||
"published": "közzétéve",
|
||||
"published - reverse": "közzétéve (ford.)",
|
||||
"alphabetically": "ABC sorrend",
|
||||
"alphabetically - reverse": "ABC sorrend (ford.)",
|
||||
"channel name": "csatorna neve",
|
||||
"channel name - reverse": "csatorna neve (ford.)",
|
||||
"Only show latest video from channel: ": "Csak a legutolsó videó mutatása a csatornából: ",
|
||||
"Only show latest unwatched video from channel: ": "Csak a legutolsó nem megtekintett videó mutatása a csatornából: ",
|
||||
"Only show unwatched: ": "Csak a nem megtekintettek mutatása: ",
|
||||
"Only show notifications (if there are any): ": "Csak értesítések mutatása (ha van): ",
|
||||
"Enable web notifications": "Web értesítések bekapcsolása",
|
||||
"preferences_related_videos_label": "Hasonló videók ajánlása: ",
|
||||
"preferences_annotations_label": "Szövegmagyarázat alapértelmezett mutatása: ",
|
||||
"preferences_extend_desc_label": "A videó leírása automatikusan látható: ",
|
||||
"preferences_vr_mode_label": "Interaktív 360 fokos videók (WebGL szükséges): ",
|
||||
"preferences_category_visual": "Kinézet, elrendezés és régió beállításai",
|
||||
"preferences_player_style_label": "Lejátszó kinézete: ",
|
||||
"Dark mode: ": "Elsötétített mód: ",
|
||||
"preferences_dark_mode_label": "Téma: ",
|
||||
"dark": "sötét",
|
||||
"light": "világos",
|
||||
"preferences_thin_mode_label": "Vékony mód: ",
|
||||
"preferences_category_subscription": "Feliratkozott tartalmak beállításai",
|
||||
"preferences_annotations_subscribed_label": "A feliratkozott csatornák szövegmagyarázatának alapértelmezett mutatása: ",
|
||||
"Redirect homepage to feed: ": "Kezdőoldal átirányitása a feedre: ",
|
||||
"preferences_max_results_label": "Feedben mutatott videók száma: ",
|
||||
"preferences_sort_label": "Videók rendezése: ",
|
||||
"published": "közzététel szerint",
|
||||
"published - reverse": "közzététel szerint – fordított sorrendben",
|
||||
"alphabetically": "ABC-sorrend szerint",
|
||||
"alphabetically - reverse": "Fordított ABC-sorrend szerint",
|
||||
"channel name": "csatorna neve szerint",
|
||||
"channel name - reverse": "csatorna neve szerint – fordított sorrendben",
|
||||
"Only show latest video from channel: ": "Csak a csatorna legújabb videójának mutatása: ",
|
||||
"Only show latest unwatched video from channel: ": "Csak a csatorna legújabb, de még nem megnézett videójának mutatása: ",
|
||||
"preferences_unseen_only_label": "A még nem megnézett videók mutatása: ",
|
||||
"preferences_notifications_only_label": "Csak az értesítések mutatása (ha van): ",
|
||||
"Enable web notifications": "Böngészőn belüli értesítések bekapcsolása",
|
||||
"`x` uploaded a video": "`x` feltöltött egy videót",
|
||||
"`x` is live": "`x` élő",
|
||||
"Data preferences": "Adat beállítások",
|
||||
"Clear watch history": "Megtekintési napló törlése",
|
||||
"Import/export data": "Adat Import/Export",
|
||||
"Change password": "Jelszócsere",
|
||||
"`x` is live": "`x` élőben közvetít",
|
||||
"preferences_category_data": "Fiók beállításai és egyéb lehetőségek",
|
||||
"Clear watch history": "Megnézett videók naplójának törlése",
|
||||
"Import/export data": "Adatok importálása vagy exportálása",
|
||||
"Change password": "Jelszó megváltoztatása",
|
||||
"Manage subscriptions": "Feliratkozások kezelése",
|
||||
"Manage tokens": "Tokenek kezelése",
|
||||
"Watch history": "Megtekintési napló",
|
||||
"Watch history": "Megnézett videók naplója",
|
||||
"Delete account": "Fiók törlése",
|
||||
"Administrator preferences": "Adminisztrátor beállítások",
|
||||
"Default homepage: ": "Alapértelmezett honlap: ",
|
||||
"Feed menu: ": "Feed menü: ",
|
||||
"Top enabled: ": "Top lista engedélyezve: ",
|
||||
"preferences_category_admin": "Adminisztrátorok beállításai",
|
||||
"preferences_default_home_label": "Kezdőoldal: ",
|
||||
"preferences_feed_menu_label": "Feed menü sorrendje: ",
|
||||
"Top enabled: ": "Toplista engedélyezve: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA engedélyezve: ",
|
||||
"Login enabled: ": "Bejelentkezés engedélyezve: ",
|
||||
"Registration enabled: ": "Registztráció engedélyezve: ",
|
||||
"Report statistics: ": "Statisztikák gyűjtése: ",
|
||||
"Registration enabled: ": "Regisztrálás engedélyezve: ",
|
||||
"Report statistics: ": "Statisztika jelentése: ",
|
||||
"Save preferences": "Beállítások mentése",
|
||||
"Subscription manager": "Feliratkozás kezelő",
|
||||
"Token manager": "Token kezelő",
|
||||
"Subscription manager": "Feliratkozások kezelője",
|
||||
"Token manager": "Tokenek kezelője",
|
||||
"Token": "Token",
|
||||
"`x` subscriptions": "`x` feliratkozás",
|
||||
"`x` tokens": "`x` token",
|
||||
"Import/export": "Import/export",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} token",
|
||||
"Import/export": "Importálás/exportálás",
|
||||
"unsubscribe": "leiratkozás",
|
||||
"revoke": "visszavonás",
|
||||
"Subscriptions": "Feliratkozások",
|
||||
"`x` unseen notifications": "`x` kimaradt érdesítés",
|
||||
"search": "keresés",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} kimaradt értesítés",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} kimaradt értesítés",
|
||||
"search": "Videó keresése",
|
||||
"Log out": "Kijelentkezés",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Omar Roth által release-elve AGPLv3 licensz alatt.",
|
||||
"Source available here.": "Forrás elérhető itt.",
|
||||
"View JavaScript license information.": "JavaScript licensz inforkációk megtekintése.",
|
||||
"View privacy policy.": "Adatvédelem irányelv megtekintése.",
|
||||
"Trending": "Trending",
|
||||
"Public": "Nyilvános",
|
||||
"Unlisted": "Nem nyilvános",
|
||||
"Private": "Privát",
|
||||
"View all playlists": "Minden playlist megtekintése",
|
||||
"Updated `x` ago": "Frissitve `x`",
|
||||
"Delete playlist `x`?": "`x` playlist törlése?",
|
||||
"Delete playlist": "Playlist törlése",
|
||||
"Create playlist": "Playlist létrehozása",
|
||||
"Title": "Címe",
|
||||
"Playlist privacy": "Playlist láthatósága",
|
||||
"Editing playlist `x`": "`x` playlist szerkesztése",
|
||||
"Watch on YouTube": "Megtekintés a YouTube-on",
|
||||
"Hide annotations": "Annotációk elrejtése",
|
||||
"Show annotations": "Annotációk mutatása",
|
||||
"Genre: ": "Zsáner: ",
|
||||
"License: ": "Licensz: ",
|
||||
"Source available here.": "A forráskód itt érhető el",
|
||||
"View JavaScript license information.": "JavaScript licencinformáció megnyitása",
|
||||
"View privacy policy.": "Adatvédelmi szabályzat megnyitása",
|
||||
"Trending": "Felkapott",
|
||||
"Public": "nyilvános",
|
||||
"Unlisted": "nem nyilvános",
|
||||
"Private": "magán",
|
||||
"View all playlists": "Összes lejátszási lista megnézése",
|
||||
"Updated `x` ago": "`x` ezelőtt frissítve",
|
||||
"Delete playlist `x`?": "Törlésre kerüljön ez a lejátszási lista? „`x`”",
|
||||
"Delete playlist": "Lejátszási lista törlése",
|
||||
"Create playlist": "Lejátszási lista létrehozása",
|
||||
"Title": "Lejátszási lista címe",
|
||||
"Playlist privacy": "Lejátszási lista láthatósága",
|
||||
"Editing playlist `x`": "„`x`” lejátszási lista szerkesztése",
|
||||
"Show more": "Többi szöveg mutatása",
|
||||
"Show less": "Kevesebb szöveg mutatása",
|
||||
"Watch on YouTube": "YouTube-on megnézni",
|
||||
"Hide annotations": "Megjegyzések elrejtése",
|
||||
"Show annotations": "Megjegyzések mutatása",
|
||||
"Genre: ": "Műfaj: ",
|
||||
"License: ": "Licenc: ",
|
||||
"Family friendly? ": "Családbarát? ",
|
||||
"Wilson score: ": "Wilson-ponstszém: ",
|
||||
"Engagement: ": "Engagement: ",
|
||||
"Wilson score: ": "Wilson-pontszám: ",
|
||||
"Engagement: ": "Visszajelzési mutató: ",
|
||||
"Whitelisted regions: ": "Engedélyezett régiók: ",
|
||||
"Blacklisted regions: ": "Tiltott régiók: ",
|
||||
"Shared `x`": "Megosztva `x`",
|
||||
"`x` views": "`x` megtekintés",
|
||||
"Premieres in `x`": "Premier `x`",
|
||||
"Premieres `x`": "Premier `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.",
|
||||
"View YouTube comments": "YouTube kommentek megtekintése",
|
||||
"View more comments on Reddit": "További Reddit kommentek megtekintése",
|
||||
"View `x` comments": "`x` komment megtekintése",
|
||||
"View Reddit comments": "Reddit kommentek megtekintése",
|
||||
"Shared `x`": "`x` napon osztották meg",
|
||||
"Premieres in `x`": "`x` később lesz a premierje",
|
||||
"Premieres `x`": "`x` lesz a premierje",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Helló! Úgy tűnik a JavaScript ki van kapcsolva a böngészőben. Ide kattintva lehet olvasni a hozzászólásokat, de a betöltésük így kicsit több időbe telik.",
|
||||
"View YouTube comments": "YouTube-on lévő hozzászólások olvasása",
|
||||
"View more comments on Reddit": "A többi hozzászólás olvasása Redditen",
|
||||
"View `x` comments": {
|
||||
"": "`x` hozzászólás olvasása",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` hozzászólás olvasása"
|
||||
},
|
||||
"View Reddit comments": "Redditen lévő hozzászólások olvasása",
|
||||
"Hide replies": "Válaszok elrejtése",
|
||||
"Show replies": "Válaszok mutatása",
|
||||
"Incorrect password": "Helytelen jelszó",
|
||||
"Quota exceeded, try again in a few hours": "Kvóta túllépve, próbálkozz pár órával később",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Sikertelen belépés, győződj meg róla hogy a 2FA (Authenticator vagy SMS) engedélyezve van.",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Sikertelen belépés, győződj meg róla hogy a 2FA (Authenticator vagy SMS) engedélyezve van.",
|
||||
"Wrong answer": "Rossz válasz",
|
||||
"Erroneous CAPTCHA": "Hibás CAPTCHA",
|
||||
"CAPTCHA is a required field": "A CAPTCHA kötelező",
|
||||
"User ID is a required field": "A felhasználó-ID kötelező",
|
||||
"Password is a required field": "A jelszó kötelező",
|
||||
"Wrong username or password": "Rossz felhasználónév vagy jelszó",
|
||||
"Please sign in using 'Log in with Google'": "Kérem, jelentkezzen be a \"Bejelentkezés Google-el\"",
|
||||
"Password cannot be empty": "A jelszó nem lehet üres",
|
||||
"Password cannot be longer than 55 characters": "A jelszó nem lehet hosszabb 55 betűnél",
|
||||
"Please log in": "Kérem lépjen be",
|
||||
"Invidious Private Feed for `x`": "`x` Invidious privát feed-je",
|
||||
"channel:`x`": "`x` csatorna",
|
||||
"Deleted or invalid channel": "Törölt vagy nemlétező csatorna",
|
||||
"This channel does not exist.": "Ez a csatorna nem létezik.",
|
||||
"Could not get channel info.": "Nem megszerezhető a csatorna információ.",
|
||||
"Could not fetch comments": "Nem megszerezhetőek a kommentek",
|
||||
"View `x` replies": "`x` válasz megtekintése",
|
||||
"`x` ago": "`x` óta",
|
||||
"Load more": "További betöltése",
|
||||
"`x` points": "`x` pont",
|
||||
"Could not create mix.": "Nem tudok mix-et készíteni.",
|
||||
"Empty playlist": "Üres playlist",
|
||||
"Not a playlist.": "Nem playlist.",
|
||||
"Playlist does not exist.": "Nem létező playlist.",
|
||||
"Could not pull trending pages.": "Nem tudom letölteni a trendek adatait.",
|
||||
"Hidden field \"challenge\" is a required field": "A rejtett \"challenge\" mező kötelező",
|
||||
"Hidden field \"token\" is a required field": "A rejtett \"token\" mező kötelező",
|
||||
"Incorrect password": "A jelszó nem megfelelő",
|
||||
"Quota exceeded, try again in a few hours": "A kvótát meghaladták. Néhány órával később próbáld meg újból betölteni.",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Nem sikerült bejelentkezni. A kétlépcsős (hitelesítő vagy szöveges üzenet általi) hitelesítésnek bekapcsolva kell lennie.",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Nem sikerült bejelentkezni. Ennek oka lehet, hogy a kétlépcsős hitelesítés nincs bekapcsolva a fiók beállításaiban.",
|
||||
"Wrong answer": "Nem jól válaszoltál.",
|
||||
"Erroneous CAPTCHA": "A CAPTCHA hibás.",
|
||||
"CAPTCHA is a required field": "A CAPTCHA-mezőt ki kell tölteni.",
|
||||
"User ID is a required field": "A felhasználói azonosítót meg kell adni.",
|
||||
"Password is a required field": "Meg kell adni egy jelszót.",
|
||||
"Wrong username or password": "Vagy a felhasználói név, vagy pedig a jelszó nem megfelelő.",
|
||||
"Please sign in using 'Log in with Google'": "A „Bejelentkezés Google-el” gombbal jelentkezz be.",
|
||||
"Password cannot be empty": "A jelszót nem lehet kihagyni.",
|
||||
"Password cannot be longer than 55 characters": "A jelszó nem lehet hosszabb 55 karakternél.",
|
||||
"Please log in": "Kérjük, jelentkezz be.",
|
||||
"Invidious Private Feed for `x`": "„`x`” Invidious magán feedje",
|
||||
"channel:`x`": "`x` csatornája",
|
||||
"Deleted or invalid channel": "A csatorna érvénytelen, vagy pedig törölve lett.",
|
||||
"This channel does not exist.": "Nincs ilyen csatorna.",
|
||||
"Could not get channel info.": "Nem lehetett betölteni a csatorna adatait.",
|
||||
"Could not fetch comments": "Nem lehetett betölteni a hozzászólásokat.",
|
||||
"comments_view_x_replies": "{{count}} válasz olvasása",
|
||||
"comments_view_x_replies_plural": "{{count}} válasz olvasása",
|
||||
"`x` ago": "`x` ezelőtt",
|
||||
"Load more": "Többi hozzászólás betöltése",
|
||||
"comments_points_count": "{{count}} pont",
|
||||
"comments_points_count_plural": "{{count}} pont",
|
||||
"Could not create mix.": "A válogatást nem lehetett elkészíteni.",
|
||||
"Empty playlist": "Üres lejátszási lista",
|
||||
"Not a playlist.": "Ez nem egy lejátszási lista.",
|
||||
"Playlist does not exist.": "Nincs ilyen lejátszási lista.",
|
||||
"Could not pull trending pages.": "Nem lehetett betölteni a felkapott videók oldalát.",
|
||||
"Hidden field \"challenge\" is a required field": "A rejtett „challenge” mezőt ki kell tölteni.",
|
||||
"Hidden field \"token\" is a required field": "A rejtett „token” mezőt ki kell tölteni.",
|
||||
"Erroneous challenge": "Hibás challenge",
|
||||
"Erroneous token": "Hibás token",
|
||||
"No such user": "Nincs ilyen felhasználó",
|
||||
"Token is expired, please try again": "Lejárt token, kérem próbáld újra",
|
||||
"English": "",
|
||||
"English (auto-generated)": "English (auto-genererat)",
|
||||
"Afrikaans": "",
|
||||
"Albanian": "",
|
||||
"Amharic": "",
|
||||
"Arabic": "",
|
||||
"Armenian": "",
|
||||
"Azerbaijani": "",
|
||||
"Bangla": "",
|
||||
"Basque": "",
|
||||
"Belarusian": "",
|
||||
"Bosnian": "",
|
||||
"Bulgarian": "",
|
||||
"Burmese": "",
|
||||
"Catalan": "",
|
||||
"Cebuano": "",
|
||||
"Chinese (Simplified)": "",
|
||||
"Chinese (Traditional)": "",
|
||||
"Corsican": "",
|
||||
"Croatian": "",
|
||||
"Czech": "",
|
||||
"Danish": "",
|
||||
"Dutch": "",
|
||||
"Esperanto": "",
|
||||
"Estonian": "",
|
||||
"Filipino": "",
|
||||
"Finnish": "",
|
||||
"French": "",
|
||||
"Galician": "",
|
||||
"Georgian": "",
|
||||
"German": "",
|
||||
"Greek": "",
|
||||
"Gujarati": "",
|
||||
"Haitian Creole": "",
|
||||
"Hausa": "",
|
||||
"Hawaiian": "",
|
||||
"Hebrew": "",
|
||||
"Hindi": "",
|
||||
"Hmong": "",
|
||||
"Hungarian": "",
|
||||
"Icelandic": "",
|
||||
"Igbo": "",
|
||||
"Indonesian": "",
|
||||
"Irish": "",
|
||||
"Italian": "",
|
||||
"Japanese": "",
|
||||
"Javanese": "",
|
||||
"Kannada": "",
|
||||
"Kazakh": "",
|
||||
"Khmer": "",
|
||||
"Korean": "",
|
||||
"Kurdish": "",
|
||||
"Kyrgyz": "",
|
||||
"Lao": "",
|
||||
"Latin": "",
|
||||
"Latvian": "",
|
||||
"Lithuanian": "",
|
||||
"Luxembourgish": "",
|
||||
"Macedonian": "",
|
||||
"Malagasy": "",
|
||||
"Malay": "",
|
||||
"Malayalam": "",
|
||||
"Maltese": "",
|
||||
"Maori": "",
|
||||
"Marathi": "",
|
||||
"Mongolian": "",
|
||||
"Nepali": "",
|
||||
"Norwegian Bokmål": "",
|
||||
"Nyanja": "",
|
||||
"Pashto": "",
|
||||
"Persian": "",
|
||||
"Polish": "",
|
||||
"Portuguese": "",
|
||||
"Punjabi": "",
|
||||
"Romanian": "",
|
||||
"Russian": "",
|
||||
"Samoan": "",
|
||||
"Scottish Gaelic": "",
|
||||
"Serbian": "",
|
||||
"Shona": "",
|
||||
"Sindhi": "",
|
||||
"Sinhala": "",
|
||||
"Slovak": "",
|
||||
"Slovenian": "",
|
||||
"Somali": "",
|
||||
"Southern Sotho": "",
|
||||
"Spanish": "",
|
||||
"Spanish (Latin America)": "",
|
||||
"Sundanese": "",
|
||||
"Swahili": "",
|
||||
"Swedish": "",
|
||||
"Tajik": "",
|
||||
"Tamil": "",
|
||||
"Telugu": "",
|
||||
"Thai": "",
|
||||
"Turkish": "",
|
||||
"Ukrainian": "",
|
||||
"Urdu": "",
|
||||
"Uzbek": "",
|
||||
"Vietnamese": "",
|
||||
"Welsh": "",
|
||||
"Western Frisian": "",
|
||||
"Xhosa": "",
|
||||
"Yiddish": "",
|
||||
"Yoruba": "",
|
||||
"Zulu": "",
|
||||
"`x` years": "`x` év",
|
||||
"`x` months": "`x` hónap",
|
||||
"`x` weeks": "`x` hét",
|
||||
"`x` days": "`x` nap",
|
||||
"`x` hours": "`x` óra",
|
||||
"`x` minutes": "`x` perc",
|
||||
"`x` seconds": "`x` másodperc",
|
||||
"Token is expired, please try again": "A token lejárt. Kérjük, próbáld meg újból.",
|
||||
"English": "angol",
|
||||
"English (auto-generated)": "angol (automatikusan létrehozott)",
|
||||
"Afrikaans": "afrikaans",
|
||||
"Albanian": "albán",
|
||||
"Amharic": "amhara",
|
||||
"Arabic": "arab",
|
||||
"Armenian": "örmény",
|
||||
"Azerbaijani": "azerbajdzsáni",
|
||||
"Bangla": "bengáli",
|
||||
"Basque": "baszk",
|
||||
"Belarusian": "fehérorosz",
|
||||
"Bosnian": "bosnyák",
|
||||
"Bulgarian": "bolgár",
|
||||
"Burmese": "burmai",
|
||||
"Catalan": "katalán",
|
||||
"Cebuano": "szebuano",
|
||||
"Chinese (Simplified)": "kínai (egyszerűsített)",
|
||||
"Chinese (Traditional)": "kínai (hagyományos)",
|
||||
"Corsican": "korzikai",
|
||||
"Croatian": "horvát",
|
||||
"Czech": "cseh",
|
||||
"Danish": "dán",
|
||||
"Dutch": "holland",
|
||||
"Esperanto": "eszperantó",
|
||||
"Estonian": "észt",
|
||||
"Filipino": "filippínó",
|
||||
"Finnish": "finn",
|
||||
"French": "francia",
|
||||
"Galician": "galiciai",
|
||||
"Georgian": "grúz",
|
||||
"German": "német",
|
||||
"Greek": "görög",
|
||||
"Gujarati": "gudzsaráti",
|
||||
"Haitian Creole": "haiti kreol",
|
||||
"Hausa": "hausza",
|
||||
"Hawaiian": "hawaii",
|
||||
"Hebrew": "héber",
|
||||
"Hindi": "hindi",
|
||||
"Hmong": "hmong",
|
||||
"Hungarian": "magyar",
|
||||
"Icelandic": "izlandi",
|
||||
"Igbo": "igbo",
|
||||
"Indonesian": "indonéz",
|
||||
"Irish": "ír",
|
||||
"Italian": "olasz",
|
||||
"Japanese": "japán",
|
||||
"Javanese": "jávai",
|
||||
"Kannada": "kannada",
|
||||
"Kazakh": "kazak",
|
||||
"Khmer": "khmer",
|
||||
"Korean": "koreai",
|
||||
"Kurdish": "kurd",
|
||||
"Kyrgyz": "kirgiz",
|
||||
"Lao": "lao",
|
||||
"Latin": "latin",
|
||||
"Latvian": "lett",
|
||||
"Lithuanian": "litván",
|
||||
"Luxembourgish": "luxemburgi",
|
||||
"Macedonian": "macedón",
|
||||
"Malagasy": "madagaszkári",
|
||||
"Malay": "maláj",
|
||||
"Malayalam": "malajálam",
|
||||
"Maltese": "máltai",
|
||||
"Maori": "maori",
|
||||
"Marathi": "maráthi",
|
||||
"Mongolian": "mongol",
|
||||
"Nepali": "nepáli",
|
||||
"Norwegian Bokmål": "norvég (bokmål)",
|
||||
"Nyanja": "njándzsa (csicseva)",
|
||||
"Pashto": "pastu",
|
||||
"Persian": "perzsa",
|
||||
"Polish": "lengyel",
|
||||
"Portuguese": "portugál",
|
||||
"Punjabi": "pandzsábi",
|
||||
"Romanian": "román",
|
||||
"Russian": "orosz",
|
||||
"Samoan": "szamoai",
|
||||
"Scottish Gaelic": "skót gael",
|
||||
"Serbian": "szerb",
|
||||
"Shona": "sona",
|
||||
"Sindhi": "szindi",
|
||||
"Sinhala": "szingaléz",
|
||||
"Slovak": "szlovák",
|
||||
"Slovenian": "szlovén",
|
||||
"Somali": "szomáliai",
|
||||
"Southern Sotho": "déli szútú",
|
||||
"Spanish": "spanyol",
|
||||
"Spanish (Latin America)": "spanyol (latinamerikai)",
|
||||
"Sundanese": "szunda",
|
||||
"Swahili": "szuahéli",
|
||||
"Swedish": "svéd",
|
||||
"Tajik": "tádzsik",
|
||||
"Tamil": "tamil",
|
||||
"Telugu": "telugu",
|
||||
"Thai": "thai",
|
||||
"Turkish": "török",
|
||||
"Ukrainian": "ukrán",
|
||||
"Uzbek": "üzbég",
|
||||
"Vietnamese": "vietnámi",
|
||||
"Welsh": "walesi",
|
||||
"Western Frisian": "nyugati fríz",
|
||||
"Yiddish": "jiddis",
|
||||
"Yoruba": "joruba",
|
||||
"Zulu": "zulu",
|
||||
"generic_count_years": "{{count}} évvel",
|
||||
"generic_count_years_plural": "{{count}} évvel",
|
||||
"generic_count_months": "{{count}} hónappal",
|
||||
"generic_count_months_plural": "{{count}} hónappal",
|
||||
"generic_count_weeks": "{{count}} héttel",
|
||||
"generic_count_weeks_plural": "{{count}} héttel",
|
||||
"generic_count_days": "{{count}} nappal",
|
||||
"generic_count_days_plural": "{{count}} nappal",
|
||||
"generic_count_hours": "{{count}} órával",
|
||||
"generic_count_hours_plural": "{{count}} órával",
|
||||
"generic_count_minutes": "{{count}} perccel",
|
||||
"generic_count_minutes_plural": "{{count}} perccel",
|
||||
"generic_count_seconds": "{{count}} másodperccel",
|
||||
"generic_count_seconds_plural": "{{count}} másodperccel",
|
||||
"Fallback comments: ": "Másodlagos kommentek: ",
|
||||
"Popular": "Népszerű",
|
||||
"Search": "Keresési oldal",
|
||||
"Top": "Top",
|
||||
"About": "Leírás",
|
||||
"Rating: ": "Besorolás: ",
|
||||
"Language: ": "Nyelv: ",
|
||||
"View as playlist": "Megtekintés playlist-ként",
|
||||
"Rating: ": "Pontszám: ",
|
||||
"preferences_locale_label": "Nyelv: ",
|
||||
"View as playlist": "Megnézés lejátszási listában",
|
||||
"Default": "Alapértelmezett",
|
||||
"Music": "Zene",
|
||||
"Music": "Zenék",
|
||||
"Gaming": "Játékok",
|
||||
"News": "Hírek",
|
||||
"Movies": "Filmek",
|
||||
"Download": "Letöltés",
|
||||
"Download as: ": "Letöltés mint: ",
|
||||
"%A %B %-d, %Y": "",
|
||||
"Download as: ": "Letöltés másként: ",
|
||||
"(edited)": "(szerkesztve)",
|
||||
"YouTube comment permalink": "YouTube komment permalink",
|
||||
"permalink": "permalink",
|
||||
"`x` marked it with a ❤": "`x` jelölte ❤-vel",
|
||||
"Audio mode": "Audio mód",
|
||||
"Video mode": "Video mód",
|
||||
"Videos": "Videók",
|
||||
"Playlists": "Playlistek",
|
||||
"YouTube comment permalink": "YouTube-hozzászólás idehivatkozása",
|
||||
"permalink": "idehivatkozás",
|
||||
"`x` marked it with a ❤": "`x` ❤ jelet adott a hozzászóláshoz",
|
||||
"Audio mode": "Csak hanggal",
|
||||
"Video mode": "Hanggal és képpel",
|
||||
"Videos": "Videói",
|
||||
"Playlists": "Lejátszási listái",
|
||||
"Community": "Közösség",
|
||||
"Current version: ": "Jelenlegi verzió: "
|
||||
"Current version: ": "Jelenlegi verzió: ",
|
||||
"preferences_quality_option_medium": "Közepes",
|
||||
"preferences_quality_dash_option_auto": "Automatikus",
|
||||
"preferences_quality_dash_option_best": "Legjobb",
|
||||
"preferences_quality_dash_option_worst": "Legrosszabb",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"videoinfo_started_streaming_x_ago": "`x` ezelőtt kezdte streamelni",
|
||||
"views": "Mennyien látták",
|
||||
"purchased": "Megvásárolva",
|
||||
"360": "360°-os",
|
||||
"footer_original_source_code": "Eredeti forráskód",
|
||||
"none": "egyik sem",
|
||||
"videoinfo_watch_on_youTube": "YouTube-on megnézni",
|
||||
"videoinfo_youTube_embed_link": "beágyazva",
|
||||
"videoinfo_invidious_embed_link": "Beágyazás linkje",
|
||||
"download_subtitles": "Felirat – `x` (.vtt)",
|
||||
"user_created_playlists": "`x` létrehozott lejátszási lista",
|
||||
"user_saved_playlists": "`x` mentett lejátszási lista",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_dash": "DASH (adaptív minőség)",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_label": "DASH-videó minősége: ",
|
||||
"preferences_quality_option_small": "Rossz",
|
||||
"date": "Feltöltés dátuma",
|
||||
"Video unavailable": "A videó nem érhető el",
|
||||
"preferences_save_player_pos_label": "A videó folytatása onnan, ahol félbe lett hagyva: ",
|
||||
"preferences_show_nick_label": "Becenév mutatása felül: ",
|
||||
"Released under the AGPLv3 on Github.": "AGPLv3 licenc alapján a GitHubon",
|
||||
"3d": "3D-ben",
|
||||
"live": "Élőben",
|
||||
"filter": "Szűrők",
|
||||
"next_steps_error_message_refresh": "Újratöltés",
|
||||
"footer_donate_page": "Adakozás",
|
||||
"footer_source_code": "Forráskód",
|
||||
"footer_modfied_source_code": "Módosított forráskód",
|
||||
"adminprefs_modified_source_code_url_label": "A módosított forráskód repositoryjának URL-je:",
|
||||
"preferences_automatic_instance_redirect_label": "Váltáskor másik Invidious oldal automatikus betöltése (redirect.invidious.io töltődik, ha nem működne): ",
|
||||
"preferences_region_label": "Ország tartalmainak mutatása: ",
|
||||
"relevance": "Relevancia",
|
||||
"rating": "Pontszám",
|
||||
"content_type": "Típus",
|
||||
"today": "Mai napon",
|
||||
"channel": "Csatorna",
|
||||
"video": "Videó",
|
||||
"playlist": "Lejátszási lista",
|
||||
"creative_commons": "Creative Commons",
|
||||
"features": "Jellemzők",
|
||||
"sort": "Rendezés módja",
|
||||
"preferences_category_misc": "További beállítások",
|
||||
"%A %B %-d, %Y": "%Y. %B %-d %A",
|
||||
"long": "Hosszú (20 percnél hosszabb)",
|
||||
"year": "Ebben az évben",
|
||||
"hour": "Az elmúlt órában",
|
||||
"movie": "Film",
|
||||
"hdr": "HDR",
|
||||
"Broken? Try another Invidious Instance": "Nem működik? Próbáld meg egy másik Invidious oldallal.",
|
||||
"duration": "Játékidő",
|
||||
"next_steps_error_message": "Az alábbi lehetőségek állnak rendelkezésre: ",
|
||||
"Xhosa": "xhosza",
|
||||
"Switch Invidious Instance": "Váltás másik Invidious-oldalra",
|
||||
"Urdu": "urdu",
|
||||
"week": "Ezen a héten",
|
||||
"Invalid TFA code": "A kétlépéses hitelesítés kódja nem megfelelő",
|
||||
"footer_documentation": "Dokumentáció",
|
||||
"hd": "HD",
|
||||
"next_steps_error_message_go_to_youtube": "Ugrás a YouTube-ra",
|
||||
"show": "Műsor",
|
||||
"4k": "4K",
|
||||
"short": "Rövid (4 percnél nem több)",
|
||||
"month": "Ebben a hónapban",
|
||||
"subtitles": "Felirattal",
|
||||
"location": "Közelben",
|
||||
"crash_page_you_found_a_bug": "Úgy néz ki, találtál egy hibát az Invidiousban.",
|
||||
"crash_page_before_reporting": "Mielőtt jelentenéd a hibát:",
|
||||
"crash_page_read_the_faq": "olvasd el a <a href=\"`x`\">Gyakran Ismételt Kérdéseket (GYIK)</a>",
|
||||
"crash_page_search_issue": "járj utána a <a href=\"`x`\">már meglévő issue-knak a GitHubon</a>",
|
||||
"crash_page_switch_instance": "válts át <a href=\"`x`\">másik Invidious-oldalra</a>",
|
||||
"crash_page_refresh": "<a href=\"`x`\">töltsd újra</a> az oldalt",
|
||||
"crash_page_report_issue": "Ha a fentiek után nem jutottál eredményre, akkor <a href=\"`x`\">nyiss egy új issue-t a GitHubon</a> (lehetőleg angol nyelven írj) és másold be pontosan a lenti szöveget (ezt nem kell lefordítani):",
|
||||
"Cantonese (Hong Kong)": "kantoni (Hongkong)",
|
||||
"Chinese": "kínai",
|
||||
"Chinese (China)": "kínai (Kína)",
|
||||
"Chinese (Hong Kong)": "kínai (Hongkong)",
|
||||
"Chinese (Taiwan)": "kínai (Tajvan)",
|
||||
"German (auto-generated)": "német (automatikusan generált)",
|
||||
"Interlingue": "interlingva",
|
||||
"Japanese (auto-generated)": "japán (automatikusan generált)",
|
||||
"Korean (auto-generated)": "koreai (automatikusan generált)",
|
||||
"Portuguese (Brazil)": "portugál (Brazília)",
|
||||
"Russian (auto-generated)": "orosz (automatikusan generált)",
|
||||
"Spanish (auto-generated)": "spanyol (automatikusan generált)",
|
||||
"Spanish (Mexico)": "spanyol (Mexikó)",
|
||||
"Spanish (Spain)": "spanyol (Spanyolország)",
|
||||
"English (United States)": "angol (Egyesült Államok)",
|
||||
"Portuguese (auto-generated)": "portugál (automatikusan generált)",
|
||||
"Turkish (auto-generated)": "török (automatikusan generált)",
|
||||
"English (United Kingdom)": "angol (Egyesült Királyság)",
|
||||
"Indonesian (auto-generated)": "indonéz (automatikusan generált)",
|
||||
"Italian (auto-generated)": "olasz (automatikusan generált)",
|
||||
"Dutch (auto-generated)": "holland (automatikusan generált)",
|
||||
"French (auto-generated)": "francia (automatikusan generált)",
|
||||
"Vietnamese (auto-generated)": "vietnámi (automatikusan generált)"
|
||||
}
|
||||
420
locales/id.json
Normal file
420
locales/id.json
Normal file
@@ -0,0 +1,420 @@
|
||||
{
|
||||
"generic_views_count_0": "{{count}} tampilan",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_playlists_count_0": "{{count}} daftar putar",
|
||||
"generic_subscribers_count_0": "{{count}} pelanggan",
|
||||
"generic_subscriptions_count_0": "{{count}} langganan",
|
||||
"LIVE": "SIARAN LANGSUNG",
|
||||
"Shared `x` ago": "Dibagikan `x` yang lalu",
|
||||
"Unsubscribe": "Batal Langganan",
|
||||
"Subscribe": "Berlangganan",
|
||||
"View channel on YouTube": "Lihat kanal di YouTube",
|
||||
"View playlist on YouTube": "Lihat daftar putar di YouTube",
|
||||
"newest": "terbaru",
|
||||
"oldest": "terlawas",
|
||||
"popular": "populer",
|
||||
"last": "terakhir",
|
||||
"Next page": "Halaman berikutnya",
|
||||
"Previous page": "Halaman sebelumnya",
|
||||
"Clear watch history?": "Bersihkan riwayat tontonan?",
|
||||
"New password": "Kata sandi baru",
|
||||
"New passwords must match": "Kata sandi baru harus cocok",
|
||||
"Cannot change password for Google accounts": "Tidak dapat mengganti kata sandi untuk akun Google",
|
||||
"Authorize token?": "Otorisasi token?",
|
||||
"Authorize token for `x`?": "Otorisasi token untuk `x`?",
|
||||
"Yes": "Ya",
|
||||
"No": "Tidak",
|
||||
"Import and Export Data": "Impor dan Ekspor Data",
|
||||
"Import": "Impor",
|
||||
"Import Invidious data": "Impor data Invidious",
|
||||
"Import YouTube subscriptions": "Impor langganan YouTube",
|
||||
"Import FreeTube subscriptions (.db)": "Impor langganan FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Impor langganan NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Impor data NewPipe (.zip)",
|
||||
"Export": "Ekspor",
|
||||
"Export subscriptions as OPML": "Ekspor langganan sebagai OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Ekspor langganan sebagai OPML (untuk NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Ekspor data sebagai JSON",
|
||||
"Delete account?": "Hapus akun?",
|
||||
"History": "Riwayat",
|
||||
"An alternative front-end to YouTube": "Sebuah alternatif layar depan untuk YouTube",
|
||||
"JavaScript license information": "Informasi lisensi JavaScript",
|
||||
"source": "sumber",
|
||||
"Log in": "Masuk",
|
||||
"Log in/register": "Masuk/Daftar",
|
||||
"Log in with Google": "Masuk dengan Google",
|
||||
"User ID": "ID Pengguna",
|
||||
"Password": "Kata Sandi",
|
||||
"Time (h:mm:ss):": "Waktu (j:mm:dd):",
|
||||
"Text CAPTCHA": "Teks CAPTCHA",
|
||||
"Image CAPTCHA": "Gambar CAPTCHA",
|
||||
"Sign In": "Masuk",
|
||||
"Register": "Daftar",
|
||||
"E-mail": "Surel",
|
||||
"Google verification code": "Kode verifikasi Google",
|
||||
"Preferences": "Preferensi",
|
||||
"preferences_category_player": "Preferensi pemutar",
|
||||
"preferences_video_loop_label": "Selalu ulangi: ",
|
||||
"preferences_autoplay_label": "Putar Otomatis: ",
|
||||
"preferences_continue_label": "Putar selanjutnya secara baku: ",
|
||||
"preferences_continue_autoplay_label": "Putar otomatis video berikutnya: ",
|
||||
"preferences_listen_label": "Dengarkan secara baku: ",
|
||||
"preferences_local_label": "Proksi video: ",
|
||||
"preferences_speed_label": "Kecepatan baku: ",
|
||||
"preferences_quality_label": "Kualitas video yang disukai: ",
|
||||
"preferences_volume_label": "Volume pemutar: ",
|
||||
"preferences_comments_label": "Komentar baku: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Takarir baku: ",
|
||||
"Fallback captions: ": "Takarir cadangan: ",
|
||||
"preferences_related_videos_label": "Tampilkan video terkait: ",
|
||||
"preferences_annotations_label": "Tampilkan anotasi secara baku: ",
|
||||
"preferences_extend_desc_label": "Perluas deskripsi video secara otomatis: ",
|
||||
"preferences_vr_mode_label": "Video interaktif 360°: ",
|
||||
"preferences_category_visual": "Preferensi visual",
|
||||
"preferences_player_style_label": "Gaya pemutar: ",
|
||||
"Dark mode: ": "Mode gelap: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "gelap",
|
||||
"light": "terang",
|
||||
"preferences_thin_mode_label": "Mode tipis: ",
|
||||
"preferences_category_misc": "Preferensi lainnya",
|
||||
"preferences_automatic_instance_redirect_label": "Pengalihan peladen otomatis (balik kembali ke redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Preferensi langganan",
|
||||
"preferences_annotations_subscribed_label": "Tampilkan anotasi secara baku untuk kanal yang dilanggan? ",
|
||||
"Redirect homepage to feed: ": "Arahkan kembali laman beranda ke umpan: ",
|
||||
"preferences_max_results_label": "Jumlah video ditampilkan di umpan: ",
|
||||
"preferences_sort_label": "Urutkan video berdasarkan: ",
|
||||
"published": "dipublikasi",
|
||||
"published - reverse": "dipublikasi - terbalik",
|
||||
"alphabetically": "menurut abjad",
|
||||
"alphabetically - reverse": "menurut abjad - terbalik",
|
||||
"channel name": "nama kanal",
|
||||
"channel name - reverse": "nama kanal - terbalik",
|
||||
"Only show latest video from channel: ": "Hanya tampilkan video terbaru dari kanal: ",
|
||||
"Only show latest unwatched video from channel: ": "Hanya tampilkan video belum ditonton terbaru dari kanal: ",
|
||||
"preferences_unseen_only_label": "Hanya tampilkan belum ditonton: ",
|
||||
"preferences_notifications_only_label": "Hanya tampilkan pemberitahuan (jika ada): ",
|
||||
"Enable web notifications": "Aktifkan pemberitahuan web",
|
||||
"`x` uploaded a video": "`x` mengunggah video",
|
||||
"`x` is live": "`x` sedang siaran langsung",
|
||||
"preferences_category_data": "Preferensi data",
|
||||
"Clear watch history": "Bersihkan riwayat tontonan",
|
||||
"Import/export data": "Impor/Ekspor data",
|
||||
"Change password": "Ganti kata sandi",
|
||||
"Manage subscriptions": "Atur langganan",
|
||||
"Manage tokens": "Atur token",
|
||||
"Watch history": "Riwayat tontonan",
|
||||
"Delete account": "Hapus akun",
|
||||
"preferences_category_admin": "Preferensi administrator",
|
||||
"preferences_default_home_label": "Laman beranda baku: ",
|
||||
"preferences_feed_menu_label": "Menu umpan: ",
|
||||
"preferences_show_nick_label": "Tampilkan nama panggilan di atas: ",
|
||||
"Top enabled: ": "Teratas diaktifkan: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA diaktifkan: ",
|
||||
"Login enabled: ": "Masuk diaktifkan: ",
|
||||
"Registration enabled: ": "Pendaftaran diaktifkan: ",
|
||||
"Report statistics: ": "Laporan statistik: ",
|
||||
"Save preferences": "Simpan preferensi",
|
||||
"Subscription manager": "Pengatur langganan",
|
||||
"Token manager": "Pengatur token",
|
||||
"Token": "Token",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"Import/export": "Impor/ekspor",
|
||||
"unsubscribe": "batal langganan",
|
||||
"revoke": "cabut",
|
||||
"Subscriptions": "Langganan",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} pemberitahuan belum dilihat",
|
||||
"search": "cari",
|
||||
"Log out": "Keluar",
|
||||
"Released under the AGPLv3 on Github.": "Dirilis di bawah AGPLv3 di Github.",
|
||||
"Source available here.": "Sumber tersedia di sini.",
|
||||
"View JavaScript license information.": "Tampilkan informasi lisensi JavaScript.",
|
||||
"View privacy policy.": "Lihat kebijakan privasi.",
|
||||
"Trending": "Sedang tren",
|
||||
"Public": "Publik",
|
||||
"Unlisted": "Tidak terdaftar",
|
||||
"Private": "Pribadi",
|
||||
"View all playlists": "Lihat semua daftar putar",
|
||||
"Updated `x` ago": "Diperbarui`x` lalu",
|
||||
"Delete playlist `x`?": "Hapus daftar putar `x`?",
|
||||
"Delete playlist": "Hapus daftar putar",
|
||||
"Create playlist": "Buat daftar putar",
|
||||
"Title": "Judul",
|
||||
"Playlist privacy": "Privasi daftar putar",
|
||||
"Editing playlist `x`": "Menyunting daftar putar `x`",
|
||||
"Show more": "Tampilkan lebih banyak",
|
||||
"Show less": "Tampilkan lebih sedikit",
|
||||
"Watch on YouTube": "Tonton di YouTube",
|
||||
"Switch Invidious Instance": "Ganti peladen Invidious",
|
||||
"Broken? Try another Invidious Instance": "Rusak? Coba peladen Invidious yang lain",
|
||||
"Hide annotations": "Sembunyikan anotasi",
|
||||
"Show annotations": "Tampilkan anotasi",
|
||||
"Genre: ": "Genre: ",
|
||||
"License: ": "Lisensi: ",
|
||||
"Family friendly? ": "Ramah keluarga? ",
|
||||
"Wilson score: ": "Skor Wilson: ",
|
||||
"Engagement: ": "Keterlibatan: ",
|
||||
"Whitelisted regions: ": "Wilayah daftar-putih: ",
|
||||
"Blacklisted regions: ": "Wilayah daftar-hitam: ",
|
||||
"Shared `x`": "Berbagi `x`",
|
||||
"Premieres in `x`": "Tayang dalam `x`",
|
||||
"Premieres `x`": "Tayang `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hai! Kelihatannya JavaScript kamu dimatikan. Klik di sini untuk melihat komentar, perlu diingat hal ini mungkin membutuhkan waktu sedikit lebih lama untuk dimuat.",
|
||||
"View YouTube comments": "Lihat komentar YouTube",
|
||||
"View more comments on Reddit": "Lihat lebih banyak komentar di Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Lihat`x` komentar",
|
||||
"": "Lihat`x` komentar"
|
||||
},
|
||||
"View Reddit comments": "Lihat komentar Reddit",
|
||||
"Hide replies": "Sembunyikan balasan",
|
||||
"Show replies": "Lihat balasan",
|
||||
"Incorrect password": "Kata sandi salah",
|
||||
"Quota exceeded, try again in a few hours": "Kuota penuh, coba lagi dalam beberapa jam",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Tidak dapat masuk, pastikan autentikasi dua-faktor (autentikator atau SMS) sudah nyala.",
|
||||
"Invalid TFA code": "Kode TFA tidak valid",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Gagal masuk. Ini mungkin disebabkan autentikasi dua-faktor tidak dinyalakan untuk akun Anda.",
|
||||
"Wrong answer": "Jawaban salah",
|
||||
"Erroneous CAPTCHA": "CAPTCHA salah",
|
||||
"CAPTCHA is a required field": "CAPTCHA perlu diisi",
|
||||
"User ID is a required field": "ID pengguna perlu diisi",
|
||||
"Password is a required field": "Kata sandi perlu diisi",
|
||||
"Wrong username or password": "Nama pengguna atau kata sandi salah",
|
||||
"Please sign in using 'Log in with Google'": "Harap masuk menggunakan 'Masuk dengan Google'",
|
||||
"Password cannot be empty": "Kata sandi tidak boleh kosong",
|
||||
"Password cannot be longer than 55 characters": "Kata sandi tidak boleh lebih dari 55 karakter",
|
||||
"Please log in": "Harap masuk",
|
||||
"Invidious Private Feed for `x`": "Umpan pribadi Invidious untuk`x`",
|
||||
"channel:`x`": "kanal:`x`",
|
||||
"Deleted or invalid channel": "Kanal terhapus atau tidak valid",
|
||||
"This channel does not exist.": "Kanal ini tidak ada.",
|
||||
"Could not get channel info.": "Tidak bisa mendapatkan info kanal.",
|
||||
"Could not fetch comments": "Tidak dapat memuat komentar",
|
||||
"comments_view_x_replies_0": "Lihat {{count}} balasan",
|
||||
"`x` ago": "`x` lalu",
|
||||
"Load more": "Muat lebih banyak",
|
||||
"comments_points_count_0": "{{count}} poin",
|
||||
"Could not create mix.": "Tidak dapat membuat mix.",
|
||||
"Empty playlist": "Daftar putar kosong",
|
||||
"Not a playlist.": "Bukan daftar putar.",
|
||||
"Playlist does not exist.": "Daftar putar tidak ada.",
|
||||
"Could not pull trending pages.": "Tidak bisa mendapatkan laman tren.",
|
||||
"Hidden field \"challenge\" is a required field": "Bidang \"tantangan\" tersembunyi wajib diisi",
|
||||
"Hidden field \"token\" is a required field": "Bidang \"token\" tersembunyi wajib diisi",
|
||||
"Erroneous challenge": "Tantangan salah",
|
||||
"Erroneous token": "Token salah",
|
||||
"No such user": "Tidak ada pengguna demikian",
|
||||
"Token is expired, please try again": "Token kadaluwarsa, harap coba lagi",
|
||||
"English": "Bahasa Inggris",
|
||||
"English (auto-generated)": "Bahasa Inggris (dibuat-otomatis)",
|
||||
"Afrikaans": "Bahasa Afrika",
|
||||
"Albanian": "Bahasa Albania",
|
||||
"Amharic": "Bahasa Amharik",
|
||||
"Arabic": "Bahasa arab",
|
||||
"Armenian": "Bahasa Armenia",
|
||||
"Azerbaijani": "Bahasa Azeri",
|
||||
"Bangla": "Bahasa Bangla",
|
||||
"Basque": "Bahasa Basque",
|
||||
"Belarusian": "Bahasa Belarusia",
|
||||
"Bosnian": "Bahasa Bosnia",
|
||||
"Bulgarian": "Bahasa Bulgaria",
|
||||
"Burmese": "Bahasa Birma",
|
||||
"Catalan": "Bahasa Catalan",
|
||||
"Cebuano": "Bahasa Cebu",
|
||||
"Chinese (Simplified)": "Bahasa Cina",
|
||||
"Chinese (Traditional)": "Bahasa Cina (Tradisonal)",
|
||||
"Corsican": "Bahasa Korsika",
|
||||
"Croatian": "Bahasa Kroasia",
|
||||
"Czech": "Bahasa Ceko",
|
||||
"Danish": "Bahasa Denmak",
|
||||
"Dutch": "Bahasa Belanda",
|
||||
"Esperanto": "Bahasa Esperanto",
|
||||
"Estonian": "Bahasa Estonia",
|
||||
"Filipino": "Bahasa Filipina",
|
||||
"Finnish": "Bahasa Finlandia",
|
||||
"French": "Bahasa Perancis",
|
||||
"Galician": "Bahasa Galisia",
|
||||
"Georgian": "Bahasa Georgia",
|
||||
"German": "Bahasa Jerman",
|
||||
"Greek": "Bahasa Yunani",
|
||||
"Gujarati": "Bahasa Gujarat",
|
||||
"Haitian Creole": "Bahasa Kreol Haiti",
|
||||
"Hausa": "Bahasa Hausa",
|
||||
"Hawaiian": "Bahasa Hawai",
|
||||
"Hebrew": "Bahasa Ibrani",
|
||||
"Hindi": "Bahasa Hindi",
|
||||
"Hmong": "Bahasa Hmong",
|
||||
"Hungarian": "Bahasa Hungaria",
|
||||
"Icelandic": "Bahasa Islandia",
|
||||
"Igbo": "Bahasa Igbo",
|
||||
"Indonesian": "Bahasa Indonesia",
|
||||
"Irish": "Bahasa Irlandia",
|
||||
"Italian": "Bahasa Italia",
|
||||
"Japanese": "Bahasa Jepang",
|
||||
"Javanese": "Bahasa Jawa",
|
||||
"Kannada": "Bahasa Kannada",
|
||||
"Kazakh": "Bahasa Kazakh",
|
||||
"Khmer": "Bahasa Khmer",
|
||||
"Korean": "Bahasa Korea",
|
||||
"Kurdish": "Bahasa Kurdistan",
|
||||
"Kyrgyz": "Bahasa Kirgiz",
|
||||
"Lao": "Bahasa Laos",
|
||||
"Latin": "Bahasa Latin",
|
||||
"Latvian": "Bahasa Latvia",
|
||||
"Lithuanian": "Bahasa Lithuania",
|
||||
"Luxembourgish": "Bahasa Luksemburg",
|
||||
"Macedonian": "Bahasa Makedonia",
|
||||
"Malagasy": "Bahasa Malagasi",
|
||||
"Malay": "Bahasa Melayu",
|
||||
"Malayalam": "Bahasa Malayalam",
|
||||
"Maltese": "Bahasa Malta",
|
||||
"Maori": "Bahasa Maori",
|
||||
"Marathi": "Bahasa Marathi",
|
||||
"Mongolian": "Bahasa Mongolia",
|
||||
"Nepali": "Bahasa Nepal",
|
||||
"Norwegian Bokmål": "Bahasa Norwegia Bokmål",
|
||||
"Nyanja": "Bahasa Chichewa",
|
||||
"Pashto": "Bahasa Pashtun",
|
||||
"Persian": "Bahasa Persia",
|
||||
"Polish": "Bahasa Polandia",
|
||||
"Portuguese": "Bahasa Portugis",
|
||||
"Punjabi": "Bahasa Punjabi",
|
||||
"Romanian": "Bahasa Romania",
|
||||
"Russian": "Bahasa Russia",
|
||||
"Samoan": "Bahasa Samoa",
|
||||
"Scottish Gaelic": "Bahasa Gaelik Skotlandia",
|
||||
"Serbian": "Bahasa Serbia",
|
||||
"Shona": "Bahasa Shona",
|
||||
"Sindhi": "Bahasa Sindhi",
|
||||
"Sinhala": "Bahasa Sinhala",
|
||||
"Slovak": "Bahasa Slovakia",
|
||||
"Slovenian": "Bahasa Slovenia",
|
||||
"Somali": "Bahasa Somalia",
|
||||
"Southern Sotho": "Bahasa Sesotho",
|
||||
"Spanish": "Bahasa Spanyol",
|
||||
"Spanish (Latin America)": "Bahasa Spanyol (Amerika Latin)",
|
||||
"Sundanese": "Bahasa Sunda",
|
||||
"Swahili": "Bahasa Swahili",
|
||||
"Swedish": "Bahasa Swedia",
|
||||
"Tajik": "Bahasa Tajik",
|
||||
"Tamil": "Bahasa Tamil",
|
||||
"Telugu": "Bahasa Telugu",
|
||||
"Thai": "Bahasa Thailand",
|
||||
"Turkish": "Bahasa Turki",
|
||||
"Ukrainian": "Bahasa Ukraina",
|
||||
"Urdu": "Bahasa Urdu",
|
||||
"Uzbek": "Bahasa Uzbek",
|
||||
"Vietnamese": "Bahasa Vietnam",
|
||||
"Welsh": "Bahasa Wales",
|
||||
"Western Frisian": "Bahasa Frisia Barat",
|
||||
"Xhosa": "Bahasa Xhosa",
|
||||
"Yiddish": "Bahasa Yiddi",
|
||||
"Yoruba": "Bahasa Yoruba",
|
||||
"Zulu": "Bahasa Zulu",
|
||||
"generic_count_years_0": "{{count}} tahun",
|
||||
"generic_count_months_0": "{{count}} bulan",
|
||||
"generic_count_weeks_0": "{{count}} pekan",
|
||||
"generic_count_days_0": "{{count}} hari",
|
||||
"generic_count_hours_0": "{{count}} jam",
|
||||
"generic_count_minutes_0": "{{count}} menit",
|
||||
"generic_count_seconds_0": "{{count}} detik",
|
||||
"Fallback comments: ": "Komentar alternatif: ",
|
||||
"Popular": "Populer",
|
||||
"Search": "Cari",
|
||||
"Top": "Teratas",
|
||||
"About": "Tentang",
|
||||
"Rating: ": "Penilaian: ",
|
||||
"preferences_locale_label": "Bahasa: ",
|
||||
"View as playlist": "Lihat sebagai daftar putar",
|
||||
"Default": "Baku",
|
||||
"Music": "Musik",
|
||||
"Gaming": "Permainan",
|
||||
"News": "Berita",
|
||||
"Movies": "Film",
|
||||
"Download": "Unduh",
|
||||
"Download as: ": "Unduh sebagai: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(disunting)",
|
||||
"YouTube comment permalink": "Tautan permanen komentar YouTube",
|
||||
"permalink": "tautan permanen",
|
||||
"`x` marked it with a ❤": "`x` telah ditandai dengan ❤",
|
||||
"Audio mode": "Mode audio",
|
||||
"Video mode": "Mode video",
|
||||
"Videos": "Video",
|
||||
"Playlists": "Daftar putar",
|
||||
"Community": "Komunitas",
|
||||
"relevance": "Relevansi",
|
||||
"rating": "Penilaian",
|
||||
"date": "Tanggal unggah",
|
||||
"views": "Jumlah ditonton",
|
||||
"content_type": "Tipe",
|
||||
"duration": "Durasi",
|
||||
"features": "Fitur",
|
||||
"sort": "Urut Berdasarkan",
|
||||
"hour": "Jam Terakhir",
|
||||
"today": "Hari Ini",
|
||||
"week": "Pekan Ini",
|
||||
"month": "Bulan Ini",
|
||||
"year": "Tahun Ini",
|
||||
"video": "Video",
|
||||
"channel": "Kanal",
|
||||
"playlist": "Daftar Putar",
|
||||
"movie": "Film",
|
||||
"show": "Pertunjukan/Acara",
|
||||
"hd": "HD",
|
||||
"subtitles": "Takarir",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Siaran Langsung",
|
||||
"4k": "4K",
|
||||
"location": "Lokasi",
|
||||
"hdr": "HDR",
|
||||
"filter": "Saring",
|
||||
"Current version: ": "Versi saat ini: ",
|
||||
"next_steps_error_message": "Setelah itu Anda harus mencoba: ",
|
||||
"next_steps_error_message_refresh": "Segarkan",
|
||||
"next_steps_error_message_go_to_youtube": "Buka YouTube",
|
||||
"footer_donate_page": "Donasi",
|
||||
"adminprefs_modified_source_code_url_label": "URL ke repositori kode sumber yang dimodifikasi",
|
||||
"footer_source_code": "Kode sumber",
|
||||
"footer_original_source_code": "Kode sumber yang asli",
|
||||
"short": "Pendek (< 4 menit)",
|
||||
"long": "Panjang (> 20 menit)",
|
||||
"footer_modfied_source_code": "Kode sumber yang dimodifikasi",
|
||||
"footer_documentation": "Dokumentasi",
|
||||
"preferences_region_label": "Konten dari negara: ",
|
||||
"preferences_quality_dash_label": "Kualitas video DASH yang disukai: ",
|
||||
"preferences_quality_option_medium": "Medium",
|
||||
"preferences_quality_option_small": "Rendah",
|
||||
"preferences_quality_dash_option_best": "Terbaik",
|
||||
"preferences_quality_dash_option_worst": "Terburuk",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Dibeli",
|
||||
"360": "360°",
|
||||
"none": "tidak ada",
|
||||
"videoinfo_watch_on_youTube": "Tonton di YouTube",
|
||||
"videoinfo_youTube_embed_link": "Tersemat",
|
||||
"videoinfo_invidious_embed_link": "Tautan Tersemat",
|
||||
"download_subtitles": "Takarir- `x` (.vtt)",
|
||||
"user_saved_playlists": "`x` daftar putar yang disimpan",
|
||||
"videoinfo_started_streaming_x_ago": "Mulai siaran `x` yang lalu",
|
||||
"user_created_playlists": "`x` daftar putar yang dibuat",
|
||||
"preferences_quality_option_dash": "DASH (kualitas adaptif)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_auto": "Otomatis",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"Video unavailable": "Video tidak tersedia",
|
||||
"preferences_save_player_pos_label": "Simpan posisi pemutaran: ",
|
||||
"crash_page_you_found_a_bug": "Sepertinya kamu telah menemukan masalah di invidious!",
|
||||
"crash_page_before_reporting": "Sebelum melaporkan masalah, pastikan anda memiliki:"
|
||||
}
|
||||
128
locales/is.json
128
locales/is.json
@@ -1,9 +1,4 @@
|
||||
{
|
||||
"`x` subscribers": "",
|
||||
"`x` videos": "",
|
||||
"`x` playlists": "",
|
||||
"`x` subscribers.": "`x` áskrifandar.",
|
||||
"`x` videos.": "`x` myndbönd.",
|
||||
"LIVE": "BEINT",
|
||||
"Shared `x` ago": "Deilt `x` síðan",
|
||||
"Unsubscribe": "Afskrá",
|
||||
@@ -53,35 +48,35 @@
|
||||
"E-mail": "Tölvupóstur",
|
||||
"Google verification code": "Google staðfestingarkóði",
|
||||
"Preferences": "Kjörstillingar",
|
||||
"Player preferences": "Kjörstillingar spilara",
|
||||
"Always loop: ": "Alltaf lykkja: ",
|
||||
"Autoplay: ": "Spila sjálfkrafa: ",
|
||||
"Play next by default: ": "Spila næst sjálfgefið: ",
|
||||
"Autoplay next video: ": "Spila næst sjálfkrafa: ",
|
||||
"Listen by default: ": "Hlusta sjálfgefið: ",
|
||||
"Proxy videos: ": "Proxy myndbönd? ",
|
||||
"Default speed: ": "Sjálfgefinn hraði: ",
|
||||
"Preferred video quality: ": "Æskilegt myndbands gæði: ",
|
||||
"Player volume: ": "Spilara hljóðstyrkur: ",
|
||||
"Default comments: ": "Sjálfgefin ummæli: ",
|
||||
"youtube": "youtube",
|
||||
"preferences_category_player": "Kjörstillingar spilara",
|
||||
"preferences_video_loop_label": "Alltaf lykkja: ",
|
||||
"preferences_autoplay_label": "Spila sjálfkrafa: ",
|
||||
"preferences_continue_label": "Spila næst sjálfgefið: ",
|
||||
"preferences_continue_autoplay_label": "Spila næst sjálfkrafa: ",
|
||||
"preferences_listen_label": "Hlusta sjálfgefið: ",
|
||||
"preferences_local_label": "Proxy myndbönd? ",
|
||||
"preferences_speed_label": "Sjálfgefinn hraði: ",
|
||||
"preferences_quality_label": "Æskilegt myndbands gæði: ",
|
||||
"preferences_volume_label": "Spilara hljóðstyrkur: ",
|
||||
"preferences_comments_label": "Sjálfgefin ummæli: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "reddit",
|
||||
"Default captions: ": "Sjálfgefin texti: ",
|
||||
"preferences_captions_label": "Sjálfgefin texti: ",
|
||||
"Fallback captions: ": "Varatextar: ",
|
||||
"Show related videos: ": "Sýna tengd myndbönd? ",
|
||||
"Show annotations by default: ": "Á að sýna glósur sjálfgefið? ",
|
||||
"Visual preferences": "Sjónrænar stillingar",
|
||||
"Player style: ": "",
|
||||
"preferences_related_videos_label": "Sýna tengd myndbönd? ",
|
||||
"preferences_annotations_label": "Á að sýna glósur sjálfgefið? ",
|
||||
"preferences_category_visual": "Sjónrænar stillingar",
|
||||
"preferences_player_style_label": "Spilara stíl: ",
|
||||
"Dark mode: ": "Myrkur ham: ",
|
||||
"Theme: ": "",
|
||||
"dark": "",
|
||||
"light": "",
|
||||
"Thin mode: ": "Þunnt ham: ",
|
||||
"Subscription preferences": "Áskriftarstillingar",
|
||||
"Show annotations by default for subscribed channels: ": "Á að sýna glósur sjálfgefið fyrir áskriftarrásir? ",
|
||||
"preferences_dark_mode_label": "Þema: ",
|
||||
"dark": "dimmt",
|
||||
"light": "ljóst",
|
||||
"preferences_thin_mode_label": "Þunnt ham: ",
|
||||
"preferences_category_subscription": "Áskriftarstillingar",
|
||||
"preferences_annotations_subscribed_label": "Á að sýna glósur sjálfgefið fyrir áskriftarrásir? ",
|
||||
"Redirect homepage to feed: ": "Endurbeina heimasíðu að straumi: ",
|
||||
"Number of videos shown in feed: ": "Fjöldi myndbanda sem sýndir eru í straumi: ",
|
||||
"Sort videos by: ": "Raða myndbönd eftir: ",
|
||||
"preferences_max_results_label": "Fjöldi myndbanda sem sýndir eru í straumi: ",
|
||||
"preferences_sort_label": "Raða myndbönd eftir: ",
|
||||
"published": "birt",
|
||||
"published - reverse": "birt - afturábak",
|
||||
"alphabetically": "í stafrófsröð",
|
||||
@@ -90,12 +85,12 @@
|
||||
"channel name - reverse": "heiti rásar - afturábak",
|
||||
"Only show latest video from channel: ": "Sýna aðeins nýjasta myndband frá rás: ",
|
||||
"Only show latest unwatched video from channel: ": "Sýna aðeins nýjasta óséð myndband frá rás: ",
|
||||
"Only show unwatched: ": "Sýna aðeins óséð: ",
|
||||
"Only show notifications (if there are any): ": "Sýna aðeins tilkynningar (ef einhverjar eru): ",
|
||||
"preferences_unseen_only_label": "Sýna aðeins óséð: ",
|
||||
"preferences_notifications_only_label": "Sýna aðeins tilkynningar (ef einhverjar eru): ",
|
||||
"Enable web notifications": "Virkja veftilkynningar",
|
||||
"`x` uploaded a video": "`x` hlóð upp myndband",
|
||||
"`x` is live": "`x` er í beinni",
|
||||
"Data preferences": "Gagnastillingar",
|
||||
"preferences_category_data": "Gagnastillingar",
|
||||
"Clear watch history": "Hreinsa áhorfssögu",
|
||||
"Import/export data": "Flytja inn/út gögn",
|
||||
"Change password": "Breyta lykilorði",
|
||||
@@ -103,9 +98,9 @@
|
||||
"Manage tokens": "Stjórna tákn",
|
||||
"Watch history": "Áhorfssögu",
|
||||
"Delete account": "Eyða reikningi",
|
||||
"Administrator preferences": "Kjörstillingar stjórnanda",
|
||||
"Default homepage: ": "Sjálfgefin heimasíða: ",
|
||||
"Feed menu: ": "Straum valmynd: ",
|
||||
"preferences_category_admin": "Kjörstillingar stjórnanda",
|
||||
"preferences_default_home_label": "Sjálfgefin heimasíða: ",
|
||||
"preferences_feed_menu_label": "Straum valmynd: ",
|
||||
"Top enabled: ": "Toppur virkur? ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA virk? ",
|
||||
"Login enabled: ": "Innskráning virk? ",
|
||||
@@ -113,55 +108,49 @@
|
||||
"Report statistics: ": "Skrá talnagögn? ",
|
||||
"Save preferences": "Vista stillingar",
|
||||
"Subscription manager": "Áskriftarstjóri",
|
||||
"`x` subscriptions": "",
|
||||
"`x` tokens": "",
|
||||
"Token manager": "Táknstjóri",
|
||||
"Token": "Tákn",
|
||||
"`x` subscriptions.": "`x` áskriftir.",
|
||||
"`x` tokens.": "`x` tákn.",
|
||||
"`x` unseen notifications": "",
|
||||
"Import/export": "Flytja inn/út",
|
||||
"unsubscribe": "afskrá",
|
||||
"revoke": "afturkalla",
|
||||
"Subscriptions": "Áskriftir",
|
||||
"`x` unseen notifications.": "`x` óséðar tilkynningar.",
|
||||
"search": "leita",
|
||||
"Log out": "Útskrá",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Útgefið undir AGPLv3 eftir Omar Roth.",
|
||||
"Source available here.": "Frumkóði aðgengilegur hér.",
|
||||
"View JavaScript license information.": "Skoða JavaScript leyfisupplýsingar.",
|
||||
"View privacy policy.": "Skoða meðferð persónuupplýsinga.",
|
||||
"Trending": "Vinsælt",
|
||||
"Public": "",
|
||||
"Public": "Opinbert",
|
||||
"Unlisted": "Óskráð",
|
||||
"Private": "",
|
||||
"View all playlists": "",
|
||||
"Updated `x` ago": "",
|
||||
"Delete playlist `x`?": "",
|
||||
"Delete playlist": "",
|
||||
"Create playlist": "",
|
||||
"Title": "",
|
||||
"Playlist privacy": "",
|
||||
"Editing playlist `x`": "",
|
||||
"Private": "Einka",
|
||||
"View all playlists": "Skoða alla spilunarlista",
|
||||
"Updated `x` ago": "Uppfært `x` síðann",
|
||||
"Delete playlist `x`?": "Eiða spilunarlista `x`?",
|
||||
"Delete playlist": "Eiða spilunarlista",
|
||||
"Create playlist": "Búa til spilunarlista",
|
||||
"Title": "Titill",
|
||||
"Playlist privacy": "Spilunarlista opinberri",
|
||||
"Editing playlist `x`": "Að breyta spilunarlista `x`",
|
||||
"Watch on YouTube": "Horfa á YouTube",
|
||||
"Hide annotations": "Fela glósur",
|
||||
"Show annotations": "Sýna glósur",
|
||||
"Genre: ": "Tegund: ",
|
||||
"License: ": "Notkunarleyfi: ",
|
||||
"Family friendly? ": "Fjölskylduvænt? ",
|
||||
"`x` views": "",
|
||||
"Wilson score: ": "Wilson stig: ",
|
||||
"Engagement: ": "Þátttöku: ",
|
||||
"Whitelisted regions: ": "Svæði á hvítum lista: ",
|
||||
"Blacklisted regions: ": "Svæði á svörtum lista: ",
|
||||
"Shared `x`": "Deilt `x`",
|
||||
"`x` views.": "`x` áhorf.",
|
||||
"Premieres in `x`": "Frumflutt eftir `x`",
|
||||
"Premieres `x`": "Frumflutt `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hæ! Lítur út eins og þú hafir slökkt á JavaScript. Smelltu hér til að skoða ummæli, hafðu í huga að þær geta tekið aðeins lengri tíma að hlaða.",
|
||||
"View YouTube comments": "Skoða YouTube ummæli",
|
||||
"View more comments on Reddit": "Skoða fleiri ummæli á Reddit",
|
||||
"View `x` comments": "Skoða `x` ummæli",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Skoða `x` ummæli",
|
||||
"": "Skoða `x` ummæli"
|
||||
},
|
||||
"View Reddit comments": "Skoða Reddit ummæli",
|
||||
"Hide replies": "Fela svör",
|
||||
"Show replies": "Sýna svör",
|
||||
@@ -180,18 +169,14 @@
|
||||
"Password cannot be empty": "Lykilorð má ekki vera autt",
|
||||
"Password cannot be longer than 55 characters": "Lykilorð má ekki vera lengra en 55 stafir",
|
||||
"Please log in": "Vinsamlegast skráðu þig inn",
|
||||
"View `x` replies": "",
|
||||
"Invidious Private Feed for `x`": "Invidious Persónulegur Straumur fyrir `x`",
|
||||
"channel:`x`": "rás:`x`",
|
||||
"`x` points": "",
|
||||
"Deleted or invalid channel": "Eytt eða ógild rás",
|
||||
"This channel does not exist.": "Þessi rás er ekki til.",
|
||||
"Could not get channel info.": "Ekki tókst að fá rásarupplýsingar.",
|
||||
"Could not fetch comments": "Ekki tókst að sækja ummæli",
|
||||
"View `x` replies.": "Skoða `x` svör.",
|
||||
"`x` ago": "`x` síðan",
|
||||
"Load more": "Hlaða meira",
|
||||
"`x` points.": "`x` stig.",
|
||||
"Could not create mix.": "Ekki tókst að búa til blöndu.",
|
||||
"Empty playlist": "Tómur spilunarlisti",
|
||||
"Not a playlist.": "Ekki spilunarlisti.",
|
||||
@@ -301,13 +286,6 @@
|
||||
"Turkish": "Tyrkneska",
|
||||
"Ukrainian": "Úkraníska",
|
||||
"Urdu": "Úrdú",
|
||||
"`x` years": "",
|
||||
"`x` months": "",
|
||||
"`x` weeks": "",
|
||||
"`x` days": "",
|
||||
"`x` hours": "",
|
||||
"`x` minutes": "",
|
||||
"`x` seconds": "",
|
||||
"Uzbek": "Úsbekíska",
|
||||
"Vietnamese": "Víetnamska",
|
||||
"Welsh": "Velska",
|
||||
@@ -316,22 +294,13 @@
|
||||
"Yiddish": "Jiddíska",
|
||||
"Yoruba": "Jórúba",
|
||||
"Zulu": "Zúlú",
|
||||
"`x` years.": "`x` ár.",
|
||||
"`x` months.": "`x` mánuði.",
|
||||
"`x` weeks.": "`x` vikur.",
|
||||
"`x` days.": "`x` dagar.",
|
||||
"`x` hours.": "`x` klukkustundir.",
|
||||
"`x` minutes.": "`x` mínútur.",
|
||||
"`x` seconds.": "`x` sekúndur.",
|
||||
"Fallback comments: ": "Vara ummæli: ",
|
||||
"Popular": "Vinsælt",
|
||||
"permalink": "",
|
||||
"Top": "Topp",
|
||||
"About": "Um",
|
||||
"Rating: ": "Einkunn: ",
|
||||
"Language: ": "Tungumál: ",
|
||||
"preferences_locale_label": "Tungumál: ",
|
||||
"View as playlist": "Skoða sem spilunarlista",
|
||||
"Community": "",
|
||||
"Default": "Sjálfgefið",
|
||||
"Music": "Tónlist",
|
||||
"Gaming": "Tólvuleikja",
|
||||
@@ -342,10 +311,13 @@
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(breytt)",
|
||||
"YouTube comment permalink": "YouTube ummæli varanlegur tengill",
|
||||
"permalink": "Varanlegur tengill",
|
||||
"`x` marked it with a ❤": "`x` merkti það með ❤",
|
||||
"Audio mode": "Hljóð ham",
|
||||
"Video mode": "Myndband ham",
|
||||
"Videos": "Myndbönd",
|
||||
"Playlists": "Spilunarlistar",
|
||||
"Current version: ": "Núverandi útgáfa: "
|
||||
"Community": "Samfélag",
|
||||
"Current version: ": "Núverandi útgáfa: ",
|
||||
"preferences_watch_history_label": "Virkja áhorfssögu: "
|
||||
}
|
||||
211
locales/it.json
211
locales/it.json
@@ -1,13 +1,10 @@
|
||||
{
|
||||
"`x` subscribers.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` iscritto",
|
||||
"": "`x` iscritti."
|
||||
},
|
||||
"`x` videos.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` video",
|
||||
"": "`x` video."
|
||||
},
|
||||
"`x` playlists": "`x` playlist",
|
||||
"generic_subscribers_count": "{{count}} iscritto",
|
||||
"generic_subscribers_count_plural": "{{count}} iscritti",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} video",
|
||||
"generic_playlists_count": "{{count}} playlist",
|
||||
"generic_playlists_count_plural": "{{count}} playlist",
|
||||
"LIVE": "IN DIRETTA",
|
||||
"Shared `x` ago": "Condiviso `x` fa",
|
||||
"Unsubscribe": "Disiscriviti",
|
||||
@@ -54,38 +51,38 @@
|
||||
"Image CAPTCHA": "Immagine CAPTCHA",
|
||||
"Sign In": "Accedi",
|
||||
"Register": "Registrati",
|
||||
"E-mail": "Email",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Codice di verifica Google",
|
||||
"Preferences": "Preferenze",
|
||||
"Player preferences": "Preferenze del riproduttore",
|
||||
"Always loop: ": "Ripeti sempre: ",
|
||||
"Autoplay: ": "Riproduzione automatica: ",
|
||||
"Play next by default: ": "Riproduzione successiva predefinita: ",
|
||||
"Autoplay next video: ": "Riproduci automaticamente il video successivo: ",
|
||||
"Listen by default: ": "Modalità solo audio predefinita: ",
|
||||
"Proxy videos: ": "Proxy per i video: ",
|
||||
"Default speed: ": "Velocità predefinita: ",
|
||||
"Preferred video quality: ": "Qualità video preferita: ",
|
||||
"Player volume: ": "Volume di riproduzione: ",
|
||||
"Default comments: ": "Origine dei commenti: ",
|
||||
"preferences_category_player": "Preferenze del riproduttore",
|
||||
"preferences_video_loop_label": "Ripeti sempre: ",
|
||||
"preferences_autoplay_label": "Riproduzione automatica: ",
|
||||
"preferences_continue_label": "Riproduzione successiva predefinita: ",
|
||||
"preferences_continue_autoplay_label": "Riproduci automaticamente il video successivo: ",
|
||||
"preferences_listen_label": "Modalità solo audio predefinita: ",
|
||||
"preferences_local_label": "Proxy per i video: ",
|
||||
"preferences_speed_label": "Velocità predefinita: ",
|
||||
"preferences_quality_label": "Qualità video preferita: ",
|
||||
"preferences_volume_label": "Volume di riproduzione: ",
|
||||
"preferences_comments_label": "Origine dei commenti: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "Sottotitoli predefiniti: ",
|
||||
"preferences_captions_label": "Sottotitoli predefiniti: ",
|
||||
"Fallback captions: ": "Sottotitoli alternativi: ",
|
||||
"Show related videos: ": "Mostra video correlati: ",
|
||||
"Show annotations by default: ": "Mostra le annotazioni in modo predefinito: ",
|
||||
"Visual preferences": "Preferenze grafiche",
|
||||
"Player style: ": "Stile riproduttore: ",
|
||||
"preferences_related_videos_label": "Mostra video correlati: ",
|
||||
"preferences_annotations_label": "Mostra le annotazioni in modo predefinito: ",
|
||||
"preferences_category_visual": "Preferenze grafiche",
|
||||
"preferences_player_style_label": "Stile riproduttore: ",
|
||||
"Dark mode: ": "Tema scuro: ",
|
||||
"Theme: ": "Tema: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "scuro",
|
||||
"light": "chiaro",
|
||||
"Thin mode: ": "Modalità per connessioni lente: ",
|
||||
"Subscription preferences": "Preferenze iscrizioni",
|
||||
"Show annotations by default for subscribed channels: ": "Mostrare annotazioni in modo predefinito per i canali sottoscritti: ",
|
||||
"preferences_thin_mode_label": "Modalità per connessioni lente: ",
|
||||
"preferences_category_subscription": "Preferenze iscrizioni",
|
||||
"preferences_annotations_subscribed_label": "Mostrare annotazioni in modo predefinito per i canali sottoscritti: ",
|
||||
"Redirect homepage to feed: ": "Reindirizza la pagina principale a quella delle iscrizioni: ",
|
||||
"Number of videos shown in feed: ": "Numero di video da mostrare nelle iscrizioni: ",
|
||||
"Sort videos by: ": "Ordina i video per: ",
|
||||
"preferences_max_results_label": "Numero di video da mostrare nelle iscrizioni: ",
|
||||
"preferences_sort_label": "Ordina i video per: ",
|
||||
"published": "data di pubblicazione",
|
||||
"published - reverse": "data di pubblicazione - decrescente",
|
||||
"alphabetically": "ordine alfabetico",
|
||||
@@ -94,12 +91,12 @@
|
||||
"channel name - reverse": "nome del canale - decrescente",
|
||||
"Only show latest video from channel: ": "Mostra solo il video più recente del canale: ",
|
||||
"Only show latest unwatched video from channel: ": "Mostra solo il video più recente non guardato del canale: ",
|
||||
"Only show unwatched: ": "Mostra solo i video non guardati: ",
|
||||
"Only show notifications (if there are any): ": "Mostra solo le notifiche (se presenti): ",
|
||||
"preferences_unseen_only_label": "Mostra solo i video non guardati: ",
|
||||
"preferences_notifications_only_label": "Mostra solo le notifiche (se presenti): ",
|
||||
"Enable web notifications": "Attiva le notifiche web",
|
||||
"`x` uploaded a video": "`x` ha caricato un video",
|
||||
"`x` is live": "`x` è in diretta",
|
||||
"Data preferences": "Preferenze dati",
|
||||
"preferences_category_data": "Preferenze dati",
|
||||
"Clear watch history": "Cancella la cronologia dei video guardati",
|
||||
"Import/export data": "Importazione/esportazione dati",
|
||||
"Change password": "Modifica password",
|
||||
@@ -107,9 +104,9 @@
|
||||
"Manage tokens": "Gestisci i gettoni",
|
||||
"Watch history": "Cronologia dei video",
|
||||
"Delete account": "Elimina l'account",
|
||||
"Administrator preferences": "Preferenze amministratore",
|
||||
"Default homepage: ": "Pagina principale predefinita: ",
|
||||
"Feed menu: ": "Menu iscrizioni: ",
|
||||
"preferences_category_admin": "Preferenze amministratore",
|
||||
"preferences_default_home_label": "Pagina principale predefinita: ",
|
||||
"preferences_feed_menu_label": "Menu iscrizioni: ",
|
||||
"Top enabled: ": "Top abilitato: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA attivati: ",
|
||||
"Login enabled: ": "Accesso attivato: ",
|
||||
@@ -119,25 +116,18 @@
|
||||
"Subscription manager": "Gestione delle iscrizioni",
|
||||
"Token manager": "Gestione dei gettoni",
|
||||
"Token": "Gettone",
|
||||
"`x` subscriptions.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` iscrizione",
|
||||
"": "`x` iscrizioni."
|
||||
},
|
||||
"`x` tokens.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` gettone",
|
||||
"": "`x` gettoni."
|
||||
},
|
||||
"generic_subscriptions_count": "{{count}} iscrizione",
|
||||
"generic_subscriptions_count_plural": "{{count}} iscrizioni",
|
||||
"tokens_count": "{{count}} gettone",
|
||||
"tokens_count_plural": "{{count}} gettoni",
|
||||
"Import/export": "Importa/esporta",
|
||||
"unsubscribe": "disiscriviti",
|
||||
"revoke": "revoca",
|
||||
"Subscriptions": "Iscrizioni",
|
||||
"`x` unseen notifications.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` notifica non visualizzata",
|
||||
"": "`x` notifiche non visualizzate."
|
||||
},
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notifica non visualizzata",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notifiche non visualizzate",
|
||||
"search": "Cerca",
|
||||
"Log out": "Esci",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Pubblicato con licenza AGPLv3 da Omar Roth.",
|
||||
"Source available here.": "Codice sorgente.",
|
||||
"View JavaScript license information.": "Guarda le informazioni di licenza del codice JavaScript.",
|
||||
"View privacy policy.": "Vedi la politica sulla privacy.",
|
||||
@@ -164,16 +154,17 @@
|
||||
"Whitelisted regions: ": "Regioni in lista bianca: ",
|
||||
"Blacklisted regions: ": "Regioni in lista nera: ",
|
||||
"Shared `x`": "Condiviso `x`",
|
||||
"`x` views.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizzazione",
|
||||
"": "`x` visualizzazioni."
|
||||
},
|
||||
"generic_views_count": "{{count}} visualizzazione",
|
||||
"generic_views_count_plural": "{{count}} visualizzazioni",
|
||||
"Premieres in `x`": "In anteprima in `x`",
|
||||
"Premieres `x`": "In anteprima `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Ciao! Sembra che tu abbia disattivato JavaScript. Clicca qui per visualizzare i commenti. Considera che potrebbe volerci più tempo.",
|
||||
"View YouTube comments": "Visualizza i commenti da YouTube",
|
||||
"View more comments on Reddit": "Visualizza più commenti su Reddit",
|
||||
"View `x` comments": "Visualizza `x` commenti",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Visualizza `x` commento",
|
||||
"": "Visualizza `x` commenti"
|
||||
},
|
||||
"View Reddit comments": "Visualizza i commenti da Reddit",
|
||||
"Hide replies": "Nascondi le risposte",
|
||||
"Show replies": "Mostra le risposte",
|
||||
@@ -188,7 +179,7 @@
|
||||
"User ID is a required field": "L'ID utente è obbligatorio",
|
||||
"Password is a required field": "La password è un campo obbligatorio",
|
||||
"Wrong username or password": "Nome utente o password errati",
|
||||
"Please sign in using 'Log in with Google'": "Per favore accedi con \"Entra con Google\"",
|
||||
"Please sign in using 'Log in with Google'": "Per favore accedi con «Entra con Google»",
|
||||
"Password cannot be empty": "La password non può essere vuota",
|
||||
"Password cannot be longer than 55 characters": "La password non può contenere più di 55 caratteri",
|
||||
"Please log in": "Per favore, accedi",
|
||||
@@ -198,24 +189,16 @@
|
||||
"This channel does not exist.": "Questo canale non esiste.",
|
||||
"Could not get channel info.": "Impossibile ottenere le informazioni del canale.",
|
||||
"Could not fetch comments": "Impossibile recuperare i commenti",
|
||||
"View `x` replies.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Visualizza `x` risposta",
|
||||
"": "Visualizza `x` risposte."
|
||||
},
|
||||
"`x` ago": "`x` fa",
|
||||
"Load more": "Carica altro",
|
||||
"`x` points.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` punto",
|
||||
"": "`x` punti."
|
||||
},
|
||||
"Could not create mix.": "Impossibile creare il mix.",
|
||||
"Empty playlist": "Playlist vuota",
|
||||
"Not a playlist.": "Non è una playlist.",
|
||||
"Playlist does not exist.": "La playlist non esiste.",
|
||||
"Could not pull trending pages.": "Impossibile recuperare le tendenze.",
|
||||
"Hidden field \"challenge\" is a required field": "Il campo nascosto \"challenge\" è obbligatorio",
|
||||
"Hidden field \"token\" is a required field": "Il campo nascosto \"token\" è obbligatorio",
|
||||
"Erroneous challenge": "Campo \"challenge\" non valido",
|
||||
"Hidden field \"token\" is a required field": "Il campo nascosto «token» è obbligatorio",
|
||||
"Erroneous challenge": "Campo «challenge» non valido",
|
||||
"Erroneous token": "Campo \"token\" non valido",
|
||||
"No such user": "Utente non valido",
|
||||
"Token is expired, please try again": "Gettone scaduto, riprova",
|
||||
@@ -288,7 +271,7 @@
|
||||
"Nepali": "Nepalese",
|
||||
"Norwegian Bokmål": "Norvegese",
|
||||
"Nyanja": "Nyanja",
|
||||
"Pashto": "Lingua pashtu",
|
||||
"Pashto": "Pashtu",
|
||||
"Persian": "Persiano",
|
||||
"Polish": "Polacco",
|
||||
"Portuguese": "Portoghese",
|
||||
@@ -325,40 +308,27 @@
|
||||
"Yiddish": "Yiddish",
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zulu",
|
||||
"`x` years.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` anno",
|
||||
"": "`x` anni."
|
||||
},
|
||||
"`x` months.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` mese",
|
||||
"": "`x` mesi."
|
||||
},
|
||||
"`x` weeks.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` settimana",
|
||||
"": "`x` settimane."
|
||||
},
|
||||
"`x` days.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` giorno",
|
||||
"": "`x` giorni."
|
||||
},
|
||||
"`x` hours.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` ora",
|
||||
"": "`x` ore."
|
||||
},
|
||||
"`x` minutes.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuto",
|
||||
"": "`x` minuti."
|
||||
},
|
||||
"`x` seconds.": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` secondo",
|
||||
"": "`x` secondi."
|
||||
},
|
||||
"generic_count_years": "{{count}} anno",
|
||||
"generic_count_years_plural": "{{count}} anni",
|
||||
"generic_count_months": "{{count}} mese",
|
||||
"generic_count_months_plural": "{{count}} mesi",
|
||||
"generic_count_weeks": "{{count}} settimana",
|
||||
"generic_count_weeks_plural": "{{count}} settimane",
|
||||
"generic_count_days": "{{count}} giorno",
|
||||
"generic_count_days_plural": "{{count}} giorni",
|
||||
"generic_count_hours": "{{count}} ora",
|
||||
"generic_count_hours_plural": "{{count}} ore",
|
||||
"generic_count_minutes": "{{count}} minuto",
|
||||
"generic_count_minutes_plural": "{{count}} minuti",
|
||||
"generic_count_seconds": "{{count}} secondo",
|
||||
"generic_count_seconds_plural": "{{count}} secondi",
|
||||
"Fallback comments: ": "Commenti alternativi: ",
|
||||
"Popular": "Popolare",
|
||||
"Search": "Cerca",
|
||||
"Top": "Top",
|
||||
"About": "Al riguardo",
|
||||
"Rating: ": "Punteggio: ",
|
||||
"Language: ": "Lingua: ",
|
||||
"preferences_locale_label": "Lingua: ",
|
||||
"View as playlist": "Vedi come playlist",
|
||||
"Default": "Predefinito",
|
||||
"Music": "Musica",
|
||||
@@ -377,5 +347,50 @@
|
||||
"Videos": "Video",
|
||||
"Playlists": "Playlist",
|
||||
"Community": "Comunità",
|
||||
"Current version: ": "Versione attuale: "
|
||||
"relevance": "Pertinenza",
|
||||
"rating": "Valutazione",
|
||||
"date": "Data di caricamento",
|
||||
"views": "Numero di visualizzazioni",
|
||||
"content_type": "Tipo",
|
||||
"duration": "Durata",
|
||||
"features": "Caratteristiche",
|
||||
"sort": "Ordina per",
|
||||
"hour": "Ultima ora",
|
||||
"today": "Oggi",
|
||||
"week": "Questa settimana",
|
||||
"month": "Questo mese",
|
||||
"year": "Quest'anno",
|
||||
"video": "Video",
|
||||
"channel": "Canale",
|
||||
"playlist": "Playlist",
|
||||
"movie": "Film",
|
||||
"hd": "AD",
|
||||
"subtitles": "Sottotitoli / CC",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "In diretta",
|
||||
"4k": "4K",
|
||||
"location": "Posizione",
|
||||
"hdr": "HDR",
|
||||
"filter": "Filtra",
|
||||
"Current version: ": "Versione attuale: ",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"360": "360°",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Released under the AGPLv3 on Github.": "Rilasciato su Github con licenza AGPLv3.",
|
||||
"preferences_quality_option_medium": "Media",
|
||||
"preferences_quality_option_small": "Piccola",
|
||||
"preferences_quality_dash_option_best": "Migliore",
|
||||
"preferences_quality_dash_option_worst": "Peggiore",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_label": "Qualità video DASH preferita ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_auto": "Automatica"
|
||||
}
|
||||
246
locales/ja.json
246
locales/ja.json
@@ -1,16 +1,9 @@
|
||||
{
|
||||
"`x` subscribers": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 人の登録者",
|
||||
"": "`x` 人の登録者"
|
||||
},
|
||||
"`x` videos": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個の動画",
|
||||
"": "`x` 個の動画"
|
||||
},
|
||||
"`x` playlists": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個の再生リスト",
|
||||
"": "`x` 個の再生リスト"
|
||||
},
|
||||
"generic_views_count_0": "{{count}} 回視聴",
|
||||
"generic_videos_count_0": "{{count}} 個の動画",
|
||||
"generic_playlists_count_0": "{{count}} 個の再生リスト",
|
||||
"generic_subscribers_count_0": "{{count}} 人の登録者",
|
||||
"generic_subscriptions_count_0": "{{count}} 個の登録チャンネル",
|
||||
"LIVE": "ライブ",
|
||||
"Shared `x` ago": "`x`前に共有",
|
||||
"Unsubscribe": "登録解除",
|
||||
@@ -44,7 +37,7 @@
|
||||
"Export data as JSON": "データを JSON でエクスポート",
|
||||
"Delete account?": "アカウントを削除しますか?",
|
||||
"History": "履歴",
|
||||
"An alternative front-end to YouTube": "YouTube の代わりとなる新しいフロントエンド",
|
||||
"An alternative front-end to YouTube": "YouTube 向けの代用フロントエンド",
|
||||
"JavaScript license information": "JavaScript ライセンス情報",
|
||||
"source": "ソース",
|
||||
"Log in": "ログイン",
|
||||
@@ -60,35 +53,39 @@
|
||||
"E-mail": "メールアドレス",
|
||||
"Google verification code": "Google 認証コード",
|
||||
"Preferences": "設定",
|
||||
"Player preferences": "プレイヤー設定",
|
||||
"Always loop: ": "常にループ: ",
|
||||
"Autoplay: ": "自動再生: ",
|
||||
"Play next by default: ": "デフォルトで次を再生: ",
|
||||
"Autoplay next video: ": "次の動画を自動再生: ",
|
||||
"Listen by default: ": "デフォルトでオーディオモードを使用: ",
|
||||
"Proxy videos: ": "動画をプロキシーに通す: ",
|
||||
"Default speed: ": "デフォルトの再生速度: ",
|
||||
"Preferred video quality: ": "優先する画質: ",
|
||||
"Player volume: ": "プレイヤーの音量: ",
|
||||
"Default comments: ": "デフォルトのコメント: ",
|
||||
"youtube": "youtube",
|
||||
"reddit": "reddit",
|
||||
"Default captions: ": "デフォルトの字幕: ",
|
||||
"preferences_category_player": "プレイヤー設定",
|
||||
"preferences_video_loop_label": "常にループ: ",
|
||||
"preferences_autoplay_label": "自動再生: ",
|
||||
"preferences_continue_label": "デフォルトで次を再生: ",
|
||||
"preferences_continue_autoplay_label": "次の動画を自動再生: ",
|
||||
"preferences_listen_label": "デフォルトでオーディオモードを使用: ",
|
||||
"preferences_local_label": "動画をプロキシーに通す: ",
|
||||
"preferences_speed_label": "デフォルトの再生速度: ",
|
||||
"preferences_quality_label": "優先する画質: ",
|
||||
"preferences_volume_label": "プレイヤーの音量: ",
|
||||
"preferences_comments_label": "デフォルトのコメント: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "デフォルトの字幕: ",
|
||||
"Fallback captions: ": "フォールバック時の字幕: ",
|
||||
"Show related videos: ": "関連動画を表示: ",
|
||||
"Show annotations by default: ": "デフォルトでアノテーションを表示: ",
|
||||
"Visual preferences": "外観設定",
|
||||
"Player style: ": "プレイヤースタイル: ",
|
||||
"preferences_related_videos_label": "関連動画を表示: ",
|
||||
"preferences_annotations_label": "デフォルトでアノテーションを表示: ",
|
||||
"preferences_extend_desc_label": "動画の説明文を自動的に拡張: ",
|
||||
"preferences_vr_mode_label": "対話的な360°動画: ",
|
||||
"preferences_category_visual": "外観設定",
|
||||
"preferences_player_style_label": "プレイヤースタイル: ",
|
||||
"Dark mode: ": "ダークモード: ",
|
||||
"Theme: ": "テーマ: ",
|
||||
"preferences_dark_mode_label": "テーマ: ",
|
||||
"dark": "ダーク",
|
||||
"light": "ライト",
|
||||
"Thin mode: ": "最小モード: ",
|
||||
"Subscription preferences": "登録チャンネル設定",
|
||||
"Show annotations by default for subscribed channels: ": "デフォルトで登録チャンネルのアノテーションを表示しますか? ",
|
||||
"preferences_thin_mode_label": "最小モード: ",
|
||||
"preferences_category_misc": "雑設定",
|
||||
"preferences_automatic_instance_redirect_label": "自動的なインスタンスの移転(redirect.invidious.ioにフォールバック): ",
|
||||
"preferences_category_subscription": "登録チャンネル設定",
|
||||
"preferences_annotations_subscribed_label": "デフォルトで登録チャンネルのアノテーションを表示しますか? ",
|
||||
"Redirect homepage to feed: ": "ホームからフィードにリダイレクト: ",
|
||||
"Number of videos shown in feed: ": "フィードに表示する動画の量: ",
|
||||
"Sort videos by: ": "動画を並び替え: ",
|
||||
"preferences_max_results_label": "フィードに表示する動画の量: ",
|
||||
"preferences_sort_label": "動画を並び替え: ",
|
||||
"published": "投稿日",
|
||||
"published - reverse": "投稿日 - 逆順",
|
||||
"alphabetically": "アルファベット",
|
||||
@@ -97,12 +94,12 @@
|
||||
"channel name - reverse": "チャンネル名 - 逆順",
|
||||
"Only show latest video from channel: ": "チャンネルの最新動画のみを表示: ",
|
||||
"Only show latest unwatched video from channel: ": "チャンネルの最新未視聴動画のみを表示: ",
|
||||
"Only show unwatched: ": "未視聴のみを表示: ",
|
||||
"Only show notifications (if there are any): ": "通知のみを表示 (ある場合): ",
|
||||
"preferences_unseen_only_label": "未視聴のみを表示: ",
|
||||
"preferences_notifications_only_label": "通知のみを表示 (ある場合): ",
|
||||
"Enable web notifications": "ウェブ通知を有効化",
|
||||
"`x` uploaded a video": "`x` が動画を投稿しました",
|
||||
"`x` is live": "`x` がライブ中です",
|
||||
"Data preferences": "データ設定",
|
||||
"preferences_category_data": "データ設定",
|
||||
"Clear watch history": "再生履歴の削除",
|
||||
"Import/export data": "データのインポート/エクスポート",
|
||||
"Change password": "パスワードを変更",
|
||||
@@ -110,10 +107,11 @@
|
||||
"Manage tokens": "トークンを管理",
|
||||
"Watch history": "再生履歴",
|
||||
"Delete account": "アカウントを削除",
|
||||
"Administrator preferences": "管理者設定",
|
||||
"Default homepage: ": "デフォルトのホーム: ",
|
||||
"Feed menu: ": "フィードメニュー: ",
|
||||
"Top enabled: ": "Top enabled: ",
|
||||
"preferences_category_admin": "管理者設定",
|
||||
"preferences_default_home_label": "デフォルトのホーム: ",
|
||||
"preferences_feed_menu_label": "フィードメニュー: ",
|
||||
"preferences_show_nick_label": "ニックネームを一番上に表示する: ",
|
||||
"Top enabled: ": "トップページを有効化: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA を有効化: ",
|
||||
"Login enabled: ": "ログインを有効化: ",
|
||||
"Registration enabled: ": "登録を有効化: ",
|
||||
@@ -122,28 +120,18 @@
|
||||
"Subscription manager": "登録チャンネルマネージャー",
|
||||
"Token manager": "トークンマネージャー",
|
||||
"Token": "トークン",
|
||||
"`x` subscriptions": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個の登録チャンネル",
|
||||
"": "`x` 個の登録チャンネル"
|
||||
},
|
||||
"`x` tokens": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個のトークン",
|
||||
"": "`x` 個のトークン"
|
||||
},
|
||||
"tokens_count_0": "{{count}} 個のトークン",
|
||||
"Import/export": "インポート/エクスポート",
|
||||
"unsubscribe": "登録解除",
|
||||
"revoke": "revoke",
|
||||
"revoke": "取り消す",
|
||||
"Subscriptions": "登録チャンネル",
|
||||
"`x` unseen notifications": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個の未読通知",
|
||||
"": "`x` 個の未読通知"
|
||||
},
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} 個の未読通知",
|
||||
"search": "検索",
|
||||
"Log out": "ログアウト",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Omar Roth によって AGPLv3 でリリースされています。",
|
||||
"Released under the AGPLv3 on Github.": "GitHub 上で AGPLv3 の元で公開されています。",
|
||||
"Source available here.": "ソースはここで閲覧可能です。",
|
||||
"View JavaScript license information.": "JavaScript ライセンス情報を見る。",
|
||||
"View privacy policy.": "プライバシーポリシーを見る。",
|
||||
"View JavaScript license information.": "JavaScript ライセンス情報",
|
||||
"View privacy policy.": "プライバシーポリシー",
|
||||
"Trending": "急上昇",
|
||||
"Public": "公開",
|
||||
"Unlisted": "限定公開",
|
||||
@@ -156,23 +144,23 @@
|
||||
"Title": "タイトル",
|
||||
"Playlist privacy": "再生リストのプライバシー",
|
||||
"Editing playlist `x`": "再生リスト `x` を編集中",
|
||||
"Show more": "表示を増やす",
|
||||
"Show less": "表示を減らす",
|
||||
"Watch on YouTube": "YouTube で視聴",
|
||||
"Switch Invidious Instance": "Invidiousインスタンスの変更",
|
||||
"Broken? Try another Invidious Instance": "壊れる?違うInvidiousインスタンスを試してみる",
|
||||
"Hide annotations": "アノテーションを隠す",
|
||||
"Show annotations": "アノテーションを表示",
|
||||
"Genre: ": "ジャンル: ",
|
||||
"License: ": "ライセンス: ",
|
||||
"Family friendly? ": "家族向け? ",
|
||||
"Family friendly? ": "家族向け: ",
|
||||
"Wilson score: ": "ウィルソンスコア: ",
|
||||
"Engagement: ": "エンゲージメント: ",
|
||||
"Whitelisted regions: ": "ホワイトリストの地域: ",
|
||||
"Blacklisted regions: ": "ブラックリストの地域: ",
|
||||
"Shared `x`": "`x`に共有",
|
||||
"`x` views": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 回視聴",
|
||||
"": "`x` 回視聴"
|
||||
},
|
||||
"Premieres in `x`": "Premieres in `x`",
|
||||
"Premieres `x`": "Premieres `x`",
|
||||
"Premieres in `x`": "`x`後にプレミア公開",
|
||||
"Premieres `x`": "`x`にプレミア公開",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "やあ!君は JavaScript を無効にしているのかな?ここをクリックしてコメントを見れるけど、読み込みには少し時間がかかることがあるのを覚えておいてね。",
|
||||
"View YouTube comments": "YouTube のコメントを見る",
|
||||
"View more comments on Reddit": "Reddit でコメントをもっと見る",
|
||||
@@ -201,23 +189,17 @@
|
||||
"Invidious Private Feed for `x`": "`x` の Invidious プライベートフィード",
|
||||
"channel:`x`": "チャンネル:`x`",
|
||||
"Deleted or invalid channel": "削除済みまたは無効なチャンネルです",
|
||||
"This channel does not exist.": "このチャンネルは存在していません",
|
||||
"This channel does not exist.": "このチャンネルは存在しません。",
|
||||
"Could not get channel info.": "チャンネル情報を取得できませんでした。",
|
||||
"Could not fetch comments": "コメントを取得できませんでした",
|
||||
"View `x` replies": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 件の返信を見る",
|
||||
"": "`x` 件の返信を見る"
|
||||
},
|
||||
"comments_view_x_replies_0": "{{count}} 件の返信を見る",
|
||||
"`x` ago": "`x`前",
|
||||
"Load more": "もっと読み込む",
|
||||
"`x` points": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` ポイント",
|
||||
"": "`x` ポイント"
|
||||
},
|
||||
"comments_points_count_0": "{{count}} ポイント",
|
||||
"Could not create mix.": "ミックスを作成できませんでした。",
|
||||
"Empty playlist": "空の再生リスト",
|
||||
"Not a playlist.": "再生リストではありません。",
|
||||
"Playlist does not exist.": "再生リストが存在していません・",
|
||||
"Playlist does not exist.": "再生リストが存在しません。",
|
||||
"Could not pull trending pages.": "急上昇ページを取得できませんでした。",
|
||||
"Hidden field \"challenge\" is a required field": "非表示項目 \"challenge\" は必須項目です",
|
||||
"Hidden field \"token\" is a required field": "非表示項目 \"token\" は必須項目です",
|
||||
@@ -248,7 +230,7 @@
|
||||
"Czech": "チェコ語",
|
||||
"Danish": "デンマーク語",
|
||||
"Dutch": "オランダ語",
|
||||
"Esperanto": "エスペラント語",
|
||||
"Esperanto": "エスペラント",
|
||||
"Estonian": "エストニア語",
|
||||
"Filipino": "フィリピン語",
|
||||
"Finnish": "フィンランド語",
|
||||
@@ -292,7 +274,7 @@
|
||||
"Marathi": "マラーティー語",
|
||||
"Mongolian": "モンゴル語",
|
||||
"Nepali": "ネパール語",
|
||||
"Norwegian Bokmål": "ノルウェー語",
|
||||
"Norwegian Bokmål": "ノルウェー語 (ブークモール)",
|
||||
"Nyanja": "チェワ語",
|
||||
"Pashto": "パシュトー語",
|
||||
"Persian": "ペルシア語",
|
||||
@@ -331,40 +313,20 @@
|
||||
"Yiddish": "イディッシュ語",
|
||||
"Yoruba": "ヨルバ語",
|
||||
"Zulu": "ズール語",
|
||||
"`x` years": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`年",
|
||||
"": "`x`年"
|
||||
},
|
||||
"`x` months": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`月",
|
||||
"": "`x`月"
|
||||
},
|
||||
"`x` weeks": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`週",
|
||||
"": "`x`週"
|
||||
},
|
||||
"`x` days": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`日",
|
||||
"": "`x`日"
|
||||
},
|
||||
"`x` hours": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`時間",
|
||||
"": "`x`時間"
|
||||
},
|
||||
"`x` minutes": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`分",
|
||||
"": "`x`分"
|
||||
},
|
||||
"`x` seconds": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`秒",
|
||||
"": "`x`秒"
|
||||
},
|
||||
"generic_count_years_0": "{{count}}年",
|
||||
"generic_count_months_0": "{{count}}ヶ月",
|
||||
"generic_count_weeks_0": "{{count}}週",
|
||||
"generic_count_days_0": "{{count}}日",
|
||||
"generic_count_hours_0": "{{count}}時間",
|
||||
"generic_count_minutes_0": "{{count}}分",
|
||||
"generic_count_seconds_0": "{{count}}秒",
|
||||
"Fallback comments: ": "フォールバック時のコメント: ",
|
||||
"Popular": "人気",
|
||||
"Search": "検索",
|
||||
"Top": "トップ",
|
||||
"About": "このサービスについて",
|
||||
"Rating: ": "評価: ",
|
||||
"Language: ": "言語: ",
|
||||
"preferences_locale_label": "言語: ",
|
||||
"View as playlist": "再生リストで見る",
|
||||
"Default": "デフォルト",
|
||||
"Music": "音楽",
|
||||
@@ -383,5 +345,71 @@
|
||||
"Videos": "動画",
|
||||
"Playlists": "プレイリスト",
|
||||
"Community": "コミュニティ",
|
||||
"Current version: ": "現在のバージョン: "
|
||||
"relevance": "関連",
|
||||
"rating": "評価",
|
||||
"date": "時刻",
|
||||
"views": "再生回数",
|
||||
"content_type": "コンテンツの種類",
|
||||
"duration": "再生時間",
|
||||
"features": "機能",
|
||||
"sort": "順番",
|
||||
"hour": "1時間前",
|
||||
"today": "今日",
|
||||
"week": "今週",
|
||||
"month": "今月",
|
||||
"year": "今年",
|
||||
"video": "動画",
|
||||
"channel": "チャンネル",
|
||||
"playlist": "再生リスト",
|
||||
"movie": "映画",
|
||||
"show": "番組",
|
||||
"hd": "HD",
|
||||
"subtitles": "字幕",
|
||||
"creative_commons": "クリエイティブ・コモンズ",
|
||||
"3d": "3D",
|
||||
"live": "生配信",
|
||||
"4k": "4K",
|
||||
"location": "場所",
|
||||
"hdr": "HDR",
|
||||
"filter": "フィルタ",
|
||||
"Current version: ": "現在のバージョン: ",
|
||||
"next_steps_error_message": "下記のものを試して下さい: ",
|
||||
"next_steps_error_message_refresh": "再読込",
|
||||
"next_steps_error_message_go_to_youtube": "YouTubeへ",
|
||||
"short": "4 分未満",
|
||||
"footer_documentation": "文書",
|
||||
"footer_source_code": "ソースコード",
|
||||
"footer_original_source_code": "ソースコード(元)",
|
||||
"footer_modfied_source_code": "ソースコード(編集)",
|
||||
"adminprefs_modified_source_code_url_label": "編集したソースコードのレポジトリーURL",
|
||||
"long": "20 分以上",
|
||||
"preferences_region_label": "地域: ",
|
||||
"footer_donate_page": "寄付する",
|
||||
"preferences_quality_dash_label": "優先するDash画質 : ",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "中",
|
||||
"preferences_quality_option_small": "小",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_option_auto": "自動",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"videoinfo_youTube_embed_link": "埋め込み",
|
||||
"videoinfo_invidious_embed_link": "埋め込みリンク",
|
||||
"none": "なし",
|
||||
"download_subtitles": "字幕 - `x` (.vtt)",
|
||||
"purchased": "購入済み",
|
||||
"preferences_quality_option_dash": "DASH (適切な品質)",
|
||||
"preferences_quality_dash_option_worst": "最悪",
|
||||
"preferences_quality_dash_option_best": "最高",
|
||||
"videoinfo_started_streaming_x_ago": "`x`分前に配信を開始",
|
||||
"videoinfo_watch_on_youTube": "YouTube上で見る",
|
||||
"user_created_playlists": "`x`が作成したプレイリスト",
|
||||
"Video unavailable": "ビデオは利用できません"
|
||||
}
|
||||
386
locales/ko.json
Normal file
386
locales/ko.json
Normal file
@@ -0,0 +1,386 @@
|
||||
{
|
||||
"preferences_sort_label": "동영상 정렬 기준: ",
|
||||
"preferences_max_results_label": "피드에 표시된 동영상 수: ",
|
||||
"Redirect homepage to feed: ": "피드로 홈페이지 리디렉션: ",
|
||||
"preferences_annotations_subscribed_label": "구독한 채널에 기본적으로 특수효과를 표시하시겠습니까? ",
|
||||
"preferences_category_subscription": "구독 설정",
|
||||
"preferences_automatic_instance_redirect_label": "자동 인스턴스 리디렉션 (redirect.invidious.io로 대체): ",
|
||||
"preferences_thin_mode_label": "단순 모드: ",
|
||||
"light": "라이트",
|
||||
"dark": "다크",
|
||||
"preferences_dark_mode_label": "테마: ",
|
||||
"Dark mode: ": "다크 모드: ",
|
||||
"preferences_player_style_label": "플레이어 스타일: ",
|
||||
"preferences_category_visual": "시각 설정",
|
||||
"preferences_vr_mode_label": "인터랙티브 360도 비디오: ",
|
||||
"preferences_extend_desc_label": "자동으로 비디오 설명 확장: ",
|
||||
"preferences_annotations_label": "기본적으로 주석 표시: ",
|
||||
"preferences_related_videos_label": "관련 동영상 보기: ",
|
||||
"Fallback captions: ": "대체 자막: ",
|
||||
"preferences_captions_label": "기본 자막: ",
|
||||
"reddit": "Reddit",
|
||||
"youtube": "YouTube",
|
||||
"preferences_comments_label": "기본 댓글: ",
|
||||
"preferences_volume_label": "플레이어 볼륨: ",
|
||||
"preferences_quality_label": "선호하는 비디오 품질: ",
|
||||
"preferences_speed_label": "기본 속도: ",
|
||||
"preferences_local_label": "비디오를 프록시: ",
|
||||
"preferences_listen_label": "기본적으로 듣기: ",
|
||||
"preferences_continue_autoplay_label": "다음 동영상 자동재생 ",
|
||||
"preferences_continue_label": "기본적으로 다음 재생: ",
|
||||
"preferences_autoplay_label": "자동재생: ",
|
||||
"preferences_video_loop_label": "항상 반복: ",
|
||||
"preferences_category_player": "플레이어 설정",
|
||||
"Preferences": "설정",
|
||||
"Google verification code": "구글 인증 코드",
|
||||
"E-mail": "이메일",
|
||||
"Register": "회원가입",
|
||||
"Sign In": "로그인",
|
||||
"preferences_category_misc": "기타 설정",
|
||||
"Image CAPTCHA": "이미지 CAPTCHA",
|
||||
"Text CAPTCHA": "텍스트 CAPTCHA",
|
||||
"Time (h:mm:ss):": "시각 (h:mm:ss):",
|
||||
"Password": "비밀번호",
|
||||
"User ID": "사용자 ID",
|
||||
"Log in with Google": "구글로 로그인",
|
||||
"Log in/register": "로그인/회원가입",
|
||||
"Log in": "로그인",
|
||||
"source": "출처",
|
||||
"JavaScript license information": "JavaScript 라이선스 정보",
|
||||
"An alternative front-end to YouTube": "YouTube의 대안 프론트엔드",
|
||||
"History": "역사",
|
||||
"Delete account?": "계정을 삭제 하시겠습니까?",
|
||||
"Export data as JSON": "데이터를 JSON으로 내보내기",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "구독을 OPML로 내보내기 (NewPipe 및 FreeTube 용)",
|
||||
"Export subscriptions as OPML": "구독을 OPML로 내보내기",
|
||||
"Export": "내보내기",
|
||||
"Import NewPipe data (.zip)": "NewPipe 데이터 가져오기 (.zip)",
|
||||
"Import NewPipe subscriptions (.json)": "NewPipe 구독을 가져오기 (.json)",
|
||||
"Import FreeTube subscriptions (.db)": "FreeTube 구독 가져오기 (.db)",
|
||||
"Import YouTube subscriptions": "YouTube 구독 가져오기",
|
||||
"Import Invidious data": "Invidious 데이터 가져오기",
|
||||
"Import": "가져오기",
|
||||
"Import and Export Data": "데이터 가져오기 및 내보내기",
|
||||
"No": "아니요",
|
||||
"Yes": "예",
|
||||
"Authorize token for `x`?": "`x` 에 대한 토큰을 승인하시겠습니까?",
|
||||
"Authorize token?": "토큰을 승인하시겠습니까?",
|
||||
"Cannot change password for Google accounts": "Google 계정의 비밀번호를 변경할 수 없습니다",
|
||||
"New passwords must match": "새 비밀번호는 일치해야 합니다",
|
||||
"New password": "새 비밀번호",
|
||||
"Clear watch history?": "재생 기록을 삭제 하시겠습니까?",
|
||||
"Previous page": "이전 페이지",
|
||||
"Next page": "다음 페이지",
|
||||
"last": "마지막",
|
||||
"Shared `x` ago": "`x` 전에 공유",
|
||||
"popular": "인기",
|
||||
"oldest": "오래된순",
|
||||
"newest": "최신순",
|
||||
"View playlist on YouTube": "YouTube에서 재생목록 보기",
|
||||
"View channel on YouTube": "YouTube에서 채널 보기",
|
||||
"Subscribe": "구독",
|
||||
"Unsubscribe": "구독 취소",
|
||||
"LIVE": "실시간",
|
||||
"generic_views_count_0": "{{count}} 조회수",
|
||||
"generic_videos_count_0": "{{count}} 동영상",
|
||||
"generic_playlists_count_0": "{{count}} 재생목록",
|
||||
"generic_subscribers_count_0": "{{count}} 구독자",
|
||||
"generic_subscriptions_count_0": "{{count}} 구독",
|
||||
"playlist": "재생목록",
|
||||
"Korean": "한국어",
|
||||
"Japanese": "일본어",
|
||||
"Greek": "그리스어",
|
||||
"German": "독일어",
|
||||
"Chinese (Traditional)": "중국어 (정자)",
|
||||
"Chinese (Simplified)": "중국어 (간체자)",
|
||||
"French": "프랑스어",
|
||||
"Finnish": "핀란드어",
|
||||
"Basque": "바스크어",
|
||||
"Bangla": "벵골어",
|
||||
"Azerbaijani": "아제르바이잔어",
|
||||
"Armenian": "아르메니아어",
|
||||
"Arabic": "아랍어",
|
||||
"Amharic": "암하라어",
|
||||
"Albanian": "알바니아어",
|
||||
"Afrikaans": "아프리카어",
|
||||
"English (auto-generated)": "영어 (자동 생성됨)",
|
||||
"English": "영어",
|
||||
"Token is expired, please try again": "토큰이 만료되었습니다. 다시 시도해 주세요",
|
||||
"Load more": "더 불러오기",
|
||||
"Could not fetch comments": "댓글을 가져올 수 없습니다",
|
||||
"Could not get channel info.": "채널 정보를 가져올 수 없습니다.",
|
||||
"This channel does not exist.": "이 채널은 존재하지 않습니다.",
|
||||
"Deleted or invalid channel": "삭제되었거나 더 이상 존재하지 않는 채널",
|
||||
"channel:`x`": "채널:`x`",
|
||||
"Invalid TFA code": "유효하지 않은 TFA 코드",
|
||||
"Show replies": "댓글 보기",
|
||||
"Hide replies": "댓글 숨기기",
|
||||
"Incorrect password": "잘못된 비밀번호",
|
||||
"License: ": "라이선스: ",
|
||||
"Genre: ": "장르: ",
|
||||
"Editing playlist `x`": "재생목록 `x` 수정하기",
|
||||
"Playlist privacy": "재생목록 공개 범위",
|
||||
"Watch on YouTube": "YouTube에서 보기",
|
||||
"Show less": "간략히",
|
||||
"Show more": "더보기",
|
||||
"Title": "제목",
|
||||
"Create playlist": "재생목록 생성",
|
||||
"Trending": "급상승",
|
||||
"Delete playlist": "재생목록 삭제",
|
||||
"Delete playlist `x`?": "재생목록 `x` 를 삭제 하시겠습니까?",
|
||||
"Updated `x` ago": "`x` 전에 업데이트됨",
|
||||
"Released under the AGPLv3 on Github.": "Github에 AGPLv3 으로 배포됩니다.",
|
||||
"View all playlists": "모든 재생목록 보기",
|
||||
"Private": "비공개",
|
||||
"Unlisted": "목록에 없음",
|
||||
"Public": "공개",
|
||||
"View privacy policy.": "개인정보 처리방침 보기.",
|
||||
"View JavaScript license information.": "JavaScript 라이센스 정보 보기.",
|
||||
"Source available here.": "소스는 여기에서 사용할 수 있습니다.",
|
||||
"Log out": "로그아웃",
|
||||
"search": "검색",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} 읽지 않은 알림",
|
||||
"Subscriptions": "구독",
|
||||
"revoke": "철회",
|
||||
"unsubscribe": "구독 취소",
|
||||
"Import/export": "가져오기/내보내기",
|
||||
"tokens_count_0": "{{count}} 토큰",
|
||||
"Token": "토큰",
|
||||
"Token manager": "토큰 관리자",
|
||||
"Subscription manager": "구독 관리자",
|
||||
"Save preferences": "설정 저장",
|
||||
"Report statistics: ": "통계 보고: ",
|
||||
"Registration enabled: ": "등록 활성화: ",
|
||||
"Login enabled: ": "로그인 활성화: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA 활성화: ",
|
||||
"Top enabled: ": "Top 활성화: ",
|
||||
"preferences_show_nick_label": "상단에 닉네임 표시: ",
|
||||
"preferences_feed_menu_label": "피드 메뉴: ",
|
||||
"preferences_default_home_label": "기본 홈페이지: ",
|
||||
"preferences_category_admin": "관리자 설정",
|
||||
"Delete account": "계정 삭제",
|
||||
"Watch history": "시청 기록",
|
||||
"Manage tokens": "토큰 관리",
|
||||
"Manage subscriptions": "구독 관리",
|
||||
"Change password": "비밀번호 변경",
|
||||
"Import/export data": "데이터 가져오기/내보내기",
|
||||
"Clear watch history": "시청 기록 지우기",
|
||||
"preferences_category_data": "데이터 설정",
|
||||
"`x` is live": "`x` 이(가) 라이브 중입니다",
|
||||
"`x` uploaded a video": "`x` 동영상 게시됨",
|
||||
"Enable web notifications": "웹 알림 활성화",
|
||||
"preferences_notifications_only_label": "알림만 표시 (있는 경우): ",
|
||||
"preferences_unseen_only_label": "시청하지 않은 것만 표시: ",
|
||||
"Only show latest unwatched video from channel: ": "채널의 시청하지 않은 최신 동영상만 표시: ",
|
||||
"Only show latest video from channel: ": "채널의 최신 동영상만 표시: ",
|
||||
"channel name - reverse": "채널 이름 - 역순",
|
||||
"alphabetically - reverse": "알파벳순 - 역순",
|
||||
"published - reverse": "게시일 - 역순",
|
||||
"published": "게시일",
|
||||
"channel name": "채널 이름",
|
||||
"alphabetically": "알파벳순",
|
||||
"Samoan": "사모아어",
|
||||
"Russian": "러시아어",
|
||||
"Romanian": "루마니아어",
|
||||
"Punjabi": "펀자브어",
|
||||
"Portuguese": "포르투갈어(포어)",
|
||||
"Polish": "폴란드어",
|
||||
"Persian": "페르시아어(파사어)",
|
||||
"Pashto": "파슈토어",
|
||||
"Nyanja": "체와어",
|
||||
"Norwegian Bokmål": "보크몰",
|
||||
"Nepali": "네팔어",
|
||||
"Mongolian": "몽골어",
|
||||
"Marathi": "마라티어",
|
||||
"Maori": "마오리어",
|
||||
"Maltese": "몰타어",
|
||||
"Wrong answer": "잘못된 답변",
|
||||
"live": "실시간",
|
||||
"3d": "3D",
|
||||
"location": "지역",
|
||||
"4k": "4K",
|
||||
"filter": "필터",
|
||||
"hdr": "HDR",
|
||||
"Current version: ": "현재 버전: ",
|
||||
"next_steps_error_message_refresh": "새로 고침",
|
||||
"next_steps_error_message_go_to_youtube": "YouTube로 가기",
|
||||
"subtitles": "자막",
|
||||
"`x` marked it with a ❤": "`x`님의 ❤",
|
||||
"Download as: ": "다음으로 다운로드: ",
|
||||
"Download": "다운로드",
|
||||
"Search": "검색",
|
||||
"preferences_locale_label": "언어: ",
|
||||
"Malayalam": "말라얄람어",
|
||||
"Malay": "말레이어",
|
||||
"Malagasy": "말라가시어",
|
||||
"Macedonian": "마케도니아어",
|
||||
"Luxembourgish": "룩셈부르크어",
|
||||
"Lithuanian": "리투아니아어",
|
||||
"Latvian": "라트비아어",
|
||||
"Latin": "라틴어",
|
||||
"Lao": "라오어",
|
||||
"channel": "채널",
|
||||
"Kyrgyz": "키르기스어",
|
||||
"Kurdish": "쿠르드어",
|
||||
"Khmer": "크메르어",
|
||||
"Kazakh": "카자흐어",
|
||||
"Kannada": "칸나다어",
|
||||
"Javanese": "자바어",
|
||||
"Italian": "이탈리아어(이태리어)",
|
||||
"Irish": "아일랜드어",
|
||||
"Indonesian": "인도네시아어",
|
||||
"Igbo": "이보어",
|
||||
"Icelandic": "아이슬란드어",
|
||||
"Hungarian": "헝가리어",
|
||||
"Hmong": "몽어",
|
||||
"Hindi": "힌디어",
|
||||
"Hebrew": "히브리어",
|
||||
"Hawaiian": "하와이어",
|
||||
"Hausa": "하우사어",
|
||||
"No such user": "해당 사용자 없음",
|
||||
"Erroneous token": "잘못된 token",
|
||||
"Erroneous challenge": "잘못된 challenge",
|
||||
"Hidden field \"token\" is a required field": "숨겨진 필드 \"token\"은 필수 필드입니다",
|
||||
"Hidden field \"challenge\" is a required field": "숨겨진 필드 \"challenge\"는 필수 필드입니다",
|
||||
"Could not pull trending pages.": "인기 급상승 페이지를 가져올 수 없습니다.",
|
||||
"Could not create mix.": "믹스를 생성할 수 없습니다.",
|
||||
"`x` ago": "`x` 전",
|
||||
"comments_view_x_replies_0": "답글 {{count}}개 보기",
|
||||
"View Reddit comments": "Reddit의 댓글 보기",
|
||||
"Engagement: ": "약속: ",
|
||||
"Wilson score: ": "Wilson Score: ",
|
||||
"Family friendly? ": "가족 친화적입니까? ",
|
||||
"Quota exceeded, try again in a few hours": "한도량을 초과했습니다. 몇 시간 후에 다시 시도하세요",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 개의 댓글 보기",
|
||||
"": "`x` 개의 댓글 보기"
|
||||
},
|
||||
"Haitian Creole": "아이티 크레올어",
|
||||
"Gujarati": "구자라트어",
|
||||
"Esperanto": "에스페란토(에스페란토어)",
|
||||
"Georgian": "조지아어",
|
||||
"Galician": "갈리시아어",
|
||||
"Filipino": "타갈로그어(필리핀어)",
|
||||
"Estonian": "에스토니아어",
|
||||
"Dutch": "네덜란드어",
|
||||
"Danish": "덴마크어",
|
||||
"Czech": "체코어",
|
||||
"Croatian": "크로아티아어",
|
||||
"Corsican": "코르시카어",
|
||||
"Cebuano": "세부아노어",
|
||||
"Catalan": "카탈루냐어",
|
||||
"Burmese": "버마어",
|
||||
"Bulgarian": "불가리아어",
|
||||
"Bosnian": "보스니아어",
|
||||
"Belarusian": "벨라루스어",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "로그인할 수 없습니다. 이중 인증(Authenticator 또는 SMS)이 켜져 있는지 확인하세요.",
|
||||
"View more comments on Reddit": "Reddit에서 더 많은 댓글 보기",
|
||||
"View YouTube comments": "YouTube 댓글 보기",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "JavaScript가 꺼져 있는 것 같습니다! 댓글을 보려면 여기를 클릭하세요. 댓글을 로드하는 데 시간이 조금 더 걸릴 수 있습니다.",
|
||||
"Shared `x`": "공유된 `x`",
|
||||
"Whitelisted regions: ": "차단되지 않은 지역: ",
|
||||
"views": "조회수",
|
||||
"Please log in": "로그인하세요",
|
||||
"Password cannot be longer than 55 characters": "비밀번호는 55자 이하여야 합니다",
|
||||
"Password cannot be empty": "비밀번호는 비워둘 수 없습니다",
|
||||
"Please sign in using 'Log in with Google'": "'Google로 로그인'을 사용하여 로그인하세요",
|
||||
"Wrong username or password": "잘못된 사용자 이름 또는 비밀번호",
|
||||
"Password is a required field": "비밀번호는 필수 필드입니다",
|
||||
"User ID is a required field": "사용자 ID는 필수 필드입니다",
|
||||
"CAPTCHA is a required field": "CAPTCHA는 필수 필드입니다",
|
||||
"Erroneous CAPTCHA": "잘못된 CAPTCHA",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "로그인 실패. 계정에 이중 인증이 설정되어 있지 않기 때문일 수 있습니다.",
|
||||
"Blacklisted regions: ": "차단된 지역: ",
|
||||
"Playlists": "재생목록",
|
||||
"View as playlist": "재생목록으로 보기",
|
||||
"Playlist does not exist.": "재생목록이 존재하지 않음.",
|
||||
"Not a playlist.": "재생목록이 아님.",
|
||||
"Empty playlist": "재생목록 비어 있음",
|
||||
"Show annotations": "주석 보이기",
|
||||
"Hide annotations": "주석 숨기기",
|
||||
"Broken? Try another Invidious Instance": "안되나요? 다른 Invidious 인스턴스를 시도해보세요",
|
||||
"Switch Invidious Instance": "Invidious 인스턴스 변경",
|
||||
"Spanish": "스페인어",
|
||||
"Southern Sotho": "소토어",
|
||||
"Somali": "소말리어",
|
||||
"Slovenian": "슬로베니아어",
|
||||
"Slovak": "슬로바키아어",
|
||||
"Sinhala": "싱할라어",
|
||||
"Sindhi": "신드어",
|
||||
"Shona": "쇼나어",
|
||||
"Serbian": "세르비아어",
|
||||
"Scottish Gaelic": "스코틀랜드 게일어",
|
||||
"Popular": "인기",
|
||||
"Fallback comments: ": "대체 댓글: ",
|
||||
"Swahili": "스와힐리어",
|
||||
"Sundanese": "순다어",
|
||||
"generic_count_years_0": "{{count}} 년",
|
||||
"generic_count_months_0": "{{count}} 월",
|
||||
"generic_count_weeks_0": "{{count}} 주",
|
||||
"generic_count_days_0": "{{count}} 일",
|
||||
"generic_count_hours_0": "{{count}} 시",
|
||||
"generic_count_minutes_0": "{{count}} 분",
|
||||
"generic_count_seconds_0": "{{count}} 초",
|
||||
"Zulu": "줄루어",
|
||||
"Yoruba": "요루바어",
|
||||
"Yiddish": "이디시어",
|
||||
"Xhosa": "코사어",
|
||||
"Western Frisian": "서부 프리지아어",
|
||||
"Welsh": "웨일스어",
|
||||
"Vietnamese": "베트남어",
|
||||
"Uzbek": "우즈베크어",
|
||||
"Urdu": "우르두어",
|
||||
"Ukrainian": "우크라이나어",
|
||||
"Turkish": "터키어",
|
||||
"Thai": "태국어",
|
||||
"Telugu": "텔루구어",
|
||||
"Tamil": "타밀어",
|
||||
"Tajik": "타지크어",
|
||||
"Swedish": "스웨덴어",
|
||||
"Spanish (Latin America)": "스페인어 (라틴 아메리카)",
|
||||
"comments_points_count_0": "{{count}} 포인트",
|
||||
"Invidious Private Feed for `x`": "`x` 에 대한 Invidious 비공개 피드",
|
||||
"Premieres `x`": "최초 공개 `x`",
|
||||
"Premieres in `x`": "`x` 에 최초 공개",
|
||||
"next_steps_error_message": "다음 방법을 시도해 보세요: ",
|
||||
"creative_commons": "크리에이티브 커먼즈",
|
||||
"duration": "길이",
|
||||
"content_type": "구분",
|
||||
"date": "업로드 날짜",
|
||||
"rating": "평점",
|
||||
"relevance": "관련성",
|
||||
"Community": "커뮤니티",
|
||||
"Videos": "동영상",
|
||||
"Video mode": "비디오 모드",
|
||||
"Audio mode": "오디오 모드",
|
||||
"permalink": "퍼머링크",
|
||||
"YouTube comment permalink": "YouTube 댓글 퍼머링크",
|
||||
"(edited)": "(수정됨)",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"Movies": "영화",
|
||||
"News": "뉴스",
|
||||
"Gaming": "게임",
|
||||
"Music": "음악",
|
||||
"Default": "디폴트",
|
||||
"Rating: ": "평점: ",
|
||||
"About": "정보",
|
||||
"Top": "최고",
|
||||
"hd": "HD",
|
||||
"show": "쇼",
|
||||
"movie": "영화",
|
||||
"video": "동영상",
|
||||
"year": "올해",
|
||||
"month": "이번 달",
|
||||
"week": "이번 주",
|
||||
"today": "오늘",
|
||||
"hour": "지난 1시간",
|
||||
"sort": "정렬기준",
|
||||
"features": "기능별",
|
||||
"short": "4분 미만",
|
||||
"long": "20분 초과",
|
||||
"footer_documentation": "문서",
|
||||
"footer_source_code": "소스 코드",
|
||||
"footer_original_source_code": "원본 소스 코드",
|
||||
"footer_modfied_source_code": "수정된 소스 코드",
|
||||
"adminprefs_modified_source_code_url_label": "수정된 소스 코드 저장소의 URL"
|
||||
}
|
||||
373
locales/lt.json
Normal file
373
locales/lt.json
Normal file
@@ -0,0 +1,373 @@
|
||||
{
|
||||
"LIVE": "LIVE",
|
||||
"Shared `x` ago": "Pasidalino prieš `x`",
|
||||
"Unsubscribe": "Atšaukti prenumeratą",
|
||||
"Subscribe": "Prenumeruoti",
|
||||
"View channel on YouTube": "Peržiūrėti kanalą YouTube",
|
||||
"View playlist on YouTube": "Peržiūrėti grojaraštį YouTube",
|
||||
"newest": "naujausia",
|
||||
"oldest": "seniausia",
|
||||
"popular": "populiaru",
|
||||
"last": "paskutinis",
|
||||
"Next page": "Kitas puslapis",
|
||||
"Previous page": "Ankstesnis puslapis",
|
||||
"Clear watch history?": "Išvalyti žiūrėjimo istoriją?",
|
||||
"New password": "Naujas slaptažodis",
|
||||
"New passwords must match": "Naujas slaptažodis turi sutapti",
|
||||
"Cannot change password for Google accounts": "Negalima pakeisti Google paskyros slaptažodžio",
|
||||
"Authorize token?": "Autorizuoti žetoną?",
|
||||
"Authorize token for `x`?": "Autorizuoti žetoną `x`?",
|
||||
"Yes": "Taip",
|
||||
"No": "Ne",
|
||||
"Import and Export Data": "Importuoti ir eksportuoti duomenis",
|
||||
"Import": "Importuoti",
|
||||
"Import Invidious data": "Importuoti Invidious duomenis",
|
||||
"Import YouTube subscriptions": "Importuoti YouTube prenumeratas",
|
||||
"Import FreeTube subscriptions (.db)": "Importuoti FreeTube prenumeratas (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importuoti NewPipe prenumeratas (.json)",
|
||||
"Import NewPipe data (.zip)": "Importuoti NewPipe duomenis (.zip)",
|
||||
"Export": "Eksportuoti",
|
||||
"Export subscriptions as OPML": "Eksportuoti prenumeratas kaip OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Eksportuoti prenumeratas kaip OPML (skirta NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Eksportuoti duomenis kaip JSON",
|
||||
"Delete account?": "Ištrinti paskyrą?",
|
||||
"History": "Istorija",
|
||||
"An alternative front-end to YouTube": "Alternatyvus YouTube žiūrėjimo būdas",
|
||||
"JavaScript license information": "JavaScript licencijos informacija",
|
||||
"source": "šaltinis",
|
||||
"Log in": "Prisijungti",
|
||||
"Log in/register": "Prisijungti/ registruotis",
|
||||
"Log in with Google": "Prisijungti naudojantis Google",
|
||||
"User ID": "Naudotojo ID",
|
||||
"Password": "Slaptažodis",
|
||||
"Time (h:mm:ss):": "Laikas (h:mm:ss):",
|
||||
"Text CAPTCHA": "CAPTCHA tekstas",
|
||||
"Image CAPTCHA": "CAPTCHA paveikslėlis",
|
||||
"Sign In": "Prisijungti",
|
||||
"Register": "Registruotis",
|
||||
"E-mail": "El. paštas",
|
||||
"Google verification code": "Google patvirtinimo kodas",
|
||||
"Preferences": "Pasirinktys",
|
||||
"preferences_category_player": "Grotuvo pasirinktys",
|
||||
"preferences_video_loop_label": "Visada kartoti: ",
|
||||
"preferences_autoplay_label": "Leisti automatiškai: ",
|
||||
"preferences_continue_label": "Leisti sekantį automatiškai kaip nustatyta: ",
|
||||
"preferences_continue_autoplay_label": "Automatiškai leisti sekantį vaizdo įrašą: ",
|
||||
"preferences_listen_label": "Klausytis kaip nustatyta: ",
|
||||
"preferences_local_label": "Vaizdo įrašams naudoti proxy: ",
|
||||
"preferences_speed_label": "Numatytasis greitis: ",
|
||||
"preferences_quality_label": "Pageidaujama vaizdo kokybė: ",
|
||||
"preferences_volume_label": "Grotuvo garsas: ",
|
||||
"preferences_comments_label": "Numatytieji komentarai: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Numatytieji subtitrai: ",
|
||||
"Fallback captions: ": "Atsarginiai subtitrai: ",
|
||||
"preferences_related_videos_label": "Rodyti susijusius vaizdo įrašus: ",
|
||||
"preferences_annotations_label": "Rodyti anotacijas pagal nutylėjimą: ",
|
||||
"preferences_extend_desc_label": "Automatiškai išplėsti vaizdo įrašo aprašymą: ",
|
||||
"preferences_vr_mode_label": "Interaktyvūs 360 laipsnių vaizdo įrašai: ",
|
||||
"preferences_category_visual": "Vizualinės nuostatos",
|
||||
"preferences_player_style_label": "Vaizdo grotuvo stilius: ",
|
||||
"Dark mode: ": "Tamsus rėžimas: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "tamsi",
|
||||
"light": "šviesi",
|
||||
"preferences_thin_mode_label": "Sugretintas rėžimas: ",
|
||||
"preferences_category_misc": "Įvairios nuostatos",
|
||||
"preferences_automatic_instance_redirect_label": "Automatinis šaltinio nukreipimas (atsarginis nukreipimas į redirect.Invidous.io): ",
|
||||
"preferences_category_subscription": "Prenumeratų nuostatos",
|
||||
"preferences_annotations_subscribed_label": "Prenumeruojamiems kanalams subtitrus rodyti pagal nutylėjimą: ",
|
||||
"Redirect homepage to feed: ": "Peradresuoti pagrindinį puslapį į kanalų sąrašą: ",
|
||||
"preferences_max_results_label": "Vaizdo įrašų kiekis kanalų sąraše: ",
|
||||
"preferences_sort_label": "Rūšiuoti vaizdo įrašus pagal: ",
|
||||
"published": "paskelbta",
|
||||
"published - reverse": "paskelbta - atvirkštine tvarka",
|
||||
"alphabetically": "pagal abėcėlę",
|
||||
"alphabetically - reverse": "pagal abėcėlę - atvirkštine tvarka",
|
||||
"channel name": "kanalo pavadinimas",
|
||||
"channel name - reverse": "kanalo pavadinimas - atvirkštine tvarka",
|
||||
"Only show latest video from channel: ": "Rodyti tik naujausius vaizdo įrašus iš kanalo: ",
|
||||
"Only show latest unwatched video from channel: ": "Rodyti tik naujausius nežiūrėtus vaizdo įrašus iš kanalo: ",
|
||||
"preferences_unseen_only_label": "Rodyti tik nežiūrėtus: ",
|
||||
"preferences_notifications_only_label": "Rodyti tik pranešimus (jei yra): ",
|
||||
"Enable web notifications": "Įgalinti žiniatinklio pranešimus",
|
||||
"`x` uploaded a video": "`x` įkėlė vaizdo įrašą",
|
||||
"`x` is live": "`x` transliuoja tiesiogiai",
|
||||
"preferences_category_data": "Duomenų parinktys",
|
||||
"Clear watch history": "Išvalyti žiūrėjimo istoriją",
|
||||
"Import/export data": "Importuoti/ eksportuoti duomenis",
|
||||
"Change password": "Pakeisti slaptažodį",
|
||||
"Manage subscriptions": "Valdyti prenumeratas",
|
||||
"Manage tokens": "Valdyti žetonus",
|
||||
"Watch history": "Žiūrėjimo istorija",
|
||||
"Delete account": "Ištrinti paskyrą",
|
||||
"preferences_category_admin": "Administratoriaus nuostatos",
|
||||
"preferences_default_home_label": "Numatytasis pagrindinis puslapis ",
|
||||
"preferences_feed_menu_label": "Kanalų sąrašo meniu: ",
|
||||
"preferences_show_nick_label": "Rodyti slapyvardį viršuje: ",
|
||||
"Top enabled: ": "Įgalinti viršų: ",
|
||||
"CAPTCHA enabled: ": "Įgalinta CAPTCHA: ",
|
||||
"Login enabled: ": "Įgalintas prisijungimas: ",
|
||||
"Registration enabled: ": "Įgalinta registracija: ",
|
||||
"Report statistics: ": "Dalintis statistika: ",
|
||||
"Save preferences": "Išsaugoti nuostatas",
|
||||
"Subscription manager": "Prenumeratų valdytojas",
|
||||
"Token manager": "Žetonų valdytojas",
|
||||
"Token": "Žetonas",
|
||||
"Import/export": "Importuoti/ eksportuoti",
|
||||
"unsubscribe": "atšaukti prenumeratą",
|
||||
"revoke": "atšaukti",
|
||||
"Subscriptions": "Prenumeratos",
|
||||
"search": "ieškoti",
|
||||
"Log out": "Atsijungti",
|
||||
"Released under the AGPLv3 on Github.": "Išleista pagal AGPLv3 licenciją Github.",
|
||||
"Source available here.": "Kodas prieinamas čia.",
|
||||
"View JavaScript license information.": "Žiūrėti JavaScript licencijos informaciją.",
|
||||
"View privacy policy.": "Žiūrėti privatumo politiką.",
|
||||
"Trending": "Tendencijos",
|
||||
"Public": "Viešas",
|
||||
"Unlisted": "Neįtrauktas į sąrašą",
|
||||
"Private": "Neviešas",
|
||||
"View all playlists": "Žiūrėti visus grojaraščius",
|
||||
"Updated `x` ago": "Atnaujinta prieš `x`",
|
||||
"Delete playlist `x`?": "Ištrinti grojaraštį `x`?",
|
||||
"Delete playlist": "Ištrinti grojaraštį",
|
||||
"Create playlist": "Sukurti grojaraštį",
|
||||
"Title": "Pavadinimas",
|
||||
"Playlist privacy": "Grojaraščio privatumas",
|
||||
"Editing playlist `x`": "Redaguojamas grojaraštis `x`",
|
||||
"Show more": "Rodyti daugiau",
|
||||
"Show less": "Rodyti mažiau",
|
||||
"Watch on YouTube": "Žiaurėti Youtube",
|
||||
"Switch Invidious Instance": "Keisti Invidious šaltinį",
|
||||
"Broken? Try another Invidious Instance": "Neveikia? Bandyk kitą Invidious šaltinį",
|
||||
"Hide annotations": "Slėpti anotacijas",
|
||||
"Show annotations": "Rodyti anotacijas",
|
||||
"Genre: ": "Žanras: ",
|
||||
"License: ": "Licencija: ",
|
||||
"Family friendly? ": "Draugiška šeimai? ",
|
||||
"Wilson score: ": "Wilson taškai: ",
|
||||
"Engagement: ": "Įsitraukimas: ",
|
||||
"Whitelisted regions: ": "Prieinantys regionai: ",
|
||||
"Blacklisted regions: ": "Blokuojami regionai: ",
|
||||
"Shared `x`": "Pasidalino `x`",
|
||||
"Premieres in `x`": "Premjera už `x`",
|
||||
"Premieres `x`": "Premjera`x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Sveiki! Atrodo, kad turite išjungę \"JavaScript\". Spauskite čia norėdami peržiūrėti komentarus, turėkite omenyje, kad jų įkėlimas gali užtrukti.",
|
||||
"View YouTube comments": "Žiūrėti YouTube komentarus",
|
||||
"View more comments on Reddit": "Žiūrėti daugiau komentarų Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Žiūrėti `x` komentarus",
|
||||
"": "Žiūrėti `x` komentarus"
|
||||
},
|
||||
"View Reddit comments": "Žiūrėti Reddit komentarus",
|
||||
"Hide replies": "Slėpti atsakymus",
|
||||
"Show replies": "Rodyti atsakymus",
|
||||
"Incorrect password": "Slaptažodis neteisingas",
|
||||
"Quota exceeded, try again in a few hours": "Viršyta kvota, bandykite dar kartą po keleto valandų",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Nepavyko prisijungti, įsitikinkite, kad yra įjungta dviejų etapų autentifikacija (Autentifikatorius arba SMS).",
|
||||
"Invalid TFA code": "Neteisingas TFA kodas",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Prisijungimas nepavyko. Tai gali būti todėl, kad jūsų paskyroje nėra įjungta dviejų etapų autentifikacija.",
|
||||
"Wrong answer": "Atsakymas neteisingas",
|
||||
"Erroneous CAPTCHA": "Klaidinga CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA yra reikalinga šiam laukeliui",
|
||||
"User ID is a required field": "Vartotojo ID yra reikalingas šiam laukeliui",
|
||||
"Password is a required field": "Slaptažodis yra reikalingas šiam laukeliui",
|
||||
"Wrong username or password": "Neteisingas vartotojo vardas arba slaptažodis",
|
||||
"Please sign in using 'Log in with Google'": "Prašome prisijungti naudojant \"Prisijungti su\" Google \"",
|
||||
"Password cannot be empty": "Slaptažodžio laukelis negali būti tuščias",
|
||||
"Password cannot be longer than 55 characters": "Slaptažodis negali būti ilgesnis nei 55 simboliai",
|
||||
"Please log in": "Prašome prisijungti",
|
||||
"Invidious Private Feed for `x`": "Invidious neviešas kanalų sąrašas `x`",
|
||||
"channel:`x`": "kanalas:`x`",
|
||||
"Deleted or invalid channel": "Panaikintas arba netinkamas kanalas",
|
||||
"This channel does not exist.": "Šis kanalas neegzistuoja.",
|
||||
"Could not get channel info.": "Nepavyko gauti kanalo informacijos.",
|
||||
"Could not fetch comments": "Nepavyko atsiųsti komentarų",
|
||||
"`x` ago": "`x` prieš",
|
||||
"Load more": "Pakrauti daugiau",
|
||||
"Could not create mix.": "Nepavyko sukurti derinio.",
|
||||
"Empty playlist": "Tuščias grojaraštis",
|
||||
"Not a playlist.": "Ne grojaraštis.",
|
||||
"Playlist does not exist.": "Grojaraštis neegzistuoja.",
|
||||
"Could not pull trending pages.": "Nepavyko ištraukti tendencijų puslapių.",
|
||||
"Hidden field \"challenge\" is a required field": "Paslėptas laukas „iššūkis“ yra privalomas laukas",
|
||||
"Hidden field \"token\" is a required field": "Paslėptas laukas „žetonas“ yra privalomas laukas",
|
||||
"Erroneous challenge": "Klaidingas iššūkis",
|
||||
"Erroneous token": "Klaidingas žetonas",
|
||||
"No such user": "Nėra tokio vartotojo",
|
||||
"Token is expired, please try again": "Žetonas pasibaigęs, prašome bandyti dar kartą",
|
||||
"English": "Anglų",
|
||||
"English (auto-generated)": "Anglų (Sugeneruota automatiškai)",
|
||||
"Afrikaans": "Afrikans",
|
||||
"Albanian": "Albanų",
|
||||
"Amharic": "Amharų",
|
||||
"Arabic": "Arabų",
|
||||
"Armenian": "Armėnų",
|
||||
"Azerbaijani": "Azerbaidžanų",
|
||||
"Bangla": "Bengalų",
|
||||
"Basque": "Baskų",
|
||||
"Belarusian": "Baltarusių",
|
||||
"Bosnian": "Bosnių",
|
||||
"Bulgarian": "Bulgarų",
|
||||
"Burmese": "Birmiečių",
|
||||
"Catalan": "Katalonų",
|
||||
"Cebuano": "Cebuano",
|
||||
"Chinese (Simplified)": "Kinų (supaprastinta)",
|
||||
"Chinese (Traditional)": "Kinų (tradicinė)",
|
||||
"Corsican": "Korsikiečių",
|
||||
"Croatian": "Kroatų",
|
||||
"Czech": "Čekų",
|
||||
"Danish": "Danų",
|
||||
"Dutch": "Nyderlandų",
|
||||
"Esperanto": "Esperanto",
|
||||
"Estonian": "Estų",
|
||||
"Filipino": "Filipiniečių",
|
||||
"Finnish": "Suomių",
|
||||
"French": "Prancūzų",
|
||||
"Galician": "Galicijos",
|
||||
"Georgian": "Sakartveliečių",
|
||||
"German": "Vokiečių",
|
||||
"Greek": "Graikų",
|
||||
"Gujarati": "Gujarati",
|
||||
"Haitian Creole": "Haičio kreolė",
|
||||
"Hausa": "Hausa",
|
||||
"Hawaiian": "Havajiečių",
|
||||
"Hebrew": "Hebrajų",
|
||||
"Hindi": "Hindi",
|
||||
"Hmong": "Hmong",
|
||||
"Hungarian": "Vengrų",
|
||||
"Icelandic": "Islandų",
|
||||
"Igbo": "Igbo",
|
||||
"Indonesian": "Indoneziečių",
|
||||
"Irish": "Airių",
|
||||
"Italian": "Italų",
|
||||
"Japanese": "Japonų",
|
||||
"Javanese": "Javos",
|
||||
"Kannada": "Kannada",
|
||||
"Kazakh": "Kazachų",
|
||||
"Khmer": "Khmerų",
|
||||
"Korean": "Korejiėčių",
|
||||
"Kurdish": "Kurdų",
|
||||
"Kyrgyz": "Kirgizų",
|
||||
"Lao": "Lao",
|
||||
"Latin": "Lotynų",
|
||||
"Latvian": "Latvių",
|
||||
"Lithuanian": "Lietuvių",
|
||||
"Luxembourgish": "Liuksemburgiečių",
|
||||
"Macedonian": "Šiaurės makedonų",
|
||||
"Malagasy": "Malagasi",
|
||||
"Malay": "Malajų",
|
||||
"Malayalam": "Malayalam",
|
||||
"Maltese": "Maltiečių",
|
||||
"Maori": "Maori",
|
||||
"Marathi": "Marathi",
|
||||
"Mongolian": "Mongolų",
|
||||
"Nepali": "Nepaliečių",
|
||||
"Norwegian Bokmål": "Norvegų Bokmål",
|
||||
"Nyanja": "Nyanja",
|
||||
"Pashto": "Paštunų",
|
||||
"Persian": "Persų",
|
||||
"Polish": "Lenkų",
|
||||
"Portuguese": "Portugalų",
|
||||
"Punjabi": "Punjabi",
|
||||
"Romanian": "Romėnų",
|
||||
"Russian": "Rusų",
|
||||
"Samoan": "Samoa",
|
||||
"Scottish Gaelic": "Škotų Gaelic",
|
||||
"Serbian": "Serbų",
|
||||
"Shona": "Shona",
|
||||
"Sindhi": "Sindhi",
|
||||
"Sinhala": "Sinhala",
|
||||
"Slovak": "Slovakų",
|
||||
"Slovenian": "Slovėnų",
|
||||
"Somali": "Somaliečių",
|
||||
"Southern Sotho": "Pietų Sotho",
|
||||
"Spanish": "Ispanų",
|
||||
"Spanish (Latin America)": "Ispanų (Lotynų Amerika)",
|
||||
"Sundanese": "Sudaniečių",
|
||||
"Swahili": "Svahili",
|
||||
"Swedish": "Švedų",
|
||||
"Tajik": "Tadžikų",
|
||||
"Tamil": "Tamilų",
|
||||
"Telugu": "Telugų",
|
||||
"Thai": "Talaindiečių",
|
||||
"Turkish": "Turkų",
|
||||
"Ukrainian": "Ukrainiečių",
|
||||
"Urdu": "Udrų",
|
||||
"Uzbek": "Uzbekų",
|
||||
"Vietnamese": "Vietnamiečių",
|
||||
"Welsh": "Velso",
|
||||
"Western Frisian": "Vakarų Fryzų",
|
||||
"Xhosa": "Xhosa",
|
||||
"Yiddish": "Jidiš",
|
||||
"Yoruba": "Yorubiečių",
|
||||
"Zulu": "Zulu",
|
||||
"Fallback comments: ": "Atsarginiai komentarai: ",
|
||||
"Popular": "Populiaru",
|
||||
"Search": "Paieška",
|
||||
"Top": "Top",
|
||||
"About": "Apie",
|
||||
"Rating: ": "Reitingas: ",
|
||||
"preferences_locale_label": "Kalba: ",
|
||||
"View as playlist": "Žiūrėti kaip grojaraštį",
|
||||
"Default": "Numatytasis",
|
||||
"Music": "Muzika",
|
||||
"Gaming": "Žaidimai",
|
||||
"News": "Naujienos",
|
||||
"Movies": "Filmai",
|
||||
"Download": "Atsisiųsti",
|
||||
"Download as: ": "Atsisiųsti kaip: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(redaguota)",
|
||||
"YouTube comment permalink": "YouTube komentaro adresas",
|
||||
"permalink": "adresas",
|
||||
"`x` marked it with a ❤": "`x` pažymėjo tai su ❤",
|
||||
"Audio mode": "Garso rėžimas",
|
||||
"Video mode": "Vaizdo rėžimas",
|
||||
"Videos": "Vaizdo įrašai",
|
||||
"Playlists": "Grojaraiščiai",
|
||||
"Community": "Bendruomenė",
|
||||
"relevance": "Aktualumas",
|
||||
"rating": "Reitingas",
|
||||
"date": "Įkėlimo data",
|
||||
"views": "Peržiūrų skaičius",
|
||||
"content_type": "Tipas",
|
||||
"duration": "Trukmė",
|
||||
"features": "Funkcijos",
|
||||
"sort": "Rūšiuoti pagal",
|
||||
"hour": "Per paskutinę valandą",
|
||||
"today": "Šiandien",
|
||||
"week": "Šią savaitę",
|
||||
"month": "Šį mėnesį",
|
||||
"year": "Šiais metais",
|
||||
"video": "Vaizdo įrašas",
|
||||
"channel": "Kanalas",
|
||||
"playlist": "Grojaraštis",
|
||||
"movie": "Filmas",
|
||||
"show": "Serialas",
|
||||
"hd": "HD",
|
||||
"subtitles": "Subtitrai/CC",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Tiesiogiai",
|
||||
"4k": "4K",
|
||||
"location": "Vietovė",
|
||||
"hdr": "HDR",
|
||||
"filter": "Filtras",
|
||||
"Current version: ": "Dabartinė versija: ",
|
||||
"next_steps_error_message": "Po to turėtumėte pabandyti: ",
|
||||
"next_steps_error_message_refresh": "Atnaujinti",
|
||||
"next_steps_error_message_go_to_youtube": "Eiti į YouTube",
|
||||
"short": "Trumpas (< 4 minučių)",
|
||||
"long": "Ilgas (> 20 minučių)",
|
||||
"footer_documentation": "Dokumentacija",
|
||||
"footer_source_code": "Pirminis kodas",
|
||||
"footer_original_source_code": "Pradinis pirminis kodas",
|
||||
"adminprefs_modified_source_code_url_label": "URL į pakeisto pirminio kodo repozitoriją",
|
||||
"footer_modfied_source_code": "Pakeistas pirminis kodas",
|
||||
"footer_donate_page": "Paaukoti",
|
||||
"preferences_region_label": "Turinio šalis: ",
|
||||
"preferences_quality_dash_label": "Pageidaujama DASH vaizdo kokybė: "
|
||||
}
|
||||
@@ -1,7 +1,4 @@
|
||||
{
|
||||
"`x` subscribers": "`x` abonnenter",
|
||||
"`x` videos": "`x` videoer",
|
||||
"`x` playlists": "`x` spillelister",
|
||||
"LIVE": "SANNTIDSVISNING",
|
||||
"Shared `x` ago": "Delt for `x` siden",
|
||||
"Unsubscribe": "Opphev abonnement",
|
||||
@@ -24,8 +21,8 @@
|
||||
"No": "Nei",
|
||||
"Import and Export Data": "Importer- og eksporter data",
|
||||
"Import": "Importer",
|
||||
"Import Invidious data": "Importer Invidious-data",
|
||||
"Import YouTube subscriptions": "Importer YouTube-abonnementer",
|
||||
"Import Invidious data": "Importer Invidious-JSON-data",
|
||||
"Import YouTube subscriptions": "Importer YouTube/OPML-abonnementer",
|
||||
"Import FreeTube subscriptions (.db)": "Importer FreeTube-abonnementer (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importer NewPipe-abonnementer (.json)",
|
||||
"Import NewPipe data (.zip)": "Importer NewPipe-data (.zip)",
|
||||
@@ -51,35 +48,39 @@
|
||||
"E-mail": "E-post",
|
||||
"Google verification code": "Google-bekreftelseskode",
|
||||
"Preferences": "Innstillinger",
|
||||
"Player preferences": "Avspillerinnstillinger",
|
||||
"Always loop: ": "Alltid gjenta: ",
|
||||
"Autoplay: ": "Autoavspilling: ",
|
||||
"Play next by default: ": "Spill neste som forvalg: ",
|
||||
"Autoplay next video: ": "Autospill neste video: ",
|
||||
"Listen by default: ": "Lytt som forvalg: ",
|
||||
"Proxy videos: ": "Mellomtjen videoer? ",
|
||||
"Default speed: ": "Forvalgt hastighet: ",
|
||||
"Preferred video quality: ": "Foretrukket videokvalitet: ",
|
||||
"Player volume: ": "Avspillerlydstyrke: ",
|
||||
"Default comments: ": "Forvalgte kommentarer: ",
|
||||
"preferences_category_player": "Avspillerinnstillinger",
|
||||
"preferences_video_loop_label": "Alltid gjenta: ",
|
||||
"preferences_autoplay_label": "Autoavspilling: ",
|
||||
"preferences_continue_label": "Spill neste som forvalg: ",
|
||||
"preferences_continue_autoplay_label": "Autospill neste video: ",
|
||||
"preferences_listen_label": "Lytt som forvalg: ",
|
||||
"preferences_local_label": "Mellomtjen videoer? ",
|
||||
"preferences_speed_label": "Forvalgt hastighet: ",
|
||||
"preferences_quality_label": "Foretrukket videokvalitet: ",
|
||||
"preferences_volume_label": "Avspillerlydstyrke: ",
|
||||
"preferences_comments_label": "Forvalgte kommentarer: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"Default captions: ": "Forvalgte undertitler: ",
|
||||
"preferences_captions_label": "Forvalgte undertitler: ",
|
||||
"Fallback captions: ": "Tilbakefallsundertitler: ",
|
||||
"Show related videos: ": "Vis relaterte videoer? ",
|
||||
"Show annotations by default: ": "Vis merknader som forvalg? ",
|
||||
"Visual preferences": "Visuelle innstillinger",
|
||||
"Player style: ": "Avspillerstil: ",
|
||||
"preferences_related_videos_label": "Vis relaterte videoer? ",
|
||||
"preferences_annotations_label": "Vis merknader som forvalg? ",
|
||||
"preferences_extend_desc_label": "Utvid videobeskrivelse automatisk: ",
|
||||
"preferences_vr_mode_label": "Interaktive 360-gradersfilmer: ",
|
||||
"preferences_category_visual": "Visuelle innstillinger",
|
||||
"preferences_player_style_label": "Avspillerstil: ",
|
||||
"Dark mode: ": "Mørk drakt: ",
|
||||
"Theme: ": "Drakt: ",
|
||||
"preferences_dark_mode_label": "Drakt: ",
|
||||
"dark": "Mørk",
|
||||
"light": "Lys",
|
||||
"Thin mode: ": "Tynt modus: ",
|
||||
"Subscription preferences": "Abonnementsinnstillinger",
|
||||
"Show annotations by default for subscribed channels: ": "Vis merknader som forvalg for kanaler det abonneres på? ",
|
||||
"Redirect homepage to feed: ": "Videresend hjemmeside til flyt: ",
|
||||
"Number of videos shown in feed: ": "Antall videoer å vise i flyt: ",
|
||||
"Sort videos by: ": "Sorter videoer etter: ",
|
||||
"preferences_thin_mode_label": "Tynt modus: ",
|
||||
"preferences_category_misc": "Ulike innstillinger",
|
||||
"preferences_automatic_instance_redirect_label": "Automatisk instansomdirigering (faller tilbake til redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Abonnementsinnstillinger",
|
||||
"preferences_annotations_subscribed_label": "Vis merknader som forvalg for kanaler det abonneres på? ",
|
||||
"Redirect homepage to feed: ": "Videresend hjemmeside til kilde: ",
|
||||
"preferences_max_results_label": "Antall videoer å vise i kilde: ",
|
||||
"preferences_sort_label": "Sorter videoer etter: ",
|
||||
"published": "publisert",
|
||||
"published - reverse": "publisert - motsatt",
|
||||
"alphabetically": "alfabetisk",
|
||||
@@ -88,12 +89,12 @@
|
||||
"channel name - reverse": "kanalnavn - motsatt",
|
||||
"Only show latest video from channel: ": "Kun vis siste video fra kanal: ",
|
||||
"Only show latest unwatched video from channel: ": "Kun vis siste usette video fra kanal: ",
|
||||
"Only show unwatched: ": "Kun vis usette: ",
|
||||
"Only show notifications (if there are any): ": "Kun vis merknader (hvis det er noen): ",
|
||||
"preferences_unseen_only_label": "Kun vis usette: ",
|
||||
"preferences_notifications_only_label": "Kun vis merknader (hvis det er noen): ",
|
||||
"Enable web notifications": "Skru på nettmerknader",
|
||||
"`x` uploaded a video": "`x` lastet opp en video",
|
||||
"`x` is live": "`x` er pålogget",
|
||||
"Data preferences": "Datainnstillinger",
|
||||
"preferences_category_data": "Datainnstillinger",
|
||||
"Clear watch history": "Tøm visningshistorikk",
|
||||
"Import/export data": "Importer/eksporter data",
|
||||
"Change password": "Endre passord",
|
||||
@@ -101,9 +102,10 @@
|
||||
"Manage tokens": "Behandle symboler",
|
||||
"Watch history": "Visningshistorikk",
|
||||
"Delete account": "Slett konto",
|
||||
"Administrator preferences": "Administratorinnstillinger",
|
||||
"Default homepage: ": "Forvalgt hjemmeside: ",
|
||||
"Feed menu: ": "Flyt-meny: ",
|
||||
"preferences_category_admin": "Administratorinnstillinger",
|
||||
"preferences_default_home_label": "Forvalgt hjemmeside: ",
|
||||
"preferences_feed_menu_label": "Kilde-meny: ",
|
||||
"preferences_show_nick_label": "Vis kallenavn på toppen: ",
|
||||
"Top enabled: ": "Topp påskrudd? ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA påskrudd? ",
|
||||
"Login enabled: ": "Innlogging påskrudd? ",
|
||||
@@ -113,16 +115,13 @@
|
||||
"Subscription manager": "Abonnementsbehandler",
|
||||
"Token manager": "Symbolbehandler",
|
||||
"Token": "Symbol",
|
||||
"`x` subscriptions": "`x` abonnementer",
|
||||
"`x` tokens": "`x` symboler",
|
||||
"Import/export": "Importer/eksporter",
|
||||
"unsubscribe": "opphev abonnement",
|
||||
"revoke": "tilbakekall",
|
||||
"Subscriptions": "Abonnement",
|
||||
"`x` unseen notifications": "`x` usette merknader",
|
||||
"search": "søk",
|
||||
"Log out": "Logg ut",
|
||||
"Released under the AGPLv3 by Omar Roth.": "Utgitt med AGPLv3+lisens av Omar Roth.",
|
||||
"Released under the AGPLv3 on Github.": "Tilgjengelig med AGPLv3-lisens på Github.",
|
||||
"Source available here.": "Kildekode tilgjengelig her.",
|
||||
"View JavaScript license information.": "Vis JavaScript-lisensinfo.",
|
||||
"View privacy policy.": "Vis personvernspraksis.",
|
||||
@@ -132,13 +131,17 @@
|
||||
"Private": "Privat",
|
||||
"View all playlists": "Vis alle spillelister",
|
||||
"Updated `x` ago": "Oppdatert `x` siden",
|
||||
"Delete playlist `x`?": "Slett spillelisten `x`?",
|
||||
"Delete playlist `x`?": "Slett spilleliste «x»?",
|
||||
"Delete playlist": "Slett spilleliste",
|
||||
"Create playlist": "Opprett spilleliste",
|
||||
"Title": "Tittel",
|
||||
"Playlist privacy": "Vern av spilleliste",
|
||||
"Editing playlist `x`": "Redigerer spillelisten `x`",
|
||||
"Editing playlist `x`": "Endre spilleliste «x»",
|
||||
"Show more": "Vis mer",
|
||||
"Show less": "Vis mindre",
|
||||
"Watch on YouTube": "Vis video på YouTube",
|
||||
"Switch Invidious Instance": "Bytt Invidious-instans",
|
||||
"Broken? Try another Invidious Instance": "Knekt? Forsøk en annen Invidious-instans",
|
||||
"Hide annotations": "Skjul merknader",
|
||||
"Show annotations": "Vis merknader",
|
||||
"Genre: ": "Sjanger: ",
|
||||
@@ -149,13 +152,15 @@
|
||||
"Whitelisted regions: ": "Hvitlistede regioner: ",
|
||||
"Blacklisted regions: ": "Svartelistede regioner: ",
|
||||
"Shared `x`": "Delt `x`",
|
||||
"`x` views": "`x` visninger",
|
||||
"Premieres in `x`": "Premiere om `x`",
|
||||
"Premieres `x`": "Première `x`",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hei. Det ser ut til at du har JavaScript avslått. Klikk her for å vise kommentarer, ha i minnet at innlasting tar lengre tid.",
|
||||
"View YouTube comments": "Vis YouTube-kommentarer",
|
||||
"View more comments on Reddit": "Vis flere kommenterer på Reddit",
|
||||
"View `x` comments": "Vis `x` kommentarer",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vis `x` kommentarer",
|
||||
"": "Vis `x` kommentarer"
|
||||
},
|
||||
"View Reddit comments": "Vis Reddit-kommentarer",
|
||||
"Hide replies": "Skjul svar",
|
||||
"Show replies": "Vis svar",
|
||||
@@ -174,16 +179,14 @@
|
||||
"Password cannot be empty": "Passordet kan ikke være tomt",
|
||||
"Password cannot be longer than 55 characters": "Passordet kan ikke være lengre enn 55 tegn",
|
||||
"Please log in": "Logg inn",
|
||||
"Invidious Private Feed for `x`": "Ugyldig privat flyt for `x`",
|
||||
"Invidious Private Feed for `x`": "Invidious personlig kilde for `x`",
|
||||
"channel:`x`": "kanal `x`",
|
||||
"Deleted or invalid channel": "Slettet eller ugyldig kanal",
|
||||
"This channel does not exist.": "Denne kanalen finnes ikke.",
|
||||
"Could not get channel info.": "Kunne ikke innhente kanalinfo.",
|
||||
"Could not fetch comments": "Kunne ikke hente kommentarer",
|
||||
"View `x` replies": "Vis `x` svar",
|
||||
"`x` ago": "`x` siden",
|
||||
"Load more": "Last inn flere",
|
||||
"`x` points": "`x` poeng",
|
||||
"Could not create mix.": "Kunne ikke opprette miks.",
|
||||
"Empty playlist": "Spillelisten er tom",
|
||||
"Not a playlist.": "Ugyldig spilleliste.",
|
||||
@@ -203,18 +206,18 @@
|
||||
"Arabic": "Arabisk",
|
||||
"Armenian": "Armensk",
|
||||
"Azerbaijani": "Aserbajdsjansk",
|
||||
"Bangla": "",
|
||||
"Basque": "",
|
||||
"Bangla": "Bengali",
|
||||
"Basque": "Baskisk",
|
||||
"Belarusian": "Hviterussisk",
|
||||
"Bosnian": "Bosnisk",
|
||||
"Bulgarian": "Bulgarsk",
|
||||
"Burmese": "Burmesisk",
|
||||
"Catalan": "Katalansk",
|
||||
"Cebuano": "",
|
||||
"Chinese (Simplified)": "",
|
||||
"Chinese (Traditional)": "",
|
||||
"Corsican": "",
|
||||
"Croatian": "",
|
||||
"Cebuano": "Sugboanon",
|
||||
"Chinese (Simplified)": "Forenklet kinesisk",
|
||||
"Chinese (Traditional)": "Tradisjonell kinesisk",
|
||||
"Corsican": "Korsikansk",
|
||||
"Croatian": "Kroatisk",
|
||||
"Czech": "Tsjekkisk",
|
||||
"Danish": "Dansk",
|
||||
"Dutch": "Nederlandsk",
|
||||
@@ -223,97 +226,91 @@
|
||||
"Filipino": "Filippinsk",
|
||||
"Finnish": "Finsk",
|
||||
"French": "Fransk",
|
||||
"Galician": "",
|
||||
"Georgian": "",
|
||||
"Galician": "Galisisk",
|
||||
"Georgian": "Georgisk",
|
||||
"German": "Tysk",
|
||||
"Greek": "Gresk",
|
||||
"Gujarati": "",
|
||||
"Haitian Creole": "",
|
||||
"Hausa": "",
|
||||
"Hawaiian": "",
|
||||
"Hebrew": "",
|
||||
"Hindi": "",
|
||||
"Hmong": "",
|
||||
"Gujarati": "Gujarati",
|
||||
"Haitian Creole": "Haitisk kreol",
|
||||
"Hausa": "Hausa",
|
||||
"Hawaiian": "Hawaiisk",
|
||||
"Hebrew": "Hebraisk",
|
||||
"Hindi": "Hindi",
|
||||
"Hmong": "Hmong",
|
||||
"Hungarian": "Ungarsk",
|
||||
"Icelandic": "Islandsk",
|
||||
"Igbo": "",
|
||||
"Igbo": "Ibo",
|
||||
"Indonesian": "Indonesisk",
|
||||
"Irish": "Irsk",
|
||||
"Italian": "Italiensk",
|
||||
"Japanese": "Japansk",
|
||||
"Javanese": "",
|
||||
"Kannada": "",
|
||||
"Kazakh": "",
|
||||
"Khmer": "",
|
||||
"Korean": "",
|
||||
"Kurdish": "",
|
||||
"Kyrgyz": "",
|
||||
"Lao": "",
|
||||
"Latin": "",
|
||||
"Latvian": "",
|
||||
"Lithuanian": "",
|
||||
"Luxembourgish": "",
|
||||
"Macedonian": "",
|
||||
"Malagasy": "",
|
||||
"Malay": "",
|
||||
"Malayalam": "",
|
||||
"Maltese": "",
|
||||
"Maori": "",
|
||||
"Marathi": "",
|
||||
"Mongolian": "",
|
||||
"Nepali": "",
|
||||
"Javanese": "Javanesisk",
|
||||
"Kannada": "Kanaresisk",
|
||||
"Kazakh": "Kasakhisk",
|
||||
"Khmer": "Khmer",
|
||||
"Korean": "Koreansk",
|
||||
"Kurdish": "Kurdisk",
|
||||
"Kyrgyz": "Kirgisisk",
|
||||
"Lao": "Laotisk",
|
||||
"Latin": "Latin",
|
||||
"Latvian": "Latvisk",
|
||||
"Lithuanian": "Litauisk",
|
||||
"Luxembourgish": "Luxemburgsk",
|
||||
"Macedonian": "Makedonsk",
|
||||
"Malagasy": "Madagassisk",
|
||||
"Malay": "Malayisk",
|
||||
"Malayalam": "Malayalam",
|
||||
"Maltese": "Maltesisk",
|
||||
"Maori": "Maorisk",
|
||||
"Marathi": "Marathi",
|
||||
"Mongolian": "Mongolsk",
|
||||
"Nepali": "Gurkhali",
|
||||
"Norwegian Bokmål": "Norsk bokmål",
|
||||
"Nyanja": "",
|
||||
"Pashto": "",
|
||||
"Persian": "",
|
||||
"Polish": "",
|
||||
"Portuguese": "",
|
||||
"Punjabi": "",
|
||||
"Romanian": "",
|
||||
"Nyanja": "Nyanja",
|
||||
"Pashto": "Pukhto",
|
||||
"Persian": "Persisk",
|
||||
"Polish": "Polsk",
|
||||
"Portuguese": "Portugisisk",
|
||||
"Punjabi": "Panjabi",
|
||||
"Romanian": "Rumensk",
|
||||
"Russian": "Russisk",
|
||||
"Samoan": "",
|
||||
"Scottish Gaelic": "",
|
||||
"Samoan": "Samoansk",
|
||||
"Scottish Gaelic": "Skotsk-gælisk",
|
||||
"Serbian": "Serbisk",
|
||||
"Shona": "",
|
||||
"Sindhi": "",
|
||||
"Sinhala": "",
|
||||
"Shona": "Shona",
|
||||
"Sindhi": "Sindhī",
|
||||
"Sinhala": "Singalesisk",
|
||||
"Slovak": "Slovakisk",
|
||||
"Slovenian": "Slovensk",
|
||||
"Somali": "Somali",
|
||||
"Southern Sotho": "",
|
||||
"Southern Sotho": "Sørsotho",
|
||||
"Spanish": "Spansk",
|
||||
"Spanish (Latin America)": "",
|
||||
"Sundanese": "",
|
||||
"Swahili": "",
|
||||
"Spanish (Latin America)": "Spansk (Latin-Amerika)",
|
||||
"Sundanese": "Sundanesisk",
|
||||
"Swahili": "Kiswahili",
|
||||
"Swedish": "Svensk",
|
||||
"Tajik": "",
|
||||
"Tamil": "",
|
||||
"Telugu": "",
|
||||
"Thai": "",
|
||||
"Tajik": "Tadsjikisk",
|
||||
"Tamil": "Tamil",
|
||||
"Telugu": "Telugu",
|
||||
"Thai": "Thai",
|
||||
"Turkish": "Tyrkisk",
|
||||
"Ukrainian": "Ukrainsk",
|
||||
"Urdu": "",
|
||||
"Uzbek": "",
|
||||
"Urdu": "Lashkari",
|
||||
"Uzbek": "Usbekisk",
|
||||
"Vietnamese": "Vietnamesisk",
|
||||
"Welsh": "",
|
||||
"Western Frisian": "",
|
||||
"Xhosa": "",
|
||||
"Yiddish": "",
|
||||
"Yoruba": "",
|
||||
"Zulu": "",
|
||||
"`x` years": "`x` år",
|
||||
"`x` months": "`x` måneder",
|
||||
"`x` weeks": "`x` uker",
|
||||
"`x` days": "`x` dager",
|
||||
"`x` hours": "`x` timer",
|
||||
"`x` minutes": "`x` minutter",
|
||||
"`x` seconds": "`x` sekunder",
|
||||
"Welsh": "Velsk",
|
||||
"Western Frisian": "Vestfrisisk",
|
||||
"Xhosa": "Xhosa",
|
||||
"Yiddish": "Jiddisk",
|
||||
"Yoruba": "Joruba",
|
||||
"Zulu": "Zulu",
|
||||
"Fallback comments: ": "Tilbakefallskommentarer: ",
|
||||
"Popular": "Populært",
|
||||
"Search": "Søk",
|
||||
"Top": "Topp",
|
||||
"About": "Om",
|
||||
"Rating: ": "Vurdering: ",
|
||||
"Language: ": "Språk: ",
|
||||
"preferences_locale_label": "Språk: ",
|
||||
"View as playlist": "Vis som spilleliste",
|
||||
"Default": "Forvalg",
|
||||
"Music": "Musikk",
|
||||
@@ -322,7 +319,7 @@
|
||||
"Movies": "Filmer",
|
||||
"Download": "Last ned",
|
||||
"Download as: ": "Last ned som: ",
|
||||
"%A %B %-d, %Y": "",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(redigert)",
|
||||
"YouTube comment permalink": "Permanent YouTube-lenke til innholdet",
|
||||
"permalink": "permanent lenke",
|
||||
@@ -332,5 +329,113 @@
|
||||
"Videos": "Videoer",
|
||||
"Playlists": "Spillelister",
|
||||
"Community": "Gemenskap",
|
||||
"Current version: ": "Nåværende versjon: "
|
||||
"relevance": "relevans",
|
||||
"rating": "vurdering",
|
||||
"date": "dato",
|
||||
"views": "visninger",
|
||||
"content_type": "innholdstype",
|
||||
"duration": "varighet",
|
||||
"features": "funksjoner",
|
||||
"sort": "sorter",
|
||||
"hour": "time",
|
||||
"today": "i dag",
|
||||
"week": "uke",
|
||||
"month": "måned",
|
||||
"year": "år",
|
||||
"video": "video",
|
||||
"channel": "kanal",
|
||||
"playlist": "spilleliste",
|
||||
"movie": "film",
|
||||
"show": "vis",
|
||||
"hd": "HD",
|
||||
"subtitles": "undertekster",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "direkte",
|
||||
"4k": "4k",
|
||||
"location": "sted",
|
||||
"hdr": "HDR",
|
||||
"filter": "filtrer",
|
||||
"Current version: ": "Gjeldende versjon: ",
|
||||
"next_steps_error_message": "Etterpå bør du prøve dette: ",
|
||||
"next_steps_error_message_refresh": "Gjenoppfrisk",
|
||||
"next_steps_error_message_go_to_youtube": "Gå til YouTube",
|
||||
"long": "Lang (> 20 minutter)",
|
||||
"footer_donate_page": "Doner",
|
||||
"short": "Kort (< 4 minutter)",
|
||||
"footer_documentation": "Dokumentasjon",
|
||||
"footer_source_code": "Kildekode",
|
||||
"footer_original_source_code": "Opprinnelig kildekode",
|
||||
"footer_modfied_source_code": "Endret kildekode",
|
||||
"adminprefs_modified_source_code_url_label": "Nettadresse til kodelager inneholdende endret kildekode",
|
||||
"preferences_quality_dash_label": "Foretrukket DASH-videokvalitet: ",
|
||||
"preferences_region_label": "Innholdsland: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_small": "Lav",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_best": "Best",
|
||||
"preferences_quality_dash_option_worst": "Verst",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Kjøpt",
|
||||
"360": "360°",
|
||||
"none": "intet",
|
||||
"videoinfo_watch_on_youTube": "Se på YouTube",
|
||||
"videoinfo_youTube_embed_link": "Bak inn",
|
||||
"videoinfo_invidious_embed_link": "Bak inn lenke",
|
||||
"download_subtitles": "Undertekster - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` spillelister opprettet",
|
||||
"user_saved_playlists": "`x` spillelister lagret",
|
||||
"Video unavailable": "Utilgjengelig video",
|
||||
"preferences_quality_option_dash": "DASH (tilpasset kvalitet)",
|
||||
"preferences_quality_option_medium": "Medium",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"videoinfo_started_streaming_x_ago": "Strømmen startet for `x` siden",
|
||||
"generic_count_seconds": "{{count}} sekund",
|
||||
"generic_count_seconds_plural": "{{count}} sekunder",
|
||||
"preferences_save_player_pos_label": "Lagre avspillingsposisjon: ",
|
||||
"generic_views_count": "{{count}} visning",
|
||||
"generic_views_count_plural": "{{count}} visninger",
|
||||
"tokens_count": "{{count}} symbol",
|
||||
"tokens_count_plural": "{{count}} symboler",
|
||||
"generic_subscriptions_count": "{{count}} abonnement",
|
||||
"generic_subscriptions_count_plural": "{{count}} abonnementer",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videoer",
|
||||
"generic_playlists_count": "{{count}} spilleliste",
|
||||
"generic_playlists_count_plural": "{{count}} spillelister",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} usett merknad",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} usette merknader",
|
||||
"comments_view_x_replies": "Vis {{count}} svar",
|
||||
"comments_view_x_replies_plural": "Vis {{count}} svar",
|
||||
"generic_subscribers_count": "{{count}} abonnent",
|
||||
"generic_subscribers_count_plural": "{{count}}abonnenter",
|
||||
"generic_count_months": "{{count}} måned",
|
||||
"generic_count_months_plural": "{{count}} måneder",
|
||||
"generic_count_days": "{{count}} dag",
|
||||
"generic_count_days_plural": "{{count}} dager",
|
||||
"comments_points_count": "{{count}} poeng",
|
||||
"comments_points_count_plural": "{{count}} poeng",
|
||||
"generic_count_weeks": "{{count}} uke",
|
||||
"generic_count_weeks_plural": "{{count}} uker",
|
||||
"generic_count_hours": "{{count}} time",
|
||||
"generic_count_hours_plural": "{{count}} timer",
|
||||
"generic_count_minutes": "{{count}} minutt",
|
||||
"generic_count_minutes_plural": "{{count}} minutter",
|
||||
"generic_count_years": "{{count}} år",
|
||||
"generic_count_years_plural": "{{count}} år",
|
||||
"crash_page_read_the_faq": "lest de <a href=\"`x`\">Ofte stilte spørsmålene (OSS/FAQ)</a>",
|
||||
"crash_page_search_issue": "søkt etter <a href=\"`x`\">eksisterende utfordringer på Github</a>",
|
||||
"crash_page_you_found_a_bug": "Det ser ut til at du fant en feil i Invidious!",
|
||||
"crash_page_refresh": "forsøkt å <a href=\"`x`\">laste siden på nytt</a>",
|
||||
"crash_page_switch_instance": "forsøkt et <a href=\"`x`\">annet eksemplar</a>",
|
||||
"crash_page_before_reporting": "Før du rapporterer en feil, sikre at du har:",
|
||||
"crash_page_report_issue": "Hvis intet av det overnevnte hjalp, <a href=\"`x`\">lag en ny utfordring på Github</a> (fortrinnsvis på engelsk) og ta med følgende tekstbit i meldingen dit (IKKE oversett denne teksten):"
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user