forked from midou/invidious
Compare commits
1920 Commits
disable-no
...
Release
Author | SHA1 | Date | |
---|---|---|---|
f07859e11b | |||
4f162dfb53 | |||
aa7de1ed4c | |||
5f1f8ff4b1 | |||
e23d0d13be | |||
5c8b4eb379 | |||
adcdb8cb92 | |||
fe4fa0480a | |||
dbbcacc955 | |||
58ad848d56 | |||
f9b9e85ee4 | |||
6ac74f4362 | |||
9fbe3944b0 | |||
c5e9447f41 | |||
3e329410d1 | |||
74dfda150e | |||
e60f53154e | |||
3d77635a5c | |||
d0433c8386 | |||
4ea4878d1a | |||
1f0a89fb5f | |||
f95f87e448 | |||
49afbf2a14 | |||
d853b9f6dc | |||
d70681538a | |||
e2df12b7d6 | |||
29219c46a1 | |||
a77f083a0a | |||
eaf47385c5 | |||
1fb8d3f583 | |||
26b15d6e35 | |||
786e3e0550 | |||
104553fdc4 | |||
ae670d5b2d | |||
b2c14f1a2a | |||
b899bc959e | |||
74dc6795cd | |||
5404b67bef | |||
7b59ccf645 | |||
cc6c39d0e6 | |||
37f3c285d7 | |||
106086c766 | |||
0980867d42 | |||
3abc377d56 | |||
4a0a6f7ed5 | |||
3056e1767e | |||
0846faa6f6 | |||
943c42e47b | |||
fc7b5120db | |||
d4d6a4b172 | |||
e0cb54f7e0 | |||
844e1bdf43 | |||
aacfbb09da | |||
f57b4b5e4f | |||
b1422b7434 | |||
f56e4012fe | |||
7d5b2ec7b6 | |||
cad64e420c | |||
f181ae3cb0 | |||
0fd480bae2 | |||
afb0aad7d3 | |||
6816ded0fa | |||
0546a73bfa | |||
164d764d55 | |||
4a31da4000 | |||
831017f403 | |||
52daafe047 | |||
dca130ca6f | |||
086c6209ab | |||
0d398c9d1a | |||
dc38bcdf17 | |||
d5442d45bc | |||
d4f0560e80 | |||
eae3c42dab | |||
c0131d8646 | |||
21fd717701 | |||
8ee73aa0c1 | |||
6e3ec10d76 | |||
d95ae7e6a5 | |||
d36f372bd1 | |||
58c65e921f | |||
5d9ed95ffd | |||
033e42a981 | |||
bfa6da2474 | |||
097b4f0433 | |||
e1378702af | |||
b13f77b5af | |||
b4a6193642 | |||
525dea1e2a | |||
f9885cca8e | |||
047ead8080 | |||
275318dae2 | |||
48d2250024 | |||
5f8130fd03 | |||
b4e930f3bc | |||
d7f5cdc2f9 | |||
04b0742293 | |||
1838ac4c99 | |||
8729f01075 | |||
6dd89bd401 | |||
bba1769f4b | |||
6b0e4e6817 | |||
6abee5de99 | |||
9892604758 | |||
5d2dd40bc3 | |||
699d53ad41 | |||
3ac8978e96 | |||
e7a93fcc18 | |||
aa33d9b7ec | |||
2150264d84 | |||
d42561d74a | |||
7092bb8855 | |||
d7c35e6e3d | |||
bc86fb8a82 | |||
ec82c2f539 | |||
4b363e32fa | |||
7a15318fbc | |||
5fa87cc27c | |||
d2123b4682 | |||
0f8f32bca8 | |||
f3e93ca83d | |||
82b1506ccc | |||
b9ad9bd723 | |||
8bf7e02978 | |||
1a49e798c8 | |||
9d54cf903e | |||
1333fed26c | |||
b173d4acf2 | |||
43d5efd9da | |||
1480e0089f | |||
a5fb78bba5 | |||
09f5485889 | |||
a760b69cb6 | |||
4f7a18a630 | |||
42da2547e3 | |||
09ccea1d31 | |||
2a19dbb1fe | |||
6dd662a5b8 | |||
301aeffa78 | |||
d27a5e7fae | |||
afc5b27d83 | |||
1a5047aad9 | |||
ce910b5269 | |||
78f18b257c | |||
3196182d4d | |||
82248fad02 | |||
cbc546f032 | |||
792d0d5f6d | |||
ac6e796c73 | |||
75c5881c55 | |||
6da18ddc41 | |||
cdf93b29e6 | |||
eed14d08a8 | |||
c243d08afb | |||
2e3a7ad044 | |||
c427c184e2 | |||
59acf23c0c | |||
2eeb6a731d | |||
0fb67cc090 | |||
9957da28dc | |||
f326bcf8db | |||
b0c7dd9771 | |||
dbdf2ad23a | |||
dbd96c77e4 | |||
e453a2a682 | |||
7e4b3b182a | |||
711d52d47f | |||
ee72809282 | |||
d8b893e9ad | |||
70e4eb7f5d | |||
0d03818700 | |||
e6f52eaf00 | |||
90544e07b6 | |||
952b3625a0 | |||
f51a3b8d2b | |||
84e4746265 | |||
d2edd4b63f | |||
a88a723de3 | |||
d5f5490aee | |||
82d797b74e | |||
97895a491a | |||
0ac9367322 | |||
d3830f7870 | |||
3cfcc16403 | |||
171c0a0814 | |||
82ac9a8609 | |||
7c79ee7cc2 | |||
f6e09250cd | |||
0fecde6917 | |||
66f5b12ecd | |||
77f57714ea | |||
d9afe38504 | |||
3af11d800c | |||
d72531d843 | |||
ecfcad8d1c | |||
d63b15dc1c | |||
edb69d601e | |||
51562f4b24 | |||
76f045b8d7 | |||
46eaa0f9b8 | |||
56bccaba77 | |||
4e8d03221b | |||
5d46eba6f2 | |||
d3eedab545 | |||
cd43997bba | |||
fead7603e6 | |||
486b5b363c | |||
2b3619e489 | |||
7a95cb43ef | |||
e09a7de5c7 | |||
79d1aaff1a | |||
d7a5ca8fff | |||
542d4fe553 | |||
33df8249f1 | |||
4e7fd7ac3b | |||
8912e2448d | |||
98f1e4170b | |||
b384133dc9 | |||
1961fc3b11 | |||
2e649363d2 | |||
53e8a5d62d | |||
17b525f2a6 | |||
b2a83991d1 | |||
d77afdcf00 | |||
f8ec312328 | |||
a021b93063 | |||
d9df90b5e3 | |||
cec3cfba77 | |||
de918b9234 | |||
5e899d73a9 | |||
f247b2f862 | |||
bd34659ff6 | |||
f1baeef4bc | |||
157c4c3e98 | |||
3850739d7f | |||
4782a67038 | |||
5baaedfa39 | |||
9d91ac3b88 | |||
4f066e880c | |||
5d0149844f | |||
3e17d04875 | |||
cec905e95e | |||
80958aa0d8 | |||
75b68618ab | |||
003c6f81dc | |||
4bc77b81bf | |||
06e1a508e8 | |||
52bc9aa328 | |||
480e073fa9 | |||
6e39b9b303 | |||
46c58bd84c | |||
7521902e88 | |||
bd48af825c | |||
ee89db49ba | |||
3af6681869 | |||
1124dd645d | |||
c5fdd9ea65 | |||
2876ee0f9f | |||
0699e5fc27 | |||
15669acccf | |||
cd2daf4adb | |||
ccecc6d318 | |||
3c6a662aaf | |||
9e55799269 | |||
da70c9b7b0 | |||
828da3c6ce | |||
febf18cbf7 | |||
b2133c6b2c | |||
21ab5dc668 | |||
b200ebfb6b | |||
ecbea0b67b | |||
d1cd790388 | |||
f66068976e | |||
22b35c453e | |||
c606465708 | |||
85deea5aca | |||
78c5ba93c7 | |||
31a80420ec | |||
4c0b5c314d | |||
eb0f651812 | |||
764965c441 | |||
b526f48120 | |||
e8cd631b2d | |||
69ff6def5f | |||
26dc9dc99c | |||
2d6b46c926 | |||
cab02d4959 | |||
b795bdf2a4 | |||
5b05f3bd14 | |||
a335bc0814 | |||
7b50388eaf | |||
da3d58f03c | |||
8327862697 | |||
6878822c4d | |||
0b28054f8a | |||
cc33d3f074 | |||
acbb625866 | |||
466bfbb306 | |||
e31053e812 | |||
96ade642fa | |||
e319c35f09 | |||
2d18ff1f80 | |||
2d7869b48b | |||
88b9f17388 | |||
7a7d1137d6 | |||
3add83c49e | |||
a8825a27d4 | |||
bedcf97fbf | |||
89c17f2127 | |||
905fed66d1 | |||
f837d99eab | |||
86ec5ad6e0 | |||
ae93146f47 | |||
e538410262 | |||
8ad19f06ee | |||
366732b4fd | |||
32ea9cfe16 | |||
53a60bf7bd | |||
2d485b18a4 | |||
5cb1688c78 | |||
456b00a699 | |||
84aded85c5 | |||
e99b591855 | |||
7cf7cce0b2 | |||
f842033eb5 | |||
c9fb19431d | |||
4b8bfe1201 | |||
e6c39f9e3a | |||
5e38ef59da | |||
80ffc442f2 | |||
9bf754ed4f | |||
fa6c5158c5 | |||
b45310c7d4 | |||
eb2dfe0ab1 | |||
cc36a82933 | |||
7798faf234 | |||
ec1bb5db87 | |||
3b7e45b7bc | |||
5f590dda80 | |||
e098c27a45 | |||
90e94d4e6c | |||
6506b8dbfc | |||
61d75050e4 | |||
10e5788c21 | |||
b509aa91d5 | |||
ec8b7916fa | |||
56a7488161 | |||
a845752fff | |||
63a729998b | |||
205f988491 | |||
0db3b830b7 | |||
c8fb75e6fd | |||
636a6d0be2 | |||
3415507e4a | |||
53223f99b0 | |||
325561e755 | |||
09bf09befe | |||
7fdbda612f | |||
4f60feee17 | |||
733bd27a5c | |||
1ff0775f4b | |||
e62d4db752 | |||
8b1da2001e | |||
5a12005b48 | |||
8575794bad | |||
fad0a4f52d | |||
fa50e0abf4 | |||
76ab51e219 | |||
8258062ec5 | |||
8d9723d43c | |||
8a90add310 | |||
c45e710845 | |||
593257a750 | |||
b2f5b1eb68 | |||
7693f61e44 | |||
bad92093bf | |||
436a61e3bb | |||
5e0f55333a | |||
de61b163a3 | |||
99c7e9e800 | |||
e9bab06e90 | |||
a56a724a55 | |||
0a54e26536 | |||
d135e5b7f7 | |||
911dad6935 | |||
7214fdaff4 | |||
220cc9bd2f | |||
aace30b2b4 | |||
64d1f26ece | |||
8f5c6a602b | |||
dd38eef41a | |||
848ab1e9c8 | |||
933802b897 | |||
3bac467a8c | |||
248df785d7 | |||
6b429575bf | |||
c24ed85110 | |||
e0ed094cc4 | |||
a644d76497 | |||
45fd4a1968 | |||
e82c965e89 | |||
f466116cd7 | |||
288e1dccda | |||
5b519123a7 | |||
0224162ad2 | |||
04ca64691b | |||
5957523624 | |||
629599f940 | |||
31ad708206 | |||
1ae14cc224 | |||
9980c0e00f | |||
aa96cf3453 | |||
41c978d350 | |||
cff25a7b25 | |||
6b7e730100 | |||
1ce2d10c50 | |||
5abafb8296 | |||
9cd2e93a2e | |||
3b773c4f77 | |||
57e606cb43 | |||
f57aac5815 | |||
71a821a7e6 | |||
e0d0dbde3c | |||
90fcf80a8d | |||
c4fec89a9b | |||
9d66676f2d | |||
f696f96824 | |||
ccb2a6c58e | |||
3b471ae964 | |||
eb8fcc9e88 | |||
5b11ca22d0 | |||
2fdb6dd644 | |||
470245de54 | |||
b0ec359028 | |||
eda7444ca4 | |||
79b342aee5 | |||
0ab6d9e748 | |||
6f889dc695 | |||
8eaaeb1c74 | |||
7c1d2714e0 | |||
c94c6f4b83 | |||
f1fd197cbc | |||
bd549f21e9 | |||
48ad864572 | |||
bcb679e653 | |||
b163afecb7 | |||
5855e9d188 | |||
33f316c864 | |||
be291e8f0f | |||
d49c762609 | |||
7f3ddad12e | |||
6db4a46c5f | |||
01e2a5e89d | |||
bff0b5c85a | |||
2da63bf36d | |||
7546cb511d | |||
200cfd7579 | |||
6ed872d72b | |||
58dc63671a | |||
eba0699c48 | |||
e3018e00c4 | |||
b54d45504f | |||
64eef948bd | |||
3f9c7b6c19 | |||
c60d2561d1 | |||
0de3b0a96d | |||
5551b613d3 | |||
ef7f3f5bd4 | |||
c8369f9dbb | |||
8d75d6431a | |||
a6bcf0280c | |||
97c4263530 | |||
dd01b0f5eb | |||
197b3972a9 | |||
cbbaded209 | |||
066b1c35cc | |||
25cbfd0681 | |||
a2f9707b3f | |||
89c008211d | |||
e92d250a1c | |||
668c130f01 | |||
f7ae680c25 | |||
24de19d06f | |||
7b7197cde8 | |||
3c6019edd0 | |||
f313162fa1 | |||
b90cf286fc | |||
2b6e71b553 | |||
d1eae10147 | |||
fbf07e18aa | |||
de2287963f | |||
039212ed91 | |||
a9f55aa310 | |||
c27bb90e4d | |||
b673695aa2 | |||
990931ff67 | |||
bfd9c9876e | |||
2a029b4d8c | |||
170eef58fd | |||
a9e8aabe1f | |||
b0c6bdf44c | |||
c5eb10b21f | |||
08390acd0c | |||
1a2d408d38 | |||
72fe8af850 | |||
0aaa3e6a08 | |||
499aed37dd | |||
99a5e9cbc4 | |||
619aa3ff05 | |||
5ceeefa236 | |||
4adb4c00d2 | |||
e8a36985af | |||
962ce23cc2 | |||
e0ce59d3e8 | |||
c5a3112e49 | |||
d3703baba9 | |||
20203f4ec0 | |||
732553519e | |||
a957b0fb7c | |||
26429bee3f | |||
ef6b766b29 | |||
1e6ec605e8 | |||
60f6a345d9 | |||
d1dddc1adc | |||
00ef004029 | |||
7ff11e4c44 | |||
8db2e060d9 | |||
8b0cbd2a29 | |||
d2ce519559 | |||
219b587945 | |||
e8810509c1 | |||
9688200caf | |||
26a50eb4e8 | |||
0ce945bfa8 | |||
aadf848ee6 | |||
53ce2a1a9a | |||
1d5100462b | |||
986515dc5b | |||
1d906aeecc | |||
426b472a15 | |||
1493e6a086 | |||
3767ab2eeb | |||
fea36fc639 | |||
a16235d3b9 | |||
99a3bd4fff | |||
4aed0e1102 | |||
833c711cba | |||
7e1deea15e | |||
b9ae1a61da | |||
f062c18b82 | |||
f21a532c0d | |||
8cec7ba004 | |||
8169cd8977 | |||
8ffc569ebd | |||
736f35332a | |||
c52c6d3c9a | |||
7b84bdb29b | |||
5c0b6d8afa | |||
c85b908613 | |||
f32764c840 | |||
d30dae43fe | |||
338d3d9f86 | |||
1f51255f2f | |||
dcbe52c9fb | |||
bd5df3af5f | |||
9bd2072e1d | |||
3b4358dbd4 | |||
72bcd3cc72 | |||
cf686202e0 | |||
6b33820f1f | |||
98c421e9f5 | |||
c864a63b6d | |||
0ad2eff2a4 | |||
c005ada487 | |||
4a339df5c4 | |||
1c0b4205d4 | |||
b16f66ef00 | |||
7cca1285aa | |||
c059829035 | |||
7da4a7f72b | |||
0917efd9cb | |||
090b470bfc | |||
97c4165f55 | |||
87a8207f37 | |||
fe8b1b4cc4 | |||
f1edb1d6bf | |||
b5f8b4542a | |||
b344d98c25 | |||
8c22e6a640 | |||
6488794218 | |||
9e8baa3539 | |||
07fe648a9c | |||
6da3287e9d | |||
37c2f5caed | |||
07b366f06b | |||
e8a14446af | |||
813dc6de1c | |||
72478ba704 | |||
9e970fe4bd | |||
d76fed5850 | |||
cf61af67ab | |||
1363fb8094 | |||
5f2b43d653 | |||
6251d8d43f | |||
6861148290 | |||
6868cade05 | |||
7b6930c16b | |||
9d5fa2bcc4 | |||
9310d09f93 | |||
162b89d942 | |||
0d63ad5a7f | |||
67571b2492 | |||
d5df81f0f8 | |||
eb27e097ed | |||
9ce9c54399 | |||
16c79f1ef5 | |||
3a5d408602 | |||
7e363fa3c8 | |||
d9416a0be5 | |||
63e5d72466 | |||
b40cf6544a | |||
8338a73e7b | |||
86ee761788 | |||
03f9962a47 | |||
d098e5ae9b | |||
4c486634e2 | |||
3bced4e12b | |||
0d22af6564 | |||
2a6a32e667 | |||
c251c66748 | |||
50da6cf3e7 | |||
7388e4ca72 | |||
be216fff94 | |||
019807256f | |||
c5b87e3b5e | |||
a0d24190b8 | |||
2b2d67fcfa | |||
ed8b84ed15 | |||
8ce91166d6 | |||
8525758583 | |||
76369eb599 | |||
6236cea33e | |||
ab4c0a1d3c | |||
c31908a011 | |||
2562f80695 | |||
fead0e14ac | |||
438467f69a | |||
db3c57d49f | |||
b0df3774db | |||
3881038a32 | |||
7e267da5be | |||
d7901c1e0d | |||
85a5bbd696 | |||
e8c2388589 | |||
8087e64dfe | |||
07de1e236f | |||
995df2d296 | |||
c0d75bc52f | |||
2414e7db41 | |||
1a33012cad | |||
cf7c49deb0 | |||
d543a68a84 | |||
2a65b5f52e | |||
9072fa4355 | |||
88cc62d45e | |||
40919c6a83 | |||
3b219a4c7f | |||
b809e877a1 | |||
0e4d3d89fc | |||
e307fcc9a1 | |||
cc703b0274 | |||
81a4f29c73 | |||
d7ea5609b2 | |||
0bd415158f | |||
50977fb5d9 | |||
a1a0e4c59f | |||
b9cbdce976 | |||
bae8bab3ff | |||
8125ddca06 | |||
fa59f41f7b | |||
20ca1ebcc0 | |||
069e91d2a6 | |||
b0b4f09b3a | |||
48af0af9d5 | |||
f9460e31bc | |||
b7a252b096 | |||
8e45e05fba | |||
0aebac5f3e | |||
60fae015d8 | |||
ce0e21400e | |||
7b40775427 | |||
1caaf63c8a | |||
eddb54adb1 | |||
01491bf315 | |||
8ca884a5a3 | |||
3dc0574bb5 | |||
42b6c8032f | |||
add6b3a602 | |||
06e01f52cf | |||
b73ea63e55 | |||
4723c1b3ee | |||
53905ac55f | |||
f6fbabc15d | |||
72aa4f6a6c | |||
265bf2427c | |||
0d055d4baa | |||
9910939f43 | |||
4917c5be4b | |||
2326330988 | |||
dd21628792 | |||
2d6ab80622 | |||
0fe0524597 | |||
fdf05eaa2b | |||
6799c0b9b8 | |||
4824a1f59a | |||
71cbe97f1a | |||
18549e8d27 | |||
9f695faf5d | |||
3cc2b34795 | |||
c0d6217cad | |||
34b206899d | |||
b56dd5a010 | |||
68184e9d40 | |||
7dc9b3f088 | |||
f26c995344 | |||
ed2a44149e | |||
6b929da0e1 | |||
572d9cf4a7 | |||
32310b7c9f | |||
6d177b5fa4 | |||
877037e114 | |||
2e6101e623 | |||
21122db3a7 | |||
c9a843c7fe | |||
275501aad3 | |||
5cdbc184c7 | |||
f77e4378fe | |||
4f25069f55 | |||
47cc9dc169 | |||
9996d00cb1 | |||
9a617ae087 | |||
c257882a1f | |||
58bad6180f | |||
509bace7d1 | |||
824cc1a5aa | |||
07c52cba3d | |||
04ba7b0d58 | |||
4788a3b4a9 | |||
7fe2af735d | |||
905582db66 | |||
bf470704a5 | |||
ea781ceeee | |||
be2feba17c | |||
a999438ae4 | |||
e9d59a6dfd | |||
4e97d8ad09 | |||
d371eb50f2 | |||
0cb7d0b441 | |||
54fa59cbb0 | |||
8542c974c8 | |||
e8c9b85ef5 | |||
8781520b8a | |||
bb04bcc42c | |||
f55b96a53b | |||
734f1b7764 | |||
e3c365f3d6 | |||
bb14f79496 | |||
bf35200207 | |||
98ff03a926 | |||
842e9fade5 | |||
270d606ad8 | |||
700c57559b | |||
760bf4cfb3 | |||
bbf067ed55 | |||
33ce0ddf14 | |||
cc03610325 | |||
ebee973b24 | |||
06b2a4ba9d | |||
58f4a012b7 | |||
2456b62936 | |||
792a999386 | |||
beec62cf0e | |||
2425c47882 | |||
49b9316b9f | |||
afb04c3bda | |||
d7696574f4 | |||
eabcea6f4a | |||
27d8fa112d | |||
2a092577c6 | |||
ac0c0609bb | |||
7e84d07c27 | |||
a8295b452e | |||
95176a8eb4 | |||
1377f2ce7d | |||
3615bb0e62 | |||
7d435f082b | |||
1f7592e599 | |||
23b19c80b3 | |||
387f057a96 | |||
ce44cb9421 | |||
de2ea47854 | |||
4b85890c6d | |||
37f1a6aacf | |||
c089d57cdb | |||
2b36d3b419 | |||
6b17bb5250 | |||
a81c0f329c | |||
709bb7281b | |||
3123478cb2 | |||
ebb69ee4fd | |||
00ac29a2ba | |||
9715e96adb | |||
1e170ef7d0 | |||
b4e9f173ab | |||
2117e34e97 | |||
a5bcf9ba44 | |||
8a88e51382 | |||
7bf3f08daf | |||
b41574481d | |||
b6b364c730 | |||
991d30066d | |||
d83f92a074 | |||
6d0a6870cb | |||
979168d8de | |||
a337150cbf | |||
b7f6c265f7 | |||
d7d95fd725 | |||
625d8c00ba | |||
552893a3c1 | |||
a5a5422014 | |||
e3fe6c44f8 | |||
7a5f5173dd | |||
f993b1e119 | |||
ab475718c8 | |||
1837467aeb | |||
cb09f46e04 | |||
0697b3787f | |||
71693ba606 | |||
3450896602 | |||
4195dcd3cf | |||
2f6b2688bb | |||
0d27eef047 | |||
701f03d5e8 | |||
70b80ce8ad | |||
a8ba02051b | |||
c5fe96e936 | |||
3509752b79 | |||
e4942b188f | |||
caac7e2166 | |||
4b3ac1a757 | |||
8e18d445a7 | |||
7e5935a9da | |||
2e67b90540 | |||
d956b1826e | |||
930b0a158d | |||
c1a69e4a4a | |||
f38d1f33b1 | |||
839e90aeff | |||
c8ecfaabe1 | |||
69e2eaccc0 | |||
ff6166edf7 | |||
c8ade5194b | |||
598ba7bade | |||
70145cba31 | |||
05cc503391 | |||
f2fa3da9d2 | |||
0110f865c3 | |||
9b75f79fb5 | |||
c17404890c | |||
06b2bab795 | |||
411208bbd2 | |||
42fa6ad2a3 | |||
cc30b00f8c | |||
8718f20688 | |||
43dcab225c | |||
080c7446c6 | |||
b6bbfb9b20 | |||
7bd6d0ac49 | |||
efaf7cb09c | |||
c4ef3bed95 | |||
77d401cec2 | |||
57c7b922f7 | |||
c088749744 | |||
462609d90d | |||
0ba22ef391 | |||
507bed6313 | |||
4a92dce449 | |||
a38edd7330 | |||
419dbefd6c | |||
d7568ac45a | |||
a0cc807821 | |||
9060cc4e53 | |||
e2a6f5ddf2 | |||
ba43365acb | |||
f64e311dcd | |||
1647092b3c | |||
61a18e9894 | |||
d9ae22e979 | |||
8d6570d809 | |||
b4beae7418 | |||
0a2d799f6a | |||
59cc637c65 | |||
1255f5989b | |||
efce7c338e | |||
b13b7646b7 | |||
4645c58712 | |||
c46d867f17 | |||
75c4c0b349 | |||
16b8b6034f | |||
93559cbdd5 | |||
495ccdc221 | |||
e6f5fcbc4b | |||
df6b51f9c6 | |||
7a569d81ca | |||
875b8ea0c2 | |||
8e4833d21a | |||
c3a3f98014 | |||
b06c87ff8d | |||
69f23d95b8 | |||
3444117818 | |||
39ff94362e | |||
11ab6ffb32 | |||
9dd4195dd0 | |||
fcbd5106c3 | |||
836898754e | |||
d3b04ac68c | |||
b2b61ab0a9 | |||
62bd895562 | |||
8d2ab70cbc | |||
3024424ea2 | |||
5af87f97a3 | |||
96238d719d | |||
52c317f235 | |||
f954483eac | |||
a4ca460651 | |||
37bab74085 | |||
50d6a2afb9 | |||
daccbc2abb | |||
d250b4132b | |||
3690631cdd | |||
3b6474d72b | |||
fd3e2aa868 | |||
14a5751a47 | |||
fda8d2d4d3 | |||
46ea22f75c | |||
68c26563fc | |||
9cec83c1ff | |||
281c8ecbf5 | |||
1b942f4f0a | |||
e7bed765fe | |||
7556cb69f2 | |||
b5e30d66d4 | |||
d9521c82cf | |||
505a1566d1 | |||
19192b8be1 | |||
867d488931 | |||
45cc835694 | |||
233bd3f593 | |||
d164776024 | |||
545a5937d8 | |||
35694cc7e3 | |||
372192eabc | |||
bc06c2fc27 | |||
7ea6ec1f52 | |||
042ad1f266 | |||
bbf16279bb | |||
16ac3be85b | |||
21f0b90354 | |||
928ea75dbc | |||
4414c9df70 | |||
898066407d | |||
381a0e326d | |||
193c510c65 | |||
f0c8477905 | |||
4379a3d873 | |||
df85265453 | |||
de78848039 | |||
e10f6b6626 | |||
634e913da9 | |||
1b25737b01 | |||
8dd1824869 | |||
c7876d564f | |||
5d176ad6de | |||
4b29f8254a | |||
c9eafb250f | |||
fe97b3d761 | |||
ed2d16c91d | |||
a727bb037f | |||
f0f6cb0d83 | |||
e8df08e41e | |||
fd06656d86 | |||
ea6db9c58a | |||
184bd3204f | |||
f0120bece1 | |||
7e3c685cd6 | |||
67a79faaeb | |||
11d45adcdc | |||
f2cc97b290 | |||
e656714542 | |||
a79b7ef170 | |||
ef4ff4e4b2 | |||
9c0c39baed | |||
6440ae0b5c | |||
e238c08be5 | |||
8d434ac06a | |||
1333e6db26 | |||
8bd2e60abc | |||
c713c32ceb | |||
12b4dd9191 | |||
b2a0e6f1ff | |||
d728599251 | |||
d6fb5c03b7 | |||
3a54e9556b | |||
6755e31b72 | |||
10fee9da61 | |||
b420de6977 | |||
febd14f703 | |||
92f6a4d546 | |||
544fc9f92e | |||
c385a944e6 | |||
ce1fb8d08c | |||
56ebb477ca | |||
cca8bcf2a8 | |||
f3d9db10a2 | |||
46a9ce811a | |||
36f7c99cfb | |||
720789b622 | |||
ce2649420f | |||
7aac401407 | |||
2d5145614b | |||
1eb1bae370 | |||
5017176e39 | |||
efda154ec8 | |||
c1fb320094 | |||
90914343ec | |||
384a8e200c | |||
28584f22c5 | |||
1b10446e5e | |||
d420741cc1 | |||
f298e225a1 | |||
97e3938f5f | |||
deed4d10f2 | |||
70a79f343d | |||
e6471feadc | |||
49e04192c0 | |||
1f12323ee6 | |||
732fb7c499 | |||
14053821ac | |||
346f32855a | |||
7d48b96173 | |||
b9932b113b | |||
72f83d4aa2 | |||
919997e41c | |||
6667bdcd92 | |||
cb0e837a5e | |||
e6ba3e3dab | |||
f81bc96da0 | |||
4c541489dd | |||
c60c14851b | |||
d857ee5a7c | |||
657486c19a | |||
9d52ddbf8d | |||
d8337252a8 | |||
66e671237f | |||
d5a516d76c | |||
231fb3481e | |||
7b4e3639cf | |||
778edf63cb | |||
fe1648e72e | |||
1825b8edb3 | |||
a3e587657f | |||
4078fc5818 | |||
a9fcfcf7c9 | |||
4aa2c406ff | |||
f46cc98654 | |||
ec1d6ee851 | |||
9eafbbdcbb | |||
5c24bf1322 | |||
b97b5b5859 | |||
d139334376 | |||
155f5fef97 | |||
17ecdbaf7d | |||
67859113fd | |||
eefc8bbbdd | |||
ff5e42d836 | |||
3cfbc19ccc | |||
7afa03d821 | |||
0107b774f2 | |||
9dfa268204 | |||
e24feab1f7 | |||
d1b51e57a2 | |||
5517a4eadb | |||
961cae2b9a | |||
adc605024f | |||
9a765418d1 | |||
b3c0afef02 | |||
525e4bd67a | |||
c421f1f205 | |||
fffdaa1410 | |||
600da635b7 | |||
e3c1cb3ec9 | |||
dc929be198 | |||
1da00bade3 | |||
8db2a93827 | |||
c0eab2b1f6 | |||
9e82e6fc1b | |||
ef6eea3a65 | |||
d526094380 | |||
562d75a47b | |||
e0600f4553 | |||
0fe1b1ec19 | |||
73d2ed6f77 | |||
f83f0d2561 | |||
1d187bcf17 | |||
a3da03bee9 | |||
f840addd93 | |||
7755ed4ac8 | |||
49ddf8b6bd | |||
5767344746 | |||
3492485789 | |||
8a44bd11d2 | |||
c0410602e7 | |||
4ae158ef6d | |||
1f3317e257 | |||
08cbd44b57 | |||
224fbcd2b1 | |||
c188dec4fa | |||
3aa6a0c4f0 | |||
ce1f61d185 | |||
c1e45cb84a | |||
defec2e8fb | |||
ded28b80d3 | |||
dd6c9dbc65 | |||
46a7be89a7 | |||
72656e802e | |||
60e3f8aec0 | |||
aad166c96a | |||
a0bdcc2964 | |||
e1a25a184a | |||
26ea676b8d | |||
b66a5c40a9 | |||
a6d21cb211 | |||
712aea0831 | |||
6837e42928 | |||
ffcc837c2a | |||
b4806e7ba9 | |||
5c633ad1da | |||
3848c3f53f | |||
3341929060 | |||
a781cf3734 | |||
d79d6f38b2 | |||
f012d70e47 | |||
01e00a588b | |||
35ac26bd61 | |||
e3081ef1a9 | |||
0b17f68eba | |||
742c951bc9 | |||
d8e23d34b6 | |||
548a0f26ef | |||
9325fa79ae | |||
1f607273a8 | |||
3c3d9ebf84 | |||
6b01629c5d | |||
025e755542 | |||
a3ecd46b01 | |||
f6c6c9e5ec | |||
bff5c8d9a1 | |||
03542f2f5d | |||
a5cc66e060 | |||
38f6d08be6 | |||
8c0efb3ea9 | |||
60b7c8015c | |||
406d74d0b6 | |||
4a14713462 | |||
27bf4d02a1 | |||
2974ed348c | |||
fdf162e318 | |||
24ac873532 | |||
0efb56238f | |||
eb3af9d4f1 | |||
23f1f8bde3 | |||
3ddcfea8fa | |||
4ac263f1df | |||
8eca5b270e | |||
b3eea6ab3e | |||
7e0210d090 | |||
596a16c085 | |||
57e4312d9f | |||
0995e0447c | |||
6ee51f460a | |||
15e9510ab2 | |||
7b124eec64 | |||
20289a4d01 | |||
8445d3ae12 | |||
b287ff2126 | |||
64780ce1da | |||
8046316f20 | |||
4bbeb4a4c8 | |||
b5eb6016bb | |||
bde21d527f | |||
b287ddc52a | |||
bc5d81fe60 | |||
cbbec00e1c | |||
ba217c9174 | |||
217b740e01 | |||
d6bf9e9bcf | |||
a95f82e44b | |||
76ad4e8026 | |||
d03a62641f | |||
4731480821 | |||
aecbafbc7b | |||
8384fa94c2 | |||
7993784701 | |||
9c400fd455 | |||
e4d14481c5 | |||
cb7c4a8220 | |||
c5d1344511 | |||
299eb9207b | |||
f2390ed052 | |||
256b518469 | |||
58688a6311 | |||
fc5092c399 | |||
591f816781 | |||
db6d3d2191 | |||
054686e557 | |||
c1c6f67ad3 | |||
c82272155e | |||
4ca23f2d51 | |||
45c99190b2 | |||
7ae9dabe3c | |||
5534cd87f8 | |||
eb7588f1a0 | |||
20dc0a9e26 | |||
f4de962dc2 | |||
b2f93dc89c | |||
bd00b4c730 | |||
4830656484 | |||
f9c2412010 | |||
87342e4efd | |||
838cbeffcc | |||
27ff8d7c33 | |||
feeb872791 | |||
6f01d6eacf | |||
e0c70d34cc | |||
d57d278f32 | |||
b893bdac0d | |||
97825be10c | |||
28424d0e88 | |||
c37d8e3664 | |||
47a5b98e25 | |||
2606decd21 | |||
b2589c74be | |||
c162c7ff3f | |||
d6dd341594 | |||
c7f34042a2 | |||
6c687a3cac | |||
bf5175d1e9 | |||
e7a9aeff95 | |||
785fe52674 | |||
72d0c9e409 | |||
5c7bda66ae | |||
96344f28b4 | |||
3b8e6c6040 | |||
13bf4e9e00 | |||
2a803dc067 | |||
c2957dbce4 | |||
9a9f8231e8 | |||
ad3c721af7 | |||
9b9fde1054 | |||
e66e463156 | |||
5c024c677b | |||
68caf355af | |||
32bc44e83b | |||
8cc0f9faf0 | |||
75d136ce77 | |||
dd1ffb9283 | |||
b3a605c574 | |||
f5b3cee263 | |||
24f1d82919 | |||
dbee027ed9 | |||
624425cfa8 | |||
caf9520c86 | |||
420e12bb8b | |||
7fd205179b | |||
4aa696fa6e | |||
4e3884cae7 | |||
ebc02d0be3 | |||
f47d4f88cc | |||
cf93c94fc4 | |||
030070f1eb | |||
3509999892 | |||
f6a4d04070 | |||
0e22a0c21a | |||
0e68756758 | |||
a7b2df31f0 | |||
ce07f2cd4a | |||
ff66cec920 | |||
67ace4fd9d | |||
86333cd434 | |||
855202e40e | |||
8dcc98b3b9 | |||
910809f1eb | |||
fe5b81f2c3 | |||
ea0d1b6f7b | |||
c8fecffbbe | |||
215446e638 | |||
b779445836 | |||
c02ae66bb1 | |||
d1bf36bd2b | |||
aacf83c06e | |||
1af846e58c | |||
c012aac997 | |||
d6087fac47 | |||
4ee483282e | |||
04b97ec261 | |||
1b5fbfc13e | |||
01acb9bfbf | |||
1fb0a49592 | |||
4b2d942024 | |||
05258d56bd | |||
692166bd64 | |||
456e91426a | |||
4fc1b8ae86 | |||
32471382c4 | |||
927c37ce3e | |||
a37522a03d | |||
ed8f02ef01 | |||
8d08cfe30f | |||
049bfab438 | |||
7f0f40f811 | |||
62b8f8ac80 | |||
16140f8b3f | |||
e0275d0908 | |||
a57770eb1f | |||
233de2eff9 | |||
9c9d71d41a | |||
6b2fff83b5 | |||
23b229ebb7 | |||
72aa5c94af | |||
4d6ff3a3c6 | |||
e2864a5ba1 | |||
a36363198c | |||
e2ce9c2cee | |||
98301a2237 | |||
0d3610f63d | |||
85dd3533bb | |||
76758baab8 | |||
9d83e2da4e | |||
45b8f6d0cd | |||
b49ed65a07 | |||
8df1c3bb57 | |||
865704dc7b | |||
1aaf290814 | |||
4659e27b56 | |||
f9eb839c7a | |||
69b8e0919f | |||
4e3a930626 | |||
b6a4de66a5 | |||
40c666cab2 | |||
6c9754e663 | |||
5d6abd5301 | |||
52ef89f02d | |||
2903e896ec | |||
c5ee2bfc0f | |||
8e8ca4fcc5 | |||
ce7db8d2cb | |||
bdc51cd20f | |||
9588fcb5d1 | |||
fbcce57ce2 | |||
99bf519781 | |||
1f6c234259 | |||
5160d8bae3 | |||
4fc5d43374 | |||
9656067296 | |||
9eb2ad367e | |||
09b9b758de | |||
a46404bf78 | |||
c142703453 | |||
f44506b7e0 | |||
afc0ec3c30 | |||
1bb8f2815d | |||
516efd2df3 | |||
47cc26cb3c | |||
cc5c83333f | |||
d3d9cfdd0d | |||
c03f92baf7 | |||
5bcb5f3175 | |||
c95ee10d69 | |||
f604c1c68b | |||
7b57381773 | |||
437f42250e | |||
09942dee66 | |||
9da1827e95 | |||
758b7df400 | |||
46a63e6150 | |||
f267394bbe | |||
2acff70811 | |||
db91d3af66 | |||
83795c245a | |||
d659a451d6 | |||
87a5d70062 | |||
ae03ed7bf7 | |||
e23ceb6ae9 | |||
33150f5de3 | |||
7df0cfcbed | |||
907ddfa06a | |||
6aaea7fafa | |||
cd03fa06ae | |||
9baaef412f | |||
88141c459c | |||
6250039405 | |||
84cd4d6a5b | |||
a1c6159e6f | |||
b7555343a0 | |||
4055c3bec8 | |||
c5303d55e5 | |||
8096c2d81d | |||
4e1f5c8357 | |||
bba693e2af | |||
127bfd5023 | |||
2edfe4a463 | |||
4b1ef90d96 | |||
0c7919f3d9 | |||
72cf49eda1 | |||
e2ab488e7f | |||
1e96206b0b | |||
6f301db11c | |||
12db1be87b | |||
cdb370f56b | |||
ae4f67f39c | |||
fcd29a4143 | |||
fa544c158a | |||
7f3509aa36 | |||
a1e0a6b499 | |||
6ea3673cf0 | |||
3b39b8c772 | |||
ffb42a9b23 | |||
6707368f19 | |||
1e186257da | |||
d85fcc4e7c | |||
3e13d83ced | |||
14de6a5658 | |||
6100d5f12d | |||
dcfa0687f4 | |||
a01433960d | |||
18a7ebe3a5 | |||
7069969198 | |||
7c45026383 | |||
cf12e9dec1 | |||
221d472127 | |||
376ed3f4d3 | |||
7df176d750 | |||
0fa3250f02 | |||
3b439a8fb7 | |||
3a56ed19fe | |||
53662b8400 | |||
eac37f1bd4 | |||
1ac5081090 | |||
e3de6a4138 | |||
fc96ecaa66 | |||
5ca34f3eb5 | |||
dcabce50c0 | |||
5b0a4a8db4 | |||
b5a2c67d16 | |||
f911871990 | |||
c3de622493 | |||
53fb6ad039 | |||
8ab339396a | |||
5048a89b9b | |||
feb38f891b | |||
c658fd27cc | |||
260bab598e | |||
6f3b4fbaaf | |||
1e7d330350 | |||
31244cbcc8 | |||
508a5761a1 | |||
4818b89ab1 | |||
4e44123abc | |||
689365d713 | |||
a7d9df5516 | |||
16b23efb4f | |||
389e49183c | |||
ca4c2115ee | |||
4c1a5f84fa | |||
b0bb156918 | |||
5565204273 | |||
d950a0ef5d | |||
b2c0f7efc3 | |||
9e58bc19c4 | |||
0d7e2afba4 | |||
e0d063d306 | |||
c847d6d370 | |||
bbf66c9b72 | |||
ed0ad587dc | |||
56fe591eee | |||
7b9693bca4 | |||
fd0417b14c | |||
89c12f2585 | |||
5c71adb137 | |||
4c23062d1e | |||
190b45086c | |||
008983c8e3 | |||
cb8a375c5e | |||
848a60aa9b | |||
88ea794fdb | |||
870350fd61 | |||
1e25894f7e | |||
223e74569a | |||
0a4d793556 | |||
5503914abe | |||
906466d7fb | |||
e2532de766 | |||
3ac4390d11 | |||
389ae7a573 | |||
176247091d | |||
e22cc73f32 | |||
c23ad25899 | |||
7f2ec18372 | |||
9cc0418769 | |||
925a2c8e77 | |||
390734d86e | |||
218f7be1a7 | |||
246955b68a | |||
d24506baed | |||
b0be2237fa | |||
945394fb1a | |||
19886f71f5 | |||
23855c09dc | |||
618ab01cd7 | |||
349d90b60e | |||
9e7c2dcdbb | |||
f353589a53 | |||
fc97929dee | |||
3d77642a1e | |||
b55c1a35bf | |||
5df700a56e | |||
0c64a86ebe | |||
644ba46945 | |||
4ab54f284c | |||
210c2a8855 | |||
0ed4f1a9a4 | |||
7e648840a1 | |||
5e090778ae | |||
049ed114fd | |||
88007a08f2 | |||
6c4ed282bb | |||
c8765385df | |||
0ed22c0be0 | |||
3ffef4b9fb | |||
ceeebceb3a | |||
0338b26d5c | |||
6577cc0c8c | |||
586000ca3d | |||
abc81ebd08 | |||
cd6c73e487 | |||
69ad57338f | |||
cbcf31a4f9 | |||
b19beac5b4 | |||
dc6d088e30 | |||
b0ad27af23 | |||
5f23c6358a | |||
da776c935f | |||
0a315783ef | |||
65061b0514 | |||
063e5e359e | |||
f460afca35 | |||
66a08ace1d | |||
68e65e968a | |||
1ba0ab982b | |||
8752b8bb3f | |||
168f86ef89 | |||
85927853f9 | |||
57f60bf173 | |||
d16c3ed40a | |||
e90f4a2cbf | |||
d00839ec68 | |||
ea35d92493 | |||
beb9894c47 | |||
5556a996cd | |||
f7b1dcc271 | |||
eb226e1dcf | |||
8332ad0f16 | |||
06af5a004e | |||
ce32873ef8 | |||
99bc230fe6 | |||
0e3820b634 | |||
eba84dcd78 | |||
864f27ef72 | |||
a8b72d8342 | |||
15d2cfba90 | |||
2851d993ad | |||
3f1d88282e | |||
cc9ce916c6 | |||
c7d468578f | |||
e0f6988eb5 | |||
09ff370ddc | |||
32ecf30c82 | |||
a62adccd3d | |||
c75bf35f59 | |||
3013782b7b | |||
81abebd144 | |||
140b6c1227 | |||
ac685f65e9 | |||
de74056925 | |||
f6b1cbd5d0 | |||
7db6e43e3f | |||
6c73614a47 | |||
b5c54b4e41 | |||
8f1c84e6d4 | |||
d1df4af734 | |||
23cd04fe88 | |||
dbc7c97e0b | |||
2313ca8f72 | |||
9418ba1687 | |||
233491940c | |||
7708e7ab08 | |||
600bd38630 | |||
f7290dfcb6 | |||
e22f7583eb | |||
c0e85f5687 | |||
3593f67eb6 | |||
1b251264a6 | |||
93c1a1d42e | |||
d7f6b6b018 | |||
fd99f20404 | |||
2b1e1b11a3 | |||
96ac7f9f35 | |||
33da64a669 | |||
38eb4ccbc4 | |||
a57414307e | |||
7ad111e2f6 | |||
a402128a7d | |||
d3ab4a5145 | |||
4ae77bcef9 | |||
e84416e56d | |||
59ccc9d73e | |||
1533a28817 | |||
7e4840867e | |||
f2f3f045e5 | |||
b12149bafd | |||
307c1b0b62 | |||
b201745988 | |||
352266481e | |||
c201ea53ba | |||
958867e92b | |||
b50de2f2ed | |||
ad37db4c82 | |||
c2d91c9544 | |||
6eedca6e7e | |||
0bd1d0bb05 | |||
1f359f5a13 | |||
fe53b5503c | |||
d66ef8fe22 | |||
6ff3a633f7 | |||
46891437e9 | |||
b729597728 | |||
f99d139025 | |||
b72b917af2 | |||
749869fdca | |||
e56a694878 | |||
8cb4d1dc28 | |||
68f1351507 | |||
66205286e4 | |||
32be373552 | |||
b1128c17f1 | |||
319bbd2f81 | |||
d8fb4f0a87 | |||
2e195575a6 | |||
28efeaa4f2 | |||
137534f901 | |||
c9594d46af | |||
1097648f0a | |||
17e6213448 | |||
2ea423032e | |||
2dead1a19b | |||
e18b10297b | |||
fd66084388 | |||
ca27e096f3 | |||
125997f45f | |||
da8a2c7bbb | |||
81ca205caa | |||
f06d5b973b | |||
fd890f9c0a | |||
835237382f | |||
7dd699370f | |||
ef8c7184de | |||
92026c1f98 | |||
9bd9dcc41c | |||
81b97ba52f | |||
ae36777d14 | |||
3d7ad82f3e | |||
059796c60d | |||
b0342b7449 | |||
b867dd82ca | |||
a122286d48 | |||
837db800bc | |||
44fe39821a | |||
fbc6b14424 | |||
9c00140464 | |||
00d8deda0e | |||
b84ce6a556 | |||
f5fb4c6c64 | |||
ac686fefe1 | |||
e690e166b0 | |||
6a02dd8842 | |||
66e2c01a3e | |||
7f2176d7fc | |||
4434889270 | |||
96afc1a45d | |||
dbe49610a1 | |||
62fadb54ee | |||
3832383936 | |||
595c3fb833 | |||
1d25c55c0b | |||
6376e78e0b | |||
1f08d2929c | |||
04953d97ad | |||
64fe4de3fb | |||
58008445e2 | |||
b7f0b054b8 | |||
3bbd709bd6 | |||
dbb1e3f5d8 | |||
8144308aee | |||
0503d2a9f3 | |||
fafd4d9396 | |||
3431a1b1de | |||
026ea52445 | |||
1e60b9a322 | |||
7450cb1f21 | |||
cdd5a9e935 | |||
c4cc50ca39 | |||
9b09d369d9 | |||
12ab11413f | |||
352f3640cf | |||
7940e91cbe | |||
577a2356a0 | |||
38ef0b10e7 | |||
c72d3c4a0e | |||
eb7e48b059 | |||
ab62fa1c4f | |||
a7cf1f6cca | |||
80d89f31fe | |||
a0f566fef3 | |||
c93d362dd4 | |||
db72f5d011 | |||
03704384a8 | |||
5b17ec0b56 | |||
d4acd03698 | |||
2ea986326d | |||
da53de2097 | |||
cf755dec22 | |||
d25e5e1849 | |||
593648780f | |||
bb04ff5942 | |||
12db276eb8 | |||
596fc3e908 | |||
9c54b94265 | |||
3c1cfce95a | |||
2f9f3142e2 | |||
92070e502c | |||
48b1154a71 | |||
bcdfb98454 | |||
f26c1f8095 | |||
790a24bdeb | |||
5d2b9392d5 | |||
6be242fc15 | |||
8158c5042b | |||
c70cdd88c7 | |||
bc6d6b6550 | |||
9584d8e16d | |||
4693c678d0 | |||
2c7d668f81 | |||
de2f963717 | |||
e83da76dc7 | |||
643730221d | |||
ab63f9ef31 | |||
dc870c4cc4 | |||
dd709dec18 | |||
cd5b71aedd | |||
d33cc025ee | |||
e7159f2803 | |||
56b8a18820 | |||
5832794034 | |||
a26b197687 | |||
12dba0955a | |||
7bd425bb3d | |||
845ad17a04 | |||
67e8fcaf93 | |||
aa07ee22cf | |||
3702e8c6fe | |||
21bd4edee4 | |||
31de39a7a4 | |||
d0fc2569ff | |||
4fd1631b30 | |||
0a1614a872 | |||
1f66d7ef74 | |||
84b6429ca6 | |||
212e5ebab5 | |||
a6106077bd | |||
fa4ce6b4e6 | |||
4130136718 | |||
c7c1b8d4f1 | |||
25b60a1b90 | |||
dda4dadfa3 | |||
570dbc7b47 | |||
6c122248f5 | |||
4a369bb3c0 | |||
95cf57e3bd | |||
0e6f7a4dc1 | |||
6f21834e71 | |||
cf6ad254fb | |||
fabbecf4c2 | |||
8262aa4138 | |||
95d86ebf22 | |||
6aa7db2358 | |||
5637c6e651 | |||
6f705b053a | |||
1f3f2788d4 | |||
ed3c202099 | |||
0396eec398 | |||
62dcec49e4 | |||
2f6afb5e86 | |||
a3a2b2aafb | |||
4900ce24fa | |||
135aaf56fd | |||
62d7abdd9e | |||
91b079f4df | |||
2c6cd74dc1 | |||
68ac18dc98 | |||
dbc74164ab | |||
76c7b2ee9c | |||
d6913c1eb9 | |||
9aa00b2f0a | |||
af02917766 | |||
d93a7b315d | |||
a813955ad3 | |||
1e3425fdee | |||
a2b326e306 | |||
0fa0e8e3f3 | |||
dbae7502e5 | |||
f47552c0c4 | |||
74836828c9 | |||
c152243b4d | |||
2a40c9a595 | |||
3cea493d49 | |||
6991d0851f | |||
fb2a331f79 | |||
c888524523 | |||
75c9dbaf6b | |||
c01a29fe76 | |||
80417281c4 | |||
f9b8bc006f | |||
2c22b0839f | |||
ec3e67e0d2 | |||
611e7e9dd8 | |||
f4e19ac05c | |||
70663af190 | |||
ed265cfdcd | |||
5b82370bc3 | |||
47690fffc1 | |||
aa09bbe23d | |||
a09fbad8b0 | |||
357ba2f4f6 | |||
b32dd746a6 | |||
b4ea1ccc23 | |||
2aecbfbb67 | |||
6d3b907307 | |||
55da1e3e92 | |||
f3aa0d6428 | |||
ad89be7523 | |||
49a7c16de5 | |||
e414476c6e | |||
391690d570 | |||
1be4af733b | |||
e3222d99ac | |||
5b19d33387 | |||
272c85c062 | |||
7101af764a | |||
e582d25654 | |||
9991c4507d | |||
37b3248202 | |||
0585131f78 | |||
7e351b21bc | |||
440549fcc5 | |||
f7b557eed1 | |||
bdfe317e20 | |||
19805b91d9 | |||
420c458b6a | |||
6de449811d | |||
081fd541af | |||
7dcd5035c0 | |||
0f1bb3fb3b | |||
78c447829a | |||
3da0287ede | |||
ea3331840d | |||
3fc0f72f3a | |||
ea3abe6069 | |||
e66b317f02 | |||
aa8758dec2 | |||
ad6b29c09f | |||
09a585c93b | |||
8e4959a621 | |||
1e3f4ed398 | |||
7048193f00 | |||
17ae2648ed | |||
c952754c8c | |||
bf054dfda5 | |||
59654289cb | |||
cf13c11236 | |||
8ec992a8a3 | |||
f8b29674b2 | |||
fe55141a7b | |||
9205ccc124 | |||
00df3e2c40 | |||
a2578ac6b4 | |||
1fee636afa | |||
154bca4635 | |||
c584e31657 | |||
66340281e6 | |||
78773d7326 |
82
.ameba.yml
82
.ameba.yml
@ -20,6 +20,13 @@ Lint/ShadowingOuterLocalVar:
|
||||
Excluded:
|
||||
- src/invidious/helpers/tokens.cr
|
||||
|
||||
Lint/NotNil:
|
||||
Enabled: false
|
||||
|
||||
Lint/SpecFilename:
|
||||
Excluded:
|
||||
- spec/parsers_helper.cr
|
||||
|
||||
|
||||
#
|
||||
# Style
|
||||
@ -31,6 +38,29 @@ Style/RedundantBegin:
|
||||
Style/RedundantReturn:
|
||||
Enabled: false
|
||||
|
||||
Style/RedundantNext:
|
||||
Enabled: false
|
||||
|
||||
Style/ParenthesesAroundCondition:
|
||||
Enabled: false
|
||||
|
||||
# This requires a rewrite of most data structs (and their usage) in Invidious.
|
||||
Naming/QueryBoolMethods:
|
||||
Enabled: false
|
||||
|
||||
Naming/AccessorMethodName:
|
||||
Enabled: false
|
||||
|
||||
Naming/BlockParameterName:
|
||||
Enabled: false
|
||||
|
||||
# Hides TODO comment warnings.
|
||||
#
|
||||
# Call `bin/ameba --only Documentation/DocumentationAdmonition` to
|
||||
# list them
|
||||
Documentation/DocumentationAdmonition:
|
||||
Enabled: false
|
||||
|
||||
|
||||
#
|
||||
# Metrics
|
||||
@ -39,54 +69,4 @@ Style/RedundantReturn:
|
||||
# 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))
|
||||
Enabled: false
|
||||
|
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@ -6,7 +6,7 @@ docker/ @unixfox
|
||||
kubernetes/ @unixfox
|
||||
|
||||
README.md @thefrenchghosty
|
||||
config/config.example.yml @thefrenchghosty @SamantazFox @unixfox
|
||||
config/config.example.yml @SamantazFox @unixfox
|
||||
|
||||
scripts/ @syeopite
|
||||
shards.lock @syeopite
|
||||
|
6
.github/ISSUE_TEMPLATE/bug_report.md
vendored
6
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@ -10,8 +10,10 @@ 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!
|
||||
* Read the FAQ: https://docs.invidious.io/faq/!
|
||||
* Use the search function to check if there is already an issue open for your problem: https://github.com/search?q=repo%3Aiv-org%2Finvidious+replace+me+with+your+bug&type=issues!
|
||||
|
||||
MAKE SURE TO FOLLOW THE TWO STEPS ABOVE BEFORE REPORTING A BUG. A BUG THAT ALREADY EXIST WILL IMMEDIATELY CLOSED.
|
||||
|
||||
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
|
||||
|
37
.github/workflows/auto-close-duplicate.yaml
vendored
Normal file
37
.github/workflows/auto-close-duplicate.yaml
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
name: Close duplicates
|
||||
on:
|
||||
issues:
|
||||
types: [opened]
|
||||
jobs:
|
||||
run:
|
||||
runs-on: ubuntu-latest
|
||||
permissions: write-all
|
||||
steps:
|
||||
- uses: iv-org/close-potential-duplicates@v1
|
||||
with:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
# Issue title filter work with anymatch https://www.npmjs.com/package/anymatch.
|
||||
# Any matched issue will stop detection immediately.
|
||||
# You can specify multi filters in each line.
|
||||
filter: ''
|
||||
# Exclude keywords in title before detecting.
|
||||
exclude: ''
|
||||
# Label to set, when potential duplicates are detected.
|
||||
label: duplicate
|
||||
# Get issues with state to compare. Supported state: 'all', 'closed', 'open'.
|
||||
state: open
|
||||
# If similarity is higher than this threshold([0,1]), issue will be marked as duplicate.
|
||||
threshold: 0.9
|
||||
# Reactions to be add to comment when potential duplicates are detected.
|
||||
# Available reactions: "-1", "+1", "confused", "laugh", "heart", "hooray", "rocket", "eyes"
|
||||
reactions: ''
|
||||
close: true
|
||||
# Comment to post when potential duplicates are detected.
|
||||
comment: |
|
||||
Hello, your issue is a duplicate of this/these issue(s): {{#issues}}
|
||||
- #{{ number }} [accuracy: {{ accuracy }}%]
|
||||
{{/issues}}
|
||||
|
||||
If this is a mistake please explain why and ping @\unixfox, @\SamantazFox and @\TheFrenchGhosty.
|
||||
|
||||
Please refrain from opening new issues, it won't help in solving your problem.
|
87
.github/workflows/build-nightly-container.yml
vendored
Normal file
87
.github/workflows/build-nightly-container.yml
vendored
Normal file
@ -0,0 +1,87 @@
|
||||
name: Build and release container directly from master
|
||||
|
||||
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@v4
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: arm64
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Login to registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: quay.io
|
||||
username: ${{ secrets.QUAY_USERNAME }}
|
||||
password: ${{ secrets.QUAY_PASSWORD }}
|
||||
|
||||
- name: Docker meta
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: quay.io/invidious/invidious
|
||||
tags: |
|
||||
type=sha,format=short,prefix={{date 'YYYY.MM.DD'}}-,enable=${{ github.ref == format('refs/heads/{0}', 'master') }}
|
||||
type=raw,value=master,enable=${{ github.ref == format('refs/heads/{0}', 'master') }}
|
||||
labels: |
|
||||
quay.expires-after=12w
|
||||
|
||||
- name: Build and push Docker AMD64 image for Push Event
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile
|
||||
platforms: linux/amd64
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
push: true
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
build-args: |
|
||||
"release=1"
|
||||
|
||||
- name: Docker meta
|
||||
id: meta-arm64
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: quay.io/invidious/invidious
|
||||
flavor: |
|
||||
suffix=-arm64
|
||||
tags: |
|
||||
type=sha,format=short,prefix={{date 'YYYY.MM.DD'}}-,enable=${{ github.ref == format('refs/heads/{0}', 'master') }}
|
||||
type=raw,value=master,enable=${{ github.ref == format('refs/heads/{0}', 'master') }}
|
||||
labels: |
|
||||
quay.expires-after=12w
|
||||
|
||||
- name: Build and push Docker ARM64 image for Push Event
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile.arm64
|
||||
platforms: linux/arm64/v8
|
||||
labels: ${{ steps.meta-arm64.outputs.labels }}
|
||||
push: true
|
||||
tags: ${{ steps.meta-arm64.outputs.tags }}
|
||||
build-args: |
|
||||
"release=1"
|
81
.github/workflows/build-stable-container.yml
vendored
Normal file
81
.github/workflows/build-stable-container.yml
vendored
Normal file
@ -0,0 +1,81 @@
|
||||
name: Build and release container
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
tags:
|
||||
- "v*"
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: arm64
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Login to registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: quay.io
|
||||
username: ${{ secrets.QUAY_USERNAME }}
|
||||
password: ${{ secrets.QUAY_PASSWORD }}
|
||||
|
||||
- name: Docker meta
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: quay.io/invidious/invidious
|
||||
flavor: |
|
||||
latest=false
|
||||
tags: |
|
||||
type=semver,pattern={{version}}
|
||||
type=raw,value=latest
|
||||
labels: |
|
||||
quay.expires-after=12w
|
||||
|
||||
- name: Build and push Docker AMD64 image for Push Event
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile
|
||||
platforms: linux/amd64
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
push: true
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
build-args: |
|
||||
"release=1"
|
||||
|
||||
- name: Docker meta
|
||||
id: meta-arm64
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: quay.io/invidious/invidious
|
||||
flavor: |
|
||||
latest=false
|
||||
suffix=-arm64
|
||||
tags: |
|
||||
type=semver,pattern={{version}}
|
||||
type=raw,value=latest
|
||||
labels: |
|
||||
quay.expires-after=12w
|
||||
|
||||
- name: Build and push Docker ARM64 image for Push Event
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile.arm64
|
||||
platforms: linux/arm64/v8
|
||||
labels: ${{ steps.meta-arm64.outputs.labels }}
|
||||
push: true
|
||||
tags: ${{ steps.meta-arm64.outputs.tags }}
|
||||
build-args: |
|
||||
"release=1"
|
86
.github/workflows/ci.yml
vendored
86
.github/workflows/ci.yml
vendored
@ -38,25 +38,35 @@ jobs:
|
||||
matrix:
|
||||
stable: [true]
|
||||
crystal:
|
||||
- 1.0.0
|
||||
- 1.1.1
|
||||
- 1.2.2
|
||||
- 1.12.1
|
||||
- 1.13.2
|
||||
- 1.14.0
|
||||
- 1.15.0
|
||||
include:
|
||||
- crystal: nightly
|
||||
stable: false
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Install required APT packages
|
||||
run: |
|
||||
sudo apt install -y libsqlite3-dev
|
||||
shell: bash
|
||||
|
||||
- name: Install Crystal
|
||||
uses: crystal-lang/install-crystal@v1.5.3
|
||||
uses: crystal-lang/install-crystal@v1.8.0
|
||||
with:
|
||||
crystal: ${{ matrix.crystal }}
|
||||
|
||||
- name: Cache Shards
|
||||
uses: actions/cache@v2
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ./lib
|
||||
path: |
|
||||
./lib
|
||||
./bin
|
||||
key: shards-${{ hashFiles('shard.lock') }}
|
||||
|
||||
- name: Install Shards
|
||||
@ -68,14 +78,6 @@ jobs:
|
||||
- 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
|
||||
|
||||
@ -84,13 +86,13 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Build Docker
|
||||
run: docker-compose build --build-arg release=0
|
||||
run: docker compose build --build-arg release=0
|
||||
|
||||
- name: Run Docker
|
||||
run: docker-compose up -d
|
||||
run: docker compose up -d
|
||||
|
||||
- name: Test Docker
|
||||
run: while curl -Isf http://localhost:3000; do sleep 1; done
|
||||
@ -100,18 +102,18 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: arm64
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Build Docker ARM64 image
|
||||
uses: docker/build-push-action@v2
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: docker/Dockerfile.arm64
|
||||
@ -121,4 +123,44 @@ jobs:
|
||||
- name: Test Docker
|
||||
run: while curl -Isf http://localhost:3000; do sleep 1; done
|
||||
|
||||
lint:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
continue-on-error: true
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Install Crystal
|
||||
id: lint_step_install_crystal
|
||||
uses: crystal-lang/install-crystal@v1.8.0
|
||||
with:
|
||||
crystal: latest
|
||||
|
||||
- name: Cache Shards
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
./lib
|
||||
./bin
|
||||
key: shards-${{ hashFiles('shard.lock') }}-${{ steps.lint_step_install_crystal.outputs.crystal }}
|
||||
|
||||
- name: Install Shards
|
||||
run: |
|
||||
if ! shards check; then
|
||||
shards install
|
||||
fi
|
||||
|
||||
- name: Check Crystal formatter compliance
|
||||
run: |
|
||||
if ! crystal tool format --check; then
|
||||
crystal tool format
|
||||
git diff
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Run Ameba linter
|
||||
run: bin/ameba
|
||||
|
77
.github/workflows/container-release.yml
vendored
77
.github/workflows/container-release.yml
vendored
@ -1,77 +0,0 @@
|
||||
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
|
13
.github/workflows/stale.yml
vendored
13
.github/workflows/stale.yml
vendored
@ -10,15 +10,14 @@ jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v3
|
||||
- uses: actions/stale@v8
|
||||
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
|
||||
days-before-stale: 730
|
||||
days-before-pr-stale: -1
|
||||
days-before-close: 60
|
||||
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
|
||||
# Exempt the following types of issues from being staled
|
||||
exempt-issue-labels: "feature-request,enhancement,discussion,exempt-stale"
|
||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,4 +1,4 @@
|
||||
/doc/
|
||||
/docs/
|
||||
/dev/
|
||||
/lib/
|
||||
/bin/
|
||||
|
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
[submodule "mocks"]
|
||||
path = mocks
|
||||
url = ../mocks
|
1296
CHANGELOG.md
1296
CHANGELOG.md
File diff suppressed because it is too large
Load Diff
844
CHANGELOG_legacy.md
Normal file
844
CHANGELOG_legacy.md
Normal file
@ -0,0 +1,844 @@
|
||||
# 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
|
||||
|
||||
It's been quite a while since the last release! There've been [198 commits](https://github.com/omarroth/invidious/compare/0.19.0..0.20.0) from 27 contributors.
|
||||
|
||||
A couple smaller features have since been added. Channel pages and playlists in particular have received a bit of a face-lift, with both now displaying their descriptions as expected, and playlists providing video count and published information. Channels will also now provide video descriptions in their RSS feed.
|
||||
|
||||
Turkish (tr), Chinese (zh-TW, in addition to zh-CN), and Japanese (jp) are all now supported languages. Thank you as always to the hard work done by translators that makes this possible.
|
||||
|
||||
The feed menu and default home page are both now configurable for registered and unregistered users, and is quite a bit of an improvement for users looking to reduce distractions for their daily use.
|
||||
|
||||
## For Administrators
|
||||
|
||||
`feed_menu` and `default_home` are now configurable by the user, and have therefore been moved into `default_user_preferences`:
|
||||
|
||||
```yaml
|
||||
feed_menu: ["Popular", "Top"]
|
||||
default_home: Top
|
||||
|
||||
# becomes:
|
||||
|
||||
default_user_preferences:
|
||||
feed_menu: ["Popular", "Top"]
|
||||
default_home: Top
|
||||
```
|
||||
|
||||
Several new options have also been added, including the ability to set a support email for the instance using `admin_email: EMAIL`, and forcing the use of a specific connection in the case of rate-limiting using `force_resolve` (see below).
|
||||
|
||||
## For Developers
|
||||
|
||||
Authenticated endpoints are now [properly documented](https://github.com/omarroth/invidious/wiki/Authenticated-Endpoints), as well how to generate and use API tokens. My hope is that this makes some of the more [interesting](https://github.com/omarroth/invidious/wiki/Authenticated-Endpoints#get-apiv1authnotifications) endpoints more accessible for developers to use in their own applications.
|
||||
|
||||
API endpoints for interacting with custom playlists have also been added with documentation available [here](https://github.com/omarroth/invidious/wiki/Authenticated-Endpoints#get-apiv1authplaylists).
|
||||
|
||||
## Custom playlists
|
||||
|
||||
This is probably the feature that has been the longest in the pipe and that I'm quite pleased is now implemented. It is now possible to create custom playlists, which can be played and edited through Invidious. API endpoints have also been added (documentation [here](https://github.com/omarroth/invidious/wiki/Authenticated-Endpoints#get-apiv1authplaylists)).
|
||||
|
||||
Overall I'm quite pleased with how smoothly it has been rolled out and with the experience so far, and I'm exctited for how it can be extended and improved in future.
|
||||
|
||||
## [instances.invidio.us](https://instances.invidio.us)
|
||||
|
||||
It is now possible to view a list of public instances (as provided in the [wiki](https://github.com/omarroth/invidious/wiki/Invidious-Instances)) through an API or a pretty new interface [here](https://instances.invidio.us). It combines uptime information, statistics from each instance and basic information already provided in the wiki. I expect it should be much more user-friendly than compiling the information yourself, and is already used by [Invidition](https://codeberg.org/Booteille/Invidition) to provide a list of instances for users to choose from.
|
||||
|
||||
The site itself is licensed under the AGPLv3 and the source is available [here](https://github.com/omarroth/instances.invidio.us).
|
||||
|
||||
## Video unavailable [#811](https://github.com/omarroth/invidious/issues/811)
|
||||
|
||||
Many users have likely noticed this error message if using Invidious directly or through another service, such as FreeTube. This issue is caused by rate-limiting by Google, and is not a new issuee for projects like Invidious (notably [youtube-dl](https://github.com/ytdl-org/youtube-dl#http-error-429-too-many-requests-or-402-payment-required)) and appears to be affecting smaller, private instances as well.
|
||||
|
||||
There is not a permanent fix for administrators currently, however there is some information available [here](https://github.com/omarroth/invidious/issues/811#issuecomment-540017772) that may provide a temporary solution. Unfortanately, in most cases the best option is to wait for the instance to be unbanned or to move the instance to a different IP. A more informative error message is also now provided, which should help an administrator more quickly diagnose the problem.
|
||||
|
||||
For those interested, I would recommend following [#811](https://github.com/omarroth/invidious/issues/811) for any future progress on the issue.
|
||||
|
||||
## BAT verified publisher
|
||||
|
||||
I'm quite late to this announcement, however I'm pleased to mention that Invidious is now a BAT verified publisher! I would recommend looking [here](https://basicattentiontoken.org/about/) or [here](https://www.reddit.com/r/BATProject/comments/7cr7yc/new_to_bat_read_this_introduction_to_basic/) for learning more about what it is and how it works. Overall I think it makes an interesting substitute for services like Liberapay, and a (hopefully) much less-intrusive alternative to direct advertising.
|
||||
|
||||
BAT is combined under other cryptocurrencies below. Currently there's a fairly significant delay in payout, which is the reason for the large fluctuation in crypto donations between September and October (and also the reason for the late announcement).
|
||||
|
||||
## Release schedule
|
||||
|
||||
Currently I'm quite pleased with the current state of the project. There's plenty of things I'd still like to add, however at this point I expect the rate of most new additions will slow down a bit, with more focus on stabililty and any long-standing bugs.
|
||||
|
||||
Because of this, I'm planning on releasing a new version quarterly, with any necessary hotfixes being pushed as a new patch release as necessary. As always it will be possible to run Invidious directly from [master](https://github.com/omarroth/invidious/wiki/Updating) if you'd still like to have the lastest version.
|
||||
|
||||
I'll plan on providing finances each release, with a similar monthly breakdown as below.
|
||||
|
||||
## Finances for September 2019
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$64.37
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$76.04
|
||||
- Crypto : ~\$99.89 (converted from BAT, BCH, BTC)
|
||||
- Total : \$240.30
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-lb1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node5 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node6 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node7 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node8 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node9 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node10 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node11 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node12 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node13 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node14 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node15 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node16 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$135.00
|
||||
|
||||
## Finances for October 2019
|
||||
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$134.40
|
||||
- Crypto : ~\$8.29 (converted from BAT, BCH, BTC)
|
||||
- Total : \$142.69
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-lb1 (nyc1) : \$5.00 (load balancer)
|
||||
- invidious-lb2 (nyc1) : \$5.00 (load balancer)
|
||||
- invidious-lb3 (nyc1) : \$5.00 (load balancer)
|
||||
- invidious-lb4 (nyc1) : \$5.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node5 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node6 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node7 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node8 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node9 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node10 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node11 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node12 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node13 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node14 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node15 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node16 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node17 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node18 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$155.00
|
||||
|
||||
# 0.19.0 (2019-07-13)
|
||||
|
||||
# Version 0.19.0: Communities
|
||||
|
||||
Hello again everyone! Focus this month has mainly been on improving playback performance, along with a couple new features I'd like to announce. There have been [109 commits](https://github.com/omarroth/invidious/compare/0.18.0...0.19.0) this past month from 10 contributors.
|
||||
|
||||
This past month has seen the addition of Chinese (`zh-CN`) and Icelandic (`is`) translations. I would like to give a huge thanks to their respective translators, and again an enormous thanks to everyone who helps translate the site.
|
||||
|
||||
I'm delighted to mention that [FreeTube 0.6.0](https://github.com/FreeTubeApp/FreeTube) now supports 1080p thanks to the Invidious API. I would very much recommend reading the [relevant post](https://freetube.writeas.com/freetube-release-0-6-0-beta-1080p-and-a-lot-of-qol) for some more information on how it works, along with several other major improvements. Folks that are interested in adding similar functionality for their own projects should feel free to get in touch.
|
||||
|
||||
This past month there has been quite a bit of work on improving memory usage and improving download and playback speeds. As mentioned in the previous release, some extra hardware has been allocated which should also help with this. I'm still looking for ways to improve performance and feedback is always appreciated.
|
||||
|
||||
Along with performance, a couple quality of life improvements have been added, including author thumbnails and banners, clickable titles for embedded videos, and better styling for captions, among some other enhancements.
|
||||
|
||||
## Communities
|
||||
|
||||
Support for YouTube's [communities tab](https://creatoracademy.youtube.com/page/lesson/community-tab) has been added. It's a very interesting but surprisingly unknown feature. Essentially, providing comments for a channel, rather than a video, where an author can post updates for their subscribers.
|
||||
|
||||
It's commonly used to promote interesting links and foster discussion. I hope this feature helps people find more interesting content that otherwise would have been overlooked.
|
||||
|
||||
## For Developers
|
||||
|
||||
For accessing channel communities, an `/api/v1/channels/comments/:ucid` endpoint has been added, with similar behavior and schema to `/api/v1/comments/:id`, with an extra `attachment` field for top-level comments. More info on usage and available data can be found in the [wiki](https://github.com/omarroth/invidious/wiki/API#get-apiv1channelscommentsucid-apiv1channelsucidcomments).
|
||||
|
||||
An `/api/v1/auth/feeds` endpoint has been added for programmatically accessing a user's subscription feed, with options for displaying notifications and filtering an existing feed.
|
||||
|
||||
An `/api/v1/search/suggestions` endpoint has been added for retrieving suggestions for a given query.
|
||||
|
||||
## For Administrators
|
||||
|
||||
It is now possible to disable more resource intensive features, such as downloads and DASH functionality by adding `disable_proxy` to your config. See [#453](https://github.com/omarroth/invidious/issues/453) and the [Wiki](https://github.com/omarroth/invidious/wiki/Configuration) for more information and example usage. I expect this to be a big help for folks with limited bandwidth when hosting their own instances.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$38.39
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$84.85
|
||||
- Crypto : ~\$0.00 (converted from BCH, BTC)
|
||||
- Total : \$123.24
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node5 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node6 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node7 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node8 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node9 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node10 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$105.00
|
||||
|
||||
The goal on Patreon has been updated to reflect the above expenses. As mentioned above, the main reason for more hardware is to improve playback and download speeds, although I'm still looking into improving performance without allocating more hardware.
|
||||
|
||||
As always I'm grateful for everyone's support and feedback. I'll see you all next month.
|
||||
|
||||
# 0.18.0 (2019-06-06)
|
||||
|
||||
# Version 0.18.0: Native Notifications and Optimizations
|
||||
|
||||
Hope everyone has been doing well. This past month there have been [97 commits](https://github.com/omarroth/invidious/compare/0.17.0...0.18.0) from 10 contributors. For the most part changes this month have been on optimizing various parts of the site, mainly subscription feeds and support for serving images and other assets.
|
||||
|
||||
I'm quite happy to mention that support for Greek (`el`) has been added, which I hope will continue to make the site accessible for more users.
|
||||
|
||||
Subscription feeds will now only update when necessary, rather than periodically. This greatly lightens the load on DB as well as making the feeds generally more responsive when changing subscriptions, importing data, and when receiving new uploads.
|
||||
|
||||
Caching for images and other assets should be greatly improved with [#456](https://github.com/omarroth/invidious/issues/456). JavaScript has been pulled out into separate files where possible to take advantage of this, which should result in lighter pages and faster load times.
|
||||
|
||||
This past month several people have encountered issues with downloads and watching high quality video through the site, see [#532](https://github.com/omarroth/invidious/issues/532) and [#562](https://github.com/omarroth/invidious/issues/562). For this coming month I've allocated some more hardware which should help with this, and I'm also looking into optimizing how videos are currently served.
|
||||
|
||||
## For Developers
|
||||
|
||||
`viewCount` is now available for `/api/v1/popular` and all videos returned from `/api/v1/auth/notifications`. Both also now provide `"type"` for indicating available information for each object.
|
||||
|
||||
An `/authorize_token` page is now available for more easily creating new tokens for use in applications, see [this comment](https://github.com/omarroth/invidious/issues/473#issuecomment-496230812) in [#473](https://github.com/omarroth/invidious/issues/473) for more details.
|
||||
|
||||
A POST `/api/v1/auth/notifications` endpoint is also now available for correctly returning notifications for 150+ channels.
|
||||
|
||||
## For Administrators
|
||||
|
||||
There are two new schema changes for administrators: `views` for adding view count to the popular page, and `feed_needs_update` for tracking feed changes.
|
||||
|
||||
As always the relevant migration scripts are provided which should run when following instructions for [updating](https://github.com/omarroth/invidious/wiki/Updating). Otherwise, adding `check_tables: true` to your config will automatically make the required changes.
|
||||
|
||||
## Native Notifications
|
||||
|
||||
[<img src="https://omar.yt/81c3ae1839831bd9300d75e273b6552a86dc2352/native_notification.png" height="160" width="472">](https://omar.yt/81c3ae1839831bd9300d75e273b6552a86dc2352/native_notification.png "Example of native notification, available in repository under screnshots/native_notification.png")
|
||||
|
||||
It is now possible to receive [Web notifications](https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API) from subscribed channels.
|
||||
|
||||
You can enable notifications by clicking "Enable web notifications" in your preferences. Generally they appear within 20-60 seconds of a new video being uploaded, and I've found them to be an enormous quality of life improvement.
|
||||
|
||||
Although it has been fairly stable, please feel free to report any issues you find [here](https://github.com/omarroth/invidious/issues) or emailing me directly at omarroth@protonmail.com.
|
||||
|
||||
Important to note for administrators is that instances require [`use_pubsub_feeds`](https://github.com/omarroth/invidious/wiki/Configuration) and must be served over HTTPS in order to correctly send web notifications.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$49.73
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$100.57
|
||||
- Crypto : ~\$11.12 (converted from BCH, BTC)
|
||||
- Total : \$161.42
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node5 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node6 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$85.00
|
||||
|
||||
See you all next month!
|
||||
|
||||
# 0.17.0 (2019-05-06)
|
||||
|
||||
# Version 0.17.0: Player and Authentication API
|
||||
|
||||
Hello everyone! This past month there have been [130 commits](https://github.com/omarroth/invidious/compare/0.16.0..0.17.0) from 11 contributors. Large focus has been on improving the player as well as adding API access for other projects to make use of Invidious.
|
||||
|
||||
There have also been significant changes in preparation of native notifications (see [#195](https://github.com/omarroth/invidious/issues/195), [#469](https://github.com/omarroth/invidious/issues/469), [#473](https://github.com/omarroth/invidious/issues/473), and [#502](https://github.com/omarroth/invidious/issues/502)), and playlists. I expect to see both of these to be added in the next release.
|
||||
|
||||
I'm quite happy to mention that new translations have been added for Esperanto (`eo`) and Ukranian (`uk`). Support for pluralization has also been added, so it should now be possible to make a more native experience for speakers in other languages. The system currently in place is a bit cumbersome, so for any help using this feature please get in touch!
|
||||
|
||||
## For Administrators
|
||||
|
||||
A `check_tables` option has been added to automatically migrate without the use of custom scripts. This method will likely prove to be much more robust, and is currently enabled for the official instance. To prevent any unintended changes to the DB, `check_tables` is disabled by default and will print commands before executing. Having this makes features that require schema changes much easier to implement, and also makes it easier to upgrade from older instances.
|
||||
|
||||
As part of [#303](https://github.com/omarroth/invidious/issues/303), a `cache_annotations` option has been added to speed up access from `/api/v1/annotations/:id`. This vastly improves the experience for videos with annotations. Currently, only videos that contain legacy annotations will be cached, which should help keep down the size of the cache. `cache_annotations` is disabled by default.
|
||||
|
||||
## For Developers
|
||||
|
||||
An authorization API has been added which allows other applications to read and modify user subscriptions and preferences (see [#473](https://github.com/omarroth/invidious/issues/473)). Support for accessing user feeds and notifications is also planned. I believe this feature is a large step forward in supporting syncing subscriptions and preferences with other services, and I'm excited to see what other developers do with this functionality.
|
||||
|
||||
Support for server-to-client push notifications is currently underway. This allows Invidious users, as well as applications using the Invidious API, to receive notifications about uploads in near real-time (see #469). An `/api/v1/auth/notifications` endpoint is currently available. I'm very excited for this to be integrated into the site, and to see how other developers use it in their own projects.
|
||||
|
||||
An `/api/v1/storyboards/:id` endpoint has been added for accessing storyboard URLs, which allows developers to add video previews to their players (see below).
|
||||
|
||||
## Player
|
||||
|
||||
Support for annotations has been merged into master with [#303](https://github.com/omarroth/invidious/issues/303), thanks @glmdgrielson! Annotations can be enabled by default or only for subscribed channels, and can also be toggled per video. I'm extremely proud of the progress made here, and I'm so thankful to everyone that has made this possible. I expect this to be the last update with regards to supporting annotations, but I do plan on continuing to improve the experience as much as possible.
|
||||
|
||||
The Invidious player now supports video previews and a corresponding API endpoint `/api/v1/storyboards/:id` has been added for developers looking to add similar functionality to their own players. Not much else to say here. Overall it's a very nice quality of life improvement and an attractive addition to the site.
|
||||
|
||||
It is now possible to select specific sources for videos provided using DASH (see [#34](https://github.com/omarroth/invidious/issues/34)). I would consider support largely feature complete, although there are still several issues to be fixed before I would consider it ready for larger rollout. You can watch videos in 1080p by setting `Default quality` to `dash` in your preferences, or by adding `&quality=dash` to the end of video URLs.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$49.73
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$63.03
|
||||
- Crypto : ~\$0.00 (converted from BCH, BTC)
|
||||
- Total : \$112.76
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node5 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$80.00
|
||||
|
||||
That's all for now. Thanks!
|
||||
|
||||
# 0.16.0 (2019-04-06)
|
||||
|
||||
# Version 0.16.0: API Improvements and Annotations
|
||||
|
||||
Hello again! This past month has seen [116 commits](https://github.com/omarroth/invidious/compare/0.15.0..0.16.0) from 13 contributors and a couple important changes I'd like to announce.
|
||||
|
||||
A privacy policy is now available [here](https://invidio.us/privacy). I've done my best to explain things as clearly as possible without oversimplifying, and would very much recommend reading it if you're concerned about your privacy and want to learn more about how Invidious uses your data. Please let me know if there is anything that needs clarification.
|
||||
|
||||
I'm also very happy to announce that a Spanish translation has been added to the site. You can use it with `?hl=es` or by setting `es` as your default locale. As always I'm extremely grateful to translators for making the site accessible to more people.
|
||||
|
||||
## For Administrators
|
||||
|
||||
Invidious now supports server-to-server [push notifications](https://developers.google.com/youtube/v3/guides/push_notifications). This uses [PubSubHubbub](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html) to automatically handle new videos sent to an instance, which is less resource intensive and generally faster. Note that it will not pull all videos from a subscribed channel, so recommended usage is in addition to `channel_threads`. Using PubSub requires a valid `domain` that updates can be sent to, and a random string that can be used to sign updates sent to the instance. You can enable it by adding `use_pubsub_feeds: true` to your `config.yml`. See [Configuration](https://github.com/omarroth/invidious/wiki/Configuration) for more info.
|
||||
|
||||
Unfortunately there are a couple necessary changes to the DB to support `liveNow` and `premiereTimestamp` in subscription feeds. Migration scripts have been provided that should be used automatically if following the instructions [here](https://github.com/omarroth/invidious/wiki/Updating).
|
||||
|
||||
You can now configure default user preferences for your instance. This allows you to set default locale, player preferences, and more. See [#415](https://github.com/omarroth/invidious/issues/415) for more details and example usage.
|
||||
|
||||
## For Developers
|
||||
|
||||
The [fields](https://developers.google.com/youtube/v3/getting-started#fields) API has been added with [#429](https://github.com/omarroth/invidious/pull/429) and is now supported on all JSON endpoints, thanks [**@afrmtbl**](https://github.com/afrmtbl)! Synax is straight-forward and can be used to reduce data transfer and create a simpler response for debugging. You can see an example [here](https://invidio.us/api/v1/videos/CvFH_6DNRCY?pretty=1&fields=title,recommendedVideos/title). I've been quite happy using it and hope it is similarly useful for others.
|
||||
|
||||
An `/api/v1/annotations/:id` endpoint has been added for pulling legacy annotation data from [this](https://archive.org/details/youtubeannotations) archive, see below for more details. You can also access annotation data available on YouTube using `?source=youtube`, although this will only return card data as legacy annotations were deleted on January 15th.
|
||||
|
||||
A couple minor changes to existing endpoints:
|
||||
|
||||
- A `premiereTimestamp` field has been added to `/api/v1/videos/:id`
|
||||
- A `sort_by` param has been added to `/api/v1/comments/:id`, supports `new`, `top`.
|
||||
|
||||
More info is available in the [documentation](https://github.com/omarroth/invidious/wiki/API).
|
||||
|
||||
## Annotations
|
||||
|
||||
I'm pleased to announce that annotation data is finally available from the roughly 1.4 billion videos archived as part of [this](https://www.reddit.com/r/DataHoarder/comments/aa6czg/youtube_annotation_archive/) project. They are accessible from the Internet Archive [here](https://archive.org/details/youtubeannotations) or as a 355GB torrent, see [here](https://www.reddit.com/r/DataHoarder/comments/b7imx9/youtube_annotation_archive_annotation_data_from/) for more details. A corresponding `/api/v1/annotations/:id` endpoint has been added to Invidious which uses the collection from IA to provide legacy annotations.
|
||||
|
||||
Support for them in the player is possible thanks to [this](https://github.com/afrmtbl/videojs-youtube-annotations) plugin developed by [**@afrmtbl**](https://github.com/afrmtbl). A PR for adding support to the site is available as [#303](https://github.com/omarroth/invidious/pull/303). There's also an [extension](https://github.com/afrmtbl/AnnotationsRestored) for overlaying them on top of the YouTube player (again thanks to [**@afrmtbl**](https://github.com/afrmtbl)), and an [extension](https://tech234a.bitbucket.io/AnnotationsReloaded?src=invidious) for hooking into code still present in the YouTube player itself, developed by [**@tech234a**](https://github.com/tech234a).
|
||||
|
||||
I would recommend reading the [official announcement](https://www.reddit.com/r/DataHoarder/comments/b7imx9/youtube_annotation_archive_annotation_data_from/) for more details. I would like to again thank everyone that helped contribute to this project.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$42.42
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$70.11
|
||||
- Crypto : ~\$1.76 (converted from BCH, BTC, BSV)
|
||||
- Total : \$114.29
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node5 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$80.00
|
||||
|
||||
This past month the site saw a couple abnormal peaks in traffic, so an additional webserver has been added to match the increased load. The goal on Patreon has been updated to match the above expenses.
|
||||
|
||||
Thanks everyone!
|
||||
|
||||
# 0.15.0 (2019-03-06)
|
||||
|
||||
## Version 0.15.0: Preferences and Channel Playlists
|
||||
|
||||
The project has seen quite a bit of activity this past month. Large focus has been on fixing bugs, but there's still quite a few new features I'm happy to announce. There have been [133 commits](https://github.com/omarroth/invidious/compare/0.14.0...0.15.0) from 15 contributors this past month.
|
||||
|
||||
As a couple miscellaneous changes, a couple [nice screenshots](https://github.com/omarroth/invidious#screenshots) have been added to the README, so folks can see more of what the site has to offer without creating an account.
|
||||
|
||||
The footer has also been cleaned up quite a bit, and now displays the current version, so it's easier to know what features are available from the current instance.
|
||||
|
||||
## For Administrators
|
||||
|
||||
This past month there has been a minor release - `0.14.1` - which fixes a breaking change made by YouTube for their polymer redesign.
|
||||
|
||||
There have been several new features that unfortunately require a database migration. There are migration scripts provided in `config/migrate-scripts`, and the [wiki](https://github.com/omarroth/invidious/wiki/Updating) has instructions for automatically applying them. I'll do my best to keep those changes to a minimum, and expect to see a corresponding script to automatically apply any new changes.
|
||||
|
||||
Administrator preferences have been added with [#312](https://github.com/omarroth/invidious/issues/312), which allows administrators to customize their instance. Administrators can change the order of feed menus, change the default homepage, disable open registration, and several other options. There's a short 'how-to' [here](https://github.com/omarroth/invidious/issues/312#issuecomment-468831842), and the new options are documented [here](https://github.com/omarroth/invidious/wiki/Configuration).
|
||||
|
||||
An `/api/v1/stats` endpoint has been added with [#356](https://github.com/omarroth/invidious/issues/356), which reports the instance version and number of active users. Statistics are disabled by default, and can be enabled in administator preferences. Statistics for the official instance are available [here](https://invidio.us/api/v1/stats?pretty=1).
|
||||
|
||||
## For Developers
|
||||
|
||||
`/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.
|
||||
|
||||
For quickly pulling the latest 30 videos from a channel, there is now `/api/v1/channels/latest/:ucid`. It is much faster than a call to `/api/v1/channels/:ucid`. It will not convert an author name to a valid ucid automatically, and will not return any extra data about a channel.
|
||||
|
||||
## Preferences
|
||||
|
||||
In addition to administrator preferences mentioned above, you can now change your preferences without an account (see [#42](https://github.com/omarroth/invidious/pull/42)). I think this is quite an improvement to the usability of the site, and is much friendlier to privacy-conscious folks that don't want to make an account. Preferences will be automatically imported to a newly created account.
|
||||
|
||||
Several issues with sorting subscriptions have been fixed, and `/manage_subscriptions` has been sped up significantly. The subscription feed has also seen a bump in performance. Delayed notifications have unfortunately started becoming a problem now that there are more users on the site. Some new changes are currently being tested which should mostly resolve the issue, so expect to see more in the next release.
|
||||
|
||||
## Channel Playlists
|
||||
|
||||
You can now view available playlists from a channel, and [auto-generated channels](https://invidio.us/channel/UC-9-kyTW8ZkZNDHQJ6FgpwQ) are no longer empty. You can sort as you would on YouTube, and all the same functionality should be available. I'm quite pleased to finally have it implemented, since it's currently the only data available from the above mentioned auto-generated channels, and makes it much easier to consume music on the site.
|
||||
|
||||
There's also more discussion on improving Invidious for streaming music in [#304](https://github.com/omarroth/invidious/issues/304), and adding support for music.youtube.com. I would appreciate any thoughts on how to improve that experience, since it's a very large and useful part of YouTube.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$42.42
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$30.97
|
||||
- Crypto : ~\$0.00 (converted from BCH, BTC)
|
||||
- Total : \$73.39
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$75.00
|
||||
|
||||
It's been very humbling to see how fast the project has grown, and I look forward to making the site even better. Thank you everyone.
|
||||
|
||||
# 0.14.0 (2019-02-06)
|
||||
|
||||
## Version 0.14.0: Community
|
||||
|
||||
This last month several contributors have made improvements specifically for the people using this project. New pages have been added to the wiki, and there is now a [Matrix Server](https://riot.im/app/#/room/#invidious:matrix.org) and IRC channel so it's easier and faster for people to ask questions or chat. There have been [101 commits](https://github.com/omarroth/invidious/compare/0.13.0...0.14.0) since the last major release from 8 contributors.
|
||||
|
||||
It has come to my attention in the past month how many people are self-hosting, and I would like to make it easier for them to do so.
|
||||
|
||||
With that in mind, expect future releases to have a section for For Administrators (if any relevant changes) and For Developers (if any relevant changes).
|
||||
|
||||
## For Administrators
|
||||
|
||||
This month the most notable change for administrators is releases. As always, there will be a major release each month. However, a new minor release will be made whenever there are any critical bugs that need to be fixed.
|
||||
|
||||
This past month is the first time there has been a minor release - `0.13.1` - which fixes a breaking change made by YouTube. Administrators using versioning for their instances will be able to rely on the latest version, and should have a system in place to upgrade their instance as soon as a new release is available.
|
||||
|
||||
Several new pages have been added to the [wiki](https://github.com/omarroth/invidious/wiki#for-administrators) (as mentioned below) that will help administrators better setup their own instances. Configuration, maintenance, and instructions for updating are of note, as well as several common issues that are encountered when first setting up.
|
||||
|
||||
## For Developers
|
||||
|
||||
There's now a `pretty=1` parameter for most endpoints so you can view data easily from the browser, which is convenient for debugging and casual use. You can see an example [here](https://invidio.us/api/v1/videos/CvFH_6DNRCY?pretty=1).
|
||||
|
||||
Unfortunately the `/api/v1/insights/:id` endpoint is no longer functional, as YouTube removed all publicly available analytics around a month ago. The YouTube endpoint now returns a 404, so it's unlikely it will be functional again.
|
||||
|
||||
## Wiki
|
||||
|
||||
There have been a sizable number of changes to the Wiki, including a [list of public Invidious instances](https://github.com/omarroth/invidious/wiki/Invidious-Instances), the [list of extensions](https://github.com/omarroth/invidious/wiki/Extensions), and documentation for administrators (as mentioned above) and developers.
|
||||
|
||||
The wiki is editable by anyone so feel free to add anything you think is useful.
|
||||
|
||||
## Matrix & IRC
|
||||
|
||||
Thee is now a [Matrix Server](https://riot.im/app/#/room/#invidious:matrix.org) for Invidious, so please feel free to hop on if you have any questions or want to chat. There is also a registered IRC channel: #invidious on Freenode which is bridged to Matrix.
|
||||
|
||||
## Features
|
||||
|
||||
Several new features have been added, including a download button, creator hearts and comment colors, and a French translation.
|
||||
|
||||
There have been fixes for Google logins, missing text in locales, invalid links to genre channels, and better error handling in the player, among others.
|
||||
|
||||
Several fixes and features are omitted for space, so I'd recommend taking a look at the [compare tab](https://github.com/omarroth/invidious/compare/0.13.0...0.14.0) for more information.
|
||||
|
||||
## Annotations Update
|
||||
|
||||
Annotations were removed January 15th, 2019 around15:00 UTC. Before they were deleted we were able to archive annotations from around 1.4 billion videos. I'd very much recommend taking a look [here](https://www.reddit.com/r/DataHoarder/comments/al7exa/youtube_annotation_archive_update_and_preview/) for more information and a list of acknowledgements. I'm extremely thankful to everyone who was able to contribute and I'm glad we were able to save such a large part of internet history.
|
||||
|
||||
There's been large strides in supporting them in the player as well, which you can follow in [#303](https://github.com/omarroth/invidious/pull/303). You can preview the functionality at https://dev.invidio.us . Before they are added to the main site expect to see an option to disable them, both site-wide and per video.
|
||||
|
||||
Organizing this project has unfortunately taken up quite a bit of my time, and I've been very grateful for everyone's patience.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth) : \$49.42
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$27.89
|
||||
- Crypto : ~\$0.00 (converted from BCH, BTC)
|
||||
- Total : \$77.31
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$75.00
|
||||
|
||||
As always I'm grateful for everyone's contributions and support. I'll see you all in March.
|
||||
|
||||
# 0.13.1 (2019-01-19)
|
||||
|
||||
##
|
||||
|
||||
# 0.13.0 (2019-01-06)
|
||||
|
||||
## Version 0.13.0: Translations, Annotations, and Tor
|
||||
|
||||
I hope everyone had a happy New Year! There's been a couple new additions since last release, with [44 commits](https://github.com/omarroth/invidious/compare/0.12.0...0.13.0) from 9 contributors. It's been quite a year for the project, and I hope to continue improving the project into 2019! Starting off the new year:
|
||||
|
||||
## Translations
|
||||
|
||||
I'm happy to announce support for translations has been added with [`a160c64`](https://github.com/omarroth/invidious/a160c64). Currently, there is support for:
|
||||
|
||||
- Arabic (`ar`)
|
||||
- Dutch (`nl`)
|
||||
- English (`en-US`)
|
||||
- German (`de`)
|
||||
- Norwegian Bokmål (`nb_NO`)
|
||||
- Polish (`pl`)
|
||||
- Russian (`ru`)
|
||||
|
||||
Which you can change in your preferences under `Language`. You can also add `&hl=LANGUAGE` to the end of any request to translate it to your preferred language, for example https://invidio.us/?hl=ru. I'd like to say thank you again to everyone who has helped translate the site! I've mentioned this before, but I'm delighted that so many people find the project useful.
|
||||
|
||||
## Annotations
|
||||
|
||||
Recently, [YouTube announced that all annotations will be deleted on January 15th, 2019](https://support.google.com/youtube/answer/7342737). I believe that annotations have a very important place in YouTube's history, and [announced a project to archive them](https://www.reddit.com/r/DataHoarder/comments/aa6czg/youtube_annotation_archive/).
|
||||
|
||||
I expect annotations to be supported in the Invidious player once archiving is complete (see [#110](https://github.com/omarroth/invidious/issues/110) for details), and would also like to host them for other developers to use in their projects.
|
||||
|
||||
The code is available [here](https://github.com/omarroth/archive), and contains instructions for running a worker if you would like to contribute. There's much more information available in the announcement as well for anyone who is interested.
|
||||
|
||||
## Tor
|
||||
|
||||
I unfortunately missed the chance to mention this in the previous release, but I'm now happy to announce that you can now view Invidious through Tor at the following links:
|
||||
|
||||
kgg2m7yk5aybusll.onion
|
||||
axqzx4s6s54s32yentfqojs3x5i7faxza6xo3ehd4bzzsg2ii4fv2iid.onion
|
||||
|
||||
Invidious is well suited to use through Tor, as it does not require any JS and is fairly lightweight. I'd recommend looking [here](https://diasp.org/posts/10965196) and [here](https://www.reddit.com/r/TOR/comments/a3c1ak/you_can_now_watch_youtube_videos_anonymously_with/) for more details on how to use the onion links, and would like to say thank you to [/u/whonix-os](https://www.reddit.com/user/whonix-os) for suggesting it and providing support setting setting them up.
|
||||
|
||||
## Popular and Trending
|
||||
|
||||
You can now easily view videos trending on YouTube with [`a16f967`](https://github.com/omarroth/invidious/a16f967). It also provides support for viewing YouTube's various categories categories, such as `News`, `Gaming`, and `Music`. You can also change the `region` parameter to view trending in different countries, which should be made easier to use in the coming weeks.
|
||||
|
||||
A link to `/feed/popular` has also been added, which provides a list of videos sorted using the algorithm described [here](https://github.com/omarroth/invidious/issues/217#issuecomment-436503761). I think it better reflects what users watch on the site, but I'd like to hear peoples' thoughts on this and on how it could be improved.
|
||||
|
||||
## Finances
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth): \$64.63
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$30.05
|
||||
- Crypto : ~\$28.74 (converted from BCH, BTC)
|
||||
- Total : \$123.42
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$75.00
|
||||
|
||||
### What will happen with what's left over?
|
||||
|
||||
I believe this is the first month that all expenses have been fully paid for by donations. Thank you! I expect to allocate the current amount for hardware to improve performance and for hosting annotation data, as mentioned above.
|
||||
|
||||
Anything that is left over is kept to continue hosting the project for as long as possible. Thank you again everyone!
|
||||
|
||||
I think that's everything for 2018. There's lots still planned, and I'm very excited for the future of this project!
|
||||
|
||||
# 0.12.0 (2018-12-06)
|
||||
|
||||
## Version 0.12.0: Accessibility, Privacy, Transparency
|
||||
|
||||
Hello again, it's been a while! A lot has happened since the last release. Invidious has seen [134 commits](https://github.com/omarroth/invidious/compare/0.11.0...0.12.0) from 3 contributors, and I'm quite happy with the progress that has been made. I enjoyed this past month, and I believe having a monthly release schedule allows me to focus on more long-term improvements, and I hope people enjoy these more substantial updates as well.
|
||||
|
||||
## Accessability and Privacy
|
||||
|
||||
There have been quite a few improvements for user privacy, and improvements that improve accessibility for both people and software.
|
||||
|
||||
You can now view comments without JS with [`19516ea`](https://github.com/omarroth/invidious/19516ea). Currently, this functionality is limited to the first 20 comments, but expect this functionality to be improved to come as close to the JS version as possible. Folks can track progress in [#204](https://github.com/omarroth/invidious/issues/204).
|
||||
|
||||
Invidious is now compatible with [LibreJS](https://www.gnu.org/software/librejs/), and provides license information [here](https://invidio.us/licenses) with [`7f868ec`](https://github.com/omarroth/invidious/7f868ec). As expected, all libraries are compatible under the AGPLv3, and I'm happy to mention that no other changes were required to make Invidious compatible with LibreJS.
|
||||
|
||||
A DNT policy has also been added with [`9194f47`](https://github.com/omarroth/invidious/9194f47) for compatibility with [Privacy Badger](https://www.eff.org/privacybadger). I'm pleased to mention that here too no other changes had to be made in order for Invidious to be compatible with this extension. I expect a privacy policy to be added soon as well, so users can better understand how Invidious uses their data.
|
||||
|
||||
For users that are visually impaired, there is now a text CAPTCHA available so it's easier to register and login. Because of the simple front-end of the project, I expect screen readers and other software to be able to easily understand the site's interface. In combination with the ability to listen-only, I believe Invidious is much more accessible than YouTube. Folks can read [#244](https://github.com/omarroth/invidious/issues/244) for more details, and I would very much appreciate any feedback on how this can be improved.
|
||||
|
||||
## User Preferences
|
||||
|
||||
There have been a lot of improvements to preferences. Options for enabling audio-only by default and continuous playback (autoplay) have been added with [`e39dec9`](https://github.com/omarroth/invidious/e39dec9), with [`4b76b93`](https://github.com/omarroth/invidious/4b76b93), respectively. Users can also now mark videos as watched from their subscription feed and view watch history by going to https://invidio.us/feed/history. I expect to add more information to history so that it's easier to use. Folks can track progress with [#182](https://github.com/omarroth/invidious/issues/182). As with all data Invidious keeps, watch history can be exported [here](https://invidio.us/data_control).
|
||||
|
||||
Users can now delete their account with [`b9c29bf`](https://github.com/omarroth/invidious/b9c29bf). This will remove _all_ user data from Invidious, including session IDs, watch history, and subscriptions. As mentioned above, it's easy to export that data and import it to a local instance, or export subscriptions for use with other applications such as [FreeTube](https://github.com/FreeTubeApp/FreeTube) or [NewPipe](https://github.com/TeamNewPipe/NewPipe).
|
||||
|
||||
## Translation and Internationalis(z)ation
|
||||
|
||||
Invidious has been approved for hosting by Weblate, available [here](https://hosted.weblate.org/projects/invidious/translations/). At the time of writing, translations for Arabic, Dutch, German, Polish, and Russian are currently underway. I would like to say a very big thank you to everyone working on them, and I hope to fully support them within around 2 weeks. Folks can track progress with [#251](https://github.com/omarroth/invidious/issues/251).
|
||||
|
||||
## Transperency and Finances
|
||||
|
||||
For the sake of transparency, I plan on publishing each month's finances. This is currently already done on Liberapay and Patreon, but there is not a total amount currently provided anywhere, and I would also like to include expenses to provide a better explanation of how patrons' money is being spent.
|
||||
|
||||
### Donations
|
||||
|
||||
- [Patreon](https://www.patreon.com/omarroth): \$43.60 (Patreon takes roughly 9%)
|
||||
- [Liberapay](https://liberapay.com/omarroth) : \$22.10
|
||||
- Crypto : ~\$1.25 (converted from BCH, BTC)
|
||||
- Total : \$66.95
|
||||
|
||||
### Expenses
|
||||
|
||||
- invidious-load1 (nyc1) : \$10.00 (load balancer)
|
||||
- invidious-update1 (s-1vcpu-1gb) : \$5.00 (updates feeds)
|
||||
- invidious-node1 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node2 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node3 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-node4 (s-1vcpu-1gb) : \$5.00 (web server)
|
||||
- invidious-db1 (s-4vcpu-8gb) : \$40.00 (database)
|
||||
- Total : \$75.00
|
||||
|
||||
I'd be happy to provide any explanation where needed. I would also like to thank everyone who donates, it really helps and I can't say how happy I am to see that so many people find it valuable.
|
||||
|
||||
That's all for this month. I wish everyone the best for the holidays, and I'll see you all again in January!
|
||||
|
||||
# 0.11.0 (2018-10-23)
|
||||
|
||||
## Week 11: FreeTube and Styling
|
||||
|
||||
This past Friday I'm been very excited to see that FreeTube version [0.4.0](https://github.com/FreeTubeApp/FreeTube/tree/0.4.0) has been released! I'd recommend taking a look at the official patch notes, but to spoil a little bit here: FreeTube now uses the Invidious API for _all_ requests previously sent to YouTube, and has also seen support for playlists, keyboard shortcuts, and more default settings (speed, autoplay, and subtitles). I'm happy to see that FreeTube has reached 500 stars on Github, and I think it's very much deserved. I'd recommend keeping an eye on the newly-launched [FreeTube blog](https://freetube.writeas.com/) for updates on the project.
|
||||
|
||||
Quite a few styling changes have been added this past week, including channel subscriber count to the subscribe and unsubscribe buttons. The changes sound small, but they've been a very big improvement and I'm quite satisfied with how they look. Also to note is that partial support for duration in thumbnails have been added with [#202](https://github.com/omarroth/invidious/issues/202). Overall, I think the site is becoming much more pleasing visually, and I hope to continue to improve it.
|
||||
|
||||
I've been very pleased to see Invidious in its current state, and I believe it's many times more mature compared to even a month ago. Changes have also started slowing down a bit as it's become more mature, and therefore I'd like to transition to a monthly update schedule in order to provide more comprehensive updates for everyone. I want to thank you all for helping me reach this point. I can't say how happy I am for Invidious to be where it is now.
|
||||
|
||||
Enjoy the rest of your week everyone, I'll see you in November!
|
||||
|
||||
# 0.10.0 (2018-10-16)
|
||||
|
||||
## Week 10: Subscriptions
|
||||
|
||||
This week I'm happy to announce that subscriptions have been drastically sped up with
|
||||
35e63fa. As I mentioned last week, this essentially "caches" a user's feed, meaning that operations that previously took 20 seconds or timed out, now can load in under a second. I'd take a look at [#173](https://github.com/omarroth/invidious/issues/173) for a sample benchmark. Previously features that made Invidious's feed so useful, such as filtering by unseen and by author would take too long to load, and so instead would timeout. I'm very happy that this has been fixed, and folks can get back to using these features.
|
||||
|
||||
Among some smaller features that have been added this week include [#118](https://github.com/omarroth/invidious/issues/118), which adds, in my opinion, some very attractive subscribe and unsubscribe buttons. I think it's also a bit of a functional improvement as well, since it doesn't require a user to reload the page in order to subscribe or unsubscribe to a channel, and also gives the opportunity to put the channel's sub count on display.
|
||||
|
||||
An option to swap between Reddit and YouTube comments without a page reload has been added with
|
||||
5eefab6, bringing it somewhat closer in functionality to the popular [AlienTube](https://github.com/xlexi/alientube) extension, on which it is based (although the extension unfortunately appears now to be fragmented).
|
||||
|
||||
As always, there are a couple smaller improvements this week, including some minor fixes for geo-bypass with
|
||||
e46e618 and [`245d0b5`](https://github.com/omarroth/invidious/245d0b5), playlist preferences with [`81b4477`](https://github.com/omarroth/invidious/81b4477), and YouTube comments with [`02335f3`](https://github.com/omarroth/invidious/02335f3).
|
||||
|
||||
This coming week I'd also recommend keeping an eye on the excellent [FreeTube](https://github.com/FreeTubeApp/FreeTube), which is looking forward to a new release. I've been very lucky to work with [**@PrestonN**](https://github.com/PrestonN) for the past few weeks to improve the Invidious API, and I'm quite looking forward to the new release.
|
||||
|
||||
That's all for this week folks, thank you all again for your continued interest and support.
|
||||
|
||||
# 0.9.0 (2018-10-08)
|
||||
|
||||
## Week 9: Playlists
|
||||
|
||||
Not as much to announce this week, but I'm still quite happy to announce a couple things, namely:
|
||||
|
||||
Playback support for playlists has finally been added with [`88430a6`](https://github.com/omarroth/invidious/88430a6). You can now view playlists with the `&list=` query param, as you would on YouTube. You can also view mixes with the mentioned `&list=`, although they require some extra handling that I would like to add in the coming week, as well as adding playlist looping and shuffle. I think playback support has been a roadblock for more exciting features such as [#114](https://github.com/omarroth/invidious/issues/114), and I look forward to improving the experience.
|
||||
|
||||
Comments have had a bit of a cosmetic upgrade with [#132](https://github.com/omarroth/invidious/issues/132), which I think helps better distinguish between Reddit and YouTube comments, as it makes them appear similarly to their respective sites. You can also now switch between YouTube and Reddit comments with a push of a button, which I think is quite an improvement, especially for newer or less popular videos with fewer comments.
|
||||
|
||||
I've had a small breakthrough in speeding up users' subscription feeds with PostgreSQL's [materialized views](https://www.postgresql.org/docs/current/static/rules-materializedviews.html). Without going into too much detail, materialized views essentially cache the result of a query, making it possible to run resource-intensive queries once, rather than every time a user visits their feed. In the coming week I hope to push this out to users, and hopefully close [#173](https://github.com/omarroth/invidious/issues/173).
|
||||
|
||||
I haven't had as much time to work on the project this week, but I'm quite happy to have added some new features. Have a great week everyone.
|
||||
|
||||
# 0.8.0 (2018-10-02)
|
||||
|
||||
## Week 8: Mixes
|
||||
|
||||
Hello again!
|
||||
|
||||
Mixes have been added with [`20130db`](https://github.com/omarroth/invidious/20130db), which makes it easy to create a playlist of related content. See [#188](https://github.com/omarroth/invidious/issues/188) for more info on how they work. Currently, they return the first 50 videos rather than a continuous feed to avoid tracking by Google/YouTube, which I think is a good trade-off between usability and privacy, and I hope other folks agree. You can create mixes by adding `RD` to the beginning of a video ID, an example is provided [here](https://www.invidio.us/mix?list=RDYE7VzlLtp-4) based on Big Buck Bunny. I've been quite happy with the results returned for the mixes I've tried, and it is not limited to music, which I think is a big plus. To emulate a continuous feed provided many are used to, using the last video of each mix as a new 'seed' has worked well for me. In the coming week I'd like to to add playback support in the player to listen to these easily.
|
||||
|
||||
A very big thanks to [**@flourgaz**](https://github.com/flourgaz) for Docker support with [#186](https://github.com/omarroth/invidious/pull/186). This is an enormous improvement in portability for the project, and opens the door for Heroku support (see [#162](https://github.com/omarroth/invidious/issues/162)), and seamless support on Windows. For most users, it should be as easy as running `docker-compose up`.
|
||||
|
||||
I've spent quite a bit of time this past week improving support for geo-bypass (see [#92](https://github.com/omarroth/invidious/issues/92)), and am happy to note that Invidious has been able to proxy ~50% of the geo-restricted videos I've tried. In addition, you can now watch geo-restricted videos if you have `dash` enabled as your `preferred quality`, for more details see [#34](https://github.com/omarroth/invidious/issues/34) and [#185](https://github.com/omarroth/invidious/issues/185), or last week's update. For folks interested in replicating these results for themselves, I'd take a look [here](https://gist.github.com/omarroth/3ce0f276c43e0c4b13e7d9cd35524688) for the script used, and [here](https://gist.github.com/omarroth/beffc4a76a7b82a422e1b36a571878ef) for a list of videos restricted in the US.
|
||||
|
||||
1080p has seen a fairly smooth roll-out, although there have been a couple issues reported, mainly [#193](https://github.com/omarroth/invidious/issues/193), which is likely an issue in the player. I've also encountered a couple other issues myself that I would like to investigate. Although none are major, I'd like to keep 1080p opt-in for registered users another week to better address these issues.
|
||||
|
||||
Have an excellent week everyone.
|
||||
|
||||
# 0.7.0 (2018-09-25)
|
||||
|
||||
## Week 7: 1080p and Search Types
|
||||
|
||||
Hello again everyone! I've got quite a couple announcements this week:
|
||||
|
||||
Experimental 1080p support has been added with [`b3ca392`](https://github.com/omarroth/invidious/b3ca392), and can be enabled by going to preferences and changing `preferred video quality` to `dash`. You can find more details [here](https://github.com/omarroth/invidious/issues/34#issuecomment-424171888). Currently quality and speed controls have not yet been integrated into the player, but I'd still appreciate feedback, mainly on any issues with buffering or DASH playback. I hope to integrate 1080p support into the player and push support site-wide in the coming weeks.
|
||||
|
||||
You can now filter content types in search with the `type:TYPE` filter. Supported content types are `playlist`, `channel`, and `video`. More info is available [here](https://github.com/omarroth/invidious/issues/126#issuecomment-423823148). I think this is quite an improvement in usability and I hope others find the same.
|
||||
|
||||
A [CHANGELOG](https://github.com/omarroth/invidious/blob/master/CHANGELOG.md) has been added to the repository, so folks will now receive a copy of all these updates when cloning. I think this is an improvement in hosting the project, as it is no longer tied to the `/releases` tab on Github or the posts on Patreon.
|
||||
|
||||
Recently, users have been reporting 504s when attempting to access their subscriptions, which is tracked in [#173](https://github.com/omarroth/invidious/issues/173). This is most likely caused by an uptick in usage, which I am absolutely grateful for, but unfortunately has resulted in an increase in costs for hosting the site, which is why I will be bumping my goal on Patreon from $60 to $80. I would appreciate any feedback on how subscriptions could be improved.
|
||||
|
||||
Other minor improvements include:
|
||||
|
||||
- Additional regions added to bypass geo-block with [`9a78523`](https://github.com/omarroth/invidious/9a78523)
|
||||
- Fix for playlists containing less than 100 videos (previously shown as empty) with [`35ac887`](https://github.com/omarroth/invidious/35ac887)
|
||||
- Fix for `published` date for Reddit comments (previously showing negative seconds) with [`6e09202`](https://github.com/omarroth/invidious/6e09202)
|
||||
|
||||
Thank you everyone for your support!
|
||||
|
||||
# 0.6.0 (2018-09-18)
|
||||
|
||||
## Week 6: Filters and Thumbnails
|
||||
|
||||
Hello again! This week I'm happy to mention a couple new features to search as well as some miscellaneous usability improvements.
|
||||
|
||||
You can now constrain your search query to a specific channel with the `channel:CHANNEL` filter (see [#165](https://github.com/omarroth/invidious/issues/165) for more details). Unfortunately, other search filters combined with channel search are not yet supported. I hope to add support for them in the coming weeks.
|
||||
|
||||
You can also now search only your subscriptions by adding `subscriptions:true` to your query (see [#30](https://github.com/omarroth/invidious/issues/30) for more details). It's not quite ready for widespread use but I would appreciate feedback as the site updates to fully support it. Other search filters are not yet supported with `subscriptions:true`, but I hope to add more functionality to this as well.
|
||||
|
||||
With [#153](https://github.com/omarroth/invidious/issues/153) and [#168](https://github.com/omarroth/invidious/issues/168) all images on the site are now proxied through Invidious. In addition to offering the user more protection from Google's eyes, it also allows the site to automatically pick out the highest resolution thumbnail for videos. I think this is quite a large aesthetic improvement and I hope others will find the same.
|
||||
|
||||
As a smaller improvement to the site, you can also now view RSS feeds for playlists with [#113](https://github.com/omarroth/invidious/issues/113).
|
||||
|
||||
These updates are also now listed under Github's [releases](https://github.com/omarroth/invidious/releases). I'm also planning on adding them as a `CHANGELOG.md` in the repository itself so people can receive a copy with the project's source.
|
||||
|
||||
That's all for this week. Thank you everyone for your support!
|
||||
|
||||
# 0.5.0 (2018-09-11)
|
||||
|
||||
## Week 5: Privacy and Security
|
||||
|
||||
I hope everyone had a good weekend! This past week I've been fixing some issues that have been brought to my attention to help better protect users and help them keep their anonymity.
|
||||
|
||||
An issue with open referers has been fixed with [`29a2186`](https://github.com/omarroth/invidious/29a2186), which prevents potential redirects to external sites on actions such as login or modifying preferences.
|
||||
|
||||
Additionally, X-XSS-Protection, X-Content-Type-Options, and X-Frame-Options headers have been added with [`96234e5`](https://github.com/omarroth/invidious/96234e5), which should keep users safer while using the site.
|
||||
|
||||
A potential XSS vector has also been fixed in YouTube comments with [`8c45694`](https://github.com/omarroth/invidious/8c45694).
|
||||
|
||||
All the above vulnerabilities were brought to my attention by someone who wishes to remain anonymous, but I would like to say again here how thankful I am. If anyone else would like to get in touch please feel free to email me at omarroth@hotmail.com or omarroth@protonmail.com.
|
||||
|
||||
This week a couple changes have been made to better protect user's privacy as well.
|
||||
All CSS and JS assets are now served locally with [`3ec684a`](https://github.com/omarroth/invidious/3ec684a), which means users no longer need to whitelist unpkg.com. Although I personally have encountered few issues, I understand that many folks would like to keep their browsing activity contained to as few parties as possible. In the coming week I also hope to proxy YouTube images, so that no user data is sent to Google.
|
||||
|
||||
YouTube links in comments now should redirect properly to the Invidious alternate with [`1c8bd67`](https://github.com/omarroth/invidious/1c8bd67) and [`cf63c82`](https://github.com/omarroth/invidious/cf63c82), so users can more easily evade Google tracking.
|
||||
|
||||
I'm also happy to mention a couple quality of life features this week:
|
||||
|
||||
Invidious now shows a video's "license" if provided, see [#159](https://github.com/omarroth/invidious/issues/159) for more details. You can also search for videos licensed under the creative commons with "QUERY features:creative_commons".
|
||||
|
||||
Videos with only one source will always display the cog for changing quality, so that users can see what quality is currently playing. See [#158](https://github.com/omarroth/invidious/issues/158) for more details.
|
||||
|
||||
Folks have also probably noticed that the gutters on either side of the screen have been shrunk down quite significantly, so that more of the screen is filled with content. Hopefully this can be improved even more in the coming weeks.
|
||||
|
||||
"Music", "Sports", and "Popular on YouTube" channels now properly display their videos. You can subscribe to these channels just as you would normally.
|
||||
|
||||
This coming week I'm planning on spending time with my family, so I unfortunately may not be as responsive. I do still hope to add some smaller features for next week however, and I hope to continue development soon.
|
||||
Thank you everyone again for your support.
|
||||
|
||||
# 0.4.0 (2018-09-06)
|
||||
|
||||
## Week 4: Genre Channels
|
||||
|
||||
Hello! I hope everyone enjoyed their weekend. Without further ado:
|
||||
Just today genre channels have been added with [#119](https://github.com/omarroth/invidious/issues/119). More information on genre channels is available [here](https://support.google.com/youtube/answer/2579942). You can subscribe to them as normally, and view them as RSS. I think they offer an interesting alternative way to find new content and I hope people find them useful.
|
||||
|
||||
This past week folks have started reporting 504s on their subscription page (see [#144](https://github.com/omarroth/invidious/issues/144) for more details). Upgrading the database server appeared to fix the issue, as well as providing a smoother experience across the site. Unfortunately, that means I will be increasing the goal from $50 to $60 in order to meet the increased hosting costs.
|
||||
|
||||
With [#134](https://github.com/omarroth/invidious/issues/134), comments are now formatted correctly, providing support for bold, italics, and links in comments. I think this improvement makes them much easier to read, and I hope others find the same. Also to note is that links in both comments and the video description now no longer contain any of Google's tracking with [#115](https://github.com/omarroth/invidious/issues/115).
|
||||
|
||||
One of the major use cases for Invidious is as a stripped-down version of YouTube. In line with that, I'm happy to announce that you can now hide related videos if you're logged in, for users that prefer an even more lightweight experience.
|
||||
|
||||
Finally, I'm pleased to announce that Invidious has hit 100 stars on GitHub. I am very happy that Invidious has proven to be useful to so many people, and I can't say how grateful I am to everyone for their continued support.
|
||||
|
||||
Enjoy the rest of your week everyone!
|
||||
|
||||
# 0.3.0 (2018-09-06)
|
||||
|
||||
## Week 3: Quality of Life
|
||||
|
||||
Hello everyone! This week I've been working on some smaller features that will hopefully make the site more functional.
|
||||
Search filters have been added with [#126](https://github.com/omarroth/invidious/issues/126). You can now specify 'sort', 'date', 'duration', and 'features' within your query using the 'operator:value' syntax. I'd recommend taking a look [here](https://github.com/omarroth/invidious/blob/master/src/invidious/search.cr#L33-L114) for a list of supported options and at [#126](https://github.com/omarroth/invidious/issues/126) for some examples. This also opens the door for features such as [#30](https://github.com/omarroth/invidious/issues/30) which can be implemented as filters. I think advanced search is a major point in which Invidious can improve on YouTube and hope to add more features soon!
|
||||
|
||||
This week a more advanced system for viewing fallback comments has been added (see [#84](https://github.com/omarroth/invidious/issues/84) for more details). You can now specify a comment fallback in your preferences, which Invidious will use. If, for example, no Reddit comments are available for a given video, it can choose to fallback on YouTube comments. This also makes it possible to turn comments off completely for users that prefer a more streamlined experience.
|
||||
|
||||
With [#98](https://github.com/omarroth/invidious/issues/98), it is now possible for users to specify preferences without creating an account. You can now change speed, volume, subtitles, autoplay, loop, and quality using query parameters. See the issue above for more details and several examples.
|
||||
|
||||
I'd also like to announce that I've set up an account on [Liberapay](https://liberapay.com/omarroth), for patrons that prefer a privacy-friendly alternative to Patreon. Liberapay also does not take any percentage of donations, so I'd recommend donating some to the Liberapay for their hard work. Go check it out!
|
||||
|
||||
[Two weeks ago](https://github.com/omarroth/invidious/releases/tag/0.1.0) I mentioned adding 1080p support into the player. Currently, the only thing blocking is [#207](https://github.com/videojs/http-streaming/pull/207) in the excellent [http-streaming](https://github.com/videojs/http-streaming) library. I hope to work with the videojs team to merge it soon and finally implement 1080p support!
|
||||
|
||||
That's all for this week, thank you again everyone for your support!
|
||||
|
||||
# 0.2.0 (2018-09-06)
|
||||
|
||||
## Week 2: Toward Playlists
|
||||
|
||||
Sorry for the late update! Not as much to announce this week, but still a couple things of note:
|
||||
I'm happy to announce that a playlists page and API endpoint has been added so you can now view playlists. Currently, you cannot watch playlists through the player, but I hope to add that in the coming week as well as adding functionality to add and modify playlists. There is a good conversation on [#114](https://github.com/omarroth/invidious/issues/114) about giving playlists even more functionality, which I think is interesting and would appreciate feedback on.
|
||||
|
||||
As an update to the Invidious API announcement last week, I've been working with [**@PrestonN**](https://github.com/PrestonN), the developer of [FreeTube](https://github.com/FreeTubeApp/FreeTube), to help migrate his project to the Invidious API. Because of it's increasing popularity, he has had trouble keeping under the quota set by YouTube's API. I hope to improve the API to meet his and others needs and I'd recommend folks to keep an eye on his excellent project! There is a good discussion with his thoughts [here](https://github.com/FreeTubeApp/FreeTube/issues/100).
|
||||
|
||||
A couple of miscellaneous features and bugfixes:
|
||||
|
||||
- You can now login to Invidious simultaneously from multiple devices - [#109](https://github.com/omarroth/invidious/issues/109)
|
||||
|
||||
- Added a note for scheduled livestreams - [#124](https://github.com/omarroth/invidious/issues/124)
|
||||
|
||||
- Changed YouTube comment header to "View x comments" - [#120](https://github.com/omarroth/invidious/issues/120)
|
||||
|
||||
Enjoy your week everyone!
|
||||
|
||||
# 0.1.0 (2018-09-06)
|
||||
|
||||
## Week 1: Invidious API and Geo-Bypass
|
||||
|
||||
Hello everyone! This past week there have been quite a few things worthy of mention:
|
||||
|
||||
I'm happy to announce the [Invidious Developer API](https://github.com/omarroth/invidious/wiki/API). The Invidious API does not use any of the official YouTube APIs, and instead crawls the site to provide a JSON interface for other developers to use. It's still under development but is already powering [CloudTube](https://github.com/cloudrac3r/cadencegq). The API currently does not have a quota (compared to YouTube) which I hope to continue thanks to continued support from my Patrons. Hopefully other developers find it useful, and I hope to continue to improve it so it can better serve the community.
|
||||
|
||||
Just today partial support for bypassing geo-restrictions has been added with [fada57a](https://github.com/omarroth/invidious/commit/fada57a307d66d696d9286fc943c579a3fd22de6). If a video is unblocked in one of: United States, Canada, Germany, France, Japan, Russia, or United Kingdom, then Invidious will be able to serve video info. Currently you will not yet be able to access the video files themselves, but in the coming week I hope to proxy videos so that users can enjoy content across borders.
|
||||
|
||||
Support for generating DASH manifests has been fixed, in the coming week I hope to integrate this functionality into the watch page, so users can view videos in 1080p and above.
|
||||
|
||||
Thank you everyone for your continued interest and support!
|
23
Makefile
23
Makefile
@ -5,9 +5,13 @@
|
||||
RELEASE := 1
|
||||
STATIC := 0
|
||||
|
||||
DISABLE_QUIC := 0
|
||||
NO_DBG_SYMBOLS := 0
|
||||
|
||||
# Enable multi-threading.
|
||||
# Warning: Experimental feature!!
|
||||
# invidious is not stable when MT is enabled.
|
||||
MT := 0
|
||||
|
||||
|
||||
FLAGS ?=
|
||||
|
||||
@ -20,6 +24,10 @@ ifeq ($(STATIC), 1)
|
||||
FLAGS += --static
|
||||
endif
|
||||
|
||||
ifeq ($(MT), 1)
|
||||
FLAGS += -Dpreview_mt
|
||||
endif
|
||||
|
||||
|
||||
ifeq ($(NO_DBG_SYMBOLS), 1)
|
||||
FLAGS += --no-debug
|
||||
@ -27,8 +35,8 @@ else
|
||||
FLAGS += --debug
|
||||
endif
|
||||
|
||||
ifeq ($(DISABLE_QUIC), 1)
|
||||
FLAGS += -Ddisable_quic
|
||||
ifeq ($(API_ONLY), 1)
|
||||
FLAGS += -Dapi_only
|
||||
endif
|
||||
|
||||
|
||||
@ -82,6 +90,7 @@ clean:
|
||||
|
||||
distclean: clean
|
||||
rm -rf libs
|
||||
rm -rf ~/.cache/{crystal,shards}
|
||||
|
||||
|
||||
# -----------------------
|
||||
@ -106,11 +115,11 @@ help:
|
||||
@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 " 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)"
|
||||
@echo " API_ONLY Build invidious without a GUI (Default: 0)"
|
||||
@echo " NO_DBG_SYMBOLS Strip debug symbols (Default: 0)"
|
||||
|
||||
|
||||
|
||||
|
27
README.md
27
README.md
@ -20,7 +20,7 @@
|
||||
<a href="https://hosted.weblate.org/engage/invidious/">
|
||||
<img alt="Translation Status" src="https://hosted.weblate.org/widgets/invidious/-/translations/svg-badge.svg">
|
||||
</a>
|
||||
|
||||
|
||||
<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>
|
||||
@ -28,17 +28,17 @@
|
||||
<h3>An open source alternative front-end to YouTube</h3>
|
||||
|
||||
<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/faq/">FAQ</a>
|
||||
•
|
||||
<a href="https://docs.invidious.io/">Documentation</a>
|
||||
•
|
||||
<a href="#contribute">Contribute</a>
|
||||
•
|
||||
<a href="https://invidious.io/donate/">Donate</a>
|
||||
|
||||
|
||||
<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">
|
||||
@ -48,7 +48,7 @@
|
||||
</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">
|
||||
<img alt="Fediverse: @invidious@social.tchncs.de" src="https://img.shields.io/badge/Fediverse-%40invidious%40social.tchncs.de-darkgreen">
|
||||
</a>
|
||||
<br>
|
||||
<a href="https://invidious.io/contact/">
|
||||
@ -82,13 +82,13 @@
|
||||
|
||||
**Data import/export**
|
||||
- Import subscriptions from YouTube, NewPipe and Freetube
|
||||
- Import watch history from NewPipe
|
||||
- Import watch history from YouTube and NewPipe
|
||||
- Export subscriptions to NewPipe and Freetube
|
||||
- Import/Export Invidious user data
|
||||
|
||||
**Technical features**
|
||||
- Embedded video support
|
||||
- [Developer API](https://docs.invidious.io/API.md)
|
||||
- [Developer API](https://docs.invidious.io/api/)
|
||||
- Does not use official YouTube APIs
|
||||
- No Contributor License Agreement (CLA)
|
||||
|
||||
@ -101,7 +101,7 @@
|
||||
|
||||
**Hosting invidious:**
|
||||
|
||||
- [Follow the installation instructions](https://docs.invidious.io/Installation.md)
|
||||
- [Follow the installation instructions](https://docs.invidious.io/installation/)
|
||||
|
||||
|
||||
## Documentation
|
||||
@ -119,7 +119,7 @@ embedded youtube videos on other websites with invidious.
|
||||
|
||||
The documentation contains a list of browser extensions that we recommended to use along with Invidious.
|
||||
|
||||
You can read more here: https://docs.invidious.io/Extensions.md
|
||||
You can read more here: https://docs.invidious.io/applications/
|
||||
|
||||
|
||||
## Contribute
|
||||
@ -145,12 +145,7 @@ Weblate also allows you to log-in with major SSO providers like Github, Gitlab,
|
||||
|
||||
## 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.
|
||||
|
||||
A list of projects and extensions for or utilizing Invidious can be found in the documentation: https://docs.invidious.io/applications/
|
||||
|
||||
## Liability
|
||||
|
||||
|
119
assets/css/carousel.css
Normal file
119
assets/css/carousel.css
Normal file
@ -0,0 +1,119 @@
|
||||
/*
|
||||
Copyright (c) 2024 by Jennifer (https://codepen.io/jwjertzoch/pen/JjyGeRy)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person
|
||||
obtaining a copy of this software and associated documentation
|
||||
files (the "Software"), to deal in the Software without restriction,
|
||||
including without limitation the rights to use, copy, modify,
|
||||
merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall
|
||||
be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
.carousel {
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.slides {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
overflow-x: scroll;
|
||||
scrollbar-width: none;
|
||||
scroll-snap-type: x mandatory;
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
.slides::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.slides-item {
|
||||
align-items: center;
|
||||
border-radius: 10px;
|
||||
display: flex;
|
||||
flex-shrink: 0;
|
||||
font-size: 100px;
|
||||
height: 600px;
|
||||
justify-content: center;
|
||||
margin: 0 1rem;
|
||||
position: relative;
|
||||
scroll-snap-align: start;
|
||||
transform: scale(1);
|
||||
transform-origin: center center;
|
||||
transition: transform .5s;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.carousel__nav {
|
||||
padding: 1.25rem .5rem;
|
||||
}
|
||||
|
||||
.slider-nav {
|
||||
align-items: center;
|
||||
background-color: #ddd;
|
||||
border-radius: 50%;
|
||||
color: #000;
|
||||
display: inline-flex;
|
||||
height: 1.5rem;
|
||||
justify-content: center;
|
||||
padding: .5rem;
|
||||
position: relative;
|
||||
text-decoration: none;
|
||||
width: 1.5rem;
|
||||
}
|
||||
|
||||
.skip-link {
|
||||
height: 1px;
|
||||
overflow: hidden;
|
||||
position: absolute;
|
||||
top: auto;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.skip-link:focus {
|
||||
align-items: center;
|
||||
background-color: #000;
|
||||
color: #fff;
|
||||
display: flex;
|
||||
font-size: 30px;
|
||||
height: 30px;
|
||||
justify-content: center;
|
||||
opacity: .8;
|
||||
text-decoration: none;
|
||||
width: 50%;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.light-theme .slider-nav {
|
||||
background-color: #ddd;
|
||||
}
|
||||
|
||||
.dark-theme .slider-nav {
|
||||
background-color: #0005;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: light) {
|
||||
.no-theme .slider-nav {
|
||||
background-color: #ddd;
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.no-theme .slider-nav {
|
||||
background-color: #0005;
|
||||
}
|
||||
}
|
@ -1,3 +1,7 @@
|
||||
/*
|
||||
* Common attributes
|
||||
*/
|
||||
|
||||
html,
|
||||
body {
|
||||
font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", Roboto, Oxygen,
|
||||
@ -9,12 +13,56 @@ body {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-height: 100vh;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.h-box {
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
}
|
||||
|
||||
.v-box {
|
||||
padding-top: 1em;
|
||||
padding-bottom: 1em;
|
||||
}
|
||||
|
||||
.deleted {
|
||||
background-color: rgb(255, 0, 0, 0.5);
|
||||
}
|
||||
|
||||
.underlined {
|
||||
border-bottom: 1px solid;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.title {
|
||||
margin: 0.5em 0 1em 0;
|
||||
}
|
||||
|
||||
/* A flex container */
|
||||
.flexible {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.flex-left {
|
||||
display: flex;
|
||||
flex: 1 1 auto;
|
||||
flex-flow: row wrap;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
.flex-right {
|
||||
display: flex;
|
||||
flex: 2 0 auto;
|
||||
flex-flow: row nowrap;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Channel page
|
||||
*/
|
||||
|
||||
.channel-profile > * {
|
||||
font-size: 1.17em;
|
||||
font-weight: bold;
|
||||
@ -41,6 +89,7 @@ body a.channel-owner {
|
||||
}
|
||||
|
||||
.creator-heart {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
@ -61,6 +110,7 @@ body a.channel-owner {
|
||||
}
|
||||
|
||||
.creator-heart-small-container {
|
||||
display: block;
|
||||
position: relative;
|
||||
width: 13px;
|
||||
height: 13px;
|
||||
@ -83,16 +133,6 @@ body a.channel-owner {
|
||||
}
|
||||
}
|
||||
|
||||
.h-box {
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
}
|
||||
|
||||
.v-box {
|
||||
padding-top: 1em;
|
||||
padding-bottom: 1em;
|
||||
}
|
||||
|
||||
div {
|
||||
overflow-wrap: break-word;
|
||||
word-wrap: break-word;
|
||||
@ -108,62 +148,108 @@ div {
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Buttons
|
||||
*/
|
||||
|
||||
body a.pure-button {
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
button.pure-button-primary,
|
||||
body a.pure-button-primary,
|
||||
.channel-owner:hover {
|
||||
.channel-owner:hover,
|
||||
.channel-owner:focus {
|
||||
background-color: #a0a0a0;
|
||||
color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
|
||||
button.pure-button-primary:hover,
|
||||
body a.pure-button-primary:hover {
|
||||
background-color: rgba(0, 182, 240, 1);
|
||||
color: #fff;
|
||||
.pure-button-primary,
|
||||
.pure-button-secondary {
|
||||
border: 1px solid #a0a0a0;
|
||||
border-radius: 3px;
|
||||
margin: 0 .4em;
|
||||
}
|
||||
|
||||
.pure-button-secondary.low-profile {
|
||||
padding: 5px 10px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Has to be combined with flex-left/right */
|
||||
.button-container {
|
||||
flex-flow: wrap;
|
||||
gap: 0.5em 0.75em;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Video thumbnails
|
||||
*/
|
||||
|
||||
div.thumbnail {
|
||||
padding: 28.125%;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
img.thumbnail {
|
||||
position: absolute;
|
||||
display: block; /* See: https://stackoverflow.com/a/11635197 */
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
left: 0;
|
||||
top: 0;
|
||||
object-fit: cover;
|
||||
aspect-ratio: 16 / 9;
|
||||
}
|
||||
|
||||
.thumbnail-placeholder {
|
||||
min-height: 50px;
|
||||
border: 2px dotted;
|
||||
}
|
||||
|
||||
div.watched-overlay {
|
||||
z-index: 50;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background-color: rgba(255,255,255,.4);
|
||||
}
|
||||
|
||||
div.watched-indicator {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
height: 4px;
|
||||
width: 100%;
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
div.thumbnail > .top-left-overlay,
|
||||
div.thumbnail > .bottom-right-overlay {
|
||||
z-index: 100;
|
||||
position: absolute;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.top-left-overlay { top: 0.6em; left: 0.6em; }
|
||||
.bottom-right-overlay { bottom: 0.6em; right: 0.6em; }
|
||||
|
||||
.length {
|
||||
z-index: 100;
|
||||
position: absolute;
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
padding: 1px;
|
||||
margin: -2px 0;
|
||||
color: #fff;
|
||||
border-radius: 2px;
|
||||
padding: 2px;
|
||||
font-size: 16px;
|
||||
right: 0.25em;
|
||||
bottom: -0.75em;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.watched {
|
||||
z-index: 100;
|
||||
position: absolute;
|
||||
background-color: rgba(35, 35, 35, 0.75);
|
||||
color: #fff;
|
||||
border-radius: 2px;
|
||||
padding: 4px 8px 4px 8px;
|
||||
font-size: 16px;
|
||||
left: 0.2em;
|
||||
top: -0.7em;
|
||||
.length, .top-left-overlay button {
|
||||
color: #eee;
|
||||
background-color: rgba(35, 35, 35, 0.85) !important;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Navbar
|
||||
*/
|
||||
@ -192,24 +278,34 @@ img.thumbnail {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.searchbar .pure-form fieldset { padding: 0; }
|
||||
.searchbar .pure-form {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.searchbar .pure-form fieldset {
|
||||
padding: 0;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.searchbar input[type="search"] {
|
||||
width: 100%;
|
||||
margin: 1px;
|
||||
|
||||
border: 1px solid;
|
||||
border-color: #0000 #0000 #CCC #0000;
|
||||
border-color: rgba(0,0,0,0);
|
||||
border-bottom-color: #CCC;
|
||||
border-radius: 0;
|
||||
|
||||
box-shadow: none;
|
||||
appearance: none;
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
.searchbar input[type="search"]:focus {
|
||||
margin: 0 0 0.5px 0;
|
||||
margin: 0;
|
||||
border: 2px solid;
|
||||
border-color: #0000 #0000 #FED #0000;
|
||||
border-color: rgba(0,0,0,0);
|
||||
border-bottom-color: #FED;
|
||||
}
|
||||
|
||||
/* https://stackoverflow.com/a/55170420 */
|
||||
@ -221,6 +317,16 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
background-size: 14px;
|
||||
}
|
||||
|
||||
.searchbar #searchbutton {
|
||||
border: none;
|
||||
background: none;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.searchbar #searchbutton:hover {
|
||||
color: rgb(0, 182, 240);
|
||||
}
|
||||
|
||||
.user-field {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
@ -229,13 +335,18 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
}
|
||||
|
||||
.user-field div {
|
||||
width: initial;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.user-field div:not(:last-child) {
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Responsive rules
|
||||
*/
|
||||
|
||||
@media only screen and (max-aspect-ratio: 16/9) {
|
||||
.player-dimensions.vjs-fluid {
|
||||
padding-top: 46.86% !important;
|
||||
@ -254,20 +365,28 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
.navbar > div {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.navbar > div:not(:last-child) {
|
||||
margin-bottom: 1em;
|
||||
margin-bottom: 25px;
|
||||
}
|
||||
|
||||
.navbar > .searchbar > form {
|
||||
width: 60%;
|
||||
width: 75%;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.25em;
|
||||
margin: 0.42em 0;
|
||||
}
|
||||
|
||||
/* Space out the subscribe & RSS buttons and align them to the left */
|
||||
.title.flexible { display: block; }
|
||||
.title.flexible > .flex-right { margin: 0.75em 0; justify-content: flex-start; }
|
||||
|
||||
/* Space out buttons to make them easier to tap */
|
||||
.user-field { font-size: 125%; }
|
||||
.user-field > :not(:last-child) { margin-right: 1.75em; }
|
||||
|
||||
.icon-buttons { font-size: 125%; }
|
||||
.icon-buttons > :not(:last-child) { margin-right: 0.75em; }
|
||||
}
|
||||
|
||||
@media screen and (max-width: 320px) {
|
||||
@ -284,29 +403,83 @@ input[type="search"]::-webkit-search-cancel-button {
|
||||
|
||||
.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%; }
|
||||
|
||||
|
||||
/*
|
||||
* Comments & community posts
|
||||
*/
|
||||
|
||||
.comments {
|
||||
max-width: 800px;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
/*
|
||||
* We don't want the top and bottom margin on the post page.
|
||||
*/
|
||||
.comments.post-comments {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.video-iframe-wrapper {
|
||||
position: relative;
|
||||
height: 0;
|
||||
padding-bottom: 56.25%;
|
||||
}
|
||||
|
||||
.video-iframe {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border: none;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Page navigation
|
||||
*/
|
||||
|
||||
.page-nav-container { margin: 15px 0 30px 0; }
|
||||
|
||||
.page-prev-container { text-align: start; }
|
||||
.page-next-container { text-align: end; }
|
||||
|
||||
.page-prev-container,
|
||||
.page-next-container {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Footer
|
||||
*/
|
||||
|
||||
footer {
|
||||
color: #919191;
|
||||
margin-top: auto;
|
||||
padding: 1.5em 0;
|
||||
text-align: center;
|
||||
max-height: 30vh;
|
||||
}
|
||||
|
||||
footer a {
|
||||
color: #919191 !important;
|
||||
text-decoration: underline;
|
||||
.light-theme footer {
|
||||
color: #7c7c7c;
|
||||
}
|
||||
|
||||
.dark-theme footer {
|
||||
color: #adadad;
|
||||
}
|
||||
|
||||
.light-theme footer a {
|
||||
color: #7c7c7c !important;
|
||||
}
|
||||
|
||||
.dark-theme footer a {
|
||||
color: #adadad !important;
|
||||
}
|
||||
|
||||
footer span {
|
||||
@ -334,18 +507,31 @@ span > select {
|
||||
word-wrap: normal;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Light theme
|
||||
*/
|
||||
|
||||
.light-theme a:hover,
|
||||
.light-theme a:active,
|
||||
.light-theme summary:hover {
|
||||
.light-theme summary:hover,
|
||||
.light-theme a:focus,
|
||||
.light-theme summary:focus {
|
||||
color: #075A9E !important;
|
||||
}
|
||||
|
||||
.light-theme a.pure-button-primary:hover {
|
||||
.light-theme .pure-button-primary:hover,
|
||||
.light-theme .pure-button-primary:focus,
|
||||
.light-theme .pure-button-secondary:hover,
|
||||
.light-theme .pure-button-secondary:focus {
|
||||
color: #fff !important;
|
||||
border-color: rgba(0, 182, 240, 0.75) !important;
|
||||
background-color: rgba(0, 182, 240, 0.75) !important;
|
||||
}
|
||||
|
||||
.light-theme .pure-button-secondary:not(.low-profile) {
|
||||
color: #335d7a;
|
||||
background-color: #fff2;
|
||||
}
|
||||
|
||||
.light-theme a {
|
||||
@ -367,12 +553,24 @@ span > select {
|
||||
@media (prefers-color-scheme: light) {
|
||||
.no-theme a:hover,
|
||||
.no-theme a:active,
|
||||
.no-theme summary:hover {
|
||||
.no-theme summary:hover,
|
||||
.no-theme a:focus,
|
||||
.no-theme summary:focus {
|
||||
color: #075A9E !important;
|
||||
}
|
||||
|
||||
.no-theme a.pure-button-primary:hover {
|
||||
.no-theme .pure-button-primary:hover,
|
||||
.no-theme .pure-button-primary:focus,
|
||||
.no-theme .pure-button-secondary:hover,
|
||||
.no-theme .pure-button-secondary:focus {
|
||||
color: #fff !important;
|
||||
border-color: rgba(0, 182, 240, 0.75) !important;
|
||||
background-color: rgba(0, 182, 240, 0.75) !important;
|
||||
}
|
||||
|
||||
.no-theme .pure-button-secondary:not(.low-profile) {
|
||||
color: #335d7a;
|
||||
background-color: #fff2;
|
||||
}
|
||||
|
||||
.no-theme a {
|
||||
@ -387,23 +585,48 @@ span > select {
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
.no-theme footer {
|
||||
color: #7c7c7c;
|
||||
}
|
||||
|
||||
.no-theme footer a {
|
||||
color: #7c7c7c !important;
|
||||
}
|
||||
|
||||
.light-theme .pure-menu-heading {
|
||||
color: #565d64;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Dark theme
|
||||
*/
|
||||
|
||||
.dark-theme a:hover,
|
||||
.dark-theme a:active,
|
||||
.dark-theme summary:hover {
|
||||
.dark-theme summary:hover,
|
||||
.dark-theme a:focus,
|
||||
.dark-theme summary:focus {
|
||||
color: rgb(0, 182, 240);
|
||||
}
|
||||
|
||||
.dark-theme .pure-button-primary:hover,
|
||||
.dark-theme .pure-button-primary:focus,
|
||||
.dark-theme .pure-button-secondary:hover,
|
||||
.dark-theme .pure-button-secondary:focus {
|
||||
color: #fff !important;
|
||||
border-color: rgb(0, 182, 240) !important;
|
||||
background-color: rgba(0, 182, 240, 1) !important;
|
||||
}
|
||||
|
||||
.dark-theme .pure-button-secondary {
|
||||
background-color: #0002;
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.dark-theme a {
|
||||
color: #a0a0a0;
|
||||
color: #adadad;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@ -437,12 +660,27 @@ body.dark-theme {
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.no-theme a:hover,
|
||||
.no-theme a:active {
|
||||
.no-theme a:active,
|
||||
.no-theme a:focus {
|
||||
color: rgb(0, 182, 240);
|
||||
}
|
||||
|
||||
.no-theme .pure-button-primary:hover,
|
||||
.no-theme .pure-button-primary:focus,
|
||||
.no-theme .pure-button-secondary:hover,
|
||||
.no-theme .pure-button-secondary:focus {
|
||||
color: #fff !important;
|
||||
border-color: rgb(0, 182, 240) !important;
|
||||
background-color: rgba(0, 182, 240, 1) !important;
|
||||
}
|
||||
|
||||
.no-theme .pure-button-secondary {
|
||||
background-color: #0002;
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.no-theme a {
|
||||
color: #a0a0a0;
|
||||
color: #adadad;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@ -473,31 +711,21 @@ body.dark-theme {
|
||||
background-color: inherit;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.no-theme footer {
|
||||
color: #adadad;
|
||||
}
|
||||
|
||||
.no-theme footer a {
|
||||
color: #adadad !important;
|
||||
}
|
||||
}
|
||||
|
||||
#filters {
|
||||
display: inline;
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
#filters > div {
|
||||
display: inline-block;
|
||||
}
|
||||
/*
|
||||
* Miscellanous
|
||||
*/
|
||||
|
||||
#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.
|
||||
@ -507,13 +735,17 @@ hr {
|
||||
}
|
||||
|
||||
/* Description Expansion Styling*/
|
||||
#descexpansionbutton {
|
||||
display: none
|
||||
#descexpansionbutton,
|
||||
#music-desc-expansion {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#descexpansionbutton ~ div {
|
||||
overflow: hidden;
|
||||
height: 8.3em;
|
||||
}
|
||||
|
||||
#descexpansionbutton:not(:checked) ~ div {
|
||||
max-height: 8.3em;
|
||||
}
|
||||
|
||||
#descexpansionbutton:checked ~ div {
|
||||
@ -526,23 +758,61 @@ hr {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
label[for="descexpansionbutton"]:hover,
|
||||
label[for="music-desc-expansion"]:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/* Bidi (bidirectional text) support */
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
p,
|
||||
h1, h2, h3, h4, h5, p,
|
||||
#descriptionWrapper,
|
||||
#description-box {
|
||||
unicode-bidi: plaintext;
|
||||
text-align: start;
|
||||
#description-box,
|
||||
#music-description-box {
|
||||
unicode-bidi: plaintext;
|
||||
text-align: start;
|
||||
}
|
||||
|
||||
#descriptionWrapper {
|
||||
max-width: 600px;
|
||||
white-space: pre-wrap;
|
||||
max-width: 600px;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
#music-description-box {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#music-desc-expansion:checked ~ #music-description-box {
|
||||
display: block;
|
||||
}
|
||||
|
||||
#music-desc-expansion ~ label > h3 > .ion-ios-arrow-up,
|
||||
#music-desc-expansion:checked ~ label > h3 > .ion-ios-arrow-down {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#music-desc-expansion:checked ~ label > h3 > .ion-ios-arrow-up,
|
||||
#music-desc-expansion ~ label > h3 > .ion-ios-arrow-down {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
/* Select all the music items except the first one */
|
||||
.music-item + .music-item {
|
||||
border-top: 1px solid #ffffff;
|
||||
}
|
||||
|
||||
/* Center the "invidious" logo on the search page */
|
||||
#logo > h1 { text-align: center; }
|
||||
|
||||
/* IE11 fixes */
|
||||
:-ms-input-placeholder { color: #888; }
|
||||
|
||||
/* Wider settings name to less word wrap */
|
||||
.pure-form-aligned .pure-control-group label { width: 19em; }
|
||||
|
||||
.channel-emoji {
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
#download_widget {
|
||||
width: 100%;
|
||||
}
|
||||
|
@ -21,6 +21,7 @@
|
||||
color: white;
|
||||
}
|
||||
|
||||
.watch-on-invidious > a:hover {
|
||||
.watch-on-invidious > a:hover,
|
||||
.watch-on-invidious > a:focus {
|
||||
color: rgba(0, 182, 240, 1);;
|
||||
}
|
||||
|
@ -34,7 +34,7 @@
|
||||
.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;
|
||||
@ -68,8 +68,12 @@
|
||||
|
||||
.video-js.player-style-youtube .vjs-menu-button-popup .vjs-menu {
|
||||
margin-bottom: 2em;
|
||||
padding-top: 2em
|
||||
}
|
||||
|
||||
.video-js.player-style-youtube .vjs-progress-control .vjs-progress-holder, .video-js.player-style-youtube .vjs-progress-control {height: 5px;
|
||||
margin-bottom: 10px;}
|
||||
|
||||
ul.vjs-menu-content::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
@ -98,23 +102,27 @@ ul.vjs-menu-content::-webkit-scrollbar {
|
||||
order: 2;
|
||||
}
|
||||
|
||||
.vjs-quality-selector,
|
||||
.video-js .vjs-http-source-selector {
|
||||
.vjs-audio-button {
|
||||
order: 3;
|
||||
}
|
||||
|
||||
.vjs-playback-rate {
|
||||
.vjs-quality-selector,
|
||||
.video-js .vjs-http-source-selector {
|
||||
order: 4;
|
||||
}
|
||||
|
||||
.vjs-share-control {
|
||||
.vjs-playback-rate {
|
||||
order: 5;
|
||||
}
|
||||
|
||||
.vjs-fullscreen-control {
|
||||
.vjs-share-control {
|
||||
order: 6;
|
||||
}
|
||||
|
||||
.vjs-fullscreen-control {
|
||||
order: 7;
|
||||
}
|
||||
|
||||
.vjs-playback-rate > .vjs-menu {
|
||||
width: 50px;
|
||||
}
|
||||
@ -168,11 +176,14 @@ ul.vjs-menu-content::-webkit-scrollbar {
|
||||
.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);
|
||||
background-color: rgba(35, 35, 35, 0.75) !important;
|
||||
}
|
||||
.video-js .vjs-overlay * {
|
||||
color: rgba(255, 255, 255, 1) !important;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* ProgressBar marker */
|
||||
|
121
assets/css/search.css
Normal file
121
assets/css/search.css
Normal file
@ -0,0 +1,121 @@
|
||||
summary {
|
||||
/* This should hide the marker */
|
||||
display: block;
|
||||
|
||||
font-size: 1.17em;
|
||||
font-weight: bold;
|
||||
margin: 0 auto 10px auto;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
summary::-webkit-details-marker,
|
||||
summary::marker { display: none; }
|
||||
|
||||
summary:before {
|
||||
border-radius: 5px;
|
||||
content: "[ + ]";
|
||||
margin: -2px 10px 0 10px;
|
||||
padding: 1px 0 3px 0;
|
||||
text-align: center;
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
details[open] > summary:before { content: "[ − ]"; }
|
||||
|
||||
|
||||
#filters-box {
|
||||
padding: 10px 20px 20px 10px;
|
||||
margin: 10px 15px;
|
||||
}
|
||||
#filters-flex {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
flex-direction: row;
|
||||
align-items: flex-start;
|
||||
align-content: flex-start;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
|
||||
|
||||
fieldset, legend {
|
||||
display: contents !important;
|
||||
border: none !important;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
|
||||
.filter-column {
|
||||
display: inline-block;
|
||||
display: inline-flex;
|
||||
width: max-content;
|
||||
min-width: max-content;
|
||||
max-width: 16em;
|
||||
margin: 15px;
|
||||
flex-grow: 2;
|
||||
flex-basis: auto;
|
||||
flex-direction: column;
|
||||
}
|
||||
.filter-name, .filter-options {
|
||||
display: block;
|
||||
padding: 5px 10px;
|
||||
margin: 0;
|
||||
text-align: start;
|
||||
}
|
||||
|
||||
.filter-options div { margin: 6px 0; }
|
||||
.filter-options div * { vertical-align: middle; }
|
||||
.filter-options label { margin: 0 10px; }
|
||||
|
||||
|
||||
#filters-apply {
|
||||
text-align: right; /* IE11 only */
|
||||
text-align: end; /* Override for compatible browsers */
|
||||
}
|
||||
|
||||
/* Error message */
|
||||
|
||||
.no-results-error {
|
||||
text-align: center;
|
||||
line-height: 180%;
|
||||
font-size: 110%;
|
||||
padding: 15px 15px 125px 15px;
|
||||
}
|
||||
|
||||
/* Responsive rules */
|
||||
|
||||
@media only screen and (max-width: 800px) {
|
||||
summary { font-size: 1.30em; }
|
||||
#filters-box {
|
||||
margin: 10px 0 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
#filters-apply {
|
||||
text-align: center;
|
||||
padding: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Light theme */
|
||||
|
||||
.light-theme #filters-box {
|
||||
background: #dfdfdf;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: light) {
|
||||
.no-theme #filters-box {
|
||||
background: #dfdfdf;
|
||||
}
|
||||
}
|
||||
|
||||
/* Dark theme */
|
||||
|
||||
.dark-theme #filters-box {
|
||||
background: #373737;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.no-theme #filters-box {
|
||||
background: #373737;
|
||||
}
|
||||
}
|
9
assets/hashtag.svg
Normal file
9
assets/hashtag.svg
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="128" height="128" viewBox="0 0 128 128" version="1.1" id="svg5" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<g>
|
||||
<rect fill="#c84fff" width="128" height="128" x="0" y="0" />
|
||||
<g aria-label="#" transform="matrix(1.1326954,0,0,1.1326954,-20.255282,-23.528147)">
|
||||
<path d="m 87.780593,70.524217 -2.624999,13.666661 h 11.666662 v 5.708331 H 84.030595 L 80.61393,107.73253 H 74.488932 L 77.988931,89.899209 H 65.863936 L 62.447271,107.73253 H 56.447273 L 59.697272,89.899209 H 48.947276 V 84.190878 H 60.822271 L 63.530603,70.524217 H 52.113942 V 64.815886 H 64.57227 l 3.416665,-17.999993 h 6.124997 l -3.416665,17.999993 h 12.208328 l 3.499999,-17.999993 h 5.999997 l -3.499998,17.999993 h 10.916662 v 5.708331 z M 66.947269,84.190878 H 79.072264 L 81.738929,70.524217 H 69.613934 Z" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 918 B |
254
assets/js/_helpers.js
Normal file
254
assets/js/_helpers.js
Normal file
@ -0,0 +1,254 @@
|
||||
'use strict';
|
||||
// Contains only auxiliary methods
|
||||
// May be included and executed unlimited number of times without any consequences
|
||||
|
||||
// Polyfills for IE11
|
||||
Array.prototype.find = Array.prototype.find || function (condition) {
|
||||
return this.filter(condition)[0];
|
||||
};
|
||||
|
||||
Array.from = Array.from || function (source) {
|
||||
return Array.prototype.slice.call(source);
|
||||
};
|
||||
NodeList.prototype.forEach = NodeList.prototype.forEach || function (callback) {
|
||||
Array.from(this).forEach(callback);
|
||||
};
|
||||
String.prototype.includes = String.prototype.includes || function (searchString) {
|
||||
return this.indexOf(searchString) >= 0;
|
||||
};
|
||||
String.prototype.startsWith = String.prototype.startsWith || function (prefix) {
|
||||
return this.substr(0, prefix.length) === prefix;
|
||||
};
|
||||
Math.sign = Math.sign || function(x) {
|
||||
x = +x;
|
||||
if (!x) return x; // 0 and NaN
|
||||
return x > 0 ? 1 : -1;
|
||||
};
|
||||
if (!window.hasOwnProperty('HTMLDetailsElement') && !window.hasOwnProperty('mockHTMLDetailsElement')) {
|
||||
window.mockHTMLDetailsElement = true;
|
||||
const style = 'details:not([open]) > :not(summary) {display: none}';
|
||||
document.head.appendChild(document.createElement('style')).textContent = style;
|
||||
|
||||
addEventListener('click', function (e) {
|
||||
if (e.target.nodeName !== 'SUMMARY') return;
|
||||
const details = e.target.parentElement;
|
||||
if (details.hasAttribute('open'))
|
||||
details.removeAttribute('open');
|
||||
else
|
||||
details.setAttribute('open', '');
|
||||
});
|
||||
}
|
||||
|
||||
// Monstrous global variable for handy code
|
||||
// Includes: clamp, xhr, storage.{get,set,remove}
|
||||
window.helpers = window.helpers || {
|
||||
/**
|
||||
* https://en.wikipedia.org/wiki/Clamping_(graphics)
|
||||
* @param {Number} num Source number
|
||||
* @param {Number} min Low border
|
||||
* @param {Number} max High border
|
||||
* @returns {Number} Clamped value
|
||||
*/
|
||||
clamp: function (num, min, max) {
|
||||
if (max < min) {
|
||||
var t = max; max = min; min = t; // swap max and min
|
||||
}
|
||||
|
||||
if (max < num)
|
||||
return max;
|
||||
if (min > num)
|
||||
return min;
|
||||
return num;
|
||||
},
|
||||
|
||||
/** @private */
|
||||
_xhr: function (method, url, options, callbacks) {
|
||||
const xhr = new XMLHttpRequest();
|
||||
xhr.open(method, url);
|
||||
|
||||
// Default options
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
// Default options redefining
|
||||
if (options.responseType)
|
||||
xhr.responseType = options.responseType;
|
||||
if (options.timeout)
|
||||
xhr.timeout = options.timeout;
|
||||
|
||||
if (method === 'POST')
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
// better than onreadystatechange because of 404 codes https://stackoverflow.com/a/36182963
|
||||
xhr.onloadend = function () {
|
||||
if (xhr.status === 200) {
|
||||
if (callbacks.on200) {
|
||||
// fix for IE11. It doesn't convert response to JSON
|
||||
if (xhr.responseType === '' && typeof(xhr.response) === 'string')
|
||||
callbacks.on200(JSON.parse(xhr.response));
|
||||
else
|
||||
callbacks.on200(xhr.response);
|
||||
}
|
||||
} else {
|
||||
// handled by onerror
|
||||
if (xhr.status === 0) return;
|
||||
|
||||
if (callbacks.onNon200)
|
||||
callbacks.onNon200(xhr);
|
||||
}
|
||||
};
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
if (callbacks.onTimeout)
|
||||
callbacks.onTimeout(xhr);
|
||||
};
|
||||
|
||||
xhr.onerror = function () {
|
||||
if (callbacks.onError)
|
||||
callbacks.onError(xhr);
|
||||
};
|
||||
|
||||
if (options.payload)
|
||||
xhr.send(options.payload);
|
||||
else
|
||||
xhr.send();
|
||||
},
|
||||
/** @private */
|
||||
_xhrRetry: function(method, url, options, callbacks) {
|
||||
if (options.retries <= 0) {
|
||||
console.warn('Failed to pull', options.entity_name);
|
||||
if (callbacks.onTotalFail)
|
||||
callbacks.onTotalFail();
|
||||
return;
|
||||
}
|
||||
helpers._xhr(method, url, options, callbacks);
|
||||
},
|
||||
/**
|
||||
* @callback callbackXhrOn200
|
||||
* @param {Object} response - xhr.response
|
||||
*/
|
||||
/**
|
||||
* @callback callbackXhrError
|
||||
* @param {XMLHttpRequest} xhr
|
||||
*/
|
||||
/**
|
||||
* @param {'GET'|'POST'} method - 'GET' or 'POST'
|
||||
* @param {String} url - URL to send request to
|
||||
* @param {Object} options - other XHR options
|
||||
* @param {XMLHttpRequestBodyInit} [options.payload=null] - payload for POST-requests
|
||||
* @param {'arraybuffer'|'blob'|'document'|'json'|'text'} [options.responseType=json]
|
||||
* @param {Number} [options.timeout=10000]
|
||||
* @param {Number} [options.retries=1]
|
||||
* @param {String} [options.entity_name='unknown'] - string to log
|
||||
* @param {Number} [options.retry_timeout=1000]
|
||||
* @param {Object} callbacks - functions to execute on events fired
|
||||
* @param {callbackXhrOn200} [callbacks.on200]
|
||||
* @param {callbackXhrError} [callbacks.onNon200]
|
||||
* @param {callbackXhrError} [callbacks.onTimeout]
|
||||
* @param {callbackXhrError} [callbacks.onError]
|
||||
* @param {callbackXhrError} [callbacks.onTotalFail] - if failed after all retries
|
||||
*/
|
||||
xhr: function(method, url, options, callbacks) {
|
||||
if (!options.retries || options.retries <= 1) {
|
||||
helpers._xhr(method, url, options, callbacks);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!options.entity_name) options.entity_name = 'unknown';
|
||||
if (!options.retry_timeout) options.retry_timeout = 1000;
|
||||
const retries_total = options.retries;
|
||||
let currentTry = 1;
|
||||
|
||||
const retry = function () {
|
||||
console.warn('Pulling ' + options.entity_name + ' failed... ' + (currentTry++) + '/' + retries_total);
|
||||
setTimeout(function () {
|
||||
options.retries--;
|
||||
helpers._xhrRetry(method, url, options, callbacks);
|
||||
}, options.retry_timeout);
|
||||
};
|
||||
|
||||
// Pack retry() call into error handlers
|
||||
callbacks._onError = callbacks.onError;
|
||||
callbacks.onError = function (xhr) {
|
||||
if (callbacks._onError)
|
||||
callbacks._onError(xhr);
|
||||
retry();
|
||||
};
|
||||
callbacks._onTimeout = callbacks.onTimeout;
|
||||
callbacks.onTimeout = function (xhr) {
|
||||
if (callbacks._onTimeout)
|
||||
callbacks._onTimeout(xhr);
|
||||
retry();
|
||||
};
|
||||
|
||||
helpers._xhrRetry(method, url, options, callbacks);
|
||||
},
|
||||
|
||||
/**
|
||||
* @typedef {Object} invidiousStorage
|
||||
* @property {(key:String) => Object} get
|
||||
* @property {(key:String, value:Object)} set
|
||||
* @property {(key:String)} remove
|
||||
*/
|
||||
|
||||
/**
|
||||
* Universal storage, stores and returns JS objects. Uses inside localStorage or cookies
|
||||
* @type {invidiousStorage}
|
||||
*/
|
||||
storage: (function () {
|
||||
// access to localStorage throws exception in Tor Browser, so try is needed
|
||||
let localStorageIsUsable = false;
|
||||
try{localStorageIsUsable = !!localStorage.setItem;}catch(e){}
|
||||
|
||||
if (localStorageIsUsable) {
|
||||
return {
|
||||
get: function (key) {
|
||||
let storageItem = localStorage.getItem(key)
|
||||
if (!storageItem) return;
|
||||
try {
|
||||
return JSON.parse(decodeURIComponent(storageItem));
|
||||
} catch(e) {
|
||||
// Erase non parsable value
|
||||
helpers.storage.remove(key);
|
||||
}
|
||||
},
|
||||
set: function (key, value) {
|
||||
let encoded_value = encodeURIComponent(JSON.stringify(value))
|
||||
localStorage.setItem(key, encoded_value);
|
||||
},
|
||||
remove: function (key) { localStorage.removeItem(key); }
|
||||
};
|
||||
}
|
||||
|
||||
// TODO: fire 'storage' event for cookies
|
||||
console.info('Storage: localStorage is disabled or unaccessible. Cookies used as fallback');
|
||||
return {
|
||||
get: function (key) {
|
||||
const cookiePrefix = key + '=';
|
||||
function findCallback(cookie) {return cookie.startsWith(cookiePrefix);}
|
||||
const matchedCookie = document.cookie.split('; ').find(findCallback);
|
||||
if (matchedCookie) {
|
||||
const cookieBody = matchedCookie.replace(cookiePrefix, '');
|
||||
if (cookieBody.length === 0) return;
|
||||
try {
|
||||
return JSON.parse(decodeURIComponent(cookieBody));
|
||||
} catch(e) {
|
||||
// Erase non parsable value
|
||||
helpers.storage.remove(key);
|
||||
}
|
||||
}
|
||||
},
|
||||
set: function (key, value) {
|
||||
const cookie_data = encodeURIComponent(JSON.stringify(value));
|
||||
|
||||
// Set expiration in 2 year
|
||||
const date = new Date();
|
||||
date.setFullYear(date.getFullYear()+2);
|
||||
|
||||
document.cookie = key + '=' + cookie_data + '; expires=' + date.toGMTString();
|
||||
},
|
||||
remove: function (key) {
|
||||
document.cookie = key + '=; Max-Age=0';
|
||||
}
|
||||
};
|
||||
})()
|
||||
};
|
174
assets/js/comments.js
Normal file
174
assets/js/comments.js
Normal file
@ -0,0 +1,174 @@
|
||||
var video_data = JSON.parse(document.getElementById('video_data').textContent);
|
||||
|
||||
var spinnerHTML = '<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3>';
|
||||
var spinnerHTMLwithHR = spinnerHTML + '<hr>';
|
||||
|
||||
String.prototype.supplant = function (o) {
|
||||
return this.replace(/{([^{}]*)}/g, function (a, b) {
|
||||
var r = o[b];
|
||||
return typeof r === 'string' || typeof r === 'number' ? r : a;
|
||||
});
|
||||
};
|
||||
|
||||
function toggle_comments(event) {
|
||||
var target = event.target;
|
||||
var body = target.parentNode.parentNode.parentNode.children[1];
|
||||
if (body.style.display === 'none') {
|
||||
target.textContent = '[ − ]';
|
||||
body.style.display = '';
|
||||
} else {
|
||||
target.textContent = '[ + ]';
|
||||
body.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
function hide_youtube_replies(event) {
|
||||
var target = event.target;
|
||||
|
||||
var sub_text = target.getAttribute('data-inner-text');
|
||||
var inner_text = target.getAttribute('data-sub-text');
|
||||
|
||||
var body = target.parentNode.parentNode.children[1];
|
||||
body.style.display = 'none';
|
||||
|
||||
target.textContent = sub_text;
|
||||
target.onclick = show_youtube_replies;
|
||||
target.setAttribute('data-inner-text', inner_text);
|
||||
target.setAttribute('data-sub-text', sub_text);
|
||||
}
|
||||
|
||||
function show_youtube_replies(event) {
|
||||
var target = event.target;
|
||||
|
||||
var sub_text = target.getAttribute('data-inner-text');
|
||||
var inner_text = target.getAttribute('data-sub-text');
|
||||
|
||||
var body = target.parentNode.parentNode.children[1];
|
||||
body.style.display = '';
|
||||
|
||||
target.textContent = sub_text;
|
||||
target.onclick = hide_youtube_replies;
|
||||
target.setAttribute('data-inner-text', inner_text);
|
||||
target.setAttribute('data-sub-text', sub_text);
|
||||
}
|
||||
|
||||
function get_youtube_comments() {
|
||||
var comments = document.getElementById('comments');
|
||||
|
||||
var fallback = comments.innerHTML;
|
||||
comments.innerHTML = spinnerHTML;
|
||||
|
||||
var baseUrl = video_data.base_url || '/api/v1/comments/'+ video_data.id
|
||||
var url = baseUrl +
|
||||
'?format=html' +
|
||||
'&hl=' + video_data.preferences.locale +
|
||||
'&thin_mode=' + video_data.preferences.thin_mode;
|
||||
|
||||
if (video_data.ucid) {
|
||||
url += '&ucid=' + video_data.ucid
|
||||
}
|
||||
|
||||
var onNon200 = function (xhr) { comments.innerHTML = fallback; };
|
||||
if (video_data.params.comments[1] === 'youtube')
|
||||
onNon200 = function (xhr) {};
|
||||
|
||||
helpers.xhr('GET', url, {retries: 5, entity_name: 'comments'}, {
|
||||
on200: function (response) {
|
||||
var commentInnerHtml = ' \
|
||||
<div> \
|
||||
<h3> \
|
||||
<a href="javascript:void(0)">[ − ]</a> \
|
||||
{commentsText} \
|
||||
</h3> \
|
||||
<b> \
|
||||
'
|
||||
if (video_data.support_reddit) {
|
||||
commentInnerHtml += ' <a href="javascript:void(0)" data-comments="reddit"> \
|
||||
{redditComments} \
|
||||
</a> \
|
||||
'
|
||||
}
|
||||
commentInnerHtml += ' </b> \
|
||||
</div> \
|
||||
<div>{contentHtml}</div> \
|
||||
<hr>'
|
||||
commentInnerHtml = commentInnerHtml.supplant({
|
||||
contentHtml: response.contentHtml,
|
||||
redditComments: video_data.reddit_comments_text,
|
||||
commentsText: video_data.comments_text.supplant({
|
||||
// toLocaleString correctly splits number with local thousands separator. e.g.:
|
||||
// '1,234,567.89' for user with English locale
|
||||
// '1 234 567,89' for user with Russian locale
|
||||
// '1.234.567,89' for user with Portuguese locale
|
||||
commentCount: response.commentCount.toLocaleString()
|
||||
})
|
||||
});
|
||||
comments.innerHTML = commentInnerHtml;
|
||||
comments.children[0].children[0].children[0].onclick = toggle_comments;
|
||||
if (video_data.support_reddit) {
|
||||
comments.children[0].children[1].children[0].onclick = swap_comments;
|
||||
}
|
||||
},
|
||||
onNon200: onNon200, // declared above
|
||||
onError: function (xhr) {
|
||||
comments.innerHTML = spinnerHTML;
|
||||
},
|
||||
onTimeout: function (xhr) {
|
||||
comments.innerHTML = spinnerHTML;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function get_youtube_replies(target, load_more, load_replies) {
|
||||
var continuation = target.getAttribute('data-continuation');
|
||||
|
||||
var body = target.parentNode.parentNode;
|
||||
var fallback = body.innerHTML;
|
||||
body.innerHTML = spinnerHTML;
|
||||
var baseUrl = video_data.base_url || '/api/v1/comments/'+ video_data.id
|
||||
var url = baseUrl +
|
||||
'?format=html' +
|
||||
'&hl=' + video_data.preferences.locale +
|
||||
'&thin_mode=' + video_data.preferences.thin_mode +
|
||||
'&continuation=' + continuation;
|
||||
|
||||
if (video_data.ucid) {
|
||||
url += '&ucid=' + video_data.ucid
|
||||
}
|
||||
if (load_replies) url += '&action=action_get_comment_replies';
|
||||
|
||||
helpers.xhr('GET', url, {}, {
|
||||
on200: function (response) {
|
||||
if (load_more) {
|
||||
body = body.parentNode.parentNode;
|
||||
body.removeChild(body.lastElementChild);
|
||||
body.insertAdjacentHTML('beforeend', response.contentHtml);
|
||||
} else {
|
||||
body.removeChild(body.lastElementChild);
|
||||
|
||||
var p = document.createElement('p');
|
||||
var a = document.createElement('a');
|
||||
p.appendChild(a);
|
||||
|
||||
a.href = 'javascript:void(0)';
|
||||
a.onclick = hide_youtube_replies;
|
||||
a.setAttribute('data-sub-text', video_data.hide_replies_text);
|
||||
a.setAttribute('data-inner-text', video_data.show_replies_text);
|
||||
a.textContent = video_data.hide_replies_text;
|
||||
|
||||
var div = document.createElement('div');
|
||||
div.innerHTML = response.contentHtml;
|
||||
|
||||
body.appendChild(p);
|
||||
body.appendChild(div);
|
||||
}
|
||||
},
|
||||
onNon200: function (xhr) {
|
||||
body.innerHTML = fallback;
|
||||
},
|
||||
onTimeout: function (xhr) {
|
||||
console.warn('Pulling comments failed');
|
||||
body.innerHTML = fallback;
|
||||
}
|
||||
});
|
||||
}
|
@ -1,19 +1,13 @@
|
||||
var community_data = JSON.parse(document.getElementById('community_data').innerHTML);
|
||||
|
||||
String.prototype.supplant = function (o) {
|
||||
return this.replace(/{([^{}]*)}/g, function (a, b) {
|
||||
var r = o[b];
|
||||
return typeof r === 'string' || typeof r === 'number' ? r : a;
|
||||
});
|
||||
}
|
||||
'use strict';
|
||||
var community_data = JSON.parse(document.getElementById('community_data').textContent);
|
||||
|
||||
function hide_youtube_replies(event) {
|
||||
var target = event.target;
|
||||
|
||||
sub_text = target.getAttribute('data-inner-text');
|
||||
inner_text = target.getAttribute('data-sub-text');
|
||||
var sub_text = target.getAttribute('data-inner-text');
|
||||
var inner_text = target.getAttribute('data-sub-text');
|
||||
|
||||
body = target.parentNode.parentNode.children[1];
|
||||
var body = target.parentNode.parentNode.children[1];
|
||||
body.style.display = 'none';
|
||||
|
||||
target.innerHTML = sub_text;
|
||||
@ -25,10 +19,10 @@ function hide_youtube_replies(event) {
|
||||
function show_youtube_replies(event) {
|
||||
var target = event.target;
|
||||
|
||||
sub_text = target.getAttribute('data-inner-text');
|
||||
inner_text = target.getAttribute('data-sub-text');
|
||||
var sub_text = target.getAttribute('data-inner-text');
|
||||
var inner_text = target.getAttribute('data-sub-text');
|
||||
|
||||
body = target.parentNode.parentNode.children[1];
|
||||
var body = target.parentNode.parentNode.children[1];
|
||||
body.style.display = '';
|
||||
|
||||
target.innerHTML = sub_text;
|
||||
@ -37,13 +31,6 @@ function show_youtube_replies(event) {
|
||||
target.setAttribute('data-sub-text', sub_text);
|
||||
}
|
||||
|
||||
function number_with_separator(val) {
|
||||
while (/(\d+)(\d{3})/.test(val.toString())) {
|
||||
val = val.toString().replace(/(\d+)(\d{3})/, '$1' + ',' + '$2');
|
||||
}
|
||||
return val;
|
||||
}
|
||||
|
||||
function get_youtube_replies(target, load_more) {
|
||||
var continuation = target.getAttribute('data-continuation');
|
||||
|
||||
@ -57,47 +44,39 @@ function get_youtube_replies(target, load_more) {
|
||||
'&hl=' + community_data.preferences.locale +
|
||||
'&thin_mode=' + community_data.preferences.thin_mode +
|
||||
'&continuation=' + continuation;
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', url, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
if (load_more) {
|
||||
body = body.parentNode.parentNode;
|
||||
body.removeChild(body.lastElementChild);
|
||||
body.innerHTML += xhr.response.contentHtml;
|
||||
} else {
|
||||
body.removeChild(body.lastElementChild);
|
||||
|
||||
var p = document.createElement('p');
|
||||
var a = document.createElement('a');
|
||||
p.appendChild(a);
|
||||
|
||||
a.href = 'javascript:void(0)';
|
||||
a.onclick = hide_youtube_replies;
|
||||
a.setAttribute('data-sub-text', community_data.hide_replies_text);
|
||||
a.setAttribute('data-inner-text', community_data.show_replies_text);
|
||||
a.innerText = community_data.hide_replies_text;
|
||||
|
||||
var div = document.createElement('div');
|
||||
div.innerHTML = xhr.response.contentHtml;
|
||||
|
||||
body.appendChild(p);
|
||||
body.appendChild(div);
|
||||
}
|
||||
helpers.xhr('GET', url, {}, {
|
||||
on200: function (response) {
|
||||
if (load_more) {
|
||||
body = body.parentNode.parentNode;
|
||||
body.removeChild(body.lastElementChild);
|
||||
body.innerHTML += response.contentHtml;
|
||||
} else {
|
||||
body.innerHTML = fallback;
|
||||
body.removeChild(body.lastElementChild);
|
||||
|
||||
var p = document.createElement('p');
|
||||
var a = document.createElement('a');
|
||||
p.appendChild(a);
|
||||
|
||||
a.href = 'javascript:void(0)';
|
||||
a.onclick = hide_youtube_replies;
|
||||
a.setAttribute('data-sub-text', community_data.hide_replies_text);
|
||||
a.setAttribute('data-inner-text', community_data.show_replies_text);
|
||||
a.textContent = community_data.hide_replies_text;
|
||||
|
||||
var div = document.createElement('div');
|
||||
div.innerHTML = response.contentHtml;
|
||||
|
||||
body.appendChild(p);
|
||||
body.appendChild(div);
|
||||
}
|
||||
},
|
||||
onNon200: function (xhr) {
|
||||
body.innerHTML = fallback;
|
||||
},
|
||||
onTimeout: function (xhr) {
|
||||
console.warn('Pulling comments failed');
|
||||
body.innerHTML = fallback;
|
||||
}
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Pulling comments failed.');
|
||||
body.innerHTML = fallback;
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
});
|
||||
}
|
||||
|
@ -1,103 +1,62 @@
|
||||
var video_data = JSON.parse(document.getElementById('video_data').innerHTML);
|
||||
|
||||
function get_playlist(plid, retries) {
|
||||
if (retries == undefined) retries = 5;
|
||||
|
||||
if (retries <= 0) {
|
||||
console.log('Failed to pull playlist');
|
||||
return;
|
||||
}
|
||||
'use strict';
|
||||
var video_data = JSON.parse(document.getElementById('video_data').textContent);
|
||||
|
||||
function get_playlist(plid) {
|
||||
var plid_url;
|
||||
if (plid.startsWith('RD')) {
|
||||
var plid_url = '/api/v1/mixes/' + plid +
|
||||
plid_url = '/api/v1/mixes/' + plid +
|
||||
'?continuation=' + video_data.id +
|
||||
'&format=html&hl=' + video_data.preferences.locale;
|
||||
} else {
|
||||
var plid_url = '/api/v1/playlists/' + plid +
|
||||
plid_url = '/api/v1/playlists/' + plid +
|
||||
'?index=' + video_data.index +
|
||||
'&continuation' + video_data.id +
|
||||
'&format=html&hl=' + video_data.preferences.locale;
|
||||
}
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', plid_url, true);
|
||||
helpers.xhr('GET', plid_url, {retries: 5, entity_name: 'playlist'}, {
|
||||
on200: function (response) {
|
||||
if (!response.nextVideo)
|
||||
return;
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status === 200) {
|
||||
if (xhr.response.nextVideo) {
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/embed/' + xhr.response.nextVideo);
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/embed/' + response.nextVideo);
|
||||
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD')) {
|
||||
url.searchParams.set('index', xhr.response.index);
|
||||
}
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD'))
|
||||
url.searchParams.set('index', response.index);
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay)
|
||||
url.searchParams.set('autoplay', '1');
|
||||
if (video_data.params.listen !== video_data.preferences.listen)
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
if (video_data.params.speed !== video_data.preferences.speed)
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
if (video_data.params.local !== video_data.preferences.local)
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
|
||||
if (video_data.params.listen !== video_data.preferences.listen) {
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
}
|
||||
|
||||
if (video_data.params.speed !== video_data.preferences.speed) {
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
}
|
||||
|
||||
if (video_data.params.local !== video_data.preferences.local) {
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
}
|
||||
}
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
console.log('Pulling playlist failed... ' + retries + '/5');
|
||||
setTimeout(function () { get_playlist(plid, retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Pulling playlist failed... ' + retries + '/5');
|
||||
get_playlist(plid, retries - 1);
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
});
|
||||
}
|
||||
|
||||
window.addEventListener('load', function (e) {
|
||||
addEventListener('load', function (e) {
|
||||
if (video_data.plid) {
|
||||
get_playlist(video_data.plid);
|
||||
} else if (video_data.video_series) {
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/embed/' + video_data.video_series.shift());
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay)
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
|
||||
if (video_data.params.listen !== video_data.preferences.listen) {
|
||||
if (video_data.params.listen !== video_data.preferences.listen)
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
}
|
||||
|
||||
if (video_data.params.speed !== video_data.preferences.speed) {
|
||||
if (video_data.params.speed !== video_data.preferences.speed)
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
}
|
||||
|
||||
if (video_data.params.local !== video_data.preferences.local) {
|
||||
if (video_data.params.local !== video_data.preferences.local)
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
if (video_data.video_series.length !== 0) {
|
||||
url.searchParams.set('playlist', video_data.video_series.join(','))
|
||||
}
|
||||
if (video_data.video_series.length !== 0)
|
||||
url.searchParams.set('playlist', video_data.video_series.join(','));
|
||||
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
|
@ -1,8 +1,6 @@
|
||||
'use strict';
|
||||
|
||||
(function () {
|
||||
var n2a = function (n) { return Array.prototype.slice.call(n); };
|
||||
|
||||
var video_player = document.getElementById('player_html5_api');
|
||||
if (video_player) {
|
||||
video_player.onmouseenter = function () { video_player['data-title'] = video_player['title']; video_player['title'] = ''; };
|
||||
@ -11,140 +9,124 @@
|
||||
}
|
||||
|
||||
// For dynamically inserted elements
|
||||
document.addEventListener('click', function (e) {
|
||||
if (!e || !e.target) { return; }
|
||||
e = e.target;
|
||||
var handler_name = e.getAttribute('data-onclick');
|
||||
addEventListener('click', function (e) {
|
||||
if (!e || !e.target) return;
|
||||
|
||||
var t = e.target;
|
||||
var handler_name = t.getAttribute('data-onclick');
|
||||
|
||||
switch (handler_name) {
|
||||
case 'jump_to_time':
|
||||
var time = e.getAttribute('data-jump-time');
|
||||
e.preventDefault();
|
||||
var time = t.getAttribute('data-jump-time');
|
||||
player.currentTime(time);
|
||||
break;
|
||||
case 'get_youtube_replies':
|
||||
var load_more = e.getAttribute('data-load-more') !== null;
|
||||
var load_replies = e.getAttribute('data-load-replies') !== null;
|
||||
get_youtube_replies(e, load_more, load_replies);
|
||||
var load_more = t.getAttribute('data-load-more') !== null;
|
||||
var load_replies = t.getAttribute('data-load-replies') !== null;
|
||||
get_youtube_replies(t, load_more, load_replies);
|
||||
break;
|
||||
case 'toggle_parent':
|
||||
toggle_parent(e);
|
||||
e.preventDefault();
|
||||
toggle_parent(t);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
n2a(document.querySelectorAll('[data-mouse="switch_classes"]')).forEach(function (e) {
|
||||
var classes = e.getAttribute('data-switch-classes').split(',');
|
||||
var ec = classes[0];
|
||||
var lc = classes[1];
|
||||
var onoff = function (on, off) {
|
||||
var cs = e.getAttribute('class');
|
||||
cs = cs.split(off).join(on);
|
||||
e.setAttribute('class', cs);
|
||||
};
|
||||
e.onmouseenter = function () { onoff(ec, lc); };
|
||||
e.onmouseleave = function () { onoff(lc, ec); };
|
||||
document.querySelectorAll('[data-mouse="switch_classes"]').forEach(function (el) {
|
||||
var classes = el.getAttribute('data-switch-classes').split(',');
|
||||
var classOnEnter = classes[0];
|
||||
var classOnLeave = classes[1];
|
||||
function toggle_classes(toAdd, toRemove) {
|
||||
el.classList.add(toAdd);
|
||||
el.classList.remove(toRemove);
|
||||
}
|
||||
el.onmouseenter = function () { toggle_classes(classOnEnter, classOnLeave); };
|
||||
el.onmouseleave = function () { toggle_classes(classOnLeave, classOnEnter); };
|
||||
});
|
||||
|
||||
n2a(document.querySelectorAll('[data-onsubmit="return_false"]')).forEach(function (e) {
|
||||
e.onsubmit = function () { return false; };
|
||||
document.querySelectorAll('[data-onsubmit="return_false"]').forEach(function (el) {
|
||||
el.onsubmit = function () { return false; };
|
||||
});
|
||||
|
||||
n2a(document.querySelectorAll('[data-onclick="mark_watched"]')).forEach(function (e) {
|
||||
e.onclick = function () { mark_watched(e); };
|
||||
document.querySelectorAll('[data-onclick="mark_watched"]').forEach(function (el) {
|
||||
el.onclick = function () { mark_watched(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="mark_unwatched"]')).forEach(function (e) {
|
||||
e.onclick = function () { mark_unwatched(e); };
|
||||
document.querySelectorAll('[data-onclick="mark_unwatched"]').forEach(function (el) {
|
||||
el.onclick = function () { mark_unwatched(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="add_playlist_video"]')).forEach(function (e) {
|
||||
e.onclick = function () { add_playlist_video(e); };
|
||||
document.querySelectorAll('[data-onclick="add_playlist_video"]').forEach(function (el) {
|
||||
el.onclick = function () { add_playlist_video(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="add_playlist_item"]')).forEach(function (e) {
|
||||
e.onclick = function () { add_playlist_item(e); };
|
||||
document.querySelectorAll('[data-onclick="add_playlist_item"]').forEach(function (el) {
|
||||
el.onclick = function () { add_playlist_item(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="remove_playlist_item"]')).forEach(function (e) {
|
||||
e.onclick = function () { remove_playlist_item(e); };
|
||||
document.querySelectorAll('[data-onclick="remove_playlist_item"]').forEach(function (el) {
|
||||
el.onclick = function () { remove_playlist_item(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="revoke_token"]')).forEach(function (e) {
|
||||
e.onclick = function () { revoke_token(e); };
|
||||
document.querySelectorAll('[data-onclick="revoke_token"]').forEach(function (el) {
|
||||
el.onclick = function () { revoke_token(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="remove_subscription"]')).forEach(function (e) {
|
||||
e.onclick = function () { remove_subscription(e); };
|
||||
document.querySelectorAll('[data-onclick="remove_subscription"]').forEach(function (el) {
|
||||
el.onclick = function () { remove_subscription(el); };
|
||||
});
|
||||
n2a(document.querySelectorAll('[data-onclick="notification_requestPermission"]')).forEach(function (e) {
|
||||
e.onclick = function () { Notification.requestPermission(); };
|
||||
document.querySelectorAll('[data-onclick="notification_requestPermission"]').forEach(function (el) {
|
||||
el.onclick = function () { Notification.requestPermission(); };
|
||||
});
|
||||
|
||||
n2a(document.querySelectorAll('[data-onrange="update_volume_value"]')).forEach(function (e) {
|
||||
var cb = function () { update_volume_value(e); }
|
||||
e.oninput = cb;
|
||||
e.onchange = cb;
|
||||
document.querySelectorAll('[data-onrange="update_volume_value"]').forEach(function (el) {
|
||||
function update_volume_value() {
|
||||
document.getElementById('volume-value').textContent = el.value;
|
||||
}
|
||||
el.oninput = update_volume_value;
|
||||
el.onchange = update_volume_value;
|
||||
});
|
||||
|
||||
function update_volume_value(element) {
|
||||
document.getElementById('volume-value').innerText = element.value;
|
||||
}
|
||||
|
||||
function revoke_token(target) {
|
||||
var row = target.parentNode.parentNode.parentNode.parentNode.parentNode;
|
||||
row.style.display = 'none';
|
||||
var count = document.getElementById('count');
|
||||
count.innerText = count.innerText - 1;
|
||||
count.textContent--;
|
||||
|
||||
var referer = window.encodeURIComponent(document.location.href);
|
||||
var url = '/token_ajax?action_revoke_token=1&redirect=false' +
|
||||
'&referer=' + referer +
|
||||
var url = '/token_ajax?action=revoke_token&redirect=false' +
|
||||
'&referer=' + encodeURIComponent(location.href) +
|
||||
'&session=' + target.getAttribute('data-session');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
count.innerText = parseInt(count.innerText) + 1;
|
||||
row.style.display = '';
|
||||
}
|
||||
var payload = 'csrf_token=' + target.parentNode.querySelector('input[name="csrf_token"]').value;
|
||||
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
onNon200: function (xhr) {
|
||||
count.textContent++;
|
||||
row.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
var csrf_token = target.parentNode.querySelector('input[name="csrf_token"]').value;
|
||||
xhr.send('csrf_token=' + csrf_token);
|
||||
});
|
||||
}
|
||||
|
||||
function remove_subscription(target) {
|
||||
var row = target.parentNode.parentNode.parentNode.parentNode.parentNode;
|
||||
row.style.display = 'none';
|
||||
var count = document.getElementById('count');
|
||||
count.innerText = count.innerText - 1;
|
||||
count.textContent--;
|
||||
|
||||
var referer = window.encodeURIComponent(document.location.href);
|
||||
var url = '/subscription_ajax?action_remove_subscriptions=1&redirect=false' +
|
||||
'&referer=' + referer +
|
||||
var url = '/subscription_ajax?action=remove_subscriptions&redirect=false' +
|
||||
'&referer=' + encodeURIComponent(location.href) +
|
||||
'&c=' + target.getAttribute('data-ucid');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
count.innerText = parseInt(count.innerText) + 1;
|
||||
row.style.display = '';
|
||||
}
|
||||
var payload = 'csrf_token=' + target.parentNode.querySelector('input[name="csrf_token"]').value;
|
||||
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
onNon200: function (xhr) {
|
||||
count.textContent++;
|
||||
row.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
var csrf_token = target.parentNode.querySelector('input[name="csrf_token"]').value;
|
||||
xhr.send('csrf_token=' + csrf_token);
|
||||
});
|
||||
}
|
||||
|
||||
// Handle keypresses
|
||||
window.addEventListener('keydown', (event) => {
|
||||
addEventListener('keydown', function (event) {
|
||||
// Ignore modifier keys
|
||||
if (event.ctrlKey || event.metaKey) return;
|
||||
|
||||
@ -152,14 +134,14 @@
|
||||
let focused_tag = document.activeElement.tagName.toLowerCase();
|
||||
const allowed = /^(button|checkbox|file|radio|submit)$/;
|
||||
|
||||
if (focused_tag === "textarea") return;
|
||||
if (focused_tag === "input") {
|
||||
if (focused_tag === 'textarea') return;
|
||||
if (focused_tag === 'input') {
|
||||
let focused_type = document.activeElement.type.toLowerCase();
|
||||
if (!focused_type.match(allowed)) return;
|
||||
if (!allowed.test(focused_type)) return;
|
||||
}
|
||||
|
||||
// Focus search bar on '/'
|
||||
if (event.key == "/") {
|
||||
if (event.key === '/') {
|
||||
document.getElementById('searchbox').focus();
|
||||
event.preventDefault();
|
||||
}
|
||||
|
@ -1,46 +1,30 @@
|
||||
var notification_data = JSON.parse(document.getElementById('notification_data').innerHTML);
|
||||
'use strict';
|
||||
var notification_data = JSON.parse(document.getElementById('notification_data').textContent);
|
||||
|
||||
/** Boolean meaning 'some tab have stream' */
|
||||
const STORAGE_KEY_STREAM = 'stream';
|
||||
/** Number of notifications. May be increased or reset */
|
||||
const STORAGE_KEY_NOTIF_COUNT = 'notification_count';
|
||||
|
||||
var notifications, delivered;
|
||||
var notifications_mock = { close: function () { } };
|
||||
|
||||
function get_subscriptions(callback, retries) {
|
||||
if (retries == undefined) retries = 5;
|
||||
|
||||
if (retries <= 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', '/api/v1/auth/subscriptions?fields=authorId', true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status === 200) {
|
||||
subscriptions = xhr.response;
|
||||
callback(subscriptions);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
console.log('Pulling subscriptions failed... ' + retries + '/5');
|
||||
setTimeout(function () { get_subscriptions(callback, retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Pulling subscriptions failed... ' + retries + '/5');
|
||||
get_subscriptions(callback, retries - 1);
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
function get_subscriptions() {
|
||||
helpers.xhr('GET', '/api/v1/auth/subscriptions', {
|
||||
retries: 5,
|
||||
entity_name: 'subscriptions'
|
||||
}, {
|
||||
on200: create_notification_stream
|
||||
});
|
||||
}
|
||||
|
||||
function create_notification_stream(subscriptions) {
|
||||
// sse.js can't be replaced to EventSource in place as it lack support of payload and headers
|
||||
// see https://developer.mozilla.org/en-US/docs/Web/API/EventSource/EventSource
|
||||
notifications = new SSE(
|
||||
'/api/v1/auth/notifications?fields=videoId,title,author,authorId,publishedText,published,authorThumbnails,liveNow', {
|
||||
'/api/v1/auth/notifications', {
|
||||
withCredentials: true,
|
||||
payload: 'topics=' + subscriptions.map(function (subscription) { return subscription.authorId }).join(','),
|
||||
payload: 'topics=' + subscriptions.map(function (subscription) { return subscription.authorId; }).join(','),
|
||||
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
|
||||
});
|
||||
delivered = [];
|
||||
@ -48,96 +32,100 @@ function create_notification_stream(subscriptions) {
|
||||
var start_time = Math.round(new Date() / 1000);
|
||||
|
||||
notifications.onmessage = function (event) {
|
||||
if (!event.id) {
|
||||
return;
|
||||
}
|
||||
if (!event.id) return;
|
||||
|
||||
var notification = JSON.parse(event.data);
|
||||
console.log('Got notification:', notification);
|
||||
console.info('Got notification:', notification);
|
||||
|
||||
if (start_time < notification.published && !delivered.includes(notification.videoId)) {
|
||||
if (Notification.permission === 'granted') {
|
||||
var system_notification =
|
||||
new Notification((notification.liveNow ? notification_data.live_now_text : notification_data.upload_text).replace('`x`', notification.author), {
|
||||
body: notification.title,
|
||||
icon: '/ggpht' + new URL(notification.authorThumbnails[2].url).pathname,
|
||||
img: '/ggpht' + new URL(notification.authorThumbnails[4].url).pathname,
|
||||
tag: notification.videoId
|
||||
});
|
||||
// Ignore not actual and delivered notifications
|
||||
if (start_time > notification.published || delivered.includes(notification.videoId)) return;
|
||||
|
||||
system_notification.onclick = function (event) {
|
||||
window.open('/watch?v=' + event.currentTarget.tag, '_blank');
|
||||
}
|
||||
}
|
||||
delivered.push(notification.videoId);
|
||||
|
||||
delivered.push(notification.videoId);
|
||||
localStorage.setItem('notification_count', parseInt(localStorage.getItem('notification_count') || '0') + 1);
|
||||
var notification_ticker = document.getElementById('notification_ticker');
|
||||
let notification_count = helpers.storage.get(STORAGE_KEY_NOTIF_COUNT) || 0;
|
||||
notification_count++;
|
||||
helpers.storage.set(STORAGE_KEY_NOTIF_COUNT, notification_count);
|
||||
|
||||
if (parseInt(localStorage.getItem('notification_count')) > 0) {
|
||||
notification_ticker.innerHTML =
|
||||
'<span id="notification_count">' + localStorage.getItem('notification_count') + '</span> <i class="icon ion-ios-notifications"></i>';
|
||||
} else {
|
||||
notification_ticker.innerHTML =
|
||||
'<i class="icon ion-ios-notifications-outline"></i>';
|
||||
}
|
||||
update_ticker_count();
|
||||
|
||||
// permission for notifications handled on settings page. JS handler is in handlers.js
|
||||
if (window.Notification && Notification.permission === 'granted') {
|
||||
var notification_text = notification.liveNow ? notification_data.live_now_text : notification_data.upload_text;
|
||||
notification_text = notification_text.replace('`x`', notification.author);
|
||||
|
||||
var system_notification = new Notification(notification_text, {
|
||||
body: notification.title,
|
||||
icon: '/ggpht' + new URL(notification.authorThumbnails[2].url).pathname,
|
||||
img: '/ggpht' + new URL(notification.authorThumbnails[4].url).pathname
|
||||
});
|
||||
|
||||
system_notification.onclick = function (e) {
|
||||
open('/watch?v=' + notification.videoId, '_blank');
|
||||
};
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
notifications.addEventListener('error', function (e) {
|
||||
console.warn('Something went wrong with notifications, trying to reconnect...');
|
||||
notifications = notifications_mock;
|
||||
setTimeout(get_subscriptions, 1000);
|
||||
});
|
||||
|
||||
notifications.addEventListener('error', handle_notification_error);
|
||||
notifications.stream();
|
||||
}
|
||||
|
||||
function handle_notification_error(event) {
|
||||
console.log('Something went wrong with notifications, trying to reconnect...');
|
||||
notifications = { close: function () { } };
|
||||
setTimeout(function () { get_subscriptions(create_notification_stream) }, 1000);
|
||||
function update_ticker_count() {
|
||||
var notification_ticker = document.getElementById('notification_ticker');
|
||||
|
||||
const notification_count = helpers.storage.get(STORAGE_KEY_STREAM);
|
||||
if (notification_count > 0) {
|
||||
notification_ticker.innerHTML =
|
||||
'<span id="notification_count">' + notification_count + '</span> <i class="icon ion-ios-notifications"></i>';
|
||||
} else {
|
||||
notification_ticker.innerHTML =
|
||||
'<i class="icon ion-ios-notifications-outline"></i>';
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('load', function (e) {
|
||||
localStorage.setItem('notification_count', document.getElementById('notification_count') ? document.getElementById('notification_count').innerText : '0');
|
||||
|
||||
if (localStorage.getItem('stream')) {
|
||||
localStorage.removeItem('stream');
|
||||
} else {
|
||||
setTimeout(function () {
|
||||
if (!localStorage.getItem('stream')) {
|
||||
notifications = { close: function () { } };
|
||||
localStorage.setItem('stream', true);
|
||||
get_subscriptions(create_notification_stream);
|
||||
}
|
||||
}, Math.random() * 1000 + 50);
|
||||
}
|
||||
|
||||
window.addEventListener('storage', function (e) {
|
||||
if (e.key === 'stream' && !e.newValue) {
|
||||
if (notifications) {
|
||||
localStorage.setItem('stream', true);
|
||||
} else {
|
||||
setTimeout(function () {
|
||||
if (!localStorage.getItem('stream')) {
|
||||
notifications = { close: function () { } };
|
||||
localStorage.setItem('stream', true);
|
||||
get_subscriptions(create_notification_stream);
|
||||
}
|
||||
}, Math.random() * 1000 + 50);
|
||||
}
|
||||
} else if (e.key === 'notification_count') {
|
||||
var notification_ticker = document.getElementById('notification_ticker');
|
||||
|
||||
if (parseInt(e.newValue) > 0) {
|
||||
notification_ticker.innerHTML =
|
||||
'<span id="notification_count">' + e.newValue + '</span> <i class="icon ion-ios-notifications"></i>';
|
||||
} else {
|
||||
notification_ticker.innerHTML =
|
||||
'<i class="icon ion-ios-notifications-outline"></i>';
|
||||
}
|
||||
function start_stream_if_needed() {
|
||||
// random wait for other tabs set 'stream' flag
|
||||
setTimeout(function () {
|
||||
if (!helpers.storage.get(STORAGE_KEY_STREAM)) {
|
||||
// if no one set 'stream', set it by yourself and start stream
|
||||
helpers.storage.set(STORAGE_KEY_STREAM, true);
|
||||
notifications = notifications_mock;
|
||||
get_subscriptions();
|
||||
}
|
||||
});
|
||||
});
|
||||
}, Math.random() * 1000 + 50); // [0.050 .. 1.050) second
|
||||
}
|
||||
|
||||
window.addEventListener('unload', function (e) {
|
||||
if (notifications) {
|
||||
localStorage.removeItem('stream');
|
||||
|
||||
addEventListener('storage', function (e) {
|
||||
if (e.key === STORAGE_KEY_NOTIF_COUNT)
|
||||
update_ticker_count();
|
||||
|
||||
// if 'stream' key was removed
|
||||
if (e.key === STORAGE_KEY_STREAM && !helpers.storage.get(STORAGE_KEY_STREAM)) {
|
||||
if (notifications) {
|
||||
// restore it if we have active stream
|
||||
helpers.storage.set(STORAGE_KEY_STREAM, true);
|
||||
} else {
|
||||
start_stream_if_needed();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
addEventListener('load', function () {
|
||||
var notification_count_el = document.getElementById('notification_count');
|
||||
var notification_count = notification_count_el ? parseInt(notification_count_el.textContent) : 0;
|
||||
helpers.storage.set(STORAGE_KEY_NOTIF_COUNT, notification_count);
|
||||
|
||||
if (helpers.storage.get(STORAGE_KEY_STREAM))
|
||||
helpers.storage.remove(STORAGE_KEY_STREAM);
|
||||
start_stream_if_needed();
|
||||
});
|
||||
|
||||
addEventListener('unload', function () {
|
||||
// let chance to other tabs to be a streamer via firing 'storage' event
|
||||
if (notifications) helpers.storage.remove(STORAGE_KEY_STREAM);
|
||||
});
|
||||
|
93
assets/js/pagination.js
Normal file
93
assets/js/pagination.js
Normal file
@ -0,0 +1,93 @@
|
||||
'use strict';
|
||||
|
||||
const CURRENT_CONTINUATION = (new URL(document.location)).searchParams.get("continuation");
|
||||
const CONT_CACHE_KEY = `continuation_cache_${encodeURIComponent(window.location.pathname)}`;
|
||||
|
||||
function get_data(){
|
||||
return JSON.parse(sessionStorage.getItem(CONT_CACHE_KEY)) || [];
|
||||
}
|
||||
|
||||
function save_data(){
|
||||
const prev_data = get_data();
|
||||
prev_data.push(CURRENT_CONTINUATION);
|
||||
|
||||
sessionStorage.setItem(CONT_CACHE_KEY, JSON.stringify(prev_data));
|
||||
}
|
||||
|
||||
function button_press(){
|
||||
let prev_data = get_data();
|
||||
if (!prev_data.length) return null;
|
||||
|
||||
// Sanity check. Nowhere should the current continuation token exist in the cache
|
||||
// but it can happen when using the browser's back feature. As such we'd need to travel
|
||||
// back to the point where the current continuation token first appears in order to
|
||||
// account for the rewind.
|
||||
const conflict_at = prev_data.indexOf(CURRENT_CONTINUATION);
|
||||
if (conflict_at != -1) {
|
||||
prev_data.length = conflict_at;
|
||||
}
|
||||
|
||||
const prev_ctoken = prev_data.pop();
|
||||
|
||||
// On the first page, the stored continuation token is null.
|
||||
if (prev_ctoken === null) {
|
||||
sessionStorage.removeItem(CONT_CACHE_KEY);
|
||||
let url = set_continuation();
|
||||
window.location.href = url;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
sessionStorage.setItem(CONT_CACHE_KEY, JSON.stringify(prev_data));
|
||||
let url = set_continuation(prev_ctoken);
|
||||
|
||||
window.location.href = url;
|
||||
};
|
||||
|
||||
// Method to set the current page's continuation token
|
||||
// Removes the continuation parameter when a continuation token is not given
|
||||
function set_continuation(prev_ctoken = null){
|
||||
let url = window.location.href.split('?')[0];
|
||||
let params = window.location.href.split('?')[1];
|
||||
let url_params = new URLSearchParams(params);
|
||||
|
||||
if (prev_ctoken) {
|
||||
url_params.set("continuation", prev_ctoken);
|
||||
} else {
|
||||
url_params.delete('continuation');
|
||||
};
|
||||
|
||||
if(Array.from(url_params).length > 0){
|
||||
return `${url}?${url_params.toString()}`;
|
||||
} else {
|
||||
return url;
|
||||
}
|
||||
}
|
||||
|
||||
addEventListener('DOMContentLoaded', function(){
|
||||
const pagination_data = JSON.parse(document.getElementById('pagination-data').textContent);
|
||||
const next_page_containers = document.getElementsByClassName("page-next-container");
|
||||
|
||||
for (let container of next_page_containers){
|
||||
const next_page_button = container.getElementsByClassName("pure-button")
|
||||
|
||||
// exists?
|
||||
if (next_page_button.length > 0){
|
||||
next_page_button[0].addEventListener("click", save_data);
|
||||
}
|
||||
}
|
||||
|
||||
// Only add previous page buttons when not on the first page
|
||||
if (CURRENT_CONTINUATION) {
|
||||
const prev_page_containers = document.getElementsByClassName("page-prev-container")
|
||||
|
||||
for (let container of prev_page_containers) {
|
||||
if (pagination_data.is_rtl) {
|
||||
container.innerHTML = `<button class="pure-button pure-button-secondary">${pagination_data.prev_page} <i class="icon ion-ios-arrow-forward"></i></button>`
|
||||
} else {
|
||||
container.innerHTML = `<button class="pure-button pure-button-secondary"><i class="icon ion-ios-arrow-back"></i> ${pagination_data.prev_page}</button>`
|
||||
}
|
||||
container.getElementsByClassName("pure-button")[0].addEventListener("click", button_press);
|
||||
}
|
||||
}
|
||||
});
|
@ -1,8 +1,8 @@
|
||||
var player_data = JSON.parse(document.getElementById('player_data').innerHTML);
|
||||
var video_data = JSON.parse(document.getElementById('video_data').innerHTML);
|
||||
'use strict';
|
||||
var player_data = JSON.parse(document.getElementById('player_data').textContent);
|
||||
var video_data = JSON.parse(document.getElementById('video_data').textContent);
|
||||
|
||||
var options = {
|
||||
preload: 'auto',
|
||||
liveui: true,
|
||||
playbackRates: [0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0],
|
||||
controlBar: {
|
||||
@ -16,6 +16,7 @@ var options = {
|
||||
'remainingTimeDisplay',
|
||||
'Spacer',
|
||||
'captionsButton',
|
||||
'audioTrackButton',
|
||||
'qualitySelector',
|
||||
'playbackRateMenuButton',
|
||||
'fullscreenToggle'
|
||||
@ -27,7 +28,7 @@ var options = {
|
||||
overrideNative: true
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
if (player_data.aspect_ratio) {
|
||||
options.aspectRatio = player_data.aspect_ratio;
|
||||
@ -38,24 +39,71 @@ embed_url.searchParams.delete('v');
|
||||
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";
|
||||
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';
|
||||
// set local if requested not videoplayback
|
||||
if (!options.uri.includes('videoplayback')) {
|
||||
if (!options.uri.includes('local=true'))
|
||||
options.uri += '?local=true';
|
||||
}
|
||||
return options;
|
||||
};
|
||||
|
||||
var player = videojs('player', options);
|
||||
|
||||
player.on('error', function () {
|
||||
if (video_data.params.quality === 'dash') return;
|
||||
|
||||
var localNotDisabled = (
|
||||
!player.currentSrc().includes('local=true') && !video_data.local_disabled
|
||||
);
|
||||
var reloadMakesSense = (
|
||||
player.error().code === MediaError.MEDIA_ERR_NETWORK ||
|
||||
player.error().code === MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED
|
||||
);
|
||||
|
||||
if (localNotDisabled) {
|
||||
// add local=true to all current sources
|
||||
player.src(player.currentSources().map(function (source) {
|
||||
source.src += '&local=true';
|
||||
return source;
|
||||
}));
|
||||
} else if (reloadMakesSense) {
|
||||
setTimeout(function () {
|
||||
console.warn('An error occurred in the player, reloading...');
|
||||
|
||||
// After load() all parameters are reset. Save them
|
||||
var currentTime = player.currentTime();
|
||||
var playbackRate = player.playbackRate();
|
||||
var paused = player.paused();
|
||||
|
||||
player.load();
|
||||
|
||||
if (currentTime > 0.5) currentTime -= 0.5;
|
||||
|
||||
player.currentTime(currentTime);
|
||||
player.playbackRate(playbackRate);
|
||||
if (!paused) player.play();
|
||||
}, 5000);
|
||||
}
|
||||
});
|
||||
|
||||
if (video_data.params.quality === 'dash') {
|
||||
player.reloadSourceOnError({
|
||||
errorInterval: 10
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Function for add time argument to url
|
||||
*
|
||||
* @param {String} url
|
||||
* @returns urlWithTimeArg
|
||||
* @param {String} [base]
|
||||
* @returns {URL} urlWithTimeArg
|
||||
*/
|
||||
function addCurrentTimeToURL(url) {
|
||||
var urlUsed = new URL(url);
|
||||
function addCurrentTimeToURL(url, base) {
|
||||
var urlUsed = new URL(url, base);
|
||||
urlUsed.searchParams.delete('start');
|
||||
var currentTime = Math.ceil(player.currentTime());
|
||||
if (currentTime > 0)
|
||||
@ -65,6 +113,56 @@ function addCurrentTimeToURL(url) {
|
||||
return urlUsed;
|
||||
}
|
||||
|
||||
/**
|
||||
* Global variable to save the last timestamp (in full seconds) at which the external
|
||||
* links were updated by the 'timeupdate' callback below.
|
||||
*
|
||||
* It is initialized to 5s so that the video will always restart from the beginning
|
||||
* if the user hasn't really started watching before switching to the other website.
|
||||
*/
|
||||
var timeupdate_last_ts = 5;
|
||||
|
||||
/**
|
||||
* Callback that updates the timestamp on all external links
|
||||
*/
|
||||
player.on('timeupdate', function () {
|
||||
// Only update once every second
|
||||
let current_ts = Math.floor(player.currentTime());
|
||||
if (current_ts > timeupdate_last_ts) timeupdate_last_ts = current_ts;
|
||||
else return;
|
||||
|
||||
// YouTube links
|
||||
|
||||
let elem_yt_watch = document.getElementById('link-yt-watch');
|
||||
if (elem_yt_watch) {
|
||||
let base_url_yt_watch = elem_yt_watch.getAttribute('data-base-url');
|
||||
elem_yt_watch.href = addCurrentTimeToURL(base_url_yt_watch);
|
||||
}
|
||||
|
||||
let elem_yt_embed = document.getElementById('link-yt-embed');
|
||||
if (elem_yt_embed) {
|
||||
let base_url_yt_embed = elem_yt_embed.getAttribute('data-base-url');
|
||||
elem_yt_embed.href = addCurrentTimeToURL(base_url_yt_embed);
|
||||
}
|
||||
|
||||
// Invidious links
|
||||
|
||||
let domain = window.location.origin;
|
||||
|
||||
let elem_iv_embed = document.getElementById('link-iv-embed');
|
||||
if (elem_iv_embed) {
|
||||
let base_url_iv_embed = elem_iv_embed.getAttribute('data-base-url');
|
||||
elem_iv_embed.href = addCurrentTimeToURL(base_url_iv_embed, domain);
|
||||
}
|
||||
|
||||
let elem_iv_other = document.getElementById('link-iv-other');
|
||||
if (elem_iv_other) {
|
||||
let base_url_iv_other = elem_iv_other.getAttribute('data-base-url');
|
||||
elem_iv_other.href = addCurrentTimeToURL(base_url_iv_other, domain);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
var shareOptions = {
|
||||
socials: ['fbFeed', 'tw', 'reddit', 'email'],
|
||||
|
||||
@ -75,18 +173,12 @@ var shareOptions = {
|
||||
description: player_data.description,
|
||||
image: player_data.thumbnail,
|
||||
get embedCode() {
|
||||
// Single quotes inside here required. HTML inserted as is into value attribute of input
|
||||
return "<iframe id='ivplayer' width='640' height='360' src='" +
|
||||
addCurrentTimeToURL(embed_url) + "' style='border:none;'></iframe>";
|
||||
}
|
||||
};
|
||||
|
||||
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({
|
||||
@ -101,78 +193,58 @@ if (location.pathname.startsWith('/embed/')) {
|
||||
// Detection code taken from https://stackoverflow.com/a/20293441
|
||||
|
||||
function isMobile() {
|
||||
try{ document.createEvent("TouchEvent"); return true; }
|
||||
try{ document.createEvent('TouchEvent'); return true; }
|
||||
catch(e){ return false; }
|
||||
}
|
||||
|
||||
if (isMobile()) {
|
||||
player.mobileUi();
|
||||
player.mobileUi({ touchControls: { seekSeconds: 5 * player.playbackRate() } });
|
||||
|
||||
buttons = ["playToggle", "volumePanel", "captionsButton"];
|
||||
var buttons = ['playToggle', 'volumePanel', 'captionsButton'];
|
||||
|
||||
if (video_data.params.quality !== 'dash') buttons.push("qualitySelector")
|
||||
if (!video_data.params.listen && video_data.params.quality === 'dash') buttons.push('audioTrackButton');
|
||||
if (video_data.params.listen || video_data.params.quality !== 'dash') buttons.push('qualitySelector');
|
||||
|
||||
// Create new control bar object for operation buttons
|
||||
const ControlBar = videojs.getComponent("controlBar");
|
||||
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))
|
||||
buttons.slice(1).forEach(function (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));
|
||||
var primary_control_bar = player.getChild('controlBar');
|
||||
buttons.forEach(function (child) {primary_control_bar.removeChild(child);});
|
||||
|
||||
operations_bar_element = operations_bar.el();
|
||||
operations_bar_element.className += " mobile-operations-bar"
|
||||
player.addChild(operations_bar)
|
||||
var operations_bar_element = operations_bar.el();
|
||||
operations_bar_element.classList.add('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)
|
||||
var 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)
|
||||
player.one('playing', function () {
|
||||
var 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)
|
||||
}
|
||||
})
|
||||
if (!video_data.params.listen && video_data.params.quality === 'dash') {
|
||||
var 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) {
|
||||
setTimeout(function (event) {
|
||||
console.log('An error occurred in the player, reloading...');
|
||||
|
||||
var currentTime = player.currentTime();
|
||||
var playbackRate = player.playbackRate();
|
||||
var paused = player.paused();
|
||||
|
||||
player.load();
|
||||
|
||||
if (currentTime > 0.5) currentTime -= 0.5;
|
||||
|
||||
player.currentTime(currentTime);
|
||||
player.playbackRate(playbackRate);
|
||||
|
||||
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")
|
||||
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"});
|
||||
case 'EQUIRECTANGULAR':
|
||||
player.vr({projection: 'equirectangular'});
|
||||
default: // Should only be 'MESH' but we'll use this as a fallback.
|
||||
player.vr({projection: 'EAC'});
|
||||
}
|
||||
}
|
||||
|
||||
@ -200,9 +272,76 @@ if (video_data.params.video_start > 0 || video_data.params.video_end > 0) {
|
||||
player.volume(video_data.params.volume / 100);
|
||||
player.playbackRate(video_data.params.speed);
|
||||
|
||||
/**
|
||||
* Method for getting the contents of a cookie
|
||||
*
|
||||
* @param {String} name Name of cookie
|
||||
* @returns {String|null} cookieValue
|
||||
*/
|
||||
function getCookieValue(name) {
|
||||
var cookiePrefix = name + '=';
|
||||
var matchedCookie = document.cookie.split(';').find(function (item) {return item.includes(cookiePrefix);});
|
||||
if (matchedCookie)
|
||||
return matchedCookie.replace(cookiePrefix, '');
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method for updating the 'PREFS' cookie (or creating it if missing)
|
||||
*
|
||||
* @param {number} newVolume New volume defined (null if unchanged)
|
||||
* @param {number} newSpeed New speed defined (null if unchanged)
|
||||
*/
|
||||
function updateCookie(newVolume, newSpeed) {
|
||||
var volumeValue = newVolume !== null ? newVolume : video_data.params.volume;
|
||||
var speedValue = newSpeed !== null ? newSpeed : video_data.params.speed;
|
||||
|
||||
var cookieValue = getCookieValue('PREFS');
|
||||
var cookieData;
|
||||
|
||||
if (cookieValue !== null) {
|
||||
var cookieJson = JSON.parse(decodeURIComponent(cookieValue));
|
||||
cookieJson.volume = volumeValue;
|
||||
cookieJson.speed = speedValue;
|
||||
cookieData = encodeURIComponent(JSON.stringify(cookieJson));
|
||||
} else {
|
||||
cookieData = encodeURIComponent(JSON.stringify({ 'volume': volumeValue, 'speed': speedValue }));
|
||||
}
|
||||
|
||||
// Set expiration in 2 year
|
||||
var date = new Date();
|
||||
date.setFullYear(date.getFullYear() + 2);
|
||||
|
||||
var ipRegex = /^((\d+\.){3}\d+|[\dA-Fa-f]*:[\d:A-Fa-f]*:[\d:A-Fa-f]+)$/;
|
||||
var domainUsed = location.hostname;
|
||||
|
||||
// Fix for a bug in FF where the leading dot in the FQDN is not ignored
|
||||
if (domainUsed.charAt(0) !== '.' && !ipRegex.test(domainUsed) && domainUsed !== 'localhost')
|
||||
domainUsed = '.' + location.hostname;
|
||||
|
||||
var secure = location.protocol.startsWith("https") ? " Secure;" : "";
|
||||
|
||||
document.cookie = 'PREFS=' + cookieData + '; SameSite=Lax; path=/; domain=' +
|
||||
domainUsed + '; expires=' + date.toGMTString() + ';' + secure;
|
||||
|
||||
video_data.params.volume = volumeValue;
|
||||
video_data.params.speed = speedValue;
|
||||
}
|
||||
|
||||
player.on('ratechange', function () {
|
||||
updateCookie(null, player.playbackRate());
|
||||
if (isMobile()) {
|
||||
player.mobileUi({ touchControls: { seekSeconds: 5 * player.playbackRate() } });
|
||||
}
|
||||
});
|
||||
|
||||
player.on('volumechange', function () {
|
||||
updateCookie(Math.ceil(player.volume() * 100), null);
|
||||
});
|
||||
|
||||
player.on('waiting', function () {
|
||||
if (player.playbackRate() > 1 && player.liveTracker.isLive() && player.liveTracker.atLiveEdge()) {
|
||||
console.log('Player has caught up to source, resetting playbackRate.')
|
||||
console.info('Player has caught up to source, resetting playbackRate');
|
||||
player.playbackRate(1);
|
||||
}
|
||||
});
|
||||
@ -213,13 +352,18 @@ if (video_data.premiere_timestamp && Math.round(new Date() / 1000) < video_data.
|
||||
|
||||
if (video_data.params.save_player_pos) {
|
||||
const url = new URL(location);
|
||||
const hasTimeParam = url.searchParams.has("t");
|
||||
const remeberedTime = get_video_time();
|
||||
const hasTimeParam = url.searchParams.has('t');
|
||||
const rememberedTime = get_video_time();
|
||||
let lastUpdated = 0;
|
||||
|
||||
if(!hasTimeParam) set_seconds_after_start(remeberedTime);
|
||||
if(!hasTimeParam) {
|
||||
if (rememberedTime >= video_data.length_seconds - 20)
|
||||
set_seconds_after_start(0);
|
||||
else
|
||||
set_seconds_after_start(rememberedTime);
|
||||
}
|
||||
|
||||
const updateTime = () => {
|
||||
player.on('timeupdate', function () {
|
||||
const raw = player.currentTime();
|
||||
const time = Math.floor(raw);
|
||||
|
||||
@ -227,9 +371,7 @@ if (video_data.params.save_player_pos) {
|
||||
save_video_time(time);
|
||||
lastUpdated = time;
|
||||
}
|
||||
};
|
||||
|
||||
player.on("timeupdate", updateTime);
|
||||
});
|
||||
}
|
||||
else remove_all_video_times();
|
||||
|
||||
@ -239,13 +381,13 @@ if (video_data.params.autoplay) {
|
||||
|
||||
player.ready(function () {
|
||||
new Promise(function (resolve, reject) {
|
||||
setTimeout(() => resolve(1), 1);
|
||||
setTimeout(function () {resolve(1);}, 1);
|
||||
}).then(function (result) {
|
||||
var promise = player.play();
|
||||
|
||||
if (promise !== undefined) {
|
||||
promise.then(_ => {
|
||||
}).catch(error => {
|
||||
promise.then(function () {
|
||||
}).catch(function (error) {
|
||||
bpb.show();
|
||||
});
|
||||
}
|
||||
@ -256,67 +398,47 @@ 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);
|
||||
if (video_data.params.quality_dash !== 'auto') {
|
||||
player.ready(function () {
|
||||
player.on('loadedmetadata', function () {
|
||||
const qualityLevels = Array.from(player.qualityLevels()).sort(function (a, b) {return a.height - b.height;});
|
||||
let targetQualityLevel;
|
||||
switch (video_data.params.quality_dash) {
|
||||
case "best":
|
||||
case 'best':
|
||||
targetQualityLevel = qualityLevels.length - 1;
|
||||
break;
|
||||
case "worst":
|
||||
case 'worst':
|
||||
targetQualityLevel = 0;
|
||||
break;
|
||||
default:
|
||||
const targetHeight = Number.parseInt(video_data.params.quality_dash, 10);
|
||||
const targetHeight = parseInt(video_data.params.quality_dash);
|
||||
for (let i = 0; i < qualityLevels.length; i++) {
|
||||
if (qualityLevels[i].height <= targetHeight) {
|
||||
if (qualityLevels[i].height <= targetHeight)
|
||||
targetQualityLevel = i;
|
||||
} else {
|
||||
else
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (let i = 0; i < qualityLevels.length; i++) {
|
||||
qualityLevels[i].enabled = (i == targetQualityLevel);
|
||||
}
|
||||
qualityLevels.forEach(function (level, index) {
|
||||
level.enabled = (index === targetQualityLevel);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
player.vttThumbnails({
|
||||
src: location.origin + '/api/v1/storyboards/' + video_data.id + '?height=90',
|
||||
src: '/api/v1/storyboards/' + video_data.id + '?height=90',
|
||||
showTimestamp: true
|
||||
});
|
||||
|
||||
// Enable annotations
|
||||
if (!video_data.params.listen && video_data.params.annotations) {
|
||||
window.addEventListener('load', function (e) {
|
||||
var video_container = document.getElementById('player');
|
||||
let xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'text';
|
||||
xhr.timeout = 60000;
|
||||
xhr.open('GET', '/api/v1/annotations/' + video_data.id, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status === 200) {
|
||||
videojs.registerPlugin('youtubeAnnotationsPlugin', youtubeAnnotationsPlugin);
|
||||
if (!player.paused()) {
|
||||
player.youtubeAnnotationsPlugin({ annotationXml: xhr.response, videoContainer: video_container });
|
||||
} else {
|
||||
player.one('play', function (event) {
|
||||
player.youtubeAnnotationsPlugin({ annotationXml: xhr.response, videoContainer: video_container });
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('__ar_annotation_click', e => {
|
||||
const { url, target, seconds } = e.detail;
|
||||
addEventListener('load', function (e) {
|
||||
addEventListener('__ar_annotation_click', function (e) {
|
||||
const url = e.detail.url,
|
||||
target = e.detail.target,
|
||||
seconds = e.detail.seconds;
|
||||
var path = new URL(url);
|
||||
|
||||
if (path.href.startsWith('https://www.youtube.com/watch?') && seconds) {
|
||||
@ -326,41 +448,48 @@ if (!video_data.params.listen && video_data.params.annotations) {
|
||||
path = path.pathname + path.search;
|
||||
|
||||
if (target === 'current') {
|
||||
window.location.href = path;
|
||||
location.href = path;
|
||||
} else if (target === 'new') {
|
||||
window.open(path, '_blank');
|
||||
open(path, '_blank');
|
||||
}
|
||||
});
|
||||
|
||||
helpers.xhr('GET', '/api/v1/annotations/' + video_data.id, {
|
||||
responseType: 'text',
|
||||
timeout: 60000
|
||||
}, {
|
||||
on200: function (response) {
|
||||
var video_container = document.getElementById('player');
|
||||
videojs.registerPlugin('youtubeAnnotationsPlugin', youtubeAnnotationsPlugin);
|
||||
if (player.paused()) {
|
||||
player.one('play', function (event) {
|
||||
player.youtubeAnnotationsPlugin({ annotationXml: response, videoContainer: video_container });
|
||||
});
|
||||
} else {
|
||||
player.youtubeAnnotationsPlugin({ annotationXml: response, videoContainer: video_container });
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
xhr.send();
|
||||
});
|
||||
}
|
||||
|
||||
function increase_volume(delta) {
|
||||
function change_volume(delta) {
|
||||
const curVolume = player.volume();
|
||||
let newVolume = curVolume + delta;
|
||||
if (newVolume > 1) {
|
||||
newVolume = 1;
|
||||
} else if (newVolume < 0) {
|
||||
newVolume = 0;
|
||||
}
|
||||
newVolume = helpers.clamp(newVolume, 0, 1);
|
||||
player.volume(newVolume);
|
||||
}
|
||||
|
||||
function toggle_muted() {
|
||||
const isMuted = player.muted();
|
||||
player.muted(!isMuted);
|
||||
player.muted(!player.muted());
|
||||
}
|
||||
|
||||
function skip_seconds(delta) {
|
||||
const duration = player.duration();
|
||||
const curTime = player.currentTime();
|
||||
let newTime = curTime + delta;
|
||||
if (newTime > duration) {
|
||||
newTime = duration;
|
||||
} else if (newTime < 0) {
|
||||
newTime = 0;
|
||||
}
|
||||
newTime = helpers.clamp(newTime, 0, duration);
|
||||
player.currentTime(newTime);
|
||||
}
|
||||
|
||||
@ -370,57 +499,21 @@ function set_seconds_after_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);
|
||||
all_video_times[video_data.id] = seconds;
|
||||
helpers.storage.set(save_player_pos_key, 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);
|
||||
}
|
||||
}
|
||||
return get_all_video_times()[video_data.id] || 0;
|
||||
}
|
||||
|
||||
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 {};
|
||||
return helpers.storage.get(save_player_pos_key) || {};
|
||||
}
|
||||
|
||||
function remove_all_video_times() {
|
||||
set_all_video_times(null);
|
||||
helpers.storage.remove(save_player_pos_key);
|
||||
}
|
||||
|
||||
function set_time_percent(percent) {
|
||||
@ -436,21 +529,23 @@ function toggle_play() { player.paused() ? play() : pause(); }
|
||||
|
||||
const toggle_captions = (function () {
|
||||
let toggledTrack = null;
|
||||
const onChange = function (e) {
|
||||
toggledTrack = null;
|
||||
};
|
||||
const bindChange = function (onOrOff) {
|
||||
player.textTracks()[onOrOff]('change', onChange);
|
||||
};
|
||||
|
||||
function bindChange(onOrOff) {
|
||||
player.textTracks()[onOrOff]('change', function (e) {
|
||||
toggledTrack = null;
|
||||
});
|
||||
}
|
||||
|
||||
// Wrapper function to ignore our own emitted events and only listen
|
||||
// to events emitted by Video.js on click on the captions menu items.
|
||||
const setMode = function (track, mode) {
|
||||
function setMode(track, mode) {
|
||||
bindChange('off');
|
||||
track.mode = mode;
|
||||
window.setTimeout(function () {
|
||||
setTimeout(function () {
|
||||
bindChange('on');
|
||||
}, 0);
|
||||
};
|
||||
}
|
||||
|
||||
bindChange('on');
|
||||
return function () {
|
||||
if (toggledTrack !== null) {
|
||||
@ -498,15 +593,11 @@ function increase_playback_rate(steps) {
|
||||
const maxIndex = options.playbackRates.length - 1;
|
||||
const curIndex = options.playbackRates.indexOf(player.playbackRate());
|
||||
let newIndex = curIndex + steps;
|
||||
if (newIndex > maxIndex) {
|
||||
newIndex = maxIndex;
|
||||
} else if (newIndex < 0) {
|
||||
newIndex = 0;
|
||||
}
|
||||
newIndex = helpers.clamp(newIndex, 0, maxIndex);
|
||||
player.playbackRate(options.playbackRates[newIndex]);
|
||||
}
|
||||
|
||||
window.addEventListener('keydown', e => {
|
||||
addEventListener('keydown', function (e) {
|
||||
if (e.target.tagName.toLowerCase() === 'input') {
|
||||
// Ignore input when focus is on certain elements, e.g. form fields.
|
||||
return;
|
||||
@ -539,10 +630,10 @@ window.addEventListener('keydown', e => {
|
||||
case 'MediaStop': action = stop; break;
|
||||
|
||||
case 'ArrowUp':
|
||||
if (isPlayerFocused) action = increase_volume.bind(this, 0.1);
|
||||
if (isPlayerFocused) action = change_volume.bind(this, 0.1);
|
||||
break;
|
||||
case 'ArrowDown':
|
||||
if (isPlayerFocused) action = increase_volume.bind(this, -0.1);
|
||||
if (isPlayerFocused) action = change_volume.bind(this, -0.1);
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
@ -593,12 +684,11 @@ window.addEventListener('keydown', e => {
|
||||
// TODO: Add support to play back previous video.
|
||||
break;
|
||||
|
||||
case '.':
|
||||
// TODO: Add support for next-frame-stepping.
|
||||
break;
|
||||
case ',':
|
||||
// TODO: Add support for previous-frame-stepping.
|
||||
break;
|
||||
// TODO: More precise step. Now FPS is taken equal to 29.97
|
||||
// Common FPS: https://forum.videohelp.com/threads/81868#post323588
|
||||
// Possible solution is new HTMLVideoElement.requestVideoFrameCallback() https://wicg.github.io/video-rvfc/
|
||||
case ',': action = function () { pause(); skip_seconds(-1/29.97); }; break;
|
||||
case '.': action = function () { pause(); skip_seconds( 1/29.97); }; break;
|
||||
|
||||
case '>': action = increase_playback_rate.bind(this, 1); break;
|
||||
case '<': action = increase_playback_rate.bind(this, -1); break;
|
||||
@ -617,84 +707,88 @@ window.addEventListener('keydown', e => {
|
||||
// Add support for controlling the player volume by scrolling over it. Adapted from
|
||||
// https://github.com/ctd1500/videojs-hotkeys/blob/bb4a158b2e214ccab87c2e7b95f42bc45c6bfd87/videojs.hotkeys.js#L292-L328
|
||||
(function () {
|
||||
const volumeStep = 0.05;
|
||||
const enableVolumeScroll = true;
|
||||
const enableHoverScroll = true;
|
||||
const doc = document;
|
||||
const pEl = document.getElementById('player');
|
||||
|
||||
var volumeHover = false;
|
||||
var volumeSelector = pEl.querySelector('.vjs-volume-menu-button') || pEl.querySelector('.vjs-volume-panel');
|
||||
if (volumeSelector != null) {
|
||||
if (volumeSelector !== null) {
|
||||
volumeSelector.onmouseover = function () { volumeHover = true; };
|
||||
volumeSelector.onmouseout = function () { volumeHover = false; };
|
||||
}
|
||||
|
||||
var mouseScroll = function mouseScroll(event) {
|
||||
var activeEl = doc.activeElement;
|
||||
if (enableHoverScroll) {
|
||||
// If we leave this undefined then it can match non-existent elements below
|
||||
activeEl = 0;
|
||||
}
|
||||
|
||||
function mouseScroll(event) {
|
||||
// When controls are disabled, hotkeys will be disabled as well
|
||||
if (player.controls()) {
|
||||
if (volumeHover) {
|
||||
if (enableVolumeScroll) {
|
||||
event = window.event || event;
|
||||
var delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));
|
||||
event.preventDefault();
|
||||
if (!player.controls() || !volumeHover) return;
|
||||
|
||||
if (delta == 1) {
|
||||
increase_volume(volumeStep);
|
||||
} else if (delta == -1) {
|
||||
increase_volume(-volumeStep);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
event.preventDefault();
|
||||
var wheelMove = event.wheelDelta || -event.detail;
|
||||
var volumeSign = Math.sign(wheelMove);
|
||||
|
||||
change_volume(volumeSign * 0.05); // decrease/increase by 5%
|
||||
}
|
||||
|
||||
player.on('mousewheel', mouseScroll);
|
||||
player.on("DOMMouseScroll", mouseScroll);
|
||||
player.on('DOMMouseScroll', mouseScroll);
|
||||
}());
|
||||
|
||||
// Since videojs-share can sometimes be blocked, we defer it until last
|
||||
if (player.share) {
|
||||
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';
|
||||
player.ready(function () {
|
||||
if (!video_data.params.listen && video_data.params.quality === 'dash') {
|
||||
// play.textTracks()[0] on DASH mode is showing some debug messages
|
||||
player.textTracks()[1].mode = 'showing';
|
||||
} else {
|
||||
player.textTracks()[0].mode = 'showing';
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Safari audio double duration fix
|
||||
if (navigator.vendor == "Apple Computer, Inc." && video_data.params.listen) {
|
||||
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);
|
||||
if (player.remainingTime() < player.duration() / 2 && player.remainingTime() >= 2) {
|
||||
player.currentTime(player.duration() - 1);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Safari screen timeout on looped video playback fix
|
||||
if (navigator.vendor === 'Apple Computer, Inc.' && !video_data.params.listen && video_data.params.video_loop) {
|
||||
player.loop(false);
|
||||
player.ready(function () {
|
||||
player.on('ended', function () {
|
||||
player.currentTime(0);
|
||||
player.play();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// Watch on Invidious link
|
||||
if (window.location.pathname.startsWith("/embed/")) {
|
||||
if (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"))
|
||||
var redirect_element = document.createElement('a');
|
||||
redirect_element.setAttribute('href', location.pathname.replace('/embed/', '/watch?v='));
|
||||
redirect_element.appendChild(document.createTextNode('Invidious'));
|
||||
|
||||
watch_on_invidious_button.el().appendChild(redirect_element)
|
||||
watch_on_invidious_button.addClass("watch-on-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)
|
||||
};
|
||||
var cb = player.getChild('ControlBar');
|
||||
cb.addChild(watch_on_invidious_button);
|
||||
}
|
||||
|
||||
addEventListener('DOMContentLoaded', function () {
|
||||
// Save time during redirection on another instance
|
||||
const changeInstanceLink = document.querySelector('#watch-on-another-invidious-instance > a');
|
||||
if (changeInstanceLink) changeInstanceLink.addEventListener('click', function () {
|
||||
changeInstanceLink.href = addCurrentTimeToURL(changeInstanceLink.href);
|
||||
});
|
||||
});
|
||||
|
@ -1,73 +1,48 @@
|
||||
var playlist_data = JSON.parse(document.getElementById('playlist_data').innerHTML);
|
||||
'use strict';
|
||||
var playlist_data = JSON.parse(document.getElementById('playlist_data').textContent);
|
||||
var payload = 'csrf_token=' + playlist_data.csrf_token;
|
||||
|
||||
function add_playlist_video(target) {
|
||||
var select = target.parentNode.children[0].children[1];
|
||||
var option = select.children[select.selectedIndex];
|
||||
|
||||
var url = '/playlist_ajax?action_add_video=1&redirect=false' +
|
||||
var url = '/playlist_ajax?action=add_video&redirect=false' +
|
||||
'&video_id=' + target.getAttribute('data-id') +
|
||||
'&playlist_id=' + option.getAttribute('data-plid');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
option.innerText = '✓' + option.innerText;
|
||||
}
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
on200: function (response) {
|
||||
option.textContent = '✓' + option.textContent;
|
||||
}
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + playlist_data.csrf_token);
|
||||
});
|
||||
}
|
||||
|
||||
function add_playlist_item(target) {
|
||||
var tile = target.parentNode.parentNode.parentNode.parentNode.parentNode;
|
||||
tile.style.display = 'none';
|
||||
|
||||
var url = '/playlist_ajax?action_add_video=1&redirect=false' +
|
||||
var url = '/playlist_ajax?action=add_video&redirect=false' +
|
||||
'&video_id=' + target.getAttribute('data-id') +
|
||||
'&playlist_id=' + target.getAttribute('data-plid');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
tile.style.display = '';
|
||||
}
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
onNon200: function (xhr) {
|
||||
tile.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + playlist_data.csrf_token);
|
||||
});
|
||||
}
|
||||
|
||||
function remove_playlist_item(target) {
|
||||
var tile = target.parentNode.parentNode.parentNode.parentNode.parentNode;
|
||||
tile.style.display = 'none';
|
||||
|
||||
var url = '/playlist_ajax?action_remove_video=1&redirect=false' +
|
||||
var url = '/playlist_ajax?action=remove_video&redirect=false' +
|
||||
'&set_video_id=' + target.getAttribute('data-index') +
|
||||
'&playlist_id=' + target.getAttribute('data-plid');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
tile.style.display = '';
|
||||
}
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
onNon200: function (xhr) {
|
||||
tile.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + playlist_data.csrf_token);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
3
assets/js/post.js
Normal file
3
assets/js/post.js
Normal file
@ -0,0 +1,3 @@
|
||||
addEventListener('load', function (e) {
|
||||
get_youtube_comments();
|
||||
});
|
File diff suppressed because one or more lines are too long
@ -1,7 +1,9 @@
|
||||
var subscribe_data = JSON.parse(document.getElementById('subscribe_data').innerHTML);
|
||||
'use strict';
|
||||
var subscribe_data = JSON.parse(document.getElementById('subscribe_data').textContent);
|
||||
var payload = 'csrf_token=' + subscribe_data.csrf_token;
|
||||
|
||||
var subscribe_button = document.getElementById('subscribe');
|
||||
subscribe_button.parentNode['action'] = 'javascript:void(0)';
|
||||
subscribe_button.parentNode.action = 'javascript:void(0)';
|
||||
|
||||
if (subscribe_button.getAttribute('data-type') === 'subscribe') {
|
||||
subscribe_button.onclick = subscribe;
|
||||
@ -9,82 +11,34 @@ if (subscribe_button.getAttribute('data-type') === 'subscribe') {
|
||||
subscribe_button.onclick = unsubscribe;
|
||||
}
|
||||
|
||||
function subscribe(retries = 5) {
|
||||
if (retries <= 0) {
|
||||
console.log('Failed to subscribe.');
|
||||
return;
|
||||
}
|
||||
|
||||
var url = '/subscription_ajax?action_create_subscription_to_channel=1&redirect=false' +
|
||||
'&c=' + subscribe_data.ucid;
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
function subscribe() {
|
||||
var fallback = subscribe_button.innerHTML;
|
||||
subscribe_button.onclick = unsubscribe;
|
||||
subscribe_button.innerHTML = '<b>' + subscribe_data.unsubscribe_text + ' | ' + subscribe_data.sub_count_text + '</b>';
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
subscribe_button.onclick = subscribe;
|
||||
subscribe_button.innerHTML = fallback;
|
||||
}
|
||||
var url = '/subscription_ajax?action=create_subscription_to_channel&redirect=false' +
|
||||
'&c=' + subscribe_data.ucid;
|
||||
|
||||
helpers.xhr('POST', url, {payload: payload, retries: 5, entity_name: 'subscribe request'}, {
|
||||
onNon200: function (xhr) {
|
||||
subscribe_button.onclick = subscribe;
|
||||
subscribe_button.innerHTML = fallback;
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
console.log('Subscribing failed... ' + retries + '/5');
|
||||
setTimeout(function () { subscribe(retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Subscribing failed... ' + retries + '/5');
|
||||
subscribe(retries - 1);
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + subscribe_data.csrf_token);
|
||||
});
|
||||
}
|
||||
|
||||
function unsubscribe(retries = 5) {
|
||||
if (retries <= 0) {
|
||||
console.log('Failed to subscribe');
|
||||
return;
|
||||
}
|
||||
|
||||
var url = '/subscription_ajax?action_remove_subscriptions=1&redirect=false' +
|
||||
'&c=' + subscribe_data.ucid;
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
function unsubscribe() {
|
||||
var fallback = subscribe_button.innerHTML;
|
||||
subscribe_button.onclick = subscribe;
|
||||
subscribe_button.innerHTML = '<b>' + subscribe_data.subscribe_text + ' | ' + subscribe_data.sub_count_text + '</b>';
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
subscribe_button.onclick = unsubscribe;
|
||||
subscribe_button.innerHTML = fallback;
|
||||
}
|
||||
var url = '/subscription_ajax?action=remove_subscriptions&redirect=false' +
|
||||
'&c=' + subscribe_data.ucid;
|
||||
|
||||
helpers.xhr('POST', url, {payload: payload, retries: 5, entity_name: 'unsubscribe request'}, {
|
||||
onNon200: function (xhr) {
|
||||
subscribe_button.onclick = unsubscribe;
|
||||
subscribe_button.innerHTML = fallback;
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
console.log('Unsubscribing failed... ' + retries + '/5');
|
||||
setTimeout(function () { unsubscribe(retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Unsubscribing failed... ' + retries + '/5');
|
||||
unsubscribe(retries - 1);
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + subscribe_data.csrf_token);
|
||||
});
|
||||
}
|
||||
|
@ -1,91 +1,46 @@
|
||||
'use strict';
|
||||
var toggle_theme = document.getElementById('toggle_theme');
|
||||
toggle_theme.href = 'javascript:void(0);';
|
||||
toggle_theme.href = 'javascript:void(0)';
|
||||
|
||||
const STORAGE_KEY_THEME = 'dark_mode';
|
||||
const THEME_DARK = 'dark';
|
||||
const THEME_LIGHT = 'light';
|
||||
|
||||
// TODO: theme state controlled by system
|
||||
toggle_theme.addEventListener('click', function () {
|
||||
var dark_mode = document.body.classList.contains("light-theme");
|
||||
|
||||
var url = '/toggle_theme?redirect=false';
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', url, true);
|
||||
|
||||
set_mode(dark_mode);
|
||||
try {
|
||||
window.localStorage.setItem('dark_mode', dark_mode ? 'dark' : 'light');
|
||||
} catch {}
|
||||
|
||||
xhr.send();
|
||||
const isDarkTheme = helpers.storage.get(STORAGE_KEY_THEME) === THEME_DARK;
|
||||
const newTheme = isDarkTheme ? THEME_LIGHT : THEME_DARK;
|
||||
setTheme(newTheme);
|
||||
helpers.storage.set(STORAGE_KEY_THEME, newTheme);
|
||||
helpers.xhr('GET', '/toggle_theme?redirect=false', {}, {});
|
||||
});
|
||||
|
||||
window.addEventListener('storage', function (e) {
|
||||
if (e.key === 'dark_mode') {
|
||||
update_mode(e.newValue);
|
||||
}
|
||||
});
|
||||
|
||||
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);
|
||||
});
|
||||
|
||||
|
||||
var darkScheme = window.matchMedia('(prefers-color-scheme: dark)');
|
||||
var lightScheme = window.matchMedia('(prefers-color-scheme: light)');
|
||||
|
||||
darkScheme.addListener(scheme_switch);
|
||||
lightScheme.addListener(scheme_switch);
|
||||
|
||||
function scheme_switch (e) {
|
||||
// ignore this method if we have a preference set
|
||||
try {
|
||||
if (localStorage.getItem('dark_mode')) {
|
||||
return;
|
||||
}
|
||||
} catch {}
|
||||
if (e.matches) {
|
||||
if (e.media.includes("dark")) {
|
||||
set_mode(true);
|
||||
} else if (e.media.includes("light")) {
|
||||
set_mode(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function set_mode (bool) {
|
||||
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');
|
||||
/** @param {THEME_DARK|THEME_LIGHT} theme */
|
||||
function setTheme(theme) {
|
||||
// By default body element has .no-theme class that uses OS theme via CSS @media rules
|
||||
// It rewrites using hard className below
|
||||
if (theme === THEME_DARK) {
|
||||
toggle_theme.children[0].className = 'icon ion-ios-sunny';
|
||||
document.body.className = 'dark-theme';
|
||||
} else if (theme === THEME_LIGHT) {
|
||||
toggle_theme.children[0].className = 'icon ion-ios-moon';
|
||||
document.body.className = 'light-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');
|
||||
document.body.className = 'no-theme';
|
||||
}
|
||||
}
|
||||
|
||||
function update_mode (mode) {
|
||||
if (mode === 'true' /* for backwards compatibility */ || mode === 'dark') {
|
||||
// If preference for dark mode indicated
|
||||
set_mode(true);
|
||||
}
|
||||
else if (mode === 'false' /* for backwards compatibility */ || mode === 'light') {
|
||||
// If preference for light mode indicated
|
||||
set_mode(false);
|
||||
}
|
||||
else if (document.getElementById('dark_mode_pref').textContent === '' && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||
// If no preference indicated here and no preference indicated on the preferences page (backend), but the browser tells us that the operating system has a dark theme
|
||||
set_mode(true);
|
||||
}
|
||||
// else do nothing, falling back to the mode defined by the `dark_mode` preference on the preferences page (backend)
|
||||
}
|
||||
|
||||
// Handles theme change event caused by other tab
|
||||
addEventListener('storage', function (e) {
|
||||
if (e.key === STORAGE_KEY_THEME)
|
||||
setTheme(helpers.storage.get(STORAGE_KEY_THEME));
|
||||
});
|
||||
|
||||
// Set theme from preferences on page load
|
||||
addEventListener('DOMContentLoaded', function () {
|
||||
const prefTheme = document.getElementById('dark_mode_pref').textContent;
|
||||
if (prefTheme) {
|
||||
setTheme(prefTheme);
|
||||
helpers.storage.set(STORAGE_KEY_THEME, prefTheme);
|
||||
}
|
||||
});
|
||||
|
@ -1,32 +1,13 @@
|
||||
var video_data = JSON.parse(document.getElementById('video_data').innerHTML);
|
||||
|
||||
String.prototype.supplant = function (o) {
|
||||
return this.replace(/{([^{}]*)}/g, function (a, b) {
|
||||
var r = o[b];
|
||||
return typeof r === 'string' || typeof r === 'number' ? r : a;
|
||||
});
|
||||
}
|
||||
'use strict';
|
||||
|
||||
function toggle_parent(target) {
|
||||
body = target.parentNode.parentNode.children[1];
|
||||
if (body.style.display === null || body.style.display === '') {
|
||||
target.innerHTML = '[ + ]';
|
||||
body.style.display = 'none';
|
||||
} else {
|
||||
target.innerHTML = '[ - ]';
|
||||
var body = target.parentNode.parentNode.children[1];
|
||||
if (body.style.display === 'none') {
|
||||
target.textContent = '[ − ]';
|
||||
body.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
function toggle_comments(event) {
|
||||
var target = event.target;
|
||||
body = target.parentNode.parentNode.parentNode.children[1];
|
||||
if (body.style.display === null || body.style.display === '') {
|
||||
target.innerHTML = '[ + ]';
|
||||
body.style.display = 'none';
|
||||
} else {
|
||||
target.innerHTML = '[ - ]';
|
||||
body.style.display = '';
|
||||
target.textContent = '[ + ]';
|
||||
body.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
@ -40,36 +21,6 @@ function swap_comments(event) {
|
||||
}
|
||||
}
|
||||
|
||||
function hide_youtube_replies(event) {
|
||||
var target = event.target;
|
||||
|
||||
sub_text = target.getAttribute('data-inner-text');
|
||||
inner_text = target.getAttribute('data-sub-text');
|
||||
|
||||
body = target.parentNode.parentNode.children[1];
|
||||
body.style.display = 'none';
|
||||
|
||||
target.innerHTML = sub_text;
|
||||
target.onclick = show_youtube_replies;
|
||||
target.setAttribute('data-inner-text', inner_text);
|
||||
target.setAttribute('data-sub-text', sub_text);
|
||||
}
|
||||
|
||||
function show_youtube_replies(event) {
|
||||
var target = event.target;
|
||||
|
||||
sub_text = target.getAttribute('data-inner-text');
|
||||
inner_text = target.getAttribute('data-sub-text');
|
||||
|
||||
body = target.parentNode.parentNode.children[1];
|
||||
body.style.display = '';
|
||||
|
||||
target.innerHTML = sub_text;
|
||||
target.onclick = hide_youtube_replies;
|
||||
target.setAttribute('data-inner-text', inner_text);
|
||||
target.setAttribute('data-sub-text', sub_text);
|
||||
}
|
||||
|
||||
var continue_button = document.getElementById('continue');
|
||||
if (continue_button) {
|
||||
continue_button.onclick = continue_autoplay;
|
||||
@ -78,379 +29,158 @@ if (continue_button) {
|
||||
function next_video() {
|
||||
var url = new URL('https://example.com/watch?v=' + video_data.next_video);
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay)
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
|
||||
if (video_data.params.listen !== video_data.preferences.listen) {
|
||||
if (video_data.params.listen !== video_data.preferences.listen)
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
}
|
||||
|
||||
if (video_data.params.speed !== video_data.preferences.speed) {
|
||||
if (video_data.params.speed !== video_data.preferences.speed)
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
}
|
||||
|
||||
if (video_data.params.local !== video_data.preferences.local) {
|
||||
if (video_data.params.local !== video_data.preferences.local)
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
url.searchParams.set('continue', '1');
|
||||
|
||||
location.assign(url.pathname + url.search);
|
||||
}
|
||||
|
||||
function continue_autoplay(event) {
|
||||
if (event.target.checked) {
|
||||
player.on('ended', function () {
|
||||
next_video();
|
||||
});
|
||||
player.on('ended', next_video);
|
||||
} else {
|
||||
player.off('ended');
|
||||
}
|
||||
}
|
||||
|
||||
function number_with_separator(val) {
|
||||
while (/(\d+)(\d{3})/.test(val.toString())) {
|
||||
val = val.toString().replace(/(\d+)(\d{3})/, '$1' + ',' + '$2');
|
||||
}
|
||||
return val;
|
||||
}
|
||||
function get_playlist(plid) {
|
||||
var playlist = document.getElementById('playlist');
|
||||
|
||||
function get_playlist(plid, retries) {
|
||||
if (retries == undefined) retries = 5;
|
||||
playlist = document.getElementById('playlist');
|
||||
|
||||
if (retries <= 0) {
|
||||
console.log('Failed to pull playlist');
|
||||
playlist.innerHTML = '';
|
||||
return;
|
||||
}
|
||||
|
||||
playlist.innerHTML = ' \
|
||||
<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3> \
|
||||
<hr>'
|
||||
playlist.innerHTML = spinnerHTMLwithHR;
|
||||
|
||||
var plid_url;
|
||||
if (plid.startsWith('RD')) {
|
||||
var plid_url = '/api/v1/mixes/' + plid +
|
||||
plid_url = '/api/v1/mixes/' + plid +
|
||||
'?continuation=' + video_data.id +
|
||||
'&format=html&hl=' + video_data.preferences.locale;
|
||||
} else {
|
||||
var plid_url = '/api/v1/playlists/' + plid +
|
||||
plid_url = '/api/v1/playlists/' + plid +
|
||||
'?index=' + video_data.index +
|
||||
'&continuation=' + video_data.id +
|
||||
'&format=html&hl=' + video_data.preferences.locale;
|
||||
}
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', plid_url, true);
|
||||
if (video_data.params.listen) {
|
||||
plid_url += '&listen=1'
|
||||
}
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
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;
|
||||
helpers.xhr('GET', plid_url, {retries: 5, entity_name: 'playlist'}, {
|
||||
on200: function (response) {
|
||||
playlist.innerHTML = response.playlistHtml;
|
||||
|
||||
if (xhr.response.nextVideo) {
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/watch?v=' + xhr.response.nextVideo);
|
||||
if (!response.nextVideo) return;
|
||||
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD')) {
|
||||
url.searchParams.set('index', xhr.response.index);
|
||||
}
|
||||
var nextVideo = document.getElementById(response.nextVideo);
|
||||
nextVideo.parentNode.parentNode.scrollTop = nextVideo.offsetTop;
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/watch?v=' + response.nextVideo);
|
||||
|
||||
if (video_data.params.listen !== video_data.preferences.listen) {
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
}
|
||||
url.searchParams.set('list', plid);
|
||||
if (!plid.startsWith('RD'))
|
||||
url.searchParams.set('index', response.index);
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay)
|
||||
url.searchParams.set('autoplay', '1');
|
||||
if (video_data.params.listen !== video_data.preferences.listen)
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
if (video_data.params.speed !== video_data.preferences.speed)
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
if (video_data.params.local !== video_data.preferences.local)
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
|
||||
if (video_data.params.speed !== video_data.preferences.speed) {
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
}
|
||||
|
||||
if (video_data.params.local !== video_data.preferences.local) {
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
}
|
||||
} else {
|
||||
playlist.innerHTML = '';
|
||||
document.getElementById('continue').style.display = '';
|
||||
}
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
},
|
||||
onNon200: function (xhr) {
|
||||
playlist.innerHTML = '';
|
||||
document.getElementById('continue').style.display = '';
|
||||
},
|
||||
onError: function (xhr) {
|
||||
playlist.innerHTML = spinnerHTMLwithHR;
|
||||
},
|
||||
onTimeout: function (xhr) {
|
||||
playlist.innerHTML = spinnerHTMLwithHR;
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
playlist = document.getElementById('playlist');
|
||||
playlist.innerHTML =
|
||||
'<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3><hr>';
|
||||
|
||||
console.log('Pulling playlist timed out... ' + retries + '/5');
|
||||
setTimeout(function () { get_playlist(plid, retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
playlist = document.getElementById('playlist');
|
||||
playlist.innerHTML =
|
||||
'<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3><hr>';
|
||||
|
||||
console.log('Pulling playlist timed out... ' + retries + '/5');
|
||||
get_playlist(plid, retries - 1);
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
});
|
||||
}
|
||||
|
||||
function get_reddit_comments(retries) {
|
||||
if (retries == undefined) retries = 5;
|
||||
comments = document.getElementById('comments');
|
||||
|
||||
if (retries <= 0) {
|
||||
console.log('Failed to pull comments');
|
||||
comments.innerHTML = '';
|
||||
return;
|
||||
}
|
||||
function get_reddit_comments() {
|
||||
var comments = document.getElementById('comments');
|
||||
|
||||
var fallback = comments.innerHTML;
|
||||
comments.innerHTML =
|
||||
'<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3>';
|
||||
comments.innerHTML = spinnerHTML;
|
||||
|
||||
var url = '/api/v1/comments/' + video_data.id +
|
||||
'?source=reddit&format=html' +
|
||||
'&hl=' + video_data.preferences.locale;
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', url, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
comments.innerHTML = ' \
|
||||
<div> \
|
||||
<h3> \
|
||||
<a href="javascript:void(0)">[ - ]</a> \
|
||||
{title} \
|
||||
</h3> \
|
||||
<p> \
|
||||
<b> \
|
||||
<a href="javascript:void(0)" data-comments="youtube"> \
|
||||
{youtubeCommentsText} \
|
||||
</a> \
|
||||
</b> \
|
||||
</p> \
|
||||
var onNon200 = function (xhr) { comments.innerHTML = fallback; };
|
||||
if (video_data.params.comments[1] === 'youtube')
|
||||
onNon200 = function (xhr) {};
|
||||
|
||||
helpers.xhr('GET', url, {retries: 5, entity_name: ''}, {
|
||||
on200: function (response) {
|
||||
comments.innerHTML = ' \
|
||||
<div> \
|
||||
<h3> \
|
||||
<a href="javascript:void(0)">[ − ]</a> \
|
||||
{title} \
|
||||
</h3> \
|
||||
<p> \
|
||||
<b> \
|
||||
<a rel="noopener" target="_blank" href="https://reddit.com{permalink}">{redditPermalinkText}</a> \
|
||||
</b> \
|
||||
</div> \
|
||||
<div>{contentHtml}</div> \
|
||||
<hr>'.supplant({
|
||||
title: xhr.response.title,
|
||||
youtubeCommentsText: video_data.youtube_comments_text,
|
||||
redditPermalinkText: video_data.reddit_permalink_text,
|
||||
permalink: xhr.response.permalink,
|
||||
contentHtml: xhr.response.contentHtml
|
||||
});
|
||||
|
||||
comments.children[0].children[0].children[0].onclick = toggle_comments;
|
||||
comments.children[0].children[1].children[0].onclick = swap_comments;
|
||||
} else {
|
||||
if (video_data.params.comments[1] === 'youtube') {
|
||||
console.log('Pulling comments failed... ' + retries + '/5');
|
||||
setTimeout(function () { get_youtube_comments(retries - 1) }, 1000);
|
||||
} else {
|
||||
comments.innerHTML = fallback;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
console.log('Pulling comments failed... ' + retries + '/5');
|
||||
setTimeout(function () { get_reddit_comments(retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Pulling comments failed... ' + retries + '/5');
|
||||
get_reddit_comments(retries - 1);
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
}
|
||||
|
||||
function get_youtube_comments(retries) {
|
||||
if (retries == undefined) retries = 5;
|
||||
comments = document.getElementById('comments');
|
||||
|
||||
if (retries <= 0) {
|
||||
console.log('Failed to pull comments');
|
||||
comments.innerHTML = '';
|
||||
return;
|
||||
}
|
||||
|
||||
var fallback = comments.innerHTML;
|
||||
comments.innerHTML =
|
||||
'<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3>';
|
||||
|
||||
var url = '/api/v1/comments/' + video_data.id +
|
||||
'?format=html' +
|
||||
'&hl=' + video_data.preferences.locale +
|
||||
'&thin_mode=' + video_data.preferences.thin_mode;
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', url, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
comments.innerHTML = ' \
|
||||
<div> \
|
||||
<h3> \
|
||||
<a href="javascript:void(0)">[ - ]</a> \
|
||||
{commentsText} \
|
||||
</h3> \
|
||||
<b> \
|
||||
<a href="javascript:void(0)" data-comments="reddit"> \
|
||||
{redditComments} \
|
||||
<a href="javascript:void(0)" data-comments="youtube"> \
|
||||
{youtubeCommentsText} \
|
||||
</a> \
|
||||
</b> \
|
||||
</div> \
|
||||
<div>{contentHtml}</div> \
|
||||
<hr>'.supplant({
|
||||
contentHtml: xhr.response.contentHtml,
|
||||
redditComments: video_data.reddit_comments_text,
|
||||
commentsText: video_data.comments_text.supplant(
|
||||
{ commentCount: number_with_separator(xhr.response.commentCount) }
|
||||
)
|
||||
});
|
||||
</p> \
|
||||
<b> \
|
||||
<a rel="noopener" target="_blank" href="https://reddit.com{permalink}">{redditPermalinkText}</a> \
|
||||
</b> \
|
||||
</div> \
|
||||
<div>{contentHtml}</div> \
|
||||
<hr>'.supplant({
|
||||
title: response.title,
|
||||
youtubeCommentsText: video_data.youtube_comments_text,
|
||||
redditPermalinkText: video_data.reddit_permalink_text,
|
||||
permalink: response.permalink,
|
||||
contentHtml: response.contentHtml
|
||||
});
|
||||
|
||||
comments.children[0].children[0].children[0].onclick = toggle_comments;
|
||||
comments.children[0].children[1].children[0].onclick = swap_comments;
|
||||
} else {
|
||||
if (video_data.params.comments[1] === 'youtube') {
|
||||
setTimeout(function () { get_youtube_comments(retries - 1) }, 1000);
|
||||
} else {
|
||||
comments.innerHTML = '';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
xhr.onerror = function () {
|
||||
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');
|
||||
setTimeout(function () { get_youtube_comments(retries - 1) }, 1000);
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
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');
|
||||
get_youtube_comments(retries - 1);
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
}
|
||||
|
||||
function get_youtube_replies(target, load_more, load_replies) {
|
||||
var continuation = target.getAttribute('data-continuation');
|
||||
|
||||
var body = target.parentNode.parentNode;
|
||||
var fallback = body.innerHTML;
|
||||
body.innerHTML =
|
||||
'<h3 style="text-align:center"><div class="loading"><i class="icon ion-ios-refresh"></i></div></h3>';
|
||||
|
||||
var url = '/api/v1/comments/' + video_data.id +
|
||||
'?format=html' +
|
||||
'&hl=' + video_data.preferences.locale +
|
||||
'&thin_mode=' + video_data.preferences.thin_mode +
|
||||
'&continuation=' + continuation
|
||||
if (load_replies) {
|
||||
url += '&action=action_get_comment_replies';
|
||||
}
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('GET', url, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status == 200) {
|
||||
if (load_more) {
|
||||
body = body.parentNode.parentNode;
|
||||
body.removeChild(body.lastElementChild);
|
||||
body.innerHTML += xhr.response.contentHtml;
|
||||
} else {
|
||||
body.removeChild(body.lastElementChild);
|
||||
|
||||
var p = document.createElement('p');
|
||||
var a = document.createElement('a');
|
||||
p.appendChild(a);
|
||||
|
||||
a.href = 'javascript:void(0)';
|
||||
a.onclick = hide_youtube_replies;
|
||||
a.setAttribute('data-sub-text', video_data.hide_replies_text);
|
||||
a.setAttribute('data-inner-text', video_data.show_replies_text);
|
||||
a.innerText = video_data.hide_replies_text;
|
||||
|
||||
var div = document.createElement('div');
|
||||
div.innerHTML = xhr.response.contentHtml;
|
||||
|
||||
body.appendChild(p);
|
||||
body.appendChild(div);
|
||||
}
|
||||
} else {
|
||||
body.innerHTML = fallback;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
xhr.ontimeout = function () {
|
||||
console.log('Pulling comments failed.');
|
||||
body.innerHTML = fallback;
|
||||
}
|
||||
|
||||
xhr.send();
|
||||
comments.children[0].children[0].children[0].onclick = toggle_comments;
|
||||
comments.children[0].children[1].children[0].onclick = swap_comments;
|
||||
},
|
||||
onNon200: onNon200, // declared above
|
||||
});
|
||||
}
|
||||
|
||||
if (video_data.play_next) {
|
||||
player.on('ended', function () {
|
||||
var url = new URL('https://example.com/watch?v=' + video_data.next_video);
|
||||
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay) {
|
||||
if (video_data.params.autoplay || video_data.params.continue_autoplay)
|
||||
url.searchParams.set('autoplay', '1');
|
||||
}
|
||||
|
||||
if (video_data.params.listen !== video_data.preferences.listen) {
|
||||
if (video_data.params.listen !== video_data.preferences.listen)
|
||||
url.searchParams.set('listen', video_data.params.listen);
|
||||
}
|
||||
|
||||
if (video_data.params.speed !== video_data.preferences.speed) {
|
||||
if (video_data.params.speed !== video_data.preferences.speed)
|
||||
url.searchParams.set('speed', video_data.params.speed);
|
||||
}
|
||||
|
||||
if (video_data.params.local !== video_data.preferences.local) {
|
||||
if (video_data.params.local !== video_data.preferences.local)
|
||||
url.searchParams.set('local', video_data.params.local);
|
||||
}
|
||||
|
||||
url.searchParams.set('continue', '1');
|
||||
|
||||
location.assign(url.pathname + url.search);
|
||||
});
|
||||
}
|
||||
|
||||
window.addEventListener('load', function (e) {
|
||||
if (video_data.plid) {
|
||||
addEventListener('load', function (e) {
|
||||
if (video_data.plid)
|
||||
get_playlist(video_data.plid);
|
||||
}
|
||||
|
||||
if (video_data.params.comments[0] === 'youtube') {
|
||||
get_youtube_comments();
|
||||
@ -461,7 +191,7 @@ window.addEventListener('load', function (e) {
|
||||
} else if (video_data.params.comments[1] === 'reddit') {
|
||||
get_reddit_comments();
|
||||
} else {
|
||||
comments = document.getElementById('comments');
|
||||
var comments = document.getElementById('comments');
|
||||
comments.innerHTML = '';
|
||||
}
|
||||
});
|
||||
|
24
assets/js/watched_indicator.js
Normal file
24
assets/js/watched_indicator.js
Normal file
@ -0,0 +1,24 @@
|
||||
'use strict';
|
||||
var save_player_pos_key = 'save_player_pos';
|
||||
|
||||
function get_all_video_times() {
|
||||
return helpers.storage.get(save_player_pos_key) || {};
|
||||
}
|
||||
|
||||
document.querySelectorAll('.watched-indicator').forEach(function (indicator) {
|
||||
var watched_part = get_all_video_times()[indicator.dataset.id];
|
||||
var total = parseInt(indicator.dataset.length, 10);
|
||||
if (watched_part === undefined) {
|
||||
watched_part = total;
|
||||
}
|
||||
var percentage = Math.round((watched_part / total) * 100);
|
||||
|
||||
if (percentage < 5) {
|
||||
percentage = 5;
|
||||
}
|
||||
if (percentage > 90) {
|
||||
percentage = 100;
|
||||
}
|
||||
|
||||
indicator.style.width = percentage + '%';
|
||||
});
|
@ -1,50 +1,34 @@
|
||||
var watched_data = JSON.parse(document.getElementById('watched_data').innerHTML);
|
||||
'use strict';
|
||||
var watched_data = JSON.parse(document.getElementById('watched_data').textContent);
|
||||
var payload = 'csrf_token=' + watched_data.csrf_token;
|
||||
|
||||
function mark_watched(target) {
|
||||
var tile = target.parentNode.parentNode.parentNode.parentNode.parentNode;
|
||||
tile.style.display = 'none';
|
||||
|
||||
var url = '/watch_ajax?action_mark_watched=1&redirect=false' +
|
||||
var url = '/watch_ajax?action=mark_watched&redirect=false' +
|
||||
'&id=' + target.getAttribute('data-id');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
tile.style.display = '';
|
||||
}
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
onNon200: function (xhr) {
|
||||
tile.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + watched_data.csrf_token);
|
||||
});
|
||||
}
|
||||
|
||||
function mark_unwatched(target) {
|
||||
var tile = target.parentNode.parentNode.parentNode.parentNode.parentNode;
|
||||
tile.style.display = 'none';
|
||||
var count = document.getElementById('count')
|
||||
count.innerText = count.innerText - 1;
|
||||
var count = document.getElementById('count');
|
||||
count.textContent--;
|
||||
|
||||
var url = '/watch_ajax?action_mark_unwatched=1&redirect=false' +
|
||||
var url = '/watch_ajax?action=mark_unwatched&redirect=false' +
|
||||
'&id=' + target.getAttribute('data-id');
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.responseType = 'json';
|
||||
xhr.timeout = 10000;
|
||||
xhr.open('POST', url, true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
if (xhr.status != 200) {
|
||||
count.innerText = count.innerText - 1 + 2;
|
||||
tile.style.display = '';
|
||||
}
|
||||
helpers.xhr('POST', url, {payload: payload}, {
|
||||
onNon200: function (xhr) {
|
||||
count.textContent++;
|
||||
tile.style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
xhr.send('csrf_token=' + watched_data.csrf_token);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -15,5 +15,7 @@
|
||||
],
|
||||
"theme_color": "#575757",
|
||||
"background_color": "#575757",
|
||||
"display": "standalone"
|
||||
"display": "standalone",
|
||||
"description": "An alternative front-end to YouTube",
|
||||
"start_url": "/"
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
#########################################
|
||||
#
|
||||
# Database configuration
|
||||
# Database and other external servers
|
||||
#
|
||||
#########################################
|
||||
|
||||
@ -41,6 +41,19 @@ db:
|
||||
#check_tables: false
|
||||
|
||||
|
||||
##
|
||||
## Path to an external signature resolver, used to emulate
|
||||
## the Youtube client's Javascript. If no such server is
|
||||
## available, some videos will not be playable.
|
||||
##
|
||||
## When this setting is commented out, no external
|
||||
## resolver will be used.
|
||||
##
|
||||
## Accepted values: a path to a UNIX socket or "<IP>:<Port>"
|
||||
## Default: <none>
|
||||
##
|
||||
#signature_server:
|
||||
|
||||
|
||||
#########################################
|
||||
#
|
||||
@ -117,6 +130,20 @@ https_only: false
|
||||
##
|
||||
#hsts: true
|
||||
|
||||
##
|
||||
## Path and permissions of a UNIX socket to listen on for incoming connections.
|
||||
##
|
||||
## Note: Enabling socket will make invidious stop listening on the address
|
||||
## specified by 'host_binding' and 'port'.
|
||||
##
|
||||
## Accepted values: Any path to a new file (that doesn't exist yet) and its
|
||||
## permissions following the UNIX octal convention.
|
||||
## Default: <none>
|
||||
##
|
||||
#socket_binding:
|
||||
# path: /tmp/invidious.sock
|
||||
# permissions: 777
|
||||
|
||||
|
||||
# -----------------------------
|
||||
# Network (outbound)
|
||||
@ -140,27 +167,6 @@ https_only: false
|
||||
##
|
||||
#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.
|
||||
@ -181,6 +187,42 @@ https_only: false
|
||||
##
|
||||
#force_resolve:
|
||||
|
||||
##
|
||||
## Configuration for using a HTTP proxy
|
||||
##
|
||||
## If unset, then no HTTP proxy will be used.
|
||||
##
|
||||
#http_proxy:
|
||||
# user:
|
||||
# password:
|
||||
# host:
|
||||
# port:
|
||||
|
||||
|
||||
##
|
||||
## Use Innertube's transcripts API instead of timedtext for closed captions
|
||||
##
|
||||
## Useful for larger instances as InnerTube is **not ratelimited**. See https://github.com/iv-org/invidious/issues/2567
|
||||
##
|
||||
## Subtitle experience may differ slightly on Invidious.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
# use_innertube_for_captions: false
|
||||
|
||||
##
|
||||
## Send Google session informations. This is useful when Invidious is blocked
|
||||
## by the message "This helps protect our community."
|
||||
## See https://github.com/iv-org/invidious/issues/4734.
|
||||
##
|
||||
## Warning: These strings gives much more identifiable information to Google!
|
||||
##
|
||||
## Accepted values: String
|
||||
## Default: <none>
|
||||
##
|
||||
# po_token: ""
|
||||
# visitor_data: ""
|
||||
|
||||
# -----------------------------
|
||||
# Logging
|
||||
@ -205,6 +247,17 @@ https_only: false
|
||||
##
|
||||
#log_level: Info
|
||||
|
||||
##
|
||||
## Enables colors in logs. Useful for debugging purposes
|
||||
## This is overridden if "-k" or "--colorize"
|
||||
## are passed on the command line.
|
||||
## Colors are also disabled if the environment variable
|
||||
## NO_COLOR is present and has any value
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#colorize_logs: false
|
||||
|
||||
# -----------------------------
|
||||
# Features
|
||||
@ -255,8 +308,7 @@ https_only: false
|
||||
#registration_enabled: true
|
||||
|
||||
##
|
||||
## Allow/Forbid users to log-in. This setting affects the ability
|
||||
## to connect with BOTH Google and Invidious (local) accounts.
|
||||
## Allow/Forbid users to log-in.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
@ -295,6 +347,17 @@ https_only: false
|
||||
##
|
||||
#admins: [""]
|
||||
|
||||
##
|
||||
## Enable/Disable the user notifications for all users
|
||||
##
|
||||
## Note: On large instances, it is recommended to set this option to 'false'
|
||||
## in order to reduce the amount of data written to the database, and hence
|
||||
## improve the overall performance of the instance.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#enable_user_notifications: true
|
||||
|
||||
# -----------------------------
|
||||
# Background jobs
|
||||
@ -304,10 +367,8 @@ https_only: false
|
||||
## 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.
|
||||
## Notes: This setting is overridden if either "-c THREADS" or
|
||||
## "--channel-threads=THREADS" is passed on the command line.
|
||||
##
|
||||
## Accepted values: a positive integer
|
||||
## Default: 1
|
||||
@ -335,48 +396,46 @@ 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.
|
||||
## Notes: This setting is overridden if either "-f THREADS" or
|
||||
## "--feed-threads=THREADS" is 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
|
||||
|
||||
jobs:
|
||||
|
||||
# -----------------------------
|
||||
# Captcha API
|
||||
# -----------------------------
|
||||
## Options for the database cleaning job
|
||||
clear_expired_items:
|
||||
|
||||
##
|
||||
## URL of the captcha solving service.
|
||||
##
|
||||
## Accepted values: any URL
|
||||
## Default: https://api.anti-captcha.com
|
||||
##
|
||||
#captcha_api_url: https://api.anti-captcha.com
|
||||
## Enable/Disable job
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
enable: true
|
||||
|
||||
##
|
||||
## API key for the captcha solving service.
|
||||
##
|
||||
## Accepted values: a string
|
||||
## Default: <none>
|
||||
##
|
||||
#captcha_key:
|
||||
## Options for the channels updater job
|
||||
refresh_channels:
|
||||
|
||||
## Enable/Disable job
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
enable: true
|
||||
|
||||
## Options for the RSS feeds updater job
|
||||
refresh_feeds:
|
||||
|
||||
## Enable/Disable job
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
enable: true
|
||||
|
||||
|
||||
# -----------------------------
|
||||
@ -413,13 +472,17 @@ feed_threads: 1
|
||||
#use_pubsub_feeds: false
|
||||
|
||||
##
|
||||
## HMAC signing key used for CSRF tokens and pubsub
|
||||
## HMAC signing key used for CSRF tokens, cookies and pubsub
|
||||
## subscriptions verification.
|
||||
##
|
||||
## Note: This parameter is mandatory and should be a random string.
|
||||
## Such random string can be generated on linux with the following
|
||||
## command: `pwgen 20 1`
|
||||
##
|
||||
## Accepted values: a string
|
||||
## Default: <none>
|
||||
##
|
||||
#hmac_key:
|
||||
hmac_key: "CHANGE_ME!!"
|
||||
|
||||
##
|
||||
## List of video IDs where the "download" widget must be
|
||||
@ -450,7 +513,13 @@ feed_threads: 1
|
||||
##
|
||||
#modified_source_code_url: ""
|
||||
|
||||
|
||||
##
|
||||
## Maximum custom playlist length limit.
|
||||
##
|
||||
## Accepted values: Integer
|
||||
## Default: 500
|
||||
##
|
||||
#playlist_length_limit: 500
|
||||
|
||||
#########################################
|
||||
#
|
||||
@ -575,10 +644,10 @@ default_user_preferences:
|
||||
##
|
||||
## Enable/Disable dark mode.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: <none>
|
||||
## Accepted values: "dark", "light", "auto"
|
||||
## Default: "auto"
|
||||
##
|
||||
#dark_mode:
|
||||
#dark_mode: "auto"
|
||||
|
||||
##
|
||||
## Enable/Disable thin mode (no video thumbnails).
|
||||
@ -674,6 +743,22 @@ default_user_preferences:
|
||||
# Video player behavior
|
||||
# -----------------------------
|
||||
|
||||
##
|
||||
## This option controls the value of the HTML5 <video> element's
|
||||
## "preload" attribute.
|
||||
##
|
||||
## If set to 'false', no video data will be loaded until the user
|
||||
## explicitly starts the video by clicking the "Play" button.
|
||||
## If set to 'true', the web browser will buffer some video data
|
||||
## while the page is loading.
|
||||
##
|
||||
## See: https://www.w3schools.com/tags/att_video_preload.asp
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: true
|
||||
##
|
||||
#preload: true
|
||||
|
||||
##
|
||||
## Automatically play videos on page load.
|
||||
##
|
||||
@ -768,6 +853,16 @@ default_user_preferences:
|
||||
## Default: true
|
||||
##
|
||||
#vr_mode: true
|
||||
|
||||
##
|
||||
## Save the playback position
|
||||
## Allow to continue watching at the previous position when
|
||||
## watching the same video.
|
||||
##
|
||||
## Accepted values: true, false
|
||||
## Default: false
|
||||
##
|
||||
#save_player_pos: false
|
||||
|
||||
# -----------------------------
|
||||
# Subscription feed
|
||||
@ -856,7 +951,7 @@ default_user_preferences:
|
||||
## 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
|
||||
|
@ -2,7 +2,7 @@
|
||||
# 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
|
||||
# in the installation documentation: https://docs.invidious.io/installation/
|
||||
|
||||
version: "3"
|
||||
services:
|
||||
@ -30,13 +30,12 @@ services:
|
||||
# domain:
|
||||
# https_only: false
|
||||
# statistics_enabled: false
|
||||
hmac_key: "CHANGE_ME!!"
|
||||
healthcheck:
|
||||
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
|
||||
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/trending || exit 1
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 2
|
||||
depends_on:
|
||||
- invidious-db
|
||||
|
||||
invidious-db:
|
||||
image: docker.io/library/postgres:14
|
||||
|
@ -1,4 +1,5 @@
|
||||
FROM crystallang/crystal:1.2.2-alpine AS builder
|
||||
FROM crystallang/crystal:1.12.2-alpine AS builder
|
||||
|
||||
RUN apk add --no-cache sqlite-static yaml-static
|
||||
|
||||
ARG release
|
||||
@ -8,8 +9,6 @@ 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.
|
||||
@ -21,9 +20,8 @@ COPY ./assets/ ./assets/
|
||||
COPY ./videojs-dependencies.yml ./videojs-dependencies.yml
|
||||
|
||||
RUN crystal spec --warnings all \
|
||||
--link-flags "-lxml2 -llzma"
|
||||
|
||||
RUN if [ "${release}" == 1 ] ; then \
|
||||
--link-flags "-lxml2 -llzma"
|
||||
RUN --mount=type=cache,target=/root/.cache/crystal if [[ "${release}" == 1 ]] ; then \
|
||||
crystal build ./src/invidious.cr \
|
||||
--release \
|
||||
--static --warnings all \
|
||||
@ -34,15 +32,14 @@ RUN if [ "${release}" == 1 ] ; then \
|
||||
--link-flags "-lxml2 -llzma"; \
|
||||
fi
|
||||
|
||||
|
||||
FROM alpine:latest
|
||||
RUN apk add --no-cache librsvg ttf-opensans
|
||||
FROM alpine:3.20
|
||||
RUN apk add --no-cache rsvg-convert ttf-opensans tini tzdata
|
||||
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
|
||||
RUN sed -i 's/host: \(127.0.0.1\|localhost\)/host: invidious-db/' config/config.yml
|
||||
COPY ./config/sql/ ./config/sql/
|
||||
COPY ./locales/ ./locales/
|
||||
COPY --from=builder /invidious/assets ./assets/
|
||||
@ -51,4 +48,5 @@ RUN chmod o+rX -R ./assets ./config ./locales
|
||||
|
||||
EXPOSE 3000
|
||||
USER invidious
|
||||
ENTRYPOINT ["/sbin/tini", "--"]
|
||||
CMD [ "/invidious/invidious" ]
|
||||
|
@ -1,5 +1,6 @@
|
||||
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
|
||||
FROM alpine:3.20 AS builder
|
||||
RUN apk add --no-cache 'crystal=1.12.2-r0' shards sqlite-static yaml-static yaml-dev libxml2-static \
|
||||
zlib-static openssl-libs-static openssl-dev musl-dev xz-static
|
||||
|
||||
ARG release
|
||||
|
||||
@ -8,8 +9,6 @@ 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.
|
||||
@ -23,7 +22,7 @@ COPY ./videojs-dependencies.yml ./videojs-dependencies.yml
|
||||
RUN crystal spec --warnings all \
|
||||
--link-flags "-lxml2 -llzma"
|
||||
|
||||
RUN if [ ${release} == 1 ] ; then \
|
||||
RUN --mount=type=cache,target=/root/.cache/crystal if [[ "${release}" == 1 ]] ; then \
|
||||
crystal build ./src/invidious.cr \
|
||||
--release \
|
||||
--static --warnings all \
|
||||
@ -34,14 +33,14 @@ RUN if [ ${release} == 1 ] ; then \
|
||||
--link-flags "-lxml2 -llzma"; \
|
||||
fi
|
||||
|
||||
FROM alpine:3.15
|
||||
RUN apk add --no-cache librsvg ttf-opensans
|
||||
FROM alpine:3.20
|
||||
RUN apk add --no-cache rsvg-convert ttf-opensans tini tzdata
|
||||
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
|
||||
RUN sed -i 's/host: \(127.0.0.1\|localhost\)/host: invidious-db/' config/config.yml
|
||||
COPY ./config/sql/ ./config/sql/
|
||||
COPY ./locales/ ./locales/
|
||||
COPY --from=builder /invidious/assets ./assets/
|
||||
@ -50,4 +49,5 @@ RUN chmod o+rX -R ./assets ./config ./locales
|
||||
|
||||
EXPOSE 3000
|
||||
USER invidious
|
||||
ENTRYPOINT ["/sbin/tini", "--"]
|
||||
CMD [ "/invidious/invidious" ]
|
||||
|
1
kubernetes/.gitignore
vendored
1
kubernetes/.gitignore
vendored
@ -1 +0,0 @@
|
||||
/charts/*.tgz
|
@ -1,6 +0,0 @@
|
||||
dependencies:
|
||||
- name: postgresql
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
version: 8.3.0
|
||||
digest: sha256:1feec3c396cbf27573dc201831ccd3376a4a6b58b2e7618ce30a89b8f5d707fd
|
||||
generated: "2020-02-07T13:39:38.624846+01:00"
|
@ -1,22 +0,0 @@
|
||||
apiVersion: v2
|
||||
name: invidious
|
||||
description: Invidious is an alternative front-end to YouTube
|
||||
version: 1.1.0
|
||||
appVersion: 0.20.1
|
||||
keywords:
|
||||
- youtube
|
||||
- proxy
|
||||
- video
|
||||
- privacy
|
||||
home: https://invidio.us/
|
||||
icon: https://raw.githubusercontent.com/iv-org/invidious/05988c1c49851b7d0094fca16aeaf6382a7f64ab/assets/favicon-32x32.png
|
||||
sources:
|
||||
- https://github.com/iv-org/invidious
|
||||
maintainers:
|
||||
- name: Leon Klingele
|
||||
email: mail@leonklingele.de
|
||||
dependencies:
|
||||
- name: postgresql
|
||||
version: ~8.3.0
|
||||
repository: "https://kubernetes-charts.storage.googleapis.com/"
|
||||
engine: gotpl
|
@ -1,41 +1 @@
|
||||
# Invidious Helm chart
|
||||
|
||||
Easily deploy Invidious to Kubernetes.
|
||||
|
||||
## Installing Helm chart
|
||||
|
||||
```sh
|
||||
# Build Helm dependencies
|
||||
$ helm dep build
|
||||
|
||||
# Add PostgreSQL init scripts
|
||||
$ kubectl create configmap invidious-postgresql-init \
|
||||
--from-file=../config/sql/channels.sql \
|
||||
--from-file=../config/sql/videos.sql \
|
||||
--from-file=../config/sql/channel_videos.sql \
|
||||
--from-file=../config/sql/users.sql \
|
||||
--from-file=../config/sql/session_ids.sql \
|
||||
--from-file=../config/sql/nonces.sql \
|
||||
--from-file=../config/sql/annotations.sql \
|
||||
--from-file=../config/sql/playlists.sql \
|
||||
--from-file=../config/sql/playlist_videos.sql
|
||||
|
||||
# Install Helm app to your Kubernetes cluster
|
||||
$ helm install invidious ./
|
||||
```
|
||||
|
||||
## Upgrading
|
||||
|
||||
```sh
|
||||
# Upgrading is easy, too!
|
||||
$ helm upgrade invidious ./
|
||||
```
|
||||
|
||||
## Uninstall
|
||||
|
||||
```sh
|
||||
# Get rid of everything (except database)
|
||||
$ helm delete invidious
|
||||
|
||||
# To also delete the database, remove all invidious-postgresql PVCs
|
||||
```
|
||||
The Helm chart has moved to a dedicated GitHub repository: https://github.com/iv-org/invidious-helm-chart/tree/master/invidious
|
@ -1,16 +0,0 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "invidious.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
*/}}
|
||||
{{- define "invidious.fullname" -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
@ -1,11 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "invidious.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "invidious.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: {{ .Release.Name }}
|
||||
data:
|
||||
INVIDIOUS_CONFIG: |
|
||||
{{ toYaml .Values.config | indent 4 }}
|
@ -1,61 +0,0 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "invidious.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "invidious.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "invidious.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ template "invidious.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
securityContext:
|
||||
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 }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
env:
|
||||
- name: INVIDIOUS_CONFIG
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: INVIDIOUS_CONFIG
|
||||
name: {{ template "invidious.fullname" . }}
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: {{ .Values.securityContext.allowPrivilegeEscalation }}
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 10 }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
port: 3000
|
||||
path: /
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
port: 3000
|
||||
path: /
|
||||
initialDelaySeconds: 15
|
||||
restartPolicy: Always
|
@ -1,18 +0,0 @@
|
||||
{{- if .Values.autoscaling.enabled }}
|
||||
apiVersion: autoscaling/v1
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ template "invidious.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "invidious.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "invidious.fullname" . }}
|
||||
minReplicas: {{ .Values.autoscaling.minReplicas }}
|
||||
maxReplicas: {{ .Values.autoscaling.maxReplicas }}
|
||||
targetCPUUtilizationPercentage: {{ .Values.autoscaling.targetCPUUtilizationPercentage }}
|
||||
{{- end }}
|
@ -1,20 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "invidious.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "invidious.name" . }}
|
||||
chart: {{ .Chart.Name }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.service.port }}
|
||||
targetPort: 3000
|
||||
selector:
|
||||
app: {{ template "invidious.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
{{- if .Values.service.loadBalancerIP }}
|
||||
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
|
||||
{{- end }}
|
@ -1,56 +0,0 @@
|
||||
name: invidious
|
||||
|
||||
image:
|
||||
repository: quay.io/invidious/invidious
|
||||
tag: latest
|
||||
pullPolicy: Always
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
autoscaling:
|
||||
enabled: false
|
||||
minReplicas: 1
|
||||
maxReplicas: 16
|
||||
targetCPUUtilizationPercentage: 50
|
||||
|
||||
service:
|
||||
type: clusterIP
|
||||
port: 3000
|
||||
#loadBalancerIP:
|
||||
|
||||
resources: {}
|
||||
#requests:
|
||||
# cpu: 100m
|
||||
# memory: 64Mi
|
||||
#limits:
|
||||
# cpu: 800m
|
||||
# memory: 512Mi
|
||||
|
||||
securityContext:
|
||||
allowPrivilegeEscalation: false
|
||||
runAsUser: 1000
|
||||
runAsGroup: 1000
|
||||
fsGroup: 1000
|
||||
|
||||
# See https://github.com/helm/charts/tree/master/stable/postgresql
|
||||
postgresql:
|
||||
postgresqlUsername: kemal
|
||||
postgresqlPassword: kemal
|
||||
postgresqlDatabase: invidious
|
||||
initdbUsername: kemal
|
||||
initdbPassword: kemal
|
||||
initdbScriptsConfigMap: invidious-postgresql-init
|
||||
|
||||
# Adapted from ../config/config.yml
|
||||
config:
|
||||
channel_threads: 1
|
||||
feed_threads: 1
|
||||
db:
|
||||
user: kemal
|
||||
password: kemal
|
||||
host: invidious-postgresql
|
||||
port: 5432
|
||||
dbname: invidious
|
||||
full_refresh: false
|
||||
https_only: false
|
||||
domain:
|
15
locales/af.json
Normal file
15
locales/af.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"generic_views_count": "{{count}} kyk",
|
||||
"generic_views_count_plural": "{{count}} kyke",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videos",
|
||||
"generic_playlists_count": "{{count}} snitlys",
|
||||
"generic_playlists_count_plural": "{{count}} snitlyste",
|
||||
"generic_subscriptions_count": "{{count}} intekening",
|
||||
"generic_subscriptions_count_plural": "{{count}} intekeninge",
|
||||
"LIVE": "LEWENDIG",
|
||||
"generic_subscribers_count": "{{count}} intekenaar",
|
||||
"generic_subscribers_count_plural": "{{count}} intekenare",
|
||||
"Shared `x` ago": "`x` gelede gedeel",
|
||||
"New passwords must match": "Nuwe wagwoord moet ooreenstem"
|
||||
}
|
321
locales/ar.json
321
locales/ar.json
@ -1,11 +1,11 @@
|
||||
{
|
||||
"LIVE": "مُباشِر",
|
||||
"Shared `x` ago": "تمَّ رفع المقطع المرئيّ مُنذ `x`",
|
||||
"Shared `x` ago": "تمَّ الرفع مُنذ `x`",
|
||||
"Unsubscribe": "إلغاء الاشتراك",
|
||||
"Subscribe": "الإشتراك",
|
||||
"View channel on YouTube": "زيارة القناة على موقع يوتيوب",
|
||||
"View playlist on YouTube": "عرض قائمة التشغيل على اليوتيوب",
|
||||
"newest": "الأجدد",
|
||||
"Subscribe": "الاشتراك",
|
||||
"View channel on YouTube": "زيارة القناة على يوتيوب",
|
||||
"View playlist on YouTube": "عرض قائمة التشغيل على يوتيوب",
|
||||
"newest": "الأحدث",
|
||||
"oldest": "الأقدم",
|
||||
"popular": "الأكثر شعبية",
|
||||
"last": "الأخيرة",
|
||||
@ -14,22 +14,21 @@
|
||||
"Clear watch history?": "هل تريد محو سجل المشاهدة؟",
|
||||
"New password": "كلمة مرور جديدة",
|
||||
"New passwords must match": "يَجبُ أن تكون كلمتا المرور متطابقتين",
|
||||
"Cannot change password for Google accounts": "لا يُمكن تغيير كلمة المرور لِحسابات جوجل",
|
||||
"Authorize token?": "رمز التفويض؟",
|
||||
"Authorize token for `x`?": "السماح بالرمز المميز ل 'x'؟",
|
||||
"Authorize token for `x`?": "السماح بالرمز المميز ل `x`؟",
|
||||
"Yes": "نعم",
|
||||
"No": "لا",
|
||||
"Import and Export Data": "اِستيراد البيانات وتصديرها",
|
||||
"Import": "استيراد",
|
||||
"Import Invidious data": "استيراد بيانات انفيدياس",
|
||||
"Import YouTube subscriptions": "استيراد اشتراكات يوتيوب",
|
||||
"Import Invidious data": "استيراد بيانات JSON Invidious",
|
||||
"Import YouTube subscriptions": "استيراد الاشتراكات YouTube بتنسيق CSV أو OPML",
|
||||
"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",
|
||||
"Export data as JSON": "تصدير بيانات Invidious كـ JSON",
|
||||
"Delete account?": "حذف الحساب؟",
|
||||
"History": "السِّجل",
|
||||
"An alternative front-end to YouTube": "واجهة أمامية بديلة لموقع يوتيوب",
|
||||
@ -37,22 +36,20 @@
|
||||
"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": "تسجيل الدخول",
|
||||
"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_continue_label": "تشغيل المقطع التالي تلقائيًا: ",
|
||||
"preferences_continue_autoplay_label": "شغل المقطع التالي تلقائيًا: . ",
|
||||
"preferences_listen_label": "تشغيل النسخة السمعية تلقائيًا: ",
|
||||
"preferences_local_label": "بروكسي المقاطع المرئيّة؟ ",
|
||||
"preferences_speed_label": "السرعة الافتراضية: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"preferences_related_videos_label": "اعرض الفيديوهات ذات الصلة: ",
|
||||
"preferences_annotations_label": "اعرض الملاحظات في الفيديو تلقائيا: ",
|
||||
"preferences_extend_desc_label": "توسيع وصف الفيديو تلقائيا: ",
|
||||
"preferences_vr_mode_label": "مقاطع فيديو تفاعلية ب درجة 360: ",
|
||||
"preferences_vr_mode_label": "مقاطع فيديو تفاعلية بزاوية 360 درجة (تتطلب WebGL): ",
|
||||
"preferences_category_visual": "التفضيلات المرئية",
|
||||
"preferences_player_style_label": "شكل مشغل الفيديوهات: ",
|
||||
"Dark mode: ": "الوضع الليلي: ",
|
||||
@ -96,8 +93,8 @@
|
||||
"`x` is live": "`x` في بث مباشر",
|
||||
"preferences_category_data": "إعدادات التفضيلات",
|
||||
"Clear watch history": "حذف سجل المشاهدة",
|
||||
"Import/export data": "إضافة\\استخراج البيانات",
|
||||
"Change password": "غير كلمة السر",
|
||||
"Import/export data": "إستيراد و تصدير البيانات",
|
||||
"Change password": "تغير كلمة السر",
|
||||
"Manage subscriptions": "إدارة الاشتراكات",
|
||||
"Manage tokens": "إدارة الرموز",
|
||||
"Watch history": "سجل المشاهدة",
|
||||
@ -108,9 +105,9 @@
|
||||
"preferences_show_nick_label": "إظهار اللقب في الأعلى: ",
|
||||
"Top enabled: ": "تفعيل 'الأفضل' ؟ ",
|
||||
"CAPTCHA enabled: ": "تفعيل الكابتشا: ",
|
||||
"Login enabled: ": "تفعيل الولوج: ",
|
||||
"Login enabled: ": "تمكين تسجيل الدخول: ",
|
||||
"Registration enabled: ": "تفعيل التسجيل: ",
|
||||
"Report statistics: ": "الإبلاغ عن الإحصائيات: ",
|
||||
"Report statistics: ": "تقرير الإحصائيات: ",
|
||||
"Save preferences": "حفظ الإعدادات",
|
||||
"Subscription manager": "مدير الاشتراكات",
|
||||
"Token manager": "إداره الرمز",
|
||||
@ -121,7 +118,7 @@
|
||||
"Subscriptions": "الاشتراكات",
|
||||
"search": "بحث",
|
||||
"Log out": "تسجيل الخروج",
|
||||
"Released under the AGPLv3 on Github.": "صدر تحت AGPLv3 على Github.",
|
||||
"Released under the AGPLv3 on Github.": "صدر تحت AGPLv3 على GitHub.",
|
||||
"Source available here.": "الأكواد متوفرة هنا.",
|
||||
"View JavaScript license information.": "مشاهدة معلومات حول تراخيص الجافاسكريبت.",
|
||||
"View privacy policy.": "عرض سياسة الخصوصية.",
|
||||
@ -137,66 +134,60 @@
|
||||
"Title": "العنوان",
|
||||
"Playlist privacy": "إعدادات الخصوصية",
|
||||
"Editing playlist `x`": "تعديل قائمة التشغيل `x`",
|
||||
"Show more": "إظهار المزيد",
|
||||
"Show more": "عرض المزيد",
|
||||
"Show less": "عرض اقل",
|
||||
"Watch on YouTube": "مشاهدة الفيديو على اليوتيوب",
|
||||
"Switch Invidious Instance": "تبديل المثيل Invidious",
|
||||
"Broken? Try another Invidious Instance": "معطل؟ جرب مثيل Invidious آخر",
|
||||
"Hide annotations": "إخفاء الملاحظات في الفيديو",
|
||||
"Show annotations": "عرض الملاحظات في الفيديو",
|
||||
"Genre: ": "النوع: ",
|
||||
"License: ": "التراخيص: ",
|
||||
"Family friendly? ": "محتوى عائلي؟ ",
|
||||
"Wilson score: ": "درجة ويلسون: ",
|
||||
"Engagement: ": "نسبة المشاركة: ",
|
||||
"Engagement: ": "نسبة التفاعل: ",
|
||||
"Whitelisted regions: ": "الدول المسموح فيها هذا الفيديو: ",
|
||||
"Blacklisted regions: ": "الدول المحظور فيها هذا الفيديو: ",
|
||||
"Shared `x`": "شارك منذ `x`",
|
||||
"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": "عرض المزيد من التعليقات على\\من موقع Reddit",
|
||||
"View more comments on Reddit": "عرض المزيد من التعليقات على\\من موقع ريديت",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "عرض `x` تعليقات",
|
||||
"": "عرض `x` تعليقات"
|
||||
"": "عرض `x` تعليقات."
|
||||
},
|
||||
"View Reddit comments": "عرض تعليقات ريدإت Reddit",
|
||||
"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.": "غير قادر على تسجيل الدخول، تأكد من تشغيل المصادقة الثنائية 2FA.",
|
||||
"Invalid TFA code": "كود مصادقة ثنائية 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": "اسم المستخدم او كلمة السر غير صحيح",
|
||||
"Please sign in using 'Log in with Google'": "الرجاء تسجيل الدخول 'تسجيل الدخول بواسطة جوجل'",
|
||||
"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.": "هذه القناة غير موجودة.",
|
||||
"Could not get channel info.": "لم يستطع الحصول على معلومات القناة.",
|
||||
"Could not fetch comments": "لم يتمكن من إحضار التعليقات",
|
||||
"Could not get channel info.": "لم يتمكن الحصول على معلومات القناة.",
|
||||
"Could not fetch comments": "لا يتمكن إحضار التعليقات",
|
||||
"`x` ago": "`x` منذ",
|
||||
"Load more": "عرض المزيد",
|
||||
"Could not create mix.": "لم يستطع عمل خلط.",
|
||||
"Load more": "تحميل المزيد",
|
||||
"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": "مستخدم غير صالح",
|
||||
"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)": "إنجليزي (تم إنشائه تلقائيًا)",
|
||||
@ -326,51 +317,50 @@
|
||||
"`x` marked it with a ❤": "`x` أعجب بهذا",
|
||||
"Audio mode": "الوضع الصوتي",
|
||||
"Video mode": "وضع الفيديو",
|
||||
"Videos": "الفيديوهات",
|
||||
"channel_tab_videos_label": "الفيديوهات",
|
||||
"Playlists": "قوائم التشغيل",
|
||||
"Community": "المجتمع",
|
||||
"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": "معامل الفرز",
|
||||
"channel_tab_community_label": "المجتمع",
|
||||
"search_filters_sort_option_relevance": "ملائمة",
|
||||
"search_filters_sort_option_rating": "تقييم",
|
||||
"search_filters_sort_option_date": "التاريخ",
|
||||
"search_filters_sort_option_views": "مشاهدات",
|
||||
"search_filters_type_label": "نوع المحتوى",
|
||||
"search_filters_duration_label": "المدة",
|
||||
"search_filters_features_label": "الميزات",
|
||||
"search_filters_sort_label": "فرز",
|
||||
"search_filters_date_option_hour": "آخر ساعة",
|
||||
"search_filters_date_option_today": "اليوم",
|
||||
"search_filters_date_option_week": "هذا الأسبوع",
|
||||
"search_filters_date_option_month": "هذا الشهر",
|
||||
"search_filters_date_option_year": "هذه السنة",
|
||||
"search_filters_type_option_video": "فيديو",
|
||||
"search_filters_type_option_channel": "قناة",
|
||||
"search_filters_type_option_playlist": "قائمة التشغيل",
|
||||
"search_filters_type_option_movie": "فيلم",
|
||||
"search_filters_type_option_show": "عرض",
|
||||
"search_filters_features_option_hd": "عالية الدقة",
|
||||
"search_filters_features_option_subtitles": "ترجمات",
|
||||
"search_filters_features_option_c_commons": "المشاع الإبداعي",
|
||||
"search_filters_features_option_three_d": "ثلاثي الأبعاد",
|
||||
"search_filters_features_option_live": "مباشر",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "المكان",
|
||||
"search_filters_features_option_hdr": "وضع التباين العالي",
|
||||
"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 إلى مستودع التعليمات البرمجية المصدرية المعدلة",
|
||||
"search_filters_duration_option_short": "قصير (< 4 دقائق)",
|
||||
"search_filters_duration_option_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_dash": "DASH (الجودة التلقائية)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "متوسطة",
|
||||
"preferences_quality_option_small": "صغيرة",
|
||||
@ -386,48 +376,195 @@
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"purchased": "تم شراؤها",
|
||||
"search_filters_features_option_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'",
|
||||
"user_created_playlists": "`x` إنشاء قوائم التشغيل",
|
||||
"user_saved_playlists": "قوائم التشغيل المحفوظة `x`",
|
||||
"Video unavailable": "الفيديو غير متوفر",
|
||||
"360": "360°",
|
||||
"download_subtitles": "ترجمات - 'x' (.vtt)",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"download_subtitles": "ترجمات - `x` (.vtt)",
|
||||
"invidious": "الخيالي",
|
||||
"preferences_save_player_pos_label": "احفظ وقت الفيديو الحالي: ",
|
||||
"preferences_save_player_pos_label": "حفظ موضع التشغيل: ",
|
||||
"crash_page_you_found_a_bug": "يبدو أنك قد وجدت خطأً برمجيًّا في Invidious!",
|
||||
"generic_videos_count_0": "لا فيديوهات",
|
||||
"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_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_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_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_0": "لا يوجد قوائم تشغيل",
|
||||
"generic_playlists_count_1": "قائمة تشغيل واحدة",
|
||||
"generic_playlists_count_2": "قائمتا تشغيل",
|
||||
"generic_playlists_count_3": "{{count}} قوائم تشغيل",
|
||||
"generic_playlists_count_4": "{{count}} قائمة تشغيل",
|
||||
"generic_playlists_count_5": "{{count}} قائمة تشغيل"
|
||||
"generic_playlists_count_5": "{{count}} قائمة تشغيل",
|
||||
"English (United States)": "الإنجليزية (الولايات المتحدة)",
|
||||
"Indonesian (auto-generated)": "إندونيسي (مُنشأ تلقائيًا)",
|
||||
"Interlingue": "إنترلينغوي",
|
||||
"Italian (auto-generated)": "الإيطالية (مُنشأة تلقائيًا)",
|
||||
"Spanish (auto-generated)": "الأسبانية (تم إنشاؤه تلقائيًا)",
|
||||
"crash_page_before_reporting": "قبل الإبلاغ عن خطأ، تأكد من وجود:",
|
||||
"French (auto-generated)": "الفرنسية (مُنشأة تلقائيًا)",
|
||||
"Portuguese (auto-generated)": "البرتغالية (تم إنشاؤه تلقائيًا)",
|
||||
"Turkish (auto-generated)": "التركية (تم إنشاؤها تلقائيًا)",
|
||||
"crash_page_refresh": "حاول <a href=\"`x`\"> تحديث الصفحة </a>",
|
||||
"crash_page_switch_instance": "حاول <a href=\"`x`\"> استخدام مثيل آخر </a>",
|
||||
"Korean (auto-generated)": "كوري (تم إنشاؤه تلقائيًا)",
|
||||
"Spanish (Mexico)": "الإسبانية (المكسيك)",
|
||||
"Vietnamese (auto-generated)": "فيتنامي (تم إنشاؤه تلقائيًا)",
|
||||
"crash_page_report_issue": "إذا لم يساعد أي مما سبق، يرجى فتح <a href=\"`x`\"> مشكلة جديدة على GitHub </a> (ويفضل أن يكون باللغة الإنجليزية) وتضمين النص التالي في رسالتك (لا تترجم هذا النص):",
|
||||
"crash_page_read_the_faq": "قراءة <a href=\"`x`\"> الأسئلة المتكررة (الأسئلة الشائعة) </a>",
|
||||
"preferences_watch_history_label": "تمكين سجل المشاهدة: ",
|
||||
"English (United Kingdom)": "الإنجليزية (المملكة المتحدة)",
|
||||
"Cantonese (Hong Kong)": "الكانتونية (هونغ كونغ)",
|
||||
"Chinese": "الصينية",
|
||||
"Chinese (China)": "الصينية (الصين)",
|
||||
"Chinese (Hong Kong)": "الصينية (هونج كونج)",
|
||||
"Chinese (Taiwan)": "الصينية (تايوان)",
|
||||
"Dutch (auto-generated)": "هولندي (تم إنشاؤه تلقائيًا)",
|
||||
"German (auto-generated)": "ألماني (تم إنشاؤه تلقائيًا)",
|
||||
"Japanese (auto-generated)": "اليابانية (مُنشأة تلقائيًا)",
|
||||
"Portuguese (Brazil)": "البرتغالية (البرازيل)",
|
||||
"Russian (auto-generated)": "الروسية (منشأة تلقائيا)",
|
||||
"Spanish (Spain)": "الإسبانية (إسبانيا)",
|
||||
"crash_page_search_issue": "بحثت عن <a href=\"`x`\"> المشكلات الموجودة على GitHub </a>",
|
||||
"search_filters_title": "معامل الفرز",
|
||||
"search_message_no_results": "لا توجد نتائج.",
|
||||
"search_message_change_filters_or_query": "حاول توسيع استعلام البحث و / أو تغيير عوامل التصفية.",
|
||||
"search_filters_date_label": "تاريخ الرفع",
|
||||
"generic_count_weeks_0": "{{count}} أسبوع",
|
||||
"generic_count_weeks_1": "أسبوع واحد",
|
||||
"generic_count_weeks_2": "أسبوعين",
|
||||
"generic_count_weeks_3": "{{count}} أسابيع",
|
||||
"generic_count_weeks_4": "{{count}} أسبوع",
|
||||
"generic_count_weeks_5": "{{count}} أسبوع",
|
||||
"Popular enabled: ": "تم تمكين الشعبية: ",
|
||||
"search_filters_duration_option_medium": "متوسط (4-20 دقيقة)",
|
||||
"search_filters_date_option_none": "أي تاريخ",
|
||||
"search_filters_type_option_all": "أي نوع",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"generic_count_minutes_0": "{{count}} دقيقة",
|
||||
"generic_count_minutes_1": "دقيقة واحدة",
|
||||
"generic_count_minutes_2": "دقيقتين",
|
||||
"generic_count_minutes_3": "{{count}} دقائق",
|
||||
"generic_count_minutes_4": "{{count}} دقيقة",
|
||||
"generic_count_minutes_5": "{{count}} دقيقة",
|
||||
"generic_count_hours_0": "{{count}} ساعة",
|
||||
"generic_count_hours_1": "ساعة واحدة",
|
||||
"generic_count_hours_2": "ساعتين",
|
||||
"generic_count_hours_3": "{{count}} ساعات",
|
||||
"generic_count_hours_4": "{{count}} ساعة",
|
||||
"generic_count_hours_5": "{{count}} ساعة",
|
||||
"comments_view_x_replies_0": "عرض رد {{count}}",
|
||||
"comments_view_x_replies_1": "عرض رد {{count}}",
|
||||
"comments_view_x_replies_2": "عرض رد {{count}}",
|
||||
"comments_view_x_replies_3": "عرض رد {{count}}",
|
||||
"comments_view_x_replies_4": "عرض الردود {{count}}",
|
||||
"comments_view_x_replies_5": "عرض رد {{count}}",
|
||||
"search_message_use_another_instance": "يمكنك أيضًا البحث عن <a href=\"`x`\"> في مثيل آخر </a>.",
|
||||
"comments_points_count_0": "{{count}} نقطة",
|
||||
"comments_points_count_1": "نقطة واحدة",
|
||||
"comments_points_count_2": "نقطتان",
|
||||
"comments_points_count_3": "{{count}} نقط",
|
||||
"comments_points_count_4": "{{count}} نقطة",
|
||||
"comments_points_count_5": "{{count}} نقطة",
|
||||
"generic_count_years_0": "{{count}} السنة",
|
||||
"generic_count_years_1": "{{count}} السنة",
|
||||
"generic_count_years_2": "{{count}} السنة",
|
||||
"generic_count_years_3": "{{count}} السنة",
|
||||
"generic_count_years_4": "{{count}} سنوات",
|
||||
"generic_count_years_5": "{{count}} السنة",
|
||||
"tokens_count_0": "الرمز المميز {{count}}",
|
||||
"tokens_count_1": "الرمز المميز {{count}}",
|
||||
"tokens_count_2": "الرمز المميز {{count}}",
|
||||
"tokens_count_3": "الرمز المميز {{count}}",
|
||||
"tokens_count_4": "الرموز المميزة {{count}}",
|
||||
"tokens_count_5": "الرمز المميز {{count}}",
|
||||
"search_filters_apply_button": "تطبيق الفلاتر المحددة",
|
||||
"search_filters_duration_option_none": "أي مدة",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} إشعار جديد",
|
||||
"subscriptions_unseen_notifs_count_1": "إشعار واحد جديد",
|
||||
"subscriptions_unseen_notifs_count_2": "إشعارين جديدين",
|
||||
"subscriptions_unseen_notifs_count_3": "{{count}} إشعارات جديدة",
|
||||
"subscriptions_unseen_notifs_count_4": "{{count}} إشعارا جديد",
|
||||
"subscriptions_unseen_notifs_count_5": "{{count}} إشعار جديد",
|
||||
"generic_count_days_0": "{{count}} يوم",
|
||||
"generic_count_days_1": "يوم واحد",
|
||||
"generic_count_days_2": "يومين",
|
||||
"generic_count_days_3": "{{count}} أيام",
|
||||
"generic_count_days_4": "{{count}} يوم",
|
||||
"generic_count_days_5": "{{count}} يوم",
|
||||
"generic_count_months_0": "{{count}} شهر",
|
||||
"generic_count_months_1": "{{count}} شهر",
|
||||
"generic_count_months_2": "{{count}} شهر",
|
||||
"generic_count_months_3": "{{count}} شهر",
|
||||
"generic_count_months_4": "{{count}} شهور",
|
||||
"generic_count_months_5": "{{count}} شهر",
|
||||
"generic_count_seconds_0": "{{count}} ثانية",
|
||||
"generic_count_seconds_1": "ثانية واحدة",
|
||||
"generic_count_seconds_2": "ثانيتين",
|
||||
"generic_count_seconds_3": "{{count}} ثوانٍ",
|
||||
"generic_count_seconds_4": "{{count}} ثانية",
|
||||
"generic_count_seconds_5": "{{count}} ثانية",
|
||||
"error_video_not_in_playlist": "الفيديو المطلوب غير موجود في قائمة التشغيل هذه. <a href=\"`x`\"> انقر هنا للحصول على الصفحة الرئيسية لقائمة التشغيل. </a>",
|
||||
"channel_tab_shorts_label": "الفيديوهات القصيرة",
|
||||
"channel_tab_streams_label": "البث المباشر",
|
||||
"channel_tab_playlists_label": "قوائم التشغيل",
|
||||
"channel_tab_channels_label": "القنوات",
|
||||
"Music in this video": "الموسيقى في هذا الفيديو",
|
||||
"Album: ": "الألبوم: ",
|
||||
"Artist: ": "الفنان: ",
|
||||
"Song: ": "أغنية: ",
|
||||
"Channel Sponsor": "راعي القناة",
|
||||
"Standard YouTube license": "ترخيص YouTube القياسي",
|
||||
"Download is disabled": "تم تعطيل التحميلات",
|
||||
"Import YouTube playlist (.csv)": "استيراد قائمة تشغيل YouTube (.csv)",
|
||||
"generic_button_save": "حفظ",
|
||||
"generic_button_delete": "حذف",
|
||||
"generic_button_edit": "تحرير",
|
||||
"generic_button_cancel": "الغاء",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_releases_label": "الإصدارات",
|
||||
"playlist_button_add_items": "إضافة مقاطع فيديو",
|
||||
"channel_tab_podcasts_label": "البودكاست",
|
||||
"generic_channels_count_0": "{{count}} قناة",
|
||||
"generic_channels_count_1": "{{count}} قناة",
|
||||
"generic_channels_count_2": "{{count}} قناتان",
|
||||
"generic_channels_count_3": "{{count}} قنوات",
|
||||
"generic_channels_count_4": "{{count}} قنوات",
|
||||
"generic_channels_count_5": "{{count}} قناة",
|
||||
"Import YouTube watch history (.json)": "استيراد سجل مشاهدة YouTube بصيغة (.json)",
|
||||
"toggle_theme": "تبديل الموضوع",
|
||||
"Add to playlist": "أضف إلى قائمة التشغيل",
|
||||
"Add to playlist: ": "أضف إلى قائمة التشغيل: ",
|
||||
"Answer": "اجابة",
|
||||
"Search for videos": "ابحث عن مقاطع الفيديو",
|
||||
"The Popular feed has been disabled by the administrator.": "تم تعطيل الخلاصة الشائعة من قبل المسؤول.",
|
||||
"carousel_slide": "الشريحة {{current}} من {{total}}",
|
||||
"carousel_skip": "تخطي الكاروسيل",
|
||||
"carousel_go_to": "انتقل إلى الشريحة `x`",
|
||||
"preferences_preload_label": "التحميل المسبق لبيانات الفيديو: ",
|
||||
"Filipino (auto-generated)": "الفلبينية (المولدة تلقائيًا)"
|
||||
}
|
||||
|
1
locales/az.json
Normal file
1
locales/az.json
Normal file
@ -0,0 +1 @@
|
||||
{}
|
1
locales/be.json
Normal file
1
locales/be.json
Normal file
@ -0,0 +1 @@
|
||||
{}
|
497
locales/bg.json
Normal file
497
locales/bg.json
Normal file
@ -0,0 +1,497 @@
|
||||
{
|
||||
"Korean (auto-generated)": "Корейски (автоматично генерирано)",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"published - reverse": "публикувани - в обратен ред",
|
||||
"preferences_quality_dash_option_worst": "Най-ниско качество",
|
||||
"Password is a required field": "Парола е задължитело поле",
|
||||
"channel_tab_podcasts_label": "Подкасти",
|
||||
"Token is expired, please try again": "Токенът е изтекъл, моля опитайте отново",
|
||||
"Turkish": "Турски",
|
||||
"preferences_save_player_pos_label": "Запази позицията на плейъра: ",
|
||||
"View Reddit comments": "Виж Reddit коментари",
|
||||
"Export data as JSON": "Експортиране на Invidious информацията като JSON",
|
||||
"About": "За сайта",
|
||||
"Save preferences": "Запази промените",
|
||||
"Load more": "Зареди още",
|
||||
"Import/export": "Импортиране/експортиране",
|
||||
"Albanian": "Албански",
|
||||
"New password": "Нова парола",
|
||||
"Southern Sotho": "Южен Сото",
|
||||
"channel_tab_videos_label": "Видеа",
|
||||
"Spanish (Mexico)": "Испански (Мексико)",
|
||||
"preferences_player_style_label": "Стил на плейъра: ",
|
||||
"preferences_region_label": "Държавата на съдържанието: ",
|
||||
"Premieres in `x`": "Премиера в `x`",
|
||||
"Watch history": "История на гледане",
|
||||
"generic_subscriptions_count": "{{count}} абонамент",
|
||||
"generic_subscriptions_count_plural": "{{count}} абонамента",
|
||||
"preferences_continue_label": "Пускай следващото видео автоматично: ",
|
||||
"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. Натисни тук за да видиш коментарите, но обърни внимание, че може да отнеме повече време да заредят.",
|
||||
"Polish": "Полски",
|
||||
"Icelandic": "Исландски",
|
||||
"preferences_local_label": "Пускане на видеа през прокси: ",
|
||||
"Hebrew": "Иврит",
|
||||
"Fallback captions: ": "Резервни надписи: ",
|
||||
"search_filters_title": "Филтри",
|
||||
"search_filters_apply_button": "Приложете избрани филтри",
|
||||
"Download is disabled": "Изтеглянето е деактивирано",
|
||||
"User ID is a required field": "Потребителско име е задължително поле",
|
||||
"comments_points_count": "{{count}} точка",
|
||||
"comments_points_count_plural": "{{count}} точки",
|
||||
"next_steps_error_message_go_to_youtube": "Отидеш в YouTube",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"search_filters_type_option_video": "Видео",
|
||||
"Spanish (Latin America)": "Испански (Латинска Америка)",
|
||||
"Download as: ": "Изтегли като: ",
|
||||
"Default": "По подразбиране",
|
||||
"search_filters_sort_option_views": "Гледания",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"Igbo": "Игбо",
|
||||
"Subscriptions": "Абонаменти",
|
||||
"German (auto-generated)": "Немски (автоматично генерирано)",
|
||||
"`x` is live": "`x` е на живо",
|
||||
"Azerbaijani": "Азербайджански",
|
||||
"Premieres `x`": "Премиера `x`",
|
||||
"Japanese (auto-generated)": "Японски (автоматично генерирано)",
|
||||
"preferences_quality_option_medium": "Средно",
|
||||
"footer_donate_page": "Даряване",
|
||||
"Show replies": "Покажи отговорите",
|
||||
"Esperanto": "Есперанто",
|
||||
"search_message_change_filters_or_query": "Опитай да разшириш търсенето си и/или да смениш филтрите.",
|
||||
"CAPTCHA enabled: ": "Активиране на CAPTCHA: ",
|
||||
"View playlist on YouTube": "Виж плейлиста в YouTube",
|
||||
"crash_page_before_reporting": "Преди докладването на бъг, бъди сигурен, че си:",
|
||||
"Top enabled: ": "Активиране на страница с топ видеа: ",
|
||||
"preferences_quality_dash_option_best": "Най-високо",
|
||||
"search_filters_duration_label": "Продължителност",
|
||||
"Slovak": "Словашки",
|
||||
"Channel Sponsor": "Канален спонсор",
|
||||
"generic_videos_count": "{{count}} видео",
|
||||
"generic_videos_count_plural": "{{count}} видеа",
|
||||
"videoinfo_started_streaming_x_ago": "Започна да излъчва преди `x`",
|
||||
"videoinfo_youTube_embed_link": "Вграждане",
|
||||
"channel_tab_streams_label": "Стриймове",
|
||||
"oldest": "най-стари",
|
||||
"playlist_button_add_items": "Добавяне на видеа",
|
||||
"Import NewPipe data (.zip)": "Импортиране на NewPipe информация (.zip)",
|
||||
"Clear watch history": "Изчистване на историята на гледане",
|
||||
"generic_count_minutes": "{{count}} минута",
|
||||
"generic_count_minutes_plural": "{{count}} минути",
|
||||
"published": "публикувани",
|
||||
"Show annotations": "Покажи анотации",
|
||||
"Login enabled: ": "Активиране на впизване: ",
|
||||
"Somali": "Сомалийски",
|
||||
"YouTube comment permalink": "Постоянна връзка на коментарите на YouTube",
|
||||
"Kurdish": "Кюрдски",
|
||||
"search_filters_date_option_hour": "Последния час",
|
||||
"Lao": "Лаоски",
|
||||
"Maltese": "Малтийски",
|
||||
"Register": "Регистрация",
|
||||
"View channel on YouTube": "Виж канала в YouTube",
|
||||
"Playlist privacy": "Поверителен плейлист",
|
||||
"preferences_unseen_only_label": "Показвай само негледаните: ",
|
||||
"Gujarati": "Гуджарати",
|
||||
"Please log in": "Моля влезте",
|
||||
"search_filters_sort_option_rating": "Рейтинг",
|
||||
"Manage subscriptions": "Управление на абонаментите",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_watch_history_label": "Активирай историята на гледане: ",
|
||||
"user_saved_playlists": "`x` запази плейлисти",
|
||||
"preferences_extend_desc_label": "Автоматично разшири описанието на видеото ",
|
||||
"preferences_max_results_label": "Брой видеа показани на началната страница: ",
|
||||
"Spanish (Spain)": "Испански (Испания)",
|
||||
"invidious": "Invidious",
|
||||
"crash_page_refresh": "пробвал да <a href=\"`x`\">опресниш страницата</a>",
|
||||
"Image CAPTCHA": "CAPTCHA с Изображение",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"Chinese (Hong Kong)": "Китайски (Хонг Конг)",
|
||||
"Import Invidious data": "Импортиране на Invidious JSON информацията",
|
||||
"Blacklisted regions: ": "Неразрешени региони: ",
|
||||
"Only show latest video from channel: ": "Показвай само най-новите видеа в канала: ",
|
||||
"Hmong": "Хмонг",
|
||||
"French": "Френски",
|
||||
"search_filters_type_option_channel": "Канал",
|
||||
"Artist: ": "Артист: ",
|
||||
"generic_count_months": "{{count}} месец",
|
||||
"generic_count_months_plural": "{{count}} месеца",
|
||||
"preferences_annotations_subscribed_label": "Показвай анотаций по подразбиране за абонирани канали? ",
|
||||
"search_message_use_another_instance": " Можеш също да <a href=\"`x`\">търсиш на друга инстанция</a>.",
|
||||
"Danish": "Датски",
|
||||
"generic_subscribers_count": "{{count}} абонат",
|
||||
"generic_subscribers_count_plural": "{{count}} абоната",
|
||||
"Galician": "Галисий",
|
||||
"newest": "най-нови",
|
||||
"Empty playlist": "Плейлиста е празен",
|
||||
"download_subtitles": "Субритри - `x` (.vtt)",
|
||||
"preferences_category_misc": "Различни предпочитания",
|
||||
"Uzbek": "Узбекски",
|
||||
"View JavaScript license information.": "Виж Javascript лиценза.",
|
||||
"Filipino": "Филипински",
|
||||
"Malagasy": "Мадагаскарски",
|
||||
"generic_button_save": "Запиши",
|
||||
"Dark mode: ": "Тъмен режим: ",
|
||||
"Public": "Публичен",
|
||||
"Basque": "Баскски",
|
||||
"channel:`x`": "Канал:`x`",
|
||||
"Armenian": "Арменски",
|
||||
"This channel does not exist.": "Този канал не съществува.",
|
||||
"Luxembourgish": "Люксембургски",
|
||||
"preferences_related_videos_label": "Покажи подобни видеа: ",
|
||||
"English": "Английски",
|
||||
"Delete account": "Изтриване на акаунт",
|
||||
"Gaming": "Игри",
|
||||
"Video mode": "Видео режим",
|
||||
"preferences_dark_mode_label": "Тема: ",
|
||||
"crash_page_search_issue": "потърсил за <a href=\"`x`\">съществуващи проблеми в GitHub</a>",
|
||||
"preferences_category_subscription": "Предпочитания за абонаменти",
|
||||
"last": "най-скорощни",
|
||||
"Chinese (Simplified)": "Китайски (Опростен)",
|
||||
"Could not create mix.": "Създаването на микс е неуспешно.",
|
||||
"generic_button_cancel": "Отказ",
|
||||
"search_filters_type_option_movie": "Филм",
|
||||
"search_filters_date_option_year": "Тази година",
|
||||
"Swedish": "Шведски",
|
||||
"Previous page": "Предишна страница",
|
||||
"none": "нищо",
|
||||
"popular": "най-популярни",
|
||||
"Unsubscribe": "Отписване",
|
||||
"Slovenian": "Словенски",
|
||||
"Nepali": "Непалски",
|
||||
"Time (h:mm:ss):": "Време (h:mm:ss):",
|
||||
"English (auto-generated)": "Английски (автоматично генерирано)",
|
||||
"search_filters_sort_label": "Сортирай по",
|
||||
"View more comments on Reddit": "Виж повече коментари в Reddit",
|
||||
"Sinhala": "Синхалски",
|
||||
"preferences_feed_menu_label": "Меню с препоръки: ",
|
||||
"preferences_autoplay_label": "Автоматично пускане: ",
|
||||
"Pashto": "Пущунски",
|
||||
"English (United States)": "Английски (САЩ)",
|
||||
"Sign In": "Вход",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} невидяно известие",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} невидяни известия",
|
||||
"Log in": "Вход",
|
||||
"Engagement: ": "Участие: ",
|
||||
"Album: ": "Албум: ",
|
||||
"preferences_speed_label": "Скорост по подразбиране: ",
|
||||
"Import FreeTube subscriptions (.db)": "Импортиране на FreeTube абонаменти (.db)",
|
||||
"preferences_quality_option_dash": "DASH (адаптивно качество)",
|
||||
"preferences_show_nick_label": "Показвай потребителското име отгоре: ",
|
||||
"Private": "Частен",
|
||||
"Samoan": "Самоански",
|
||||
"preferences_notifications_only_label": "Показвай само известията (ако има такива): ",
|
||||
"Create playlist": "Създаване на плейлист",
|
||||
"next_steps_error_message_refresh": "Опресниш",
|
||||
"Top": "Топ",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"Malayalam": "Малаялам",
|
||||
"Token": "Токен",
|
||||
"preferences_comments_label": "Коментари по подразбиране: ",
|
||||
"Movies": "Филми",
|
||||
"light": "светла",
|
||||
"Unlisted": "Скрит",
|
||||
"preferences_category_admin": "Администраторни предпочитания",
|
||||
"Erroneous token": "Невалиден токен",
|
||||
"No": "Не",
|
||||
"CAPTCHA is a required field": "CAPTCHA е задължително поле",
|
||||
"Video unavailable": "Неналично видео",
|
||||
"footer_source_code": "Изходен код",
|
||||
"New passwords must match": "Новите пароли трябва да съвпадат",
|
||||
"Playlist does not exist.": "Плейлиста не съществува.",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Експортиране на абонаментите като OPML (за NewPipe и FreeTube)",
|
||||
"search_filters_duration_option_short": "Кратко (< 4 минути)",
|
||||
"search_filters_duration_option_long": "Дълго (> 20 минути)",
|
||||
"tokens_count": "{{count}} токен",
|
||||
"tokens_count_plural": "{{count}} токена",
|
||||
"Yes": "Да",
|
||||
"Dutch": "Холандски",
|
||||
"Arabic": "Арабски",
|
||||
"An alternative front-end to YouTube": "Алтернативен преден план на YouTube",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Виж `x` коментар",
|
||||
"": "Виж `x` коментари"
|
||||
},
|
||||
"Chinese (China)": "Китайски (Китай)",
|
||||
"Italian (auto-generated)": "Италиански (автоматично генерирано)",
|
||||
"alphabetically - reverse": "обратно на азбучния ред",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"`x` marked it with a ❤": "`x` го маркира със ❤",
|
||||
"Current version: ": "Текуща версия: ",
|
||||
"channel_tab_community_label": "Общност",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"`x` uploaded a video": "`x` качи видео",
|
||||
"Welsh": "Уелски",
|
||||
"search_message_no_results": "Няма намерени резултати.",
|
||||
"channel_tab_releases_label": "Версии",
|
||||
"Bangla": "Бенгалски",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Indonesian": "Индонезийски",
|
||||
"`x` ago": "преди `x`",
|
||||
"Invidious Private Feed for `x`": "Invidious персонални видеа за `x`",
|
||||
"Finnish": "Финландски",
|
||||
"Amharic": "Амхарски",
|
||||
"Malay": "Малайски",
|
||||
"Interlingue": "Интерлинг",
|
||||
"search_filters_date_option_month": "Този месец",
|
||||
"Georgian": "Грузински",
|
||||
"Xhosa": "Кхоса",
|
||||
"Marathi": "Маратхи",
|
||||
"Yoruba": "Йоруба",
|
||||
"Song: ": "Музика: ",
|
||||
"Scottish Gaelic": "Шотландски гелски",
|
||||
"search_filters_features_label": "Функции",
|
||||
"preferences_quality_label": "Предпочитано качество на видеото: ",
|
||||
"generic_channels_count": "{{count}} канал",
|
||||
"generic_channels_count_plural": "{{count}} канала",
|
||||
"Croatian": "Хърватски",
|
||||
"Thai": "Тайски",
|
||||
"Chinese (Taiwan)": "Китайски (Тайван)",
|
||||
"youtube": "YouTube",
|
||||
"Source available here.": "Източник наличен тук.",
|
||||
"LIVE": "На живо",
|
||||
"Ukrainian": "Украински",
|
||||
"Russian": "Руски",
|
||||
"Tajik": "Таджикски",
|
||||
"Token manager": "Управляване на токени",
|
||||
"preferences_quality_dash_label": "Предпочитано DASH качество на видеото: ",
|
||||
"adminprefs_modified_source_code_url_label": "URL до хранилището на променения изходен код",
|
||||
"Japanese": "Японски",
|
||||
"Title": "Заглавие",
|
||||
"Authorize token for `x`?": "Разреши токена за `x`?",
|
||||
"reddit": "Reddit",
|
||||
"permalink": "постоянна връзка",
|
||||
"Trending": "На върха",
|
||||
"Turkish (auto-generated)": "Турски (автоматично генерирано)",
|
||||
"Bulgarian": "Български",
|
||||
"Indonesian (auto-generated)": "Индонезийски (автоматично генерирано)",
|
||||
"Enable web notifications": "Активирай уеб известия",
|
||||
"Western Frisian": "Западен фризски",
|
||||
"search_filters_date_option_week": "Тази седмица",
|
||||
"Yiddish": "Идиш",
|
||||
"preferences_category_player": "Предпочитания за плейъра",
|
||||
"Shared `x` ago": "Споделено преди `x`",
|
||||
"Swahili": "Суахили",
|
||||
"Portuguese (auto-generated)": "Португалски (автоматично генерирано)",
|
||||
"generic_count_years": "{{count}} година",
|
||||
"generic_count_years_plural": "{{count}} години",
|
||||
"Wilson score: ": "Wilson оценка: ",
|
||||
"Genre: ": "Жанр: ",
|
||||
"videoinfo_invidious_embed_link": "Вграждане на линк",
|
||||
"Popular enabled: ": "Активиране на популярната страница: ",
|
||||
"Wrong username or password": "Грешно потребителско име или парола",
|
||||
"Vietnamese": "Виетнамски",
|
||||
"alphabetically": "по азбучен ред",
|
||||
"Afrikaans": "Африкаанс",
|
||||
"Zulu": "Зулуски",
|
||||
"(edited)": "(редактирано)",
|
||||
"Whitelisted regions: ": "Разрешени региони: ",
|
||||
"Spanish (auto-generated)": "Испански (автоматично генерирано)",
|
||||
"Could not fetch comments": "Получаването на коментарите е неуспешно",
|
||||
"Sindhi": "Синдхи",
|
||||
"News": "Новини",
|
||||
"preferences_video_loop_label": "Винаги повтаряй: ",
|
||||
"%A %B %-d, %Y": "%-d %B %Y, %A",
|
||||
"preferences_quality_option_small": "Ниско",
|
||||
"English (United Kingdom)": "Английски (Великобритания)",
|
||||
"Rating: ": "Рейтинг: ",
|
||||
"channel_tab_playlists_label": "Плейлисти",
|
||||
"generic_button_edit": "Редактирай",
|
||||
"Report statistics: ": "Активиране на статистики за репортиране: ",
|
||||
"Cebuano": "Себуано",
|
||||
"Chinese (Traditional)": "Китайски (Традиционен)",
|
||||
"generic_playlists_count": "{{count}} плейлист",
|
||||
"generic_playlists_count_plural": "{{count}} плейлиста",
|
||||
"Import NewPipe subscriptions (.json)": "Импортиране на NewPipe абонаменти (.json)",
|
||||
"Preferences": "Предпочитания",
|
||||
"Subscribe": "Абониране",
|
||||
"Import and Export Data": "Импортиране и експортиране на информация",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"search_filters_type_option_playlist": "Плейлист",
|
||||
"Serbian": "Сръбски",
|
||||
"Kazakh": "Казахски",
|
||||
"Telugu": "Телугу",
|
||||
"search_filters_features_option_purchased": "Купено",
|
||||
"revoke": "отмяна",
|
||||
"search_filters_sort_option_date": "Дата на качване",
|
||||
"preferences_category_data": "Предпочитания за информацията",
|
||||
"search_filters_date_option_none": "Всякаква дата",
|
||||
"Log out": "Излизане",
|
||||
"Search": "Търсене",
|
||||
"preferences_quality_dash_option_auto": "Автоматично",
|
||||
"dark": "тъмна",
|
||||
"Cantonese (Hong Kong)": "Кантонски (Хонг Конг)",
|
||||
"crash_page_report_issue": "Ако никои от горепосочените не помогнаха, моля <a href=\"`x`\">отворете нов проблем в GitHub</a> (предпочитано на Английски) и добавете следния текст в съобщението (НЕ превеждайте този текст):",
|
||||
"Czech": "Чешки",
|
||||
"crash_page_switch_instance": "пробвал да <a href=\"`x`\">ползваш друга инстанция</a>",
|
||||
"generic_count_weeks": "{{count}} седмица",
|
||||
"generic_count_weeks_plural": "{{count}} седмици",
|
||||
"search_filters_features_option_subtitles": "Субтитри",
|
||||
"videoinfo_watch_on_youTube": "Виж в YouTube",
|
||||
"Portuguese": "Португалски",
|
||||
"Music in this video": "Музика в това видео",
|
||||
"Hide replies": "Скрий отговорите",
|
||||
"Password cannot be longer than 55 characters": "Паролата не може да бъде по-дълга от 55 символа",
|
||||
"footer_modfied_source_code": "Променен изходен код",
|
||||
"Bosnian": "Босненски",
|
||||
"Deleted or invalid channel": "Изтрит или невалиден канал",
|
||||
"Popular": "Популярно",
|
||||
"search_filters_type_label": "Тип",
|
||||
"preferences_locale_label": "Език: ",
|
||||
"Playlists": "Плейлисти",
|
||||
"generic_button_rss": "RSS",
|
||||
"Export": "Експортиране",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"Erroneous challenge": "Невалиден тест",
|
||||
"History": "История",
|
||||
"generic_count_hours": "{{count}} час",
|
||||
"generic_count_hours_plural": "{{count}} часа",
|
||||
"Registration enabled: ": "Активиране на регистрация: ",
|
||||
"Music": "Музика",
|
||||
"Incorrect password": "Грешна парола",
|
||||
"Persian": "Перскийски",
|
||||
"Import": "Импортиране",
|
||||
"Import/export data": "Импортиране/Експортиране на информация",
|
||||
"Shared `x`": "Споделено `x`",
|
||||
"Javanese": "Явански",
|
||||
"French (auto-generated)": "Френски (автоматично генерирано)",
|
||||
"Norwegian Bokmål": "Норвежки",
|
||||
"Catalan": "Каталунски",
|
||||
"Hindi": "Хинди",
|
||||
"Tamil": "Тамилски",
|
||||
"search_filters_features_option_live": "На живо",
|
||||
"crash_page_read_the_faq": "прочел <a href=\"`x`\">Често задавани въпроси (FAQ)</a>",
|
||||
"preferences_default_home_label": "Начална страница по подразбиране: ",
|
||||
"Download": "Изтегляне",
|
||||
"Show less": "Покажи по-малко",
|
||||
"Password": "Парола",
|
||||
"User ID": "Потребителско име",
|
||||
"Subscription manager": "Управляване на абонаменти",
|
||||
"search": "търсене",
|
||||
"No such user": "Няма такъв потребител",
|
||||
"View privacy policy.": "Виж политиката за поверителност.",
|
||||
"Only show latest unwatched video from channel: ": "Показвай само най-новите негледани видеа в канала: ",
|
||||
"user_created_playlists": "`x` създаде плейлисти",
|
||||
"Editing playlist `x`": "Редактиране на плейлист `x`",
|
||||
"preferences_thin_mode_label": "Тънък режим: ",
|
||||
"E-mail": "Имейл",
|
||||
"Haitian Creole": "Хаитянски креол",
|
||||
"Irish": "Ирландски",
|
||||
"channel_tab_channels_label": "Канали",
|
||||
"Delete account?": "Изтрий акаунта?",
|
||||
"Redirect homepage to feed: ": "Препращане на началната страница до препоръки ",
|
||||
"Urdu": "Урду",
|
||||
"preferences_vr_mode_label": "Интерактивни 360 градусови видеа (изисква WebGL): ",
|
||||
"Password cannot be empty": "Паролата не може да бъде празна",
|
||||
"Mongolian": "Монголски",
|
||||
"Authorize token?": "Разреши токена?",
|
||||
"search_filters_type_option_all": "Всякакъв тип",
|
||||
"Romanian": "Румънски",
|
||||
"Belarusian": "Беларуски",
|
||||
"channel name - reverse": "име на канал - в обратен ред",
|
||||
"Erroneous CAPTCHA": "Невалидна CAPTCHA",
|
||||
"Watch on YouTube": "Гледай в YouTube",
|
||||
"search_filters_features_option_location": "Местоположение",
|
||||
"Could not pull trending pages.": "Получаването на трендинг страниците е неуспешно.",
|
||||
"German": "Немски",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"Family friendly? ": "За всяка възраст? ",
|
||||
"Hidden field \"token\" is a required field": "Скритото поле \"токен\" е задължително поле",
|
||||
"Russian (auto-generated)": "Руски (автоматично генерирано)",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"Corsican": "Корсикански",
|
||||
"Macedonian": "Македонски",
|
||||
"comments_view_x_replies": "Виж {{count}} отговор",
|
||||
"comments_view_x_replies_plural": "Виж {{count}} отговора",
|
||||
"footer_original_source_code": "Оригинален изходен код",
|
||||
"Import YouTube subscriptions": "Импортиране на YouTube/OPML абонаменти",
|
||||
"Lithuanian": "Литовски",
|
||||
"Nyanja": "Нянджа",
|
||||
"Updated `x` ago": "Актуализирано преди `x`",
|
||||
"JavaScript license information": "Информация за Javascript лиценза",
|
||||
"Spanish": "Испански",
|
||||
"Latin": "Латински",
|
||||
"Shona": "Шона",
|
||||
"Portuguese (Brazil)": "Португалски (Бразилия)",
|
||||
"Show more": "Покажи още",
|
||||
"Clear watch history?": "Изчисти историята на търсене?",
|
||||
"Manage tokens": "Управление на токени",
|
||||
"Hausa": "Хауса",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"preferences_category_visual": "Визуални предпочитания",
|
||||
"Italian": "Италиански",
|
||||
"preferences_volume_label": "Сила на звука на плейъра: ",
|
||||
"error_video_not_in_playlist": "Заявеното видео не съществува в този плейлист. <a href=\"`x`\">Натиснете тук за началната страница на плейлиста.</a>",
|
||||
"preferences_listen_label": "Само звук по подразбиране: ",
|
||||
"Dutch (auto-generated)": "Холандски (автоматично генерирано)",
|
||||
"preferences_captions_label": "Надписи по подразбиране: ",
|
||||
"generic_count_days": "{{count}} ден",
|
||||
"generic_count_days_plural": "{{count}} дни",
|
||||
"Hawaiian": "Хавайски",
|
||||
"Could not get channel info.": "Получаването на информация за канала е неуспешно.",
|
||||
"View as playlist": "Виж като плейлист",
|
||||
"Vietnamese (auto-generated)": "Виетнамски (автоматично генерирано)",
|
||||
"search_filters_duration_option_none": "Всякаква продължителност",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"Latvian": "Латвийски",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"preferences_sort_label": "Сортирай видеата по: ",
|
||||
"Estonian": "Естонски",
|
||||
"Hidden field \"challenge\" is a required field": "Скритото поле \"тест\" е задължително поле",
|
||||
"footer_documentation": "Документация",
|
||||
"Kyrgyz": "Киргизски",
|
||||
"preferences_continue_autoplay_label": "Пускай следващотото видео автоматично: ",
|
||||
"Chinese": "Китайски",
|
||||
"search_filters_sort_option_relevance": "Уместност",
|
||||
"source": "източник",
|
||||
"Fallback comments: ": "Резервни коментари: ",
|
||||
"preferences_automatic_instance_redirect_label": "Автоматично препращане на инстанция (чрез redirect.invidious.io): ",
|
||||
"Maori": "Маори",
|
||||
"generic_button_delete": "Изтрий",
|
||||
"Import YouTube playlist (.csv)": "Импортиране на YouTube плейлист (.csv)",
|
||||
"Switch Invidious Instance": "Смени Invidious инстанция",
|
||||
"channel name": "име на канал",
|
||||
"Audio mode": "Аудио режим",
|
||||
"search_filters_type_option_show": "Сериал",
|
||||
"search_filters_date_option_today": "Днес",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"next_steps_error_message": "След което можеш да пробваш да: ",
|
||||
"Hide annotations": "Скрий анотации",
|
||||
"Standard YouTube license": "Стандартен YouTube лиценз",
|
||||
"Text CAPTCHA": "Текст CAPTCHA",
|
||||
"Log in/register": "Вход/регистрация",
|
||||
"Punjabi": "Пенджаби",
|
||||
"Change password": "Смяна на паролата",
|
||||
"License: ": "Лиценз: ",
|
||||
"search_filters_duration_option_medium": "Средно (4 - 20 минути)",
|
||||
"Delete playlist": "Изтриване на плейлист",
|
||||
"Delete playlist `x`?": "Изтрий плейлиста `x`?",
|
||||
"Korean": "Корейски",
|
||||
"Export subscriptions as OPML": "Експортиране на абонаментите като OPML",
|
||||
"unsubscribe": "отписване",
|
||||
"View YouTube comments": "Виж YouTube коментарите",
|
||||
"Kannada": "Каннада",
|
||||
"Not a playlist.": "Невалиден плейлист.",
|
||||
"Wrong answer": "Грешен отговор",
|
||||
"Released under the AGPLv3 on Github.": "Публикувано под AGPLv3 в GitHub.",
|
||||
"Burmese": "Бирмански",
|
||||
"Sundanese": "Сундански",
|
||||
"Hungarian": "Унгарски",
|
||||
"generic_count_seconds": "{{count}} секунда",
|
||||
"generic_count_seconds_plural": "{{count}} секунди",
|
||||
"search_filters_date_label": "Дата на качване",
|
||||
"Greek": "Гръцки",
|
||||
"crash_page_you_found_a_bug": "Изглежда намери бъг в Invidious!",
|
||||
"View all playlists": "Виж всички плейлисти",
|
||||
"Khmer": "Кхмерски",
|
||||
"preferences_annotations_label": "Покажи анотаций по подразбиране: ",
|
||||
"generic_views_count": "{{count}} гледане",
|
||||
"generic_views_count_plural": "{{count}} гледания",
|
||||
"Next page": "Следваща страница",
|
||||
"Import YouTube watch history (.json)": "Импортиране на историята на гледане от YouTube (.json)",
|
||||
"toggle_theme": "Смени темата",
|
||||
"Add to playlist": "Добави към плейлист",
|
||||
"Add to playlist: ": "Добави към плейлист: ",
|
||||
"Answer": "Отговор",
|
||||
"Search for videos": "Търсене на видеа",
|
||||
"The Popular feed has been disabled by the administrator.": "Популярната страница е деактивирана от администратора."
|
||||
}
|
96
locales/bn.json
Normal file
96
locales/bn.json
Normal file
@ -0,0 +1,96 @@
|
||||
{
|
||||
"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": "নতুন পাসওয়ার্ড অবশ্যই মিলতে হবে",
|
||||
"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": "লগ ইন/রেজিস্টার",
|
||||
"User ID": "ইউজার আইডি",
|
||||
"Password": "পাসওয়ার্ড",
|
||||
"Time (h:mm:ss):": "সময় (ঘণ্টা:মিনিট:সেকেন্ড):",
|
||||
"Text CAPTCHA": "টেক্সট ক্যাপচা",
|
||||
"Image CAPTCHA": "চিত্র ক্যাপচা",
|
||||
"Sign In": "সাইন ইন",
|
||||
"Register": "নিবন্ধন",
|
||||
"E-mail": "ই-মেইল",
|
||||
"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": "প্লেয়ার শব্দের মাত্রা: ",
|
||||
"LIVE": "লাইভ",
|
||||
"Shared `x` ago": "`x` আগে শেয়ার করা হয়েছে",
|
||||
"Unsubscribe": "আনসাবস্ক্রাইব",
|
||||
"generic_views_count": "{{count}}জন দেখেছে",
|
||||
"generic_views_count_plural": "{{count}}জন দেখেছে",
|
||||
"generic_videos_count": "{{count}}টি ভিডিও",
|
||||
"generic_videos_count_plural": "{{count}}টি ভিডিও",
|
||||
"generic_subscribers_count": "{{count}}জন অনুসরণকারী",
|
||||
"generic_subscribers_count_plural": "{{count}}জন অনুসরণকারী",
|
||||
"preferences_watch_history_label": "দেখার ইতিহাস চালু করো: ",
|
||||
"preferences_quality_option_dash": "ড্যাশ (সময়োপযোগী মান)",
|
||||
"preferences_quality_dash_option_auto": "স্বয়ংক্রিয়",
|
||||
"preferences_quality_dash_option_best": "সেরা",
|
||||
"preferences_quality_dash_option_worst": "মন্দতম",
|
||||
"preferences_quality_dash_option_4320p": "৪৩২০পি",
|
||||
"preferences_quality_dash_option_2160p": "২১৬০পি",
|
||||
"preferences_quality_dash_option_1440p": "১৪৪০পি",
|
||||
"preferences_quality_dash_option_480p": "৪৮০পি",
|
||||
"preferences_quality_dash_option_360p": "৩৬০পি",
|
||||
"preferences_quality_dash_option_240p": "২৪০পি",
|
||||
"preferences_quality_dash_option_144p": "১৪৪পি",
|
||||
"preferences_comments_label": "সহজাত মন্তব্য: ",
|
||||
"youtube": "ইউটিউব",
|
||||
"Fallback captions: ": "বিকল্প উপাখ্যান: ",
|
||||
"preferences_related_videos_label": "সম্পর্কিত ভিডিও দেখাও: ",
|
||||
"preferences_annotations_label": "সহজাতভাবে টীকা দেখাও ",
|
||||
"preferences_quality_option_hd720": "উচ্চ৭২০",
|
||||
"preferences_quality_dash_label": "পছন্দের ড্যাশ ভিডিও মান: ",
|
||||
"preferences_captions_label": "সহজাত উপাখ্যান: ",
|
||||
"generic_playlists_count": "{{count}}টি চালুতালিকা",
|
||||
"generic_playlists_count_plural": "{{count}}টি চালুতালিকা",
|
||||
"reddit": "রেডিট",
|
||||
"invidious": "ইনভিডিয়াস",
|
||||
"generic_subscriptions_count": "{{count}}টি অনুসরণ",
|
||||
"generic_subscriptions_count_plural": "{{count}}টি অনুসরণ",
|
||||
"preferences_quality_option_medium": "মধ্যম",
|
||||
"preferences_quality_option_small": "ছোট",
|
||||
"preferences_quality_dash_option_1080p": "১০৮০পি",
|
||||
"preferences_quality_dash_option_720p": "৭২০পি",
|
||||
"Add to playlist": "প্লেলিস্টে যোগ করুন",
|
||||
"Add to playlist: ": "প্লেলিস্টে যোগ করুন: "
|
||||
}
|
@ -14,7 +14,6 @@
|
||||
"Clear watch history?": "দেখার ইতিহাস সাফ করবেন?",
|
||||
"New password": "নতুন পাসওয়ার্ড",
|
||||
"New passwords must match": "নতুন পাসওয়ার্ড অবশ্যই মিলতে হবে",
|
||||
"Cannot change password for Google accounts": "গুগল অ্যাকাউন্টগুলোর জন্য পাসওয়ার্ড পরিবর্তন করা যায় না",
|
||||
"Authorize token?": "টোকেন অনুমোদন করবেন?",
|
||||
"Authorize token for `x`?": "`x` -এর জন্য টোকেন অনুমোদন?",
|
||||
"Yes": "হ্যাঁ",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "সূত্র",
|
||||
"Log in": "লগ ইন",
|
||||
"Log in/register": "লগ ইন/রেজিস্টার",
|
||||
"Log in with Google": "গুগল দিয়ে লগ ইন করুন",
|
||||
"User ID": "ইউজার আইডি",
|
||||
"Password": "পাসওয়ার্ড",
|
||||
"Time (h:mm:ss):": "সময় (ঘণ্টা:মিনিট:সেকেন্ড):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "সাইন ইন",
|
||||
"Register": "নিবন্ধন",
|
||||
"E-mail": "ই-মেইল",
|
||||
"Google verification code": "গুগল যাচাইকরণ কোড",
|
||||
"Preferences": "পছন্দসমূহ",
|
||||
"preferences_category_player": "প্লেয়ারের পছন্দসমূহ",
|
||||
"preferences_video_loop_label": "সর্বদা লুপ: ",
|
||||
|
426
locales/ca.json
426
locales/ca.json
@ -4,7 +4,6 @@
|
||||
"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: ",
|
||||
@ -51,22 +50,22 @@
|
||||
"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)",
|
||||
"channel_tab_videos_label": "Vídeos",
|
||||
"search_filters_type_label": "Tipus",
|
||||
"search_filters_duration_label": "Duració",
|
||||
"search_filters_sort_label": "Ordena per",
|
||||
"search_filters_date_option_week": "Aquesta setmana",
|
||||
"search_filters_date_option_month": "Aquest mes",
|
||||
"search_filters_date_option_year": "Aquest any",
|
||||
"search_filters_type_option_video": "Vídeo",
|
||||
"search_filters_type_option_channel": "Canal",
|
||||
"search_filters_duration_option_short": "Curt (< 4 minuts)",
|
||||
"search_filters_duration_option_long": "Llarg (> 20 minuts)",
|
||||
"Current version: ": "Versió actual: ",
|
||||
"Malay": "Malai",
|
||||
"Persian": "Persa",
|
||||
"Slovak": "Eslovac",
|
||||
"Search": "Busca",
|
||||
"Search": "Cerca",
|
||||
"Show annotations": "Mostra anotacions",
|
||||
"preferences_region_label": "País del contingut: ",
|
||||
"preferences_sort_label": "Ordena vídeos per: ",
|
||||
@ -75,7 +74,7 @@
|
||||
"Title": "Títol",
|
||||
"Belarusian": "Bielorús",
|
||||
"Enable web notifications": "Activa notificacions web",
|
||||
"search": "busca",
|
||||
"search": "Cerca",
|
||||
"Catalan": "Català",
|
||||
"Croatian": "Croat",
|
||||
"preferences_category_admin": "Preferències d'administrador",
|
||||
@ -93,11 +92,402 @@
|
||||
"Spanish": "Castellà",
|
||||
"Vietnamese": "Vietnamita",
|
||||
"News": "Notícies",
|
||||
"show": "Mostra",
|
||||
"search_filters_type_option_show": "Mostra",
|
||||
"footer_documentation": "Documentació",
|
||||
"Thai": "Tailandès",
|
||||
"Music": "Música",
|
||||
"relevance": "Rellevància",
|
||||
"hour": "Última hora",
|
||||
"today": "Avui"
|
||||
"search_filters_sort_option_relevance": "Rellevància",
|
||||
"search_filters_date_option_hour": "Última hora",
|
||||
"search_filters_date_option_today": "Avui",
|
||||
"preferences_volume_label": "Volum del reproductor: ",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Turkish (auto-generated)": "Turc (generat automàticament)",
|
||||
"Urdu": "Urdú",
|
||||
"Vietnamese (auto-generated)": "Vietnamita (generat automàticament)",
|
||||
"Welsh": "Gal·lès",
|
||||
"Yoruba": "Ioruba",
|
||||
"YouTube comment permalink": "Enllaç permanent de comentari de YouTube",
|
||||
"Channel Sponsor": "Patrocinador del canal",
|
||||
"Audio mode": "Mode d'àudio",
|
||||
"search_filters_date_option_none": "Qualsevol data",
|
||||
"search_filters_type_option_playlist": "Llista de reproducció",
|
||||
"search_filters_type_option_movie": "Pel·lícula",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_subtitles": "Subtítols/CC",
|
||||
"search_filters_features_option_live": "Directe",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_features_option_location": "Ubicació",
|
||||
"search_filters_apply_button": "Aplica els filtres seleccionats",
|
||||
"videoinfo_started_streaming_x_ago": "Ha començat el directe fa `x`",
|
||||
"next_steps_error_message_go_to_youtube": "Vés a YouTube",
|
||||
"footer_donate_page": "Feu un donatiu",
|
||||
"footer_original_source_code": "Codi font original",
|
||||
"videoinfo_watch_on_youTube": "Veure a YouTube",
|
||||
"user_saved_playlists": "`x` llistes de reproducció guardades",
|
||||
"adminprefs_modified_source_code_url_label": "URL al repositori de codi font modificat",
|
||||
"none": "cap",
|
||||
"footer_modfied_source_code": "Codi font modificat",
|
||||
"videoinfo_invidious_embed_link": "Incrusta l'enllaç",
|
||||
"download_subtitles": "Subtítols - `x` (.vtt)",
|
||||
"user_created_playlists": "`x`llistes de reproducció creades",
|
||||
"Video unavailable": "Vídeo no disponible",
|
||||
"channel_tab_channels_label": "Canals",
|
||||
"channel_tab_playlists_label": "Llistes de reproducció",
|
||||
"channel_tab_community_label": "Comunitat",
|
||||
"Czech": "Txec",
|
||||
"Default": "Per defecte",
|
||||
"Amharic": "Amàric",
|
||||
"preferences_automatic_instance_redirect_label": "Redirecció automàtica d'instàncies (retorna a redirect.invidious.io): ",
|
||||
"Login enabled: ": "Activa inici de sessió: ",
|
||||
"Registration enabled: ": "Activa registre: ",
|
||||
"Whitelisted regions: ": "Regions a la llista blanca: ",
|
||||
"Chinese (Simplified)": "Xinès (Simplificat)",
|
||||
"Corsican": "Cors",
|
||||
"Estonian": "Estonià",
|
||||
"Japanese (auto-generated)": "Japonès (generat automàticament)",
|
||||
"English (United States)": "Anglès (Estats Units)",
|
||||
"English (auto-generated)": "Anglès (generat automàticament)",
|
||||
"Cebuano": "Cebuà",
|
||||
"Esperanto": "Esperanto",
|
||||
"Scottish Gaelic": "Gaèlic escocès",
|
||||
"Playlists": "Llistes de reproducció",
|
||||
"search_filters_title": "Filtres",
|
||||
"search_filters_type_option_all": "Qualsevol tipus",
|
||||
"search_filters_duration_option_none": "Qualsevol duració",
|
||||
"next_steps_error_message": "Després d'això, hauríeu d'intentar: ",
|
||||
"next_steps_error_message_refresh": "Recarregar la pàgina",
|
||||
"crash_page_refresh": "ha intentat <a href=\"`x`\">actualitzar la pàgina</a>",
|
||||
"crash_page_report_issue": "Si cap de les anteriors no ha ajudat, <a href=\"`x`\">obre un nou issue a GitHub</a> (preferiblement en anglès) i inclou el text següent al missatge (NO tradueixis aquest text):",
|
||||
"generic_subscriptions_count": "{{count}} subscripció",
|
||||
"generic_subscriptions_count_plural": "{{count}} subscripcions",
|
||||
"error_video_not_in_playlist": "El vídeo sol·licitat no existeix en aquesta llista de reproducció. <a href=\"`x`\">Feu clic aquí per a la pàgina d'inici de la llista de reproducció.</a>",
|
||||
"comments_points_count": "{{count}} punt",
|
||||
"comments_points_count_plural": "{{count}} punts",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"Create playlist": "Crear llista de reproducció",
|
||||
"Text CAPTCHA": "Text CAPTCHA",
|
||||
"Next page": "Pàgina següent",
|
||||
"preferences_category_visual": "Preferències visuals",
|
||||
"preferences_unseen_only_label": "Mostra només no vistos: ",
|
||||
"preferences_listen_label": "Escolta per defecte: ",
|
||||
"Import": "Importar",
|
||||
"Token": "Testimoni",
|
||||
"Wilson score: ": "Puntuació de Wilson: ",
|
||||
"search_filters_date_label": "Data de càrrega",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"source": "font",
|
||||
"preferences_default_home_label": "Pàgina d'inici per defecte: ",
|
||||
"preferences_comments_label": "Comentaris per defecte: ",
|
||||
"`x` uploaded a video": "`x` ha penjat un vídeo",
|
||||
"Released under the AGPLv3 on Github.": "Publicat sota l'AGPLv3 a GitHub.",
|
||||
"Token manager": "Gestor de testimonis",
|
||||
"Watch history": "Historial de reproduccions",
|
||||
"Authorize token?": "Autoritzar testimoni?",
|
||||
"Source available here.": "Font disponible aquí.",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exporta subscripcions com a OPML (per a NewPipe i FreeTube)",
|
||||
"Log in": "Inicia sessió",
|
||||
"search_filters_sort_option_date": "Data de càrrega",
|
||||
"Unlisted": "No llistat",
|
||||
"View privacy policy.": "Veure política de privadesa.",
|
||||
"Public": "Públic",
|
||||
"View all playlists": "Veure totes les llistes de reproducció",
|
||||
"reddit": "Reddit",
|
||||
"Manage tokens": "Gestiona testimonis",
|
||||
"Not a playlist.": "No és una llista de reproducció.",
|
||||
"preferences_local_label": "Vídeos de Proxy: ",
|
||||
"View channel on YouTube": "Veure canal a Youtube",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"Top enabled: ": "Activa top: ",
|
||||
"Delete playlist `x`?": "Eliminar llista de reproducció `x`?",
|
||||
"View JavaScript license information.": "Consulta la informació de la llicència de JavaScript.",
|
||||
"Playlist privacy": "Privacitat de la llista de reproducció",
|
||||
"search_message_no_results": "No s'han trobat resultats.",
|
||||
"search_message_use_another_instance": " També es pot <a href=\"`x`\">buscar en una altra instància</a>.",
|
||||
"Genre: ": "Gènere: ",
|
||||
"Hidden field \"challenge\" is a required field": "El camp ocult \"repte\" és un camp obligatori",
|
||||
"Burmese": "Birmà",
|
||||
"View as playlist": "Mostra com a llista de reproducció",
|
||||
"preferences_category_subscription": "Preferències de subscripció",
|
||||
"Music in this video": "Música en aquest vídeo",
|
||||
"Artist: ": "Artista: ",
|
||||
"Album: ": "Àlbum: ",
|
||||
"Shared `x`": "Compartit `x`",
|
||||
"Premieres `x`": "Estrena `x`",
|
||||
"View more comments on Reddit": "Veure més comentaris a Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Veure `x` comentari",
|
||||
"": "Veure `x` comentaris"
|
||||
},
|
||||
"View Reddit comments": "Veure comentaris de Reddit",
|
||||
"Incorrect password": "Contrasenya incorrecta",
|
||||
"Erroneous CAPTCHA": "CAPTCHA erroni",
|
||||
"CAPTCHA is a required field": "El CAPTCHA és un camp obligatori",
|
||||
"Korean (auto-generated)": "Coreà (generat automàticament)",
|
||||
"Kyrgyz": "Kirguís",
|
||||
"Latin": "Llatí",
|
||||
"Malagasy": "Malgaix",
|
||||
"Maori": "Maori",
|
||||
"Marathi": "Marathi",
|
||||
"Norwegian Bokmål": "Bokmål Noruec",
|
||||
"Nyanja": "Nyanja",
|
||||
"Portuguese (Brazil)": "Portuguès (Brazil)",
|
||||
"Punjabi": "Panjabi",
|
||||
"Russian (auto-generated)": "Rus (generat automàticament)",
|
||||
"Samoan": "Samoà",
|
||||
"Somali": "Somali",
|
||||
"Southern Sotho": "Sesotho",
|
||||
"Spanish (Mexico)": "Espanyol (Mèxic)",
|
||||
"Spanish (Spain)": "Espanyol (Espanya)",
|
||||
"Sundanese": "Sondanès",
|
||||
"Swahili": "Suahili",
|
||||
"Tamil": "Tàmil",
|
||||
"Telugu": "Telugu",
|
||||
"Zulu": "Zulu",
|
||||
"generic_count_months": "{{count}} mes",
|
||||
"generic_count_months_plural": "{{count}} mesos",
|
||||
"generic_count_weeks": "{{count}} setmana",
|
||||
"generic_count_weeks_plural": "{{count}} setmanes",
|
||||
"About": "Sobre",
|
||||
"`x` marked it with a ❤": "`x`marca'l amb un ❤",
|
||||
"Video mode": "Mode de vídeo",
|
||||
"search_filters_features_label": "Característiques",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_purchased": "Comprat",
|
||||
"Chinese (Hong Kong)": "Xinès (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Xinès (Taiwan)",
|
||||
"Hmong": "Hmong",
|
||||
"Kazakh": "Kazakh",
|
||||
"Igbo": "Igbo",
|
||||
"Javanese": "Javanès",
|
||||
"Indonesian (auto-generated)": "Indonesi (generat automàticament)",
|
||||
"Interlingue": "Interlingüe",
|
||||
"Khmer": "Khmer",
|
||||
"This channel does not exist.": "Aquest canal no existeix.",
|
||||
"Song: ": "Cançó: ",
|
||||
"channel:`x`": "canal: `x`",
|
||||
"Deleted or invalid channel": "Canal suprimit o no vàlid",
|
||||
"Could not get channel info.": "No s'ha pogut obtenir la informació del canal.",
|
||||
"Could not pull trending pages.": "No s'han pogut extreure les pàgines de tendència.",
|
||||
"comments_view_x_replies": "Veure {{count}} resposta",
|
||||
"comments_view_x_replies_plural": "Veure {{count}} respostes",
|
||||
"Subscriptions": "Subscripcions",
|
||||
"generic_count_seconds": "{{count}} segon",
|
||||
"generic_count_seconds_plural": "{{count}} segons",
|
||||
"channel_tab_shorts_label": "Vídeos curts",
|
||||
"preferences_save_player_pos_label": "Desa la posició de reproducció: ",
|
||||
"crash_page_before_reporting": "Abans d'informar d'un error, assegureu-vos que teniu:",
|
||||
"crash_page_switch_instance": "ha intentat <a href=\"`x`\">utilitzar una altra instància</a>",
|
||||
"crash_page_read_the_faq": "heu llegit les <a href=\"`x`\">Preguntes més freqüents (FAQ)</a>",
|
||||
"crash_page_search_issue": "ha cercat <a href=\"`x`\">problemes existents a GitHub</a>",
|
||||
"User ID is a required field": "L'identificador d'usuari és un camp obligatori",
|
||||
"Password is a required field": "La contrasenya és un camp obligatori",
|
||||
"Wrong username or password": "Nom d'usuari o contrasenya incorrectes",
|
||||
"Password cannot be longer than 55 characters": "La contrasenya no pot tenir més de 55 caràcters",
|
||||
"Invidious Private Feed for `x`": "Feed privat Invidious per a `x`",
|
||||
"generic_views_count": "{{count}} visualització",
|
||||
"generic_views_count_plural": "{{count}} visualitzacions",
|
||||
"generic_videos_count": "{{count}} vídeo",
|
||||
"generic_videos_count_plural": "{{count}} vídeos",
|
||||
"Token is expired, please try again": "El testimoni ha caducat, torna-ho a provar",
|
||||
"English": "Anglès",
|
||||
"Kannada": "Kanarès",
|
||||
"Erroneous token": "Testimoni erroni",
|
||||
"`x` ago": "fa `x`",
|
||||
"Empty playlist": "Llista de reproducció buida",
|
||||
"Playlist does not exist.": "La llista de reproducció no existeix.",
|
||||
"No such user": "No hi ha tal usuari",
|
||||
"Afrikaans": "Afrikàans",
|
||||
"Azerbaijani": "Azerbaidjana",
|
||||
"Cantonese (Hong Kong)": "Cantonès (Hong Kong)",
|
||||
"Chinese": "Xinès",
|
||||
"Chinese (China)": "Xinès (Xina)",
|
||||
"Chinese (Traditional)": "Xinès (Tradicional)",
|
||||
"Dutch": "Holandès",
|
||||
"Dutch (auto-generated)": "Holandès (generat automàticament)",
|
||||
"French (auto-generated)": "Francès (generat automàticament)",
|
||||
"Georgian": "Georgià",
|
||||
"German (auto-generated)": "Alemany (generat automàticament)",
|
||||
"Gujarati": "Gujarati",
|
||||
"Hawaiian": "Hawaià",
|
||||
"generic_count_years": "{{count}} any",
|
||||
"generic_count_years_plural": "{{count}} anys",
|
||||
"Popular": "Popular",
|
||||
"Rating: ": "Valoració: ",
|
||||
"permalink": "enllaç permanent",
|
||||
"preferences_quality_dash_option_worst": "Pitjor",
|
||||
"Yiddish": "Ídix",
|
||||
"preferences_quality_dash_option_auto": "Automàtic",
|
||||
"Western Frisian": "Frisó occidental",
|
||||
"Swedish": "Suec",
|
||||
"Only show latest unwatched video from channel: ": "Mostra només l'últim vídeo no vist del canal: ",
|
||||
"preferences_continue_label": "Reprodueix el següent per defecte: ",
|
||||
"Import YouTube subscriptions": "Importar subscripcions de YouTube",
|
||||
"search_filters_sort_option_rating": "Valoració",
|
||||
"preferences_thin_mode_label": "Mode prim: ",
|
||||
"preferences_quality_option_small": "Petit",
|
||||
"CAPTCHA enabled: ": "activa CAPTCHA: ",
|
||||
"Import and Export Data": "Importar i exportar dades",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"Popular enabled: ": "Activa popular: ",
|
||||
"Password": "Contrasenya",
|
||||
"Blacklisted regions: ": "Regions a la llista negra: ",
|
||||
"Register": "Registra't",
|
||||
"Shared `x` ago": "Compartit fa `x`",
|
||||
"search_filters_sort_option_views": "Recompte de visualitzacions",
|
||||
"Import Invidious data": "Importa dades JSON d'Invidious",
|
||||
"preferences_related_videos_label": "Mostra vídeos relacionats: ",
|
||||
"preferences_show_nick_label": "Mostra l'àlies a la part superior: ",
|
||||
"Time (h:mm:ss):": "Temps (h:mm:ss):",
|
||||
"Could not fetch comments": "No s'han pogut obtenir els comentaris",
|
||||
"New password": "Nova contrasenya",
|
||||
"preferences_notifications_only_label": "Mostra només notificacions (si n'hi ha): ",
|
||||
"preferences_annotations_label": "Mostra anotacions per defecte: ",
|
||||
"Import FreeTube subscriptions (.db)": "Importar subscripcions de FreeTube (.db)",
|
||||
"Fallback captions: ": "Subtítols alternatius: ",
|
||||
"Log out": "Tancar sessió",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"Unsubscribe": "Cancel·la la subscripció",
|
||||
"Log in/register": "Inicia sessió/registra't",
|
||||
"Nepali": "Nepalí",
|
||||
"Xhosa": "Xosa",
|
||||
"preferences_captions_label": "Subtítols per defecte: ",
|
||||
"preferences_autoplay_label": "Reproducció automàtica: ",
|
||||
"`x` is live": "`x` està en directe",
|
||||
"Uzbek": "Uzbek",
|
||||
"Hausa": "Haussa",
|
||||
"Bosnian": "Bosnià",
|
||||
"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! Sembla que tens JavaScript desactivat. Feu clic aquí per veure els comentaris, tingueu en compte que poden trigar una mica més a carregar-se.",
|
||||
"Password cannot be empty": "La contrasenya no pot estar buida",
|
||||
"preferences_video_loop_label": "Sempre en bucle: ",
|
||||
"preferences_quality_option_dash": "DASH (qualitat adaptativa)",
|
||||
"Change password": "Canvia la contrasenya",
|
||||
"Export data as JSON": "Exporta dades d'Invidious com a JSON",
|
||||
"Wrong answer": "Resposta incorrecta",
|
||||
"Clear watch history": "Neteja l'historial de reproduccions",
|
||||
"Mongolian": "Mongol",
|
||||
"preferences_quality_dash_option_best": "Millor",
|
||||
"Authorize token for `x`?": "Autoritzar testimoni per a `x`?",
|
||||
"Report statistics: ": "Estadístiques de l'informe: ",
|
||||
"Switch Invidious Instance": "Canvia la instància d'Invidious",
|
||||
"History": "Historial",
|
||||
"Portuguese (auto-generated)": "Portuguès (generat automàticament)",
|
||||
"footer_source_code": "Codi font",
|
||||
"videoinfo_youTube_embed_link": "Insereix",
|
||||
"generic_count_minutes": "{{count}} minut",
|
||||
"generic_count_minutes_plural": "{{count}} minuts",
|
||||
"preferences_category_player": "Preferències del reproductor",
|
||||
"Sign In": "Inicia Sessió",
|
||||
"preferences_continue_autoplay_label": "Reprodueix automàticament el següent vídeo: ",
|
||||
"generic_playlists_count": "{{count}} llista de reproducció",
|
||||
"generic_playlists_count_plural": "{{count}} llistes de reproducció",
|
||||
"Delete account?": "Esborrar compte?",
|
||||
"Please log in": "Si us plau inicieu sessió",
|
||||
"Import NewPipe data (.zip)": "Importar dades de NewPipe (.zip)",
|
||||
"Image CAPTCHA": "Imatge CAPTCHA",
|
||||
"channel_tab_streams_label": "Transmissions en directe",
|
||||
"preferences_category_misc": "Preferències diverses",
|
||||
"preferences_annotations_subscribed_label": "Mostra les anotacions per defecte dels canals subscrits? ",
|
||||
"Tajik": "Tadjik",
|
||||
"preferences_player_style_label": "Estil del reproductor: ",
|
||||
"Load more": "Carrega més",
|
||||
"preferences_vr_mode_label": "Vídeos interactius de 360 graus (requereix WebGL): ",
|
||||
"Manage subscriptions": "Gestionar les subscripcions",
|
||||
"preferences_quality_option_medium": "Mitjà",
|
||||
"Editing playlist `x`": "Editant la llista de reproducció `x`",
|
||||
"search_filters_duration_option_medium": "Mitjà (4 - 20 minuts)",
|
||||
"E-mail": "Correu electrònic",
|
||||
"Spanish (auto-generated)": "Castellà (generat automàticament)",
|
||||
"Export": "Exportar",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"JavaScript license information": "Informació de la llicència de JavaScript",
|
||||
"Hidden field \"token\" is a required field": "El camp ocult \"testimoni\" és un camp obligatori",
|
||||
"Shona": "Xona",
|
||||
"Family friendly? ": "Apte per a tots els públics? ",
|
||||
"preferences_quality_dash_label": "Qualitat de vídeo DASH preferida: ",
|
||||
"Hindi": "Hindi",
|
||||
"An alternative front-end to YouTube": "Una interfície alternativa a YouTube",
|
||||
"Export subscriptions as OPML": "Exporta subscripcions com a OPML",
|
||||
"Watch on YouTube": "Veure a YouTube",
|
||||
"Lao": "Laosià",
|
||||
"search_message_change_filters_or_query": "Proveu d'ampliar la vostra consulta de cerca i/o canviar els filtres.",
|
||||
"View YouTube comments": "Veure comentaris de YouTube",
|
||||
"New passwords must match": "Les contrasenyes noves han de coincidir",
|
||||
"Subscription manager": "Gestor de subscripcions",
|
||||
"Premieres in `x`": "Estrena en `x`",
|
||||
"youtube": "YouTube",
|
||||
"Latvian": "Letó",
|
||||
"LIVE": "EN VIU",
|
||||
"Could not create mix.": "No s'ha pogut crear la barreja.",
|
||||
"preferences_speed_label": "Velocitat per defecte: ",
|
||||
"preferences_extend_desc_label": "Amplieu automàticament la descripció del vídeo: ",
|
||||
"popular": "popular",
|
||||
"Erroneous challenge": "Repte erroni",
|
||||
"last": "darrer",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"Previous page": "Pàgina anterior",
|
||||
"Only show latest video from channel: ": "Mostra només l'últim vídeo del canal: ",
|
||||
"unsubscribe": "cancel·la la subscripció",
|
||||
"View playlist on YouTube": "Veure llista de reproducció a YouTube",
|
||||
"Import NewPipe subscriptions (.json)": "Importar subscripcions de NewPipe (.json)",
|
||||
"crash_page_you_found_a_bug": "Heu trobat un error a Invidious!",
|
||||
"Subscribe": "Subscriu-me",
|
||||
"generic_count_days": "{{count}} dia",
|
||||
"generic_count_days_plural": "{{count}} dies",
|
||||
"Trending": "Tendència",
|
||||
"Updated `x` ago": "Actualitzat fa `x`",
|
||||
"Haitian Creole": "Crioll Haitià",
|
||||
"preferences_watch_history_label": "Habilita historial de reproduccions: ",
|
||||
"generic_count_hours": "{{count}} hora",
|
||||
"generic_count_hours_plural": "{{count}} hores",
|
||||
"Malayalam": "Maialàiam",
|
||||
"Clear watch history?": "Neteja historial de reproduccions?",
|
||||
"Import/export data": "Importa/exporta dades",
|
||||
"Sinhala": "Singalès",
|
||||
"Delete playlist": "Eliminar llista de reproducció",
|
||||
"Bangla": "Bengalí",
|
||||
"Italian (auto-generated)": "Italià (generat automàticament)",
|
||||
"License: ": "Llicència: ",
|
||||
"(edited)": "(editat)",
|
||||
"Pashto": "Paixtu",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"revoke": "revocar",
|
||||
"English (United Kingdom)": "Anglès (Regne Unit)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"tokens_count": "{{count}} testimoni",
|
||||
"tokens_count_plural": "{{count}} testimonis",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notificació no vista",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notificacions no vistes",
|
||||
"generic_subscribers_count": "{{count}} subscriptor",
|
||||
"generic_subscribers_count_plural": "{{count}} subscriptors",
|
||||
"Sindhi": "Sindhi",
|
||||
"Slovenian": "Eslovè",
|
||||
"preferences_feed_menu_label": "Menú del feed: ",
|
||||
"Fallback comments: ": "Comentaris alternatius: ",
|
||||
"Top": "Millors",
|
||||
"preferences_max_results_label": "Nombre de vídeos mostrats al feed: ",
|
||||
"Engagement: ": "Atracció: ",
|
||||
"Redirect homepage to feed: ": "Redirigeix la pàgina d'inici al feed: ",
|
||||
"Standard YouTube license": "Llicència estàndard de YouTube",
|
||||
"Download is disabled": "Les baixades s'han inhabilitat",
|
||||
"Import YouTube playlist (.csv)": "Importar llista de reproducció de YouTube (.csv)",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"playlist_button_add_items": "Afegeix vídeos",
|
||||
"generic_button_save": "Desa",
|
||||
"generic_button_cancel": "Cancel·la",
|
||||
"channel_tab_releases_label": "Publicacions",
|
||||
"generic_channels_count": "{{count}} canal",
|
||||
"generic_channels_count_plural": "{{count}} canals",
|
||||
"generic_button_edit": "Edita",
|
||||
"generic_button_rss": "RSS",
|
||||
"generic_button_delete": "Suprimeix",
|
||||
"Import YouTube watch history (.json)": "Importa l'historial de visualitzacions de YouTube (.json)",
|
||||
"Answer": "Resposta",
|
||||
"toggle_theme": "Commuta el tema"
|
||||
}
|
||||
|
345
locales/cs.json
345
locales/cs.json
@ -1,6 +1,6 @@
|
||||
{
|
||||
"LIVE": "ŽIVĚ",
|
||||
"Shared `x` ago": "Sdíleno před `x`",
|
||||
"Shared `x` ago": "Zveřejněno před `x`",
|
||||
"Unsubscribe": "Odhlásit odběr",
|
||||
"Subscribe": "Odebírat",
|
||||
"View channel on YouTube": "Otevřít kanál na YouTube",
|
||||
@ -13,23 +13,22 @@
|
||||
"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",
|
||||
"New passwords must match": "Hesla se musí shodovat",
|
||||
"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 and Export Data": "Import a export dat",
|
||||
"Import": "Importovat",
|
||||
"Import Invidious data": "Importovat JSON údaje Invidious",
|
||||
"Import YouTube subscriptions": "Importovat odběry z YouTube CSV nebo OPML",
|
||||
"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",
|
||||
"Export data as JSON": "Exportovat data Invidious jako JSON",
|
||||
"Delete account?": "Smazat účet?",
|
||||
"History": "Historie",
|
||||
"An alternative front-end to YouTube": "Alternativní front-end pro YouTube",
|
||||
@ -37,8 +36,7 @@
|
||||
"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Č",
|
||||
"User ID": "ID uživatele",
|
||||
"Password": "Heslo",
|
||||
"Time (h:mm:ss):": "Čas (h:mm:ss):",
|
||||
"Text CAPTCHA": "Textové CAPTCHA",
|
||||
@ -46,24 +44,23 @@
|
||||
"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_label": "Automaticky přehrát další: ",
|
||||
"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_speed_label": "Výchozí 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: ",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Výchozí titulky: ",
|
||||
"Fallback captions: ": "Záložní titulky: ",
|
||||
"preferences_related_videos_label": "Zobrazit podobné videa: ",
|
||||
"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",
|
||||
@ -88,28 +85,28 @@
|
||||
"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í",
|
||||
"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",
|
||||
"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",
|
||||
"Manage tokens": "Spravovat tokeny",
|
||||
"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: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA povolena: ",
|
||||
"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íč",
|
||||
"Subscription manager": "Správa odběrů",
|
||||
"Token manager": "Správa tokenů",
|
||||
"Token": "Token",
|
||||
"Import/export": "Importovat/exportovat",
|
||||
"unsubscribe": "odhlásit odběr",
|
||||
"revoke": "vrátit zpět",
|
||||
@ -118,10 +115,10 @@
|
||||
"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ů.",
|
||||
"View privacy policy.": "Zobrazit zásady ochrany osobních údajů.",
|
||||
"Trending": "Trendy",
|
||||
"Public": "Veřejné",
|
||||
"Unlisted": "Nevypsáno",
|
||||
"Unlisted": "Neveřejné",
|
||||
"Private": "Soukromé",
|
||||
"View all playlists": "Zobrazit všechny playlisty",
|
||||
"Updated `x` ago": "Aktualizováno před `x`",
|
||||
@ -133,14 +130,14 @@
|
||||
"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",
|
||||
"Hide annotations": "Skrýt poznámky",
|
||||
"Show annotations": "Zobrazit poznámky",
|
||||
"Genre: ": "Žánr: ",
|
||||
"License: ": "Licence: ",
|
||||
"Family friendly? ": "Vhodné pro děti? ",
|
||||
"Engagement: ": "Závaznost: ",
|
||||
"Family friendly? ": "Vhodné pro rodiny? ",
|
||||
"Engagement: ": "Zapojení: ",
|
||||
"English": "Angličtina",
|
||||
"English (auto-generated)": "Angličtina (automaticky generováno)",
|
||||
"English (auto-generated)": "Angličtina (vytvořeno automaticky)",
|
||||
"Afrikaans": "Afrikánština",
|
||||
"Albanian": "Albánština",
|
||||
"Amharic": "Amharština",
|
||||
@ -260,29 +257,263 @@
|
||||
"`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"
|
||||
"channel_tab_videos_label": "Videa",
|
||||
"channel_tab_community_label": "Komunita",
|
||||
"search_filters_sort_option_rating": "Hodnocení",
|
||||
"search_filters_sort_option_date": "Datum nahrání",
|
||||
"search_filters_sort_option_views": "Počet zhlédnutí",
|
||||
"search_filters_duration_label": "Délka",
|
||||
"search_filters_date_option_hour": "Poslední hodina",
|
||||
"search_filters_date_option_today": "Dnes",
|
||||
"search_filters_date_option_week": "Tento týden",
|
||||
"search_filters_date_option_month": "Tento měsíc",
|
||||
"search_filters_date_option_year": "Tento rok",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanál",
|
||||
"search_filters_type_option_playlist": "Playlist",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Seriál",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Titulky",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Živě",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Umístění",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"generic_count_days_0": "{{count}} dnem",
|
||||
"generic_count_days_1": "{{count}} dny",
|
||||
"generic_count_days_2": "{{count}} dny",
|
||||
"generic_count_hours_0": "{{count}} hodinou",
|
||||
"generic_count_hours_1": "{{count}} hodinami",
|
||||
"generic_count_hours_2": "{{count}} hodinami",
|
||||
"crash_page_refresh": "zkusili <a href=\"`x`\">obnovit stránku</a>",
|
||||
"crash_page_switch_instance": "zkusili <a href=\"`x`\">použít jinou instanci</a>",
|
||||
"preferences_vr_mode_label": "Interaktivní 360-stupňová videa (vyžaduje WebGL): ",
|
||||
"English (United Kingdom)": "Angličtina (Spojené království)",
|
||||
"Chinese (China)": "Čínština (Čína)",
|
||||
"Chinese (Hong Kong)": "Čínština (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Čínština (Taiwan)",
|
||||
"Portuguese (auto-generated)": "Portugalština (vytvořeno automaticky)",
|
||||
"Spanish (auto-generated)": "Španělština (vytvořeno automaticky)",
|
||||
"Spanish (Mexico)": "Španělština (Mexiko)",
|
||||
"Spanish (Spain)": "Španělština (Španělsko)",
|
||||
"generic_count_years_0": "{{count}} rokem",
|
||||
"generic_count_years_1": "{{count}} lety",
|
||||
"generic_count_years_2": "{{count}} lety",
|
||||
"Fallback comments: ": "Záložní komentáře: ",
|
||||
"Search": "Hledat",
|
||||
"Top": "Nejlepší",
|
||||
"Playlists": "Playlisty",
|
||||
"videoinfo_started_streaming_x_ago": "Stream spuštěn před `x`",
|
||||
"videoinfo_watch_on_youTube": "Sledovat na YouTube",
|
||||
"videoinfo_youTube_embed_link": "Vložení",
|
||||
"crash_page_read_the_faq": "si přečetli <a href=\"`x`\">často kladené otázky (FAQ)</a>",
|
||||
"crash_page_before_reporting": "Před nahlášením chyby se ujistěte, že jste:",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_dash": "DASH (adaptivní kvalita)",
|
||||
"generic_views_count_0": "{{count}} zhlédnutí",
|
||||
"generic_views_count_1": "{{count}} zhlédnutí",
|
||||
"generic_views_count_2": "{{count}} zhlédnutí",
|
||||
"generic_subscriptions_count_0": "{{count}} odběr",
|
||||
"generic_subscriptions_count_1": "{{count}} odběry",
|
||||
"generic_subscriptions_count_2": "{{count}} odběrů",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} videa",
|
||||
"generic_videos_count_2": "{{count}} videí",
|
||||
"preferences_quality_option_small": "Nízká",
|
||||
"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_144p": "144p",
|
||||
"preferences_quality_option_medium": "Střední",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"invidious": "Invidious",
|
||||
"View more comments on Reddit": "Zobrazit více komentářů na Redditu",
|
||||
"generic_playlists_count_0": "{{count}} playlist",
|
||||
"generic_playlists_count_1": "{{count}} playlisty",
|
||||
"generic_playlists_count_2": "{{count}} playlistů",
|
||||
"generic_subscribers_count_0": "{{count}} odběratel",
|
||||
"generic_subscribers_count_1": "{{count}} odběratelé",
|
||||
"generic_subscribers_count_2": "{{count}} odběratelů",
|
||||
"preferences_watch_history_label": "Povolit historii sledování: ",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_region_label": "Země obsahu: ",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} nezobrazené oznámení",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} nezobrazená oznámení",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} nezobrazených oznámení",
|
||||
"Show replies": "Zobrazit odpovědi",
|
||||
"Password cannot be longer than 55 characters": "Heslo nesmí být delší než 55 znaků",
|
||||
"comments_view_x_replies_0": "Zobrazit {{count}} odpověď",
|
||||
"comments_view_x_replies_1": "Zobrazit {{count}} odpovědi",
|
||||
"comments_view_x_replies_2": "Zobrazit {{count}} odpovědí",
|
||||
"comments_points_count_0": "{{count}} bod",
|
||||
"comments_points_count_1": "{{count}} body",
|
||||
"comments_points_count_2": "{{count}} bodů",
|
||||
"German (auto-generated)": "Němčina (vytvořeno automaticky)",
|
||||
"Indonesian (auto-generated)": "Indonéština (vytvořeno automaticky)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Italian (auto-generated)": "Italština (vytvořeno automaticky)",
|
||||
"Japanese (auto-generated)": "Japonština (vytvořeno automaticky)",
|
||||
"Korean (auto-generated)": "Korejština (vytvořeno automaticky)",
|
||||
"Russian (auto-generated)": "Ruština (vytvořeno automaticky)",
|
||||
"generic_count_months_0": "{{count}} měsícem",
|
||||
"generic_count_months_1": "{{count}} měsíci",
|
||||
"generic_count_months_2": "{{count}} měsíci",
|
||||
"generic_count_weeks_0": "{{count}} týdnem",
|
||||
"generic_count_weeks_1": "{{count}} týdny",
|
||||
"generic_count_weeks_2": "{{count}} týdny",
|
||||
"generic_count_minutes_0": "{{count}} minutou",
|
||||
"generic_count_minutes_1": "{{count}} minutami",
|
||||
"generic_count_minutes_2": "{{count}} minutami",
|
||||
"footer_documentation": "Dokumentace",
|
||||
"next_steps_error_message_refresh": "Obnovit stránku",
|
||||
"Chinese": "Čínština",
|
||||
"Dutch (auto-generated)": "Nizozemština (vytvořeno automaticky)",
|
||||
"Erroneous token": "Chybný token",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"tokens_count_1": "{{count}} tokeny",
|
||||
"tokens_count_2": "{{count}} tokenů",
|
||||
"Portuguese (Brazil)": "Portugalština (Brazílie)",
|
||||
"Token is expired, please try again": "Token vypršel, zkuste to prosím znovu",
|
||||
"English (United States)": "Angličtina (Spojené státy)",
|
||||
"Cantonese (Hong Kong)": "Kantonština (Hong Kong)",
|
||||
"French (auto-generated)": "Francouzština (vytvořeno automaticky)",
|
||||
"Turkish (auto-generated)": "Turečtina (vytvořeno automaticky)",
|
||||
"Vietnamese (auto-generated)": "Vietnamština (vytvořeno automaticky)",
|
||||
"Current version: ": "Aktuální verze: ",
|
||||
"next_steps_error_message": "Měli byste zkusit: ",
|
||||
"footer_donate_page": "Přispět",
|
||||
"download_subtitles": "Titulky - `x` (.vtt)",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"YouTube comment permalink": "Permanentní odkaz YouTube komentáře",
|
||||
"permalink": "permalink",
|
||||
"footer_original_source_code": "Původní zdrojový kód",
|
||||
"adminprefs_modified_source_code_url_label": "URL repozitáře s upraveným zdrojovým kódem",
|
||||
"Video unavailable": "Video není dostupné",
|
||||
"next_steps_error_message_go_to_youtube": "Jít na YouTube",
|
||||
"footer_modfied_source_code": "Upravený zdrojový kód",
|
||||
"none": "žádné",
|
||||
"videoinfo_invidious_embed_link": "Odkaz na vložení",
|
||||
"user_saved_playlists": "`x` uložených playlistů",
|
||||
"crash_page_you_found_a_bug": "Vypadá to, že jste našli chybu v Invidious!",
|
||||
"user_created_playlists": "`x` vytvořených playlistů",
|
||||
"crash_page_search_issue": "vyhledali <a href=\"`x`\">existující problémy na GitHubu</a>",
|
||||
"crash_page_report_issue": "Pokud nepomohlo nic z výše uvedeného, <a href=\"`x`\">otevřete prosím nový problém na GitHubu</a> (pokud možno v angličtině) a zahrňte do zprávy následující text (NEpřekládejte jej):",
|
||||
"preferences_quality_dash_label": "Preferovaná kvalita videí DASH: ",
|
||||
"preferences_quality_dash_option_auto": "Automatická",
|
||||
"preferences_quality_dash_option_best": "Nejlepší",
|
||||
"preferences_quality_dash_option_worst": "Nejhorší",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"Top enabled: ": "Povoleny nejlepší: ",
|
||||
"generic_count_seconds_0": "{{count}} sekundou",
|
||||
"generic_count_seconds_1": "{{count}} sekundami",
|
||||
"generic_count_seconds_2": "{{count}} sekundami",
|
||||
"preferences_save_player_pos_label": "Uložit pozici přehrávání: ",
|
||||
"Incorrect password": "Nesprávné heslo",
|
||||
"View as playlist": "Zobrazit jako playlist",
|
||||
"View Reddit comments": "Zobrazit komentáře z Redditu",
|
||||
"No such user": "Uživatel nenalezen",
|
||||
"Playlist privacy": "Soukromí playlistu",
|
||||
"Wrong answer": "Špatná odpověď",
|
||||
"Could not pull trending pages.": "Nepodařilo se získat trendy stránky.",
|
||||
"Erroneous CAPTCHA": "Chybná CAPTCHA",
|
||||
"Password is a required field": "Heslo je vyžadované pole",
|
||||
"preferences_automatic_instance_redirect_label": "Automatické přesměrování instance (fallback na redirect.invidious.io): ",
|
||||
"Switch Invidious Instance": "Přepnout instanci Invidious",
|
||||
"Empty playlist": "Prázdný playlist",
|
||||
"footer_source_code": "Zdrojový kód",
|
||||
"View YouTube comments": "Zobrazit YouTube komentáře",
|
||||
"Blacklisted regions: ": "Oblasti na černé listině: ",
|
||||
"Wrong username or password": "Nesprávné uživatelské jméno nebo heslo",
|
||||
"Password cannot be empty": "Heslo nemůže být prázné",
|
||||
"preferences_category_misc": "Různá nastavení",
|
||||
"preferences_show_nick_label": "Zobrazit přezdívku na vrchu: ",
|
||||
"Whitelisted regions: ": "Oblasti na bílé listině: ",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Zdravíme! Zdá se, že máte vypnutý JavaScript. Klikněte sem pro zobrazení komentářů - nezapomeňte, že se mohou načítat trochu déle.",
|
||||
"User ID is a required field": "ID uživatele je vyžadované pole",
|
||||
"Please log in": "Přihlaste se prosím",
|
||||
"Invidious Private Feed for `x`": "Soukromý kanál Invidious pro `x`",
|
||||
"Deleted or invalid channel": "Smazaný nebo neplatný kanál",
|
||||
"This channel does not exist.": "Tento kanál neexistuje.",
|
||||
"Hidden field \"token\" is a required field": "Skryté pole \"token\" je vyžadované",
|
||||
"Wilson score: ": "Skóre Wilson: ",
|
||||
"Shared `x`": "Zveřejněno `x`",
|
||||
"Premieres in `x`": "Premiéra za `x`",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Zobrazit `x` komentář",
|
||||
"": "Zobrazit `x` komentářů"
|
||||
},
|
||||
"Could not get channel info.": "Nepodařilo se získat informace o kanálu.",
|
||||
"Could not fetch comments": "Nepodařilo se získat komentáře",
|
||||
"Could not create mix.": "Nepodařilo se vytvořit mix.",
|
||||
"Hidden field \"challenge\" is a required field": "Skryté pole \"challenge\" je vyžadované",
|
||||
"Released under the AGPLv3 on Github.": "Vydáno pod licencí AGPLv3 na GitHubu.",
|
||||
"Hide replies": "Skrýt odpovědi",
|
||||
"channel:`x`": "kanál: `x`",
|
||||
"Load more": "Načíst další",
|
||||
"Not a playlist.": "Není playlist.",
|
||||
"Playlist does not exist.": "Playlist neexistuje.",
|
||||
"Erroneous challenge": "Chybná výzva",
|
||||
"Premieres `x`": "Premiéra `x`",
|
||||
"CAPTCHA is a required field": "CAPTCHA je vyžadované pole",
|
||||
"`x` ago": "Před `x`",
|
||||
"search_message_change_filters_or_query": "Zkuste rozšířit vyhledávaný dotaz a/nebo změnit filtry.",
|
||||
"search_filters_date_option_none": "Jakékoli datum",
|
||||
"search_filters_date_label": "Datum nahrání",
|
||||
"search_filters_type_option_all": "Jakýkoli typ",
|
||||
"search_filters_duration_option_none": "Jakákoli délka",
|
||||
"search_filters_type_label": "Typ",
|
||||
"search_filters_duration_option_short": "Krátká (< 4 minuty)",
|
||||
"search_message_no_results": "Nenalezeny žádné výsledky.",
|
||||
"search_filters_title": "Filtry",
|
||||
"search_filters_duration_option_medium": "Střední (4 - 20 minut)",
|
||||
"search_filters_duration_option_long": "Dlouhá (> 20 minut)",
|
||||
"search_message_use_another_instance": "Můžete také <a href=\"`x`\">hledat na jiné instanci</a>.",
|
||||
"search_filters_features_label": "Vlastnosti",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_features_option_purchased": "Zakoupeno",
|
||||
"search_filters_sort_label": "Řadit dle",
|
||||
"search_filters_sort_option_relevance": "Relevantnost",
|
||||
"search_filters_apply_button": "Použít vybrané filtry",
|
||||
"Popular enabled: ": "Populární povoleno: ",
|
||||
"error_video_not_in_playlist": "Požadované video v tomto playlistu neexistuje. <a href=\"`x`\">Klikněte sem pro navštívení domovské stránky playlistu.</a>",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_playlists_label": "Playlisty",
|
||||
"channel_tab_channels_label": "Kanály",
|
||||
"channel_tab_streams_label": "Živé přenosy",
|
||||
"Music in this video": "Hudba v tomto videu",
|
||||
"Artist: ": "Umělec: ",
|
||||
"Album: ": "Album: ",
|
||||
"Channel Sponsor": "Sponzor kanálu",
|
||||
"Song: ": "Skladba: ",
|
||||
"Standard YouTube license": "Standardní licence YouTube",
|
||||
"Download is disabled": "Stahování je zakázáno",
|
||||
"Import YouTube playlist (.csv)": "Importovat YouTube playlist (.csv)",
|
||||
"generic_button_save": "Uložit",
|
||||
"generic_button_delete": "Odstranit",
|
||||
"generic_button_cancel": "Zrušit",
|
||||
"channel_tab_podcasts_label": "Podcasty",
|
||||
"channel_tab_releases_label": "Vydání",
|
||||
"generic_button_edit": "Upravit",
|
||||
"generic_button_rss": "RSS",
|
||||
"playlist_button_add_items": "Přidat videa",
|
||||
"generic_channels_count_0": "{{count}} kanál",
|
||||
"generic_channels_count_1": "{{count}} kanály",
|
||||
"generic_channels_count_2": "{{count}} kanálů",
|
||||
"Import YouTube watch history (.json)": "Importovat historii sledování z YouTube (.json)",
|
||||
"toggle_theme": "Přepnout motiv",
|
||||
"Add to playlist": "Přidat do playlistu",
|
||||
"Add to playlist: ": "Přidat do playlistu: ",
|
||||
"Answer": "Odpověď",
|
||||
"Search for videos": "Hledat videa",
|
||||
"The Popular feed has been disabled by the administrator.": "Kategorie Populární byla zakázána administrátorem.",
|
||||
"carousel_slide": "Snímek {{current}} z {{total}}",
|
||||
"carousel_skip": "Přeskočit galerii",
|
||||
"carousel_go_to": "Přejít na snímek `x`",
|
||||
"preferences_preload_label": "Předem načíst data videa: ",
|
||||
"Filipino (auto-generated)": "Filipínština (vytvořeno automaticky)"
|
||||
}
|
||||
|
385
locales/cy.json
Normal file
385
locales/cy.json
Normal file
@ -0,0 +1,385 @@
|
||||
{
|
||||
"Time (h:mm:ss):": "Amser (h:mm:ss):",
|
||||
"Password": "Cyfrinair",
|
||||
"preferences_quality_dash_option_auto": "Awtomatig",
|
||||
"preferences_quality_dash_option_best": "Gorau",
|
||||
"preferences_quality_dash_option_worst": "Gwaethaf",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"published": "dyddiad cyhoeddi",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_comments_label": "Ffynhonnell sylwadau: ",
|
||||
"preferences_captions_label": "Isdeitlau rhagosodedig: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"Fallback captions: ": "Isdeitlau amgen: ",
|
||||
"preferences_related_videos_label": "Dangos fideos perthnasol: ",
|
||||
"dark": "tywyll",
|
||||
"preferences_dark_mode_label": "Thema: ",
|
||||
"light": "golau",
|
||||
"preferences_sort_label": "Trefnu fideo yn ôl: ",
|
||||
"Import/export data": "Mewnforio/allforio data",
|
||||
"Delete account": "Dileu eich cyfrif",
|
||||
"preferences_category_admin": "Hoffterau gweinyddu",
|
||||
"playlist_button_add_items": "Ychwanegu fideos",
|
||||
"Delete playlist": "Dileu'r rhestr chwarae",
|
||||
"Create playlist": "Creu rhestr chwarae",
|
||||
"Show less": "Dangos llai",
|
||||
"Show more": "Dangos rhagor",
|
||||
"Watch on YouTube": "Gwylio ar YouTube",
|
||||
"search_message_no_results": "Dim canlyniadau.",
|
||||
"search_message_change_filters_or_query": "Ceisiwch ehangu eich chwiliad ac/neu newid yr hidlyddion.",
|
||||
"License: ": "Trwydded: ",
|
||||
"Standard YouTube license": "Trwydded safonol YouTube",
|
||||
"Family friendly? ": "Addas i bawb? ",
|
||||
"Wilson score: ": "Sgôr Wilson: ",
|
||||
"Show replies": "Dangos ymatebion",
|
||||
"Music in this video": "Cerddoriaeth yn y fideo hwn",
|
||||
"Artist: ": "Artist: ",
|
||||
"Erroneous CAPTCHA": "CAPTCHA anghywir",
|
||||
"This channel does not exist.": "Dyw'r sianel hon ddim yn bodoli.",
|
||||
"Not a playlist.": "Ddim yn rhestr chwarae.",
|
||||
"Could not fetch comments": "Wedi methu llwytho sylwadau",
|
||||
"Playlist does not exist.": "Dyw'r rhestr chwarae ddim yn bodoli.",
|
||||
"Erroneous challenge": "Her annilys",
|
||||
"channel_tab_podcasts_label": "Podlediadau",
|
||||
"channel_tab_playlists_label": "Rhestrau chwarae",
|
||||
"channel_tab_streams_label": "Fideos byw",
|
||||
"crash_page_read_the_faq": "darllen y <a href=\"`x`\">cwestiynau cyffredin</a>",
|
||||
"crash_page_switch_instance": "ceisio <a href=\"`x`\">defnyddio gweinydd arall</a>",
|
||||
"crash_page_refresh": "ceisio <a href=\"`x`\">ail-lwytho'r dudalen</a>",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_label": "Nodweddion",
|
||||
"search_filters_duration_option_medium": "Canolig (4 - 20 munud)",
|
||||
"search_filters_features_option_live": "Yn fyw",
|
||||
"search_filters_duration_option_long": "Hir (> 20 munud)",
|
||||
"search_filters_date_option_year": "Eleni",
|
||||
"search_filters_type_label": "Math",
|
||||
"search_filters_date_option_month": "Y mis hwn",
|
||||
"generic_views_count_0": "{{count}} o wyliadau",
|
||||
"generic_views_count_1": "{{count}} gwyliad",
|
||||
"generic_views_count_2": "{{count}} wyliad",
|
||||
"generic_views_count_3": "{{count}} o wyliadau",
|
||||
"generic_views_count_4": "{{count}} o wyliadau",
|
||||
"generic_views_count_5": "{{count}} o wyliadau",
|
||||
"Answer": "Ateb",
|
||||
"Add to playlist: ": "Ychwanegu at y rhestr chwarae: ",
|
||||
"Add to playlist": "Ychwanegu at y rhestr chwarae",
|
||||
"generic_button_cancel": "Diddymu",
|
||||
"generic_button_rss": "RSS",
|
||||
"LIVE": "YN FYW",
|
||||
"Import YouTube watch history (.json)": "Mewnforio hanes gwylio YouTube (.json)",
|
||||
"generic_videos_count_0": "{{count}} fideo",
|
||||
"generic_videos_count_1": "{{count}} fideo",
|
||||
"generic_videos_count_2": "{{count}} fideo",
|
||||
"generic_videos_count_3": "{{count}} fideo",
|
||||
"generic_videos_count_4": "{{count}} fideo",
|
||||
"generic_videos_count_5": "{{count}} fideo",
|
||||
"generic_subscribers_count_0": "{{count}} tanysgrifiwr",
|
||||
"generic_subscribers_count_1": "{{count}} tanysgrifiwr",
|
||||
"generic_subscribers_count_2": "{{count}} danysgrifiwr",
|
||||
"generic_subscribers_count_3": "{{count}} thanysgrifiwr",
|
||||
"generic_subscribers_count_4": "{{count}} o danysgrifwyr",
|
||||
"generic_subscribers_count_5": "{{count}} o danysgrifwyr",
|
||||
"Authorize token?": "Awdurdodi'r tocyn?",
|
||||
"Authorize token for `x`?": "Awdurdodi'r tocyn ar gyfer `x`?",
|
||||
"English": "Saesneg",
|
||||
"English (United Kingdom)": "Saesneg (Y Deyrnas Unedig)",
|
||||
"English (United States)": "Saesneg (Yr Unol Daleithiau)",
|
||||
"Afrikaans": "Affricaneg",
|
||||
"English (auto-generated)": "Saesneg (awtomatig)",
|
||||
"Amharic": "Amhareg",
|
||||
"Albanian": "Albaneg",
|
||||
"Arabic": "Arabeg",
|
||||
"crash_page_report_issue": "Os nad yw'r awgrymiadau uchod wedi helpu, <a href=\"`x`\">codwch 'issue' newydd ar Github </a> (yn Saesneg, gorau oll) a chynnwys y testun canlynol yn eich neges (peidiwch â chyfieithu'r testun hwn):",
|
||||
"Search for videos": "Chwilio am fideos",
|
||||
"The Popular feed has been disabled by the administrator.": "Mae'r ffrwd fideos poblogaidd wedi ei hanalluogi gan y gweinyddwr.",
|
||||
"generic_channels_count_0": "{{count}} sianel",
|
||||
"generic_channels_count_1": "{{count}} sianel",
|
||||
"generic_channels_count_2": "{{count}} sianel",
|
||||
"generic_channels_count_3": "{{count}} sianel",
|
||||
"generic_channels_count_4": "{{count}} sianel",
|
||||
"generic_channels_count_5": "{{count}} sianel",
|
||||
"generic_button_delete": "Dileu",
|
||||
"generic_button_edit": "Golygu",
|
||||
"generic_button_save": "Cadw",
|
||||
"Shared `x` ago": "Rhannwyd `x` yn ôl",
|
||||
"Unsubscribe": "Dad-danysgrifio",
|
||||
"Subscribe": "Tanysgrifio",
|
||||
"View channel on YouTube": "Gweld y sianel ar YouTube",
|
||||
"View playlist on YouTube": "Gweld y rhestr chwarae ar YouTube",
|
||||
"newest": "diweddaraf",
|
||||
"oldest": "hynaf",
|
||||
"popular": "poblogaidd",
|
||||
"Next page": "Tudalen nesaf",
|
||||
"Previous page": "Tudalen flaenorol",
|
||||
"Clear watch history?": "Clirio'ch hanes gwylio?",
|
||||
"New password": "Cyfrinair newydd",
|
||||
"Import and Export Data": "Mewnforio ac allforio data",
|
||||
"Import": "Mewnforio",
|
||||
"Import Invidious data": "Mewnforio data JSON Invidious",
|
||||
"Import YouTube subscriptions": "Mewnforio tanysgrifiadau YouTube ar fformat CSV neu OPML",
|
||||
"Import YouTube playlist (.csv)": "Mewnforio rhestr chwarae YouTube (.csv)",
|
||||
"Export": "Allforio",
|
||||
"Export data as JSON": "Allforio data Invidious ar fformat JSON",
|
||||
"Delete account?": "Ydych chi'n siŵr yr hoffech chi ddileu eich cyfrif?",
|
||||
"History": "Hanes",
|
||||
"JavaScript license information": "Gwybodaeth am y drwydded JavaScript",
|
||||
"generic_subscriptions_count_0": "{{count}} tanysgrifiad",
|
||||
"generic_subscriptions_count_1": "{{count}} tanysgrifiad",
|
||||
"generic_subscriptions_count_2": "{{count}} danysgrifiad",
|
||||
"generic_subscriptions_count_3": "{{count}} thanysgrifiad",
|
||||
"generic_subscriptions_count_4": "{{count}} o danysgrifiadau",
|
||||
"generic_subscriptions_count_5": "{{count}} o danysgrifiadau",
|
||||
"Yes": "Iawn",
|
||||
"No": "Na",
|
||||
"Import FreeTube subscriptions (.db)": "Mewnforio tanysgrifiadau FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Mewnforio tanysgrifiadau NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Mewnforio data NewPipe (.zip)",
|
||||
"An alternative front-end to YouTube": "Pen blaen amgen i YouTube",
|
||||
"source": "ffynhonnell",
|
||||
"Log in": "Mewngofnodi",
|
||||
"Log in/register": "Mewngofnodi/Cofrestru",
|
||||
"User ID": "Enw defnyddiwr",
|
||||
"preferences_quality_option_dash": "DASH (ansawdd addasol)",
|
||||
"Sign In": "Mewngofnodi",
|
||||
"Register": "Cofrestru",
|
||||
"E-mail": "Ebost",
|
||||
"Preferences": "Hoffterau",
|
||||
"preferences_category_player": "Hoffterau'r chwaraeydd",
|
||||
"preferences_autoplay_label": "Chwarae'n awtomatig: ",
|
||||
"preferences_local_label": "Llwytho fideos drwy ddirprwy weinydd: ",
|
||||
"preferences_watch_history_label": "Galluogi hanes gwylio: ",
|
||||
"preferences_speed_label": "Cyflymder rhagosodedig: ",
|
||||
"preferences_quality_label": "Ansawdd fideos: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Canolig",
|
||||
"preferences_quality_option_small": "Bach",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"invidious": "Invidious",
|
||||
"Text CAPTCHA": "CAPTCHA testun",
|
||||
"Image CAPTCHA": "CAPTCHA delwedd",
|
||||
"preferences_continue_label": "Chwarae'r fideo nesaf fel rhagosodiad: ",
|
||||
"preferences_continue_autoplay_label": "Chwarae'r fideo nesaf yn awtomatig: ",
|
||||
"preferences_listen_label": "Sain yn unig: ",
|
||||
"preferences_quality_dash_label": "Ansawdd fideos DASH a ffefrir: ",
|
||||
"preferences_volume_label": "Uchder sain y chwaraeydd: ",
|
||||
"preferences_category_visual": "Hoffterau'r wefan",
|
||||
"preferences_region_label": "Gwlad y cynnwys: ",
|
||||
"preferences_player_style_label": "Arddull y chwaraeydd: ",
|
||||
"Dark mode: ": "Modd tywyll: ",
|
||||
"preferences_thin_mode_label": "Modd tenau: ",
|
||||
"preferences_category_misc": "Hoffterau amrywiol",
|
||||
"preferences_category_subscription": "Hoffterau tanysgrifio",
|
||||
"preferences_max_results_label": "Nifer o fideos a ddangosir yn eich ffrwd: ",
|
||||
"alphabetically": "yr wyddor",
|
||||
"alphabetically - reverse": "yr wyddor - am yn ôl",
|
||||
"published - reverse": "dyddiad cyhoeddi - am yn ôl",
|
||||
"channel name": "enw'r sianel",
|
||||
"channel name - reverse": "enw'r sianel - am yn ôl",
|
||||
"Only show latest video from channel: ": "Dangos fideo diweddaraf y sianeli rydych chi'n tanysgrifio iddynt: ",
|
||||
"Only show latest unwatched video from channel: ": "Dangos fideo heb ei wylio diweddaraf y sianeli rydych chi'n tanysgrifio iddynt: ",
|
||||
"Enable web notifications": "Galluogi hysbysiadau gwe",
|
||||
"`x` uploaded a video": "uwchlwythodd `x` fideo",
|
||||
"`x` is live": "mae `x` yn darlledu'n fyw",
|
||||
"preferences_category_data": "Hoffterau data",
|
||||
"Clear watch history": "Clirio'ch hanes gwylio",
|
||||
"Change password": "Newid eich cyfrinair",
|
||||
"Manage subscriptions": "Rheoli tanysgrifiadau",
|
||||
"Manage tokens": "Rheoli tocynnau",
|
||||
"Watch history": "Hanes gwylio",
|
||||
"preferences_default_home_label": "Hafan ragosodedig: ",
|
||||
"preferences_show_nick_label": "Dangos eich enw defnyddiwr ar frig y dudalen: ",
|
||||
"preferences_annotations_label": "Dangos nodiadau fel rhagosodiad: ",
|
||||
"preferences_unseen_only_label": "Dangos fideos heb eu gwylio yn unig: ",
|
||||
"preferences_notifications_only_label": "Dangos hysbysiadau yn unig (os oes unrhyw rai): ",
|
||||
"Token manager": "Rheolydd tocynnau",
|
||||
"Token": "Tocyn",
|
||||
"unsubscribe": "dad-danysgrifio",
|
||||
"Subscriptions": "Tanysgrifiadau",
|
||||
"Import/export": "Mewngofnodi/allgofnodi",
|
||||
"search": "chwilio",
|
||||
"Log out": "Allgofnodi",
|
||||
"View privacy policy.": "Polisi preifatrwydd",
|
||||
"Trending": "Pynciau llosg",
|
||||
"Public": "Cyhoeddus",
|
||||
"Private": "Preifat",
|
||||
"Updated `x` ago": "Diweddarwyd `x` yn ôl",
|
||||
"Delete playlist `x`?": "Ydych chi'n siŵr yr hoffech chi ddileu'r rhestr chwarae `x`?",
|
||||
"Title": "Teitl",
|
||||
"Playlist privacy": "Preifatrwydd y rhestr chwarae",
|
||||
"search_message_use_another_instance": " Gallwch hefyd <a href=\"`x`\">chwilio ar weinydd arall</a>.",
|
||||
"Popular enabled: ": "Tudalen fideos poblogaidd wedi'i galluogi: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA wedi'i alluogi: ",
|
||||
"Registration enabled: ": "Cofrestru wedi'i alluogi: ",
|
||||
"Save preferences": "Cadw'r hoffterau",
|
||||
"Subscription manager": "Rheolydd tanysgrifio",
|
||||
"revoke": "tynnu",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} hysbysiad heb ei weld",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} hysbysiad heb ei weld",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} hysbysiad heb eu gweld",
|
||||
"subscriptions_unseen_notifs_count_3": "{{count}} hysbysiad heb eu gweld",
|
||||
"subscriptions_unseen_notifs_count_4": "{{count}} hysbysiad heb eu gweld",
|
||||
"subscriptions_unseen_notifs_count_5": "{{count}} hysbysiad heb eu gweld",
|
||||
"Released under the AGPLv3 on Github.": "Cyhoeddwyd dan drwydded AGPLv3 ar GitHub",
|
||||
"Unlisted": "Heb ei restru",
|
||||
"Switch Invidious Instance": "Newid gweinydd Invidious",
|
||||
"Report statistics: ": "Galluogi ystadegau'r gweinydd: ",
|
||||
"View all playlists": "Gweld pob rhestr chwarae",
|
||||
"Editing playlist `x`": "Yn golygu'r rhestr chwarae `x`",
|
||||
"Whitelisted regions: ": "Rhanbarthau a ganiateir: ",
|
||||
"Blacklisted regions: ": "Rhanbarthau a rwystrir: ",
|
||||
"Song: ": "Cân: ",
|
||||
"Album: ": "Albwm: ",
|
||||
"Shared `x`": "Rhannwyd `x`",
|
||||
"View YouTube comments": "Dangos sylwadau YouTube",
|
||||
"View more comments on Reddit": "Dangos rhagor o sylwadau ar Reddit",
|
||||
"View Reddit comments": "Dangos sylwadau Reddit",
|
||||
"Hide replies": "Cuddio ymatebion",
|
||||
"Incorrect password": "Cyfrinair anghywir",
|
||||
"Wrong answer": "Ateb anghywir",
|
||||
"CAPTCHA is a required field": "Rhaid rhoi'r CAPTCHA",
|
||||
"User ID is a required field": "Rhaid rhoi enw defnyddiwr",
|
||||
"Password is a required field": "Rhaid rhoi cyfrinair",
|
||||
"Wrong username or password": "Enw defnyddiwr neu gyfrinair anghywir",
|
||||
"Password cannot be empty": "All y cyfrinair ddim bod yn wag",
|
||||
"Password cannot be longer than 55 characters": "All y cyfrinair ddim bod yn hirach na 55 nod",
|
||||
"Please log in": "Mewngofnodwch",
|
||||
"channel:`x`": "sianel: `x`",
|
||||
"Deleted or invalid channel": "Sianel wedi'i dileu neu'n annilys",
|
||||
"Could not get channel info.": "Wedi methu llwytho gwybodaeth y sianel.",
|
||||
"`x` ago": "`x` yn ôl",
|
||||
"Load more": "Llwytho rhagor",
|
||||
"Empty playlist": "Rhestr chwarae wag",
|
||||
"Hide annotations": "Cuddio nodiadau",
|
||||
"Show annotations": "Dangos nodiadau",
|
||||
"Premieres in `x`": "Yn dechrau mewn `x`",
|
||||
"Premieres `x`": "Yn dechrau `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.": "Helo! Mae'n ymddangos eich bod wedi diffodd JavaScript. Cliciwch yma i weld sylwadau, ond cofiwch y gall gymryd mwy o amser i'w llwytho.",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Gweld `x` sylw",
|
||||
"": "Gweld `x` sylw"
|
||||
},
|
||||
"Could not create mix.": "Wedi methu creu'r cymysgiad hwn.",
|
||||
"Erroneous token": "Tocyn annilys",
|
||||
"No such user": "Dyw'r defnyddiwr hwn ddim yn bodoli",
|
||||
"Token is expired, please try again": "Mae'r tocyn hwn wedi dod i ben, ceisiwch eto",
|
||||
"Bangla": "Bangleg",
|
||||
"Basque": "Basgeg",
|
||||
"Bulgarian": "Bwlgareg",
|
||||
"Catalan": "Catalaneg",
|
||||
"Chinese": "Tsieineeg",
|
||||
"Chinese (China)": "Tsieineeg (Tsieina)",
|
||||
"Chinese (Hong Kong)": "Tsieineeg (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Tsieineeg (Taiwan)",
|
||||
"Danish": "Daneg",
|
||||
"Dutch": "Iseldireg",
|
||||
"Esperanto": "Esperanteg",
|
||||
"Finnish": "Ffinneg",
|
||||
"French": "Ffrangeg",
|
||||
"German": "Almaeneg",
|
||||
"Greek": "Groeg",
|
||||
"Could not pull trending pages.": "Wedi methu llwytho tudalennau pynciau llosg.",
|
||||
"Hidden field \"challenge\" is a required field": "Mae'r maes cudd \"her\" yn ofynnol",
|
||||
"Hidden field \"token\" is a required field": "Mae'r maes cudd \"tocyn\" yn ofynnol",
|
||||
"Hebrew": "Hebraeg",
|
||||
"Hungarian": "Hwngareg",
|
||||
"Irish": "Gwyddeleg",
|
||||
"Italian": "Eidaleg",
|
||||
"Welsh": "Cymraeg",
|
||||
"generic_count_hours_0": "{{count}} awr",
|
||||
"generic_count_hours_1": "{{count}} awr",
|
||||
"generic_count_hours_2": "{{count}} awr",
|
||||
"generic_count_hours_3": "{{count}} awr",
|
||||
"generic_count_hours_4": "{{count}} awr",
|
||||
"generic_count_hours_5": "{{count}} awr",
|
||||
"generic_count_minutes_0": "{{count}} munud",
|
||||
"generic_count_minutes_1": "{{count}} munud",
|
||||
"generic_count_minutes_2": "{{count}} funud",
|
||||
"generic_count_minutes_3": "{{count}} munud",
|
||||
"generic_count_minutes_4": "{{count}} o funudau",
|
||||
"generic_count_minutes_5": "{{count}} o funudau",
|
||||
"generic_count_weeks_0": "{{count}} wythnos",
|
||||
"generic_count_weeks_1": "{{count}} wythnos",
|
||||
"generic_count_weeks_2": "{{count}} wythnos",
|
||||
"generic_count_weeks_3": "{{count}} wythnos",
|
||||
"generic_count_weeks_4": "{{count}} wythnos",
|
||||
"generic_count_weeks_5": "{{count}} wythnos",
|
||||
"generic_count_seconds_0": "{{count}} eiliad",
|
||||
"generic_count_seconds_1": "{{count}} eiliad",
|
||||
"generic_count_seconds_2": "{{count}} eiliad",
|
||||
"generic_count_seconds_3": "{{count}} eiliad",
|
||||
"generic_count_seconds_4": "{{count}} o eiliadau",
|
||||
"generic_count_seconds_5": "{{count}} o eiliadau",
|
||||
"Fallback comments: ": "Sylwadau amgen: ",
|
||||
"Popular": "Poblogaidd",
|
||||
"preferences_locale_label": "Iaith: ",
|
||||
"About": "Ynghylch",
|
||||
"Search": "Chwilio",
|
||||
"search_filters_features_option_c_commons": "Comin Creu",
|
||||
"search_filters_features_option_subtitles": "Isdeitlau (CC)",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"permalink": "dolen barhaol",
|
||||
"search_filters_duration_option_short": "Byr (< 4 munud)",
|
||||
"search_filters_duration_option_none": "Unrhyw hyd",
|
||||
"search_filters_duration_label": "Hyd",
|
||||
"search_filters_type_option_show": "Rhaglen",
|
||||
"search_filters_type_option_movie": "Ffilm",
|
||||
"search_filters_type_option_playlist": "Rhestr chwarae",
|
||||
"search_filters_type_option_channel": "Sianel",
|
||||
"search_filters_type_option_video": "Fideo",
|
||||
"search_filters_type_option_all": "Unrhyw fath",
|
||||
"search_filters_date_option_week": "Yr wythnos hon",
|
||||
"search_filters_date_option_today": "Heddiw",
|
||||
"search_filters_date_option_hour": "Yr awr ddiwethaf",
|
||||
"search_filters_date_option_none": "Unrhyw ddyddiad",
|
||||
"search_filters_date_label": "Dyddiad uwchlwytho",
|
||||
"search_filters_title": "Hidlyddion",
|
||||
"Playlists": "Rhestrau chwarae",
|
||||
"Video mode": "Modd fideo",
|
||||
"Audio mode": "Modd sain",
|
||||
"Channel Sponsor": "Noddwr y sianel",
|
||||
"(edited)": "(golygwyd)",
|
||||
"Download": "Islwytho",
|
||||
"Movies": "Ffilmiau",
|
||||
"News": "Newyddion",
|
||||
"Gaming": "Gemau",
|
||||
"Music": "Cerddoriaeth",
|
||||
"Download is disabled": "Mae islwytho wedi'i analluogi",
|
||||
"Download as: ": "Islwytho fel: ",
|
||||
"View as playlist": "Gweld fel rhestr chwarae",
|
||||
"Default": "Rhagosodiad",
|
||||
"YouTube comment permalink": "Dolen barhaol i'r sylw ar YouTube",
|
||||
"crash_page_before_reporting": "Cyn adrodd nam, sicrhewch eich bod wedi:",
|
||||
"crash_page_search_issue": "<a href=\"`x`\">chwilio am y nam ar GitHub</a>",
|
||||
"videoinfo_watch_on_youTube": "Gwylio ar YouTube",
|
||||
"videoinfo_started_streaming_x_ago": "Yn ffrydio'n fyw ers `x` o funudau",
|
||||
"videoinfo_invidious_embed_link": "Dolen mewnblannu",
|
||||
"footer_documentation": "Dogfennaeth",
|
||||
"footer_donate_page": "Rhoddi",
|
||||
"Current version: ": "Fersiwn gyfredol: ",
|
||||
"search_filters_apply_button": "Rhoi'r hidlyddion ar waith",
|
||||
"search_filters_sort_option_date": "Dyddiad uwchlwytho",
|
||||
"search_filters_sort_option_relevance": "Perthnasedd",
|
||||
"search_filters_sort_label": "Trefnu yn ôl",
|
||||
"search_filters_features_option_location": "Lleoliad",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"videoinfo_youTube_embed_link": "Mewnblannu",
|
||||
"download_subtitles": "Isdeitlau - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` rhestr chwarae wedi'u creu",
|
||||
"user_saved_playlists": "`x` rhestr chwarae wedi'u cadw",
|
||||
"Video unavailable": "Fideo ddim ar gael",
|
||||
"crash_page_you_found_a_bug": "Mae'n debyg eich bod wedi dod o hyd i nam yn Invidious!",
|
||||
"channel_tab_channels_label": "Sianeli",
|
||||
"channel_tab_community_label": "Cymuned",
|
||||
"channel_tab_shorts_label": "Fideos byrion",
|
||||
"channel_tab_videos_label": "Fideos"
|
||||
}
|
191
locales/da.json
191
locales/da.json
@ -14,22 +14,21 @@
|
||||
"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 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)",
|
||||
"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",
|
||||
"Export data as JSON": "Eksporter Invidious-data som JSON",
|
||||
"Delete account?": "Slet konto?",
|
||||
"History": "Historik",
|
||||
"An alternative front-end to YouTube": "Et alternativt front-end til YouTube",
|
||||
@ -37,7 +36,6 @@
|
||||
"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):",
|
||||
@ -46,7 +44,6 @@
|
||||
"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: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"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_vr_mode_label": "Interaktive 360 graders videoer (kræver WebGL): ",
|
||||
"preferences_category_visual": "Visuelle præferencer",
|
||||
"preferences_player_style_label": "Afspiller stil: ",
|
||||
"Dark mode: ": "Mørk tilstand: ",
|
||||
@ -159,26 +156,21 @@
|
||||
"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'",
|
||||
"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",
|
||||
"`x` ago": "`x` siden",
|
||||
"Load more": "Hent flere",
|
||||
"Could not create mix.": "Kunne ikke skabe blanding.",
|
||||
"Empty playlist": "Tom playliste",
|
||||
@ -187,7 +179,7 @@
|
||||
"Esperanto": "Esperanto",
|
||||
"Czech": "Tjekkisk",
|
||||
"Danish": "Dansk",
|
||||
"Community": "Samfund",
|
||||
"channel_tab_community_label": "Samfund",
|
||||
"Afrikaans": "Afrikansk",
|
||||
"Portuguese": "Portugisisk",
|
||||
"Ukrainian": "Ukrainsk",
|
||||
@ -202,7 +194,7 @@
|
||||
"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",
|
||||
"search_filters_features_option_live": "Direkte",
|
||||
"Lao": "Lao-tse",
|
||||
"Filipino": "Filippinsk",
|
||||
"Greek": "Græsk",
|
||||
@ -213,23 +205,22 @@
|
||||
"preferences_locale_label": "Sprog: ",
|
||||
"News": "Nyheder",
|
||||
"permalink": "permalink",
|
||||
"date": "Upload dato",
|
||||
"features": "Funktioner",
|
||||
"filter": "Filter",
|
||||
"search_filters_sort_option_date": "Upload dato",
|
||||
"search_filters_features_label": "Funktioner",
|
||||
"Khmer": "Khmer",
|
||||
"Finnish": "Finsk",
|
||||
"week": "Denne uge",
|
||||
"search_filters_date_option_week": "Denne uge",
|
||||
"Korean": "Koreansk",
|
||||
"Telugu": "Telugu",
|
||||
"Malayalam": "Malayalam",
|
||||
"View as playlist": "Se som spilleliste",
|
||||
"Hungarian": "Ungarsk",
|
||||
"Welsh": "Walisisk",
|
||||
"subtitles": "Undertekster/CC",
|
||||
"search_filters_features_option_subtitles": "Undertekster/CC",
|
||||
"Bosnian": "Bosnisk",
|
||||
"Yiddish": "Jiddisch",
|
||||
"Belarusian": "Belarussisk",
|
||||
"today": "I dag",
|
||||
"search_filters_date_option_today": "I dag",
|
||||
"Shona": "Shona",
|
||||
"Slovenian": "Slovensk",
|
||||
"Gaming": "Gaming",
|
||||
@ -246,35 +237,35 @@
|
||||
"footer_documentation": "Dokumentation",
|
||||
"Pashto": "Pashto",
|
||||
"footer_modfied_source_code": "Modificeret Kildekode",
|
||||
"Released under the AGPLv3 on Github.": "Udgivet under AGPLv3 på Github.",
|
||||
"Released under the AGPLv3 on Github.": "Udgivet under AGPLv3 på GitHub.",
|
||||
"Tajik": "Tadsjikisk",
|
||||
"month": "Denne måned",
|
||||
"search_filters_date_option_month": "Denne måned",
|
||||
"Hebrew": "Hebraisk",
|
||||
"Kannada": "Kannada",
|
||||
"Current version: ": "Nuværende version: ",
|
||||
"Amharic": "Amharisk",
|
||||
"Swedish": "Svensk",
|
||||
"Corsican": "Korsikansk",
|
||||
"movie": "Film",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"Could not pull trending pages.": "Kunne ikke hente trending sider.",
|
||||
"English": "Engelsk",
|
||||
"hd": "HD",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"Hausa": "Islandsk",
|
||||
"year": "Dette år",
|
||||
"search_filters_date_option_year": "Dette år",
|
||||
"Japanese": "Japansk",
|
||||
"content_type": "Type",
|
||||
"search_filters_type_label": "Type",
|
||||
"Icelandic": "Islandsk",
|
||||
"Basque": "Baskisk",
|
||||
"rating": "Bedømmelse",
|
||||
"search_filters_sort_option_rating": "Bedømmelse",
|
||||
"Yoruba": "Yoruba",
|
||||
"Erroneous token": "Fejlagtig token",
|
||||
"Videos": "Videoer",
|
||||
"show": "Vis",
|
||||
"channel_tab_videos_label": "Videoer",
|
||||
"search_filters_type_option_show": "Vis",
|
||||
"Luxembourgish": "Luxemboursk",
|
||||
"Vietnamese": "Vietnamesisk",
|
||||
"Latvian": "Lettisk",
|
||||
"Indonesian": "Indonesisk",
|
||||
"duration": "Varighed",
|
||||
"search_filters_duration_label": "Varighed",
|
||||
"footer_original_source_code": "Original kildekode",
|
||||
"Search": "Søg",
|
||||
"Serbian": "Serbisk",
|
||||
@ -289,8 +280,8 @@
|
||||
"Rating: ": "Bedømmelse: ",
|
||||
"Movies": "Film",
|
||||
"YouTube comment permalink": "Youtube kommentarer permalink",
|
||||
"location": "Lokation",
|
||||
"hdr": "HDR",
|
||||
"search_filters_features_option_location": "Lokation",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Cebuano": "Cebuano (Sugbuanon)",
|
||||
"Nyanja": "Nyanja",
|
||||
"Chinese (Simplified)": "Kinesisk (forenklet)",
|
||||
@ -306,11 +297,11 @@
|
||||
"German": "Tysk",
|
||||
"Maori": "Maori",
|
||||
"Slovak": "Slovakisk",
|
||||
"relevance": "Relevans",
|
||||
"hour": "Sidste time",
|
||||
"playlist": "Spilleliste",
|
||||
"long": "Lang (> 20 minutter)",
|
||||
"creative_commons": "Creative Commons",
|
||||
"search_filters_sort_option_relevance": "Relevans",
|
||||
"search_filters_date_option_hour": "Sidste time",
|
||||
"search_filters_type_option_playlist": "Spilleliste",
|
||||
"search_filters_duration_option_long": "Lang (> 20 minutter)",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"Marathi": "Marathi",
|
||||
"Sindhi": "Sindhi",
|
||||
"preferences_category_misc": "Diverse indstillinger",
|
||||
@ -327,8 +318,8 @@
|
||||
"Western Frisian": "Vestfrisisk",
|
||||
"Top": "Top",
|
||||
"Music": "Musik",
|
||||
"views": "Antal visninger",
|
||||
"sort": "Sorter efter",
|
||||
"search_filters_sort_option_views": "Antal visninger",
|
||||
"search_filters_sort_label": "Sorter efter",
|
||||
"Zulu": "Zulu",
|
||||
"Invidious Private Feed for `x`": "Invidious Privat Feed til `x`",
|
||||
"English (auto-generated)": "Engelsk (autogenereret)",
|
||||
@ -349,7 +340,6 @@
|
||||
"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",
|
||||
@ -359,16 +349,16 @@
|
||||
"Scottish Gaelic": "Skotsk Gælisk",
|
||||
"Default": "Standard",
|
||||
"Video mode": "Videotilstand",
|
||||
"short": "Kort (< 4 minutter)",
|
||||
"search_filters_duration_option_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",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"Hmong": "Hmong",
|
||||
"preferences_quality_option_medium": "Medium",
|
||||
"preferences_quality_option_small": "Lille",
|
||||
@ -381,8 +371,8 @@
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Købt",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_purchased": "Købt",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"none": "ingen",
|
||||
"videoinfo_started_streaming_x_ago": "Streamen blev startet for `x`siden",
|
||||
"videoinfo_watch_on_youTube": "Se på YouTube",
|
||||
@ -392,11 +382,110 @@
|
||||
"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_save_player_pos_label": "Gem afspilningsposition: ",
|
||||
"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"
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} uset notifikation",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} usete notifikationer",
|
||||
"comments_view_x_replies": "Vis {{count}} svar",
|
||||
"comments_view_x_replies_plural": "Vis {{count}} svar",
|
||||
"comments_points_count": "{{count}} point",
|
||||
"comments_points_count_plural": "{{count}} point",
|
||||
"generic_count_years": "{{count}} år",
|
||||
"generic_count_years_plural": "{{count}} år",
|
||||
"generic_count_months": "{{count}} måned",
|
||||
"generic_count_months_plural": "{{count}} måneder",
|
||||
"generic_count_days": "{{count}} dag",
|
||||
"generic_count_days_plural": "{{count}} dage",
|
||||
"generic_count_minutes": "{{count}} minut",
|
||||
"generic_count_minutes_plural": "{{count}} minutter",
|
||||
"generic_count_seconds": "{{count}} sekund",
|
||||
"generic_count_seconds_plural": "{{count}} sekunder",
|
||||
"generic_subscribers_count": "{{count}} abonnent",
|
||||
"generic_subscribers_count_plural": "{{count}} abonnenter",
|
||||
"generic_subscriptions_count": "{{count}} abonnement",
|
||||
"generic_subscriptions_count_plural": "{{count}} abonnementer",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videoer",
|
||||
"English (United States)": "Engelsk (USA)",
|
||||
"French (auto-generated)": "Fransk (autogenereret)",
|
||||
"Spanish (auto-generated)": "Spansk (autogenereret)",
|
||||
"crash_page_before_reporting": "Før du rapporterer en fejl, skal du sikre dig, at du har:",
|
||||
"crash_page_refresh": "forsøgte at <a href=\"`x`\">opdatere siden</a>",
|
||||
"generic_playlists_count": "{{count}} spilleliste",
|
||||
"generic_playlists_count_plural": "{{count}} spillelister",
|
||||
"preferences_watch_history_label": "Aktiver afspilningshistorik: ",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"Cantonese (Hong Kong)": "Kantonesisk (Hongkong)",
|
||||
"Chinese": "Kinesisk",
|
||||
"Chinese (China)": "Kinesisk (Kina)",
|
||||
"Chinese (Hong Kong)": "Kinesisk (Hongkong)",
|
||||
"Chinese (Taiwan)": "Kinesisk (Taiwan)",
|
||||
"Dutch (auto-generated)": "Hollandsk (autogenereret)",
|
||||
"Indonesian (auto-generated)": "Indonesisk (autogenereret)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Japanese (auto-generated)": "Japansk (autogenereret)",
|
||||
"Korean (auto-generated)": "Koreansk (autogenereret)",
|
||||
"Russian (auto-generated)": "Russisk (autogenereret)",
|
||||
"Turkish (auto-generated)": "Tyrkisk (autogenereret)",
|
||||
"Vietnamese (auto-generated)": "Vietnamesisk (autogenereret)",
|
||||
"crash_page_report_issue": "Hvis intet af ovenstående hjalp, bedes du <a href=\"`x`\">åbne et nyt problem på GitHub</a> (helst på engelsk) og inkludere følgende tekst i din besked (oversæt IKKE denne tekst):",
|
||||
"English (United Kingdom)": "Engelsk (Storbritannien)",
|
||||
"Italian (auto-generated)": "Italiensk (autogenereret)",
|
||||
"Portuguese (auto-generated)": "Portugisisk (autogenereret)",
|
||||
"Portuguese (Brazil)": "Portugisisk (Brasilien)",
|
||||
"generic_views_count": "{{count}} visning",
|
||||
"generic_views_count_plural": "{{count}} visninger",
|
||||
"generic_count_hours": "{{count}} time",
|
||||
"generic_count_hours_plural": "{{count}} timer",
|
||||
"Spanish (Spain)": "Spansk (Spanien)",
|
||||
"crash_page_switch_instance": "forsøgte at <a href=\"`x`\">bruge en anden instans</a>",
|
||||
"German (auto-generated)": "Tysk (autogenereret)",
|
||||
"Spanish (Mexico)": "Spansk (Mexico)",
|
||||
"generic_count_weeks": "{{count}} uge",
|
||||
"generic_count_weeks_plural": "{{count}} uger",
|
||||
"crash_page_you_found_a_bug": "Det ser ud til, at du har fundet en fejl i Invidious!",
|
||||
"crash_page_read_the_faq": "læs <a href=\"`x`\">Ofte stillede spørgsmål (FAQ)</a>",
|
||||
"crash_page_search_issue": "søgte efter <a href=\"`x`\">eksisterende problemer på GitHub</a>",
|
||||
"search_filters_title": "Filter",
|
||||
"playlist_button_add_items": "Tilføj videoer",
|
||||
"search_message_no_results": "Ingen resultater fundet.",
|
||||
"Import YouTube watch history (.json)": "Importer YouTube afspilningshistorik (.json)",
|
||||
"search_message_change_filters_or_query": "Prøv at udvide din søgeforspørgsel og/eller ændre filtrene.",
|
||||
"search_message_use_another_instance": " Du kan også <a href=\"`x`\">søge på en anden instans</a>.",
|
||||
"Music in this video": "Musik i denne video",
|
||||
"search_filters_date_option_none": "Enhver dato",
|
||||
"search_filters_type_option_all": "Enhver type",
|
||||
"search_filters_duration_option_none": "Enhver varighed",
|
||||
"search_filters_duration_option_medium": "Medium (4 - 20 minutter)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"generic_channels_count": "{{count}} kanal",
|
||||
"generic_channels_count_plural": "{{count}} kanaler",
|
||||
"Import YouTube playlist (.csv)": "Importer YouTube playliste (.csv)",
|
||||
"Standard YouTube license": "Standard Youtube-licens",
|
||||
"Album: ": "Album: ",
|
||||
"Channel Sponsor": "Kanal-sponsor",
|
||||
"Song: ": "Sang: ",
|
||||
"channel_tab_playlists_label": "Playlister",
|
||||
"channel_tab_channels_label": "Kanaler",
|
||||
"Artist: ": "Kunstner: ",
|
||||
"search_filters_date_label": "Uploaddato",
|
||||
"generic_button_delete": "Slet",
|
||||
"generic_button_edit": "Rediger",
|
||||
"generic_button_save": "Gem",
|
||||
"generic_button_cancel": "Afbryd",
|
||||
"generic_button_rss": "RSS",
|
||||
"Popular enabled: ": "Populær aktiveret: ",
|
||||
"search_filters_apply_button": "Anvend udvalgte filtre",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_streams_label": "Livestreams",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"channel_tab_releases_label": "Udgivelser",
|
||||
"Download is disabled": "Download er slået fra",
|
||||
"error_video_not_in_playlist": "Den ønskede video findes ikke i denne playliste. <a href=\"`x`\">Klik her for playlistens startside.</a>"
|
||||
}
|
||||
|
217
locales/de.json
217
locales/de.json
@ -11,25 +11,25 @@
|
||||
"last": "neueste",
|
||||
"Next page": "Nächste Seite",
|
||||
"Previous page": "Vorherige Seite",
|
||||
"First page": "Erste Seite",
|
||||
"Clear watch history?": "Verlauf löschen?",
|
||||
"New password": "Neues Passwort",
|
||||
"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?",
|
||||
"Yes": "Ja",
|
||||
"No": "Nein",
|
||||
"Import and Export Data": "Daten importieren und exportieren",
|
||||
"Import": "Importieren",
|
||||
"Import Invidious data": "Invidious Daten importieren",
|
||||
"Import YouTube subscriptions": "YouTube Abonnements importieren",
|
||||
"Import Invidious data": "Invidious-JSON-Daten importieren",
|
||||
"Import YouTube subscriptions": "YouTube-CSV/OPML-Abonnements importieren",
|
||||
"Import FreeTube subscriptions (.db)": "FreeTube Abonnements importieren (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "NewPipe Abonnements importieren (.json)",
|
||||
"Import NewPipe data (.zip)": "NewPipe Daten importieren (.zip)",
|
||||
"Export": "Exportieren",
|
||||
"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",
|
||||
"Export data as JSON": "Invidious-Daten als JSON exportieren",
|
||||
"Delete account?": "Konto löschen?",
|
||||
"History": "Verlauf",
|
||||
"An alternative front-end to YouTube": "Eine alternative Oberfläche für YouTube",
|
||||
@ -37,7 +37,6 @@
|
||||
"source": "Quelle",
|
||||
"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):",
|
||||
@ -46,15 +45,15 @@
|
||||
"Sign In": "Anmelden",
|
||||
"Register": "Registrieren",
|
||||
"E-mail": "E-Mail",
|
||||
"Google verification code": "Google-Bestätigungscode",
|
||||
"Preferences": "Einstellungen",
|
||||
"preferences_category_player": "Wiedergabeeinstellungen",
|
||||
"preferences_video_loop_label": "Immer wiederholen: ",
|
||||
"preferences_preload_label": "Videodaten vorladen: ",
|
||||
"preferences_autoplay_label": "Automatisch abspielen: ",
|
||||
"preferences_continue_label": "Immer automatisch nächstes Video spielen: ",
|
||||
"preferences_continue_autoplay_label": "nächstes Video automatisch abspielen: ",
|
||||
"preferences_continue_label": "Immer automatisch nächstes Video abspielen: ",
|
||||
"preferences_continue_autoplay_label": "Nächstes Video automatisch abspielen: ",
|
||||
"preferences_listen_label": "Nur Ton als Standard: ",
|
||||
"preferences_local_label": "Proxy-Videos: ",
|
||||
"preferences_local_label": "Videos durch Proxy leiten: ",
|
||||
"preferences_speed_label": "Standardgeschwindigkeit: ",
|
||||
"preferences_quality_label": "Bevorzugte Videoqualität: ",
|
||||
"preferences_volume_label": "Wiedergabelautstärke: ",
|
||||
@ -63,12 +62,12 @@
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Standarduntertitel: ",
|
||||
"Fallback captions: ": "Ersatzuntertitel: ",
|
||||
"preferences_related_videos_label": "Ähnliche Videos anzeigen? ",
|
||||
"preferences_annotations_label": "Standardmäßig Anmerkungen anzeigen? ",
|
||||
"preferences_related_videos_label": "Ähnliche Videos anzeigen: ",
|
||||
"preferences_annotations_label": "Anmerkungen standardmäßig anzeigen: ",
|
||||
"preferences_extend_desc_label": "Videobeschreibung automatisch erweitern: ",
|
||||
"preferences_vr_mode_label": "Interaktive 360 Grad Videos: ",
|
||||
"preferences_vr_mode_label": "Interaktive 360-Grad-Videos (erfordert WebGL): ",
|
||||
"preferences_category_visual": "Anzeigeeinstellungen",
|
||||
"preferences_player_style_label": "Abspielgeräterstil: ",
|
||||
"preferences_player_style_label": "Player-Stil: ",
|
||||
"Dark mode: ": "Nachtmodus: ",
|
||||
"preferences_dark_mode_label": "Modus: ",
|
||||
"dark": "Nachtmodus",
|
||||
@ -100,7 +99,7 @@
|
||||
"Change password": "Passwort ändern",
|
||||
"Manage subscriptions": "Abonnements verwalten",
|
||||
"Manage tokens": "Tokens verwalten",
|
||||
"Watch history": "Verlauf",
|
||||
"Watch history": "Wiedergabeverlauf",
|
||||
"Delete account": "Account löschen",
|
||||
"preferences_category_admin": "Administrator-Einstellungen",
|
||||
"preferences_default_home_label": "Standard-Startseite: ",
|
||||
@ -121,7 +120,7 @@
|
||||
"Subscriptions": "Abonnements",
|
||||
"search": "Suchen",
|
||||
"Log out": "Abmelden",
|
||||
"Released under the AGPLv3 on Github.": "Auf Github unter der AGPLv3 Lizenz veröffentlicht.",
|
||||
"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.",
|
||||
@ -141,7 +140,6 @@
|
||||
"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: ",
|
||||
@ -152,7 +150,7 @@
|
||||
"Whitelisted regions: ": "Erlaubte Regionen: ",
|
||||
"Blacklisted regions: ": "Unerlaubte Regionen: ",
|
||||
"Shared `x`": "Geteilt `x`",
|
||||
"Premieres in `x`": "Zuerst gesehen in `x`",
|
||||
"Premieres in `x`": "Premiere 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",
|
||||
@ -165,17 +163,12 @@
|
||||
"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.": "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.": "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",
|
||||
"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",
|
||||
@ -326,50 +319,49 @@
|
||||
"`x` marked it with a ❤": "`x` markierte es mit einem ❤",
|
||||
"Audio mode": "Audiomodus",
|
||||
"Video mode": "Videomodus",
|
||||
"Videos": "Videos",
|
||||
"channel_tab_videos_label": "Videos",
|
||||
"Playlists": "Wiedergabelisten",
|
||||
"Community": "Gemeinschaft",
|
||||
"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",
|
||||
"channel_tab_community_label": "Gemeinschaft",
|
||||
"search_filters_sort_option_relevance": "Relevanz",
|
||||
"search_filters_sort_option_rating": "Bewertung",
|
||||
"search_filters_sort_option_date": "Hochladedatum",
|
||||
"search_filters_sort_option_views": "Aufrufe",
|
||||
"search_filters_type_label": "Inhaltstyp",
|
||||
"search_filters_duration_label": "Dauer",
|
||||
"search_filters_features_label": "Eigenschaften",
|
||||
"search_filters_sort_label": "sortieren",
|
||||
"search_filters_date_option_hour": "Letzte Stunde",
|
||||
"search_filters_date_option_today": "Heute",
|
||||
"search_filters_date_option_week": "Diese Woche",
|
||||
"search_filters_date_option_month": "Diesen Monat",
|
||||
"search_filters_date_option_year": "Dieses Jahr",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_type_option_playlist": "Wiedergabeliste",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Anzeigen",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Untertitel / CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Live",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Standort",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"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)",
|
||||
"search_filters_duration_option_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)",
|
||||
"search_filters_duration_option_short": "Kurz (< 4 Minuten)",
|
||||
"preferences_region_label": "Land der Inhalte: ",
|
||||
"preferences_quality_option_dash": "DASH (automatische Qualität)",
|
||||
"preferences_quality_option_dash": "DASH (adaptive Qualität)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Mittel",
|
||||
"preferences_quality_option_small": "Niedrig",
|
||||
@ -388,15 +380,124 @@
|
||||
"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_save_player_pos_label": "Wiedergabeposition speichern: ",
|
||||
"search_filters_features_option_three_sixty": "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",
|
||||
"search_filters_features_option_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: "
|
||||
"preferences_quality_dash_label": "Bevorzugte DASH-Videoqualität: ",
|
||||
"generic_subscribers_count": "{{count}} Abonnent",
|
||||
"generic_subscribers_count_plural": "{{count}} Abonnenten",
|
||||
"generic_videos_count": "{{count}} Video",
|
||||
"generic_videos_count_plural": "{{count}} Videos",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} ungesehene Benachrichtung",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} ungesehene Benachrichtungen",
|
||||
"crash_page_refresh": "Versucht haben, <a href=\"`x`\">die Seite neu zu laden</a>",
|
||||
"comments_view_x_replies": "{{count}} Antwort anzeigen",
|
||||
"comments_view_x_replies_plural": "{{count}} Antworten anzeigen",
|
||||
"generic_count_years": "{{count}} Jahr",
|
||||
"generic_count_years_plural": "{{count}} Jahre",
|
||||
"generic_count_weeks": "{{count}} Woche",
|
||||
"generic_count_weeks_plural": "{{count}} Wochen",
|
||||
"generic_count_days": "{{count}} Tag",
|
||||
"generic_count_days_plural": "{{count}} Tage",
|
||||
"crash_page_before_reporting": "Bevor Sie einen Bug melden, stellen Sie sicher, dass Sie:",
|
||||
"crash_page_switch_instance": "Eine <a href=\"`x`\">andere Instanz</a> versucht haben",
|
||||
"generic_count_hours": "{{count}} Stunde",
|
||||
"generic_count_hours_plural": "{{count}} Stunden",
|
||||
"generic_count_minutes": "{{count}} Minute",
|
||||
"generic_count_minutes_plural": "{{count}} Minuten",
|
||||
"crash_page_read_the_faq": "Das <a href=\"`x`\">FAQ</a> gelesen haben",
|
||||
"crash_page_search_issue": "Nach <a href=\"`x`\">bereits gemeldeten Bugs auf GitHub</a> gesucht haben",
|
||||
"crash_page_report_issue": "Wenn all dies nicht geholfen hat, <a href=\"`x`\">öffnen Sie bitte ein neues Problem (issue) auf Github</a> (vorzugsweise auf Englisch) und fügen Sie den folgenden Text in Ihre Nachricht ein (bitte übersetzen Sie diesen Text NICHT):",
|
||||
"generic_views_count": "{{count}} Aufruf",
|
||||
"generic_views_count_plural": "{{count}} Aufrufe",
|
||||
"generic_count_seconds": "{{count}} Sekunde",
|
||||
"generic_count_seconds_plural": "{{count}} Sekunden",
|
||||
"generic_subscriptions_count": "{{count}} Abo",
|
||||
"generic_subscriptions_count_plural": "{{count}} Abos",
|
||||
"tokens_count": "{{count}} Token",
|
||||
"tokens_count_plural": "{{count}} Tokens",
|
||||
"comments_points_count": "{{count}} Punkt",
|
||||
"comments_points_count_plural": "{{count}} Punkte",
|
||||
"crash_page_you_found_a_bug": "Anscheinend haben Sie einen Fehler in Invidious gefunden!",
|
||||
"generic_count_months": "{{count}} Monat",
|
||||
"generic_count_months_plural": "{{count}} Monaten",
|
||||
"Cantonese (Hong Kong)": "Kantonesisch (Hong Kong)",
|
||||
"Chinese (Hong Kong)": "Chinesisch (Hong Kong)",
|
||||
"generic_playlists_count": "{{count}} Wiedergabeliste",
|
||||
"generic_playlists_count_plural": "{{count}} Wiedergabelisten",
|
||||
"preferences_watch_history_label": "Wiedergabeverlauf aktivieren: ",
|
||||
"English (United Kingdom)": "Englisch (Vereinigtes Königreich)",
|
||||
"English (United States)": "Englisch (Vereinigte Staaten)",
|
||||
"Dutch (auto-generated)": "Niederländisch (automatisch generiert)",
|
||||
"French (auto-generated)": "Französisch (automatisch generiert)",
|
||||
"German (auto-generated)": "Deutsch (automatisch generiert)",
|
||||
"Indonesian (auto-generated)": "Indonesisch (automatisch generiert)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Italian (auto-generated)": "Italienisch (automatisch generiert)",
|
||||
"Japanese (auto-generated)": "Japanisch (automatisch generiert)",
|
||||
"Spanish (Mexico)": "Spanisch (Mexiko)",
|
||||
"Spanish (Spain)": "Spanisch (Spanien)",
|
||||
"Vietnamese (auto-generated)": "Vietnamesisch (automatisch generiert)",
|
||||
"Russian (auto-generated)": "Russisch (automatisch generiert)",
|
||||
"Chinese": "Chinesisch",
|
||||
"Portuguese (Brazil)": "Portugiesisch (Brasilien)",
|
||||
"Spanish (auto-generated)": "Spanisch (automatisch generiert)",
|
||||
"Turkish (auto-generated)": "Türkisch (automatisch generiert)",
|
||||
"Chinese (China)": "Chinesisch (China)",
|
||||
"Chinese (Taiwan)": "Chinesisch (Taiwan)",
|
||||
"Korean (auto-generated)": "Koreanisch (automatisch generiert)",
|
||||
"Portuguese (auto-generated)": "Portugiesisch (automatisch generiert)",
|
||||
"search_filters_title": "Filtern",
|
||||
"search_message_change_filters_or_query": "Versuchen Sie, Ihre Suchanfrage zu erweitern und/oder die Filter zu ändern.",
|
||||
"search_message_use_another_instance": "Sie können auch <a href=\"`x`\">auf einer anderen Instanz suchen</a>.",
|
||||
"Popular enabled: ": "„Beliebt“-Seite aktiviert: ",
|
||||
"search_message_no_results": "Keine Ergebnisse gefunden.",
|
||||
"search_filters_duration_option_medium": "Mittel (4 - 20 Minuten)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_type_option_all": "Beliebiger Typ",
|
||||
"search_filters_apply_button": "Ausgewählte Filter anwenden",
|
||||
"search_filters_duration_option_none": "Beliebige Länge",
|
||||
"search_filters_date_label": "Upload-Datum",
|
||||
"search_filters_date_option_none": "Beliebiges Datum",
|
||||
"error_video_not_in_playlist": "Das angeforderte Video existiert nicht in dieser Wiedergabeliste. <a href=\"`x`\">Klicken Sie hier, um zur Startseite der Wiedergabeliste zu gelangen.</a>",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_streams_label": "Livestreams",
|
||||
"Music in this video": "Musik in diesem Video",
|
||||
"Artist: ": "Künstler: ",
|
||||
"Album: ": "Album: ",
|
||||
"channel_tab_playlists_label": "Wiedergabelisten",
|
||||
"channel_tab_channels_label": "Kanäle",
|
||||
"Channel Sponsor": "Kanalsponsor",
|
||||
"Standard YouTube license": "Standard YouTube-Lizenz",
|
||||
"Song: ": "Musik: ",
|
||||
"Download is disabled": "Herunterladen ist deaktiviert",
|
||||
"Import YouTube playlist (.csv)": "YouTube Wiedergabeliste importieren (.csv)",
|
||||
"generic_button_delete": "Löschen",
|
||||
"generic_button_edit": "Bearbeiten",
|
||||
"generic_button_save": "Speichern",
|
||||
"generic_button_cancel": "Abbrechen",
|
||||
"generic_button_rss": "RSS",
|
||||
"playlist_button_add_items": "Videos hinzufügen",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"channel_tab_releases_label": "Veröffentlichungen",
|
||||
"generic_channels_count": "{{count}} Kanal",
|
||||
"generic_channels_count_plural": "{{count}} Kanäle",
|
||||
"Import YouTube watch history (.json)": "YouTube Wiedergabeverlauf importieren (.json)",
|
||||
"Answer": "Antwort",
|
||||
"The Popular feed has been disabled by the administrator.": "Der Feed für beliebte Inhalte wurde vom Administrator deaktiviert.",
|
||||
"Add to playlist": "Einer Wiedergabeliste hinzufügen",
|
||||
"Search for videos": "Nach Videos suchen",
|
||||
"toggle_theme": "Thema wechseln",
|
||||
"Add to playlist: ": "Einer Wiedergabeliste hinzufügen: ",
|
||||
"carousel_go_to": "Zu Element `x` springen",
|
||||
"carousel_slide": "Seite {{current}} von {{total}}",
|
||||
"carousel_skip": "Galerie überspringen",
|
||||
"Filipino (auto-generated)": "Philippinisch (automatisch generiert)"
|
||||
}
|
||||
|
144
locales/el.json
144
locales/el.json
@ -14,7 +14,6 @@
|
||||
"Clear watch history?": "Διαγραφή ιστορικού προβολής;",
|
||||
"New password": "Νέος κωδικός πρόσβασης",
|
||||
"New passwords must match": "Οι νέοι κωδικοί πρόσβασης πρέπει να ταιριάζουν",
|
||||
"Cannot change password for Google accounts": "Δεν επιτρέπεται η αλλαγή κωδικού πρόσβασης λογαριασμών Google",
|
||||
"Authorize token?": "Εξουσιοδότηση διασύνδεσης;",
|
||||
"Authorize token for `x`?": "Εξουσιοδότηση διασύνδεσης με `x`;",
|
||||
"Yes": "Ναι",
|
||||
@ -22,7 +21,7 @@
|
||||
"Import and Export Data": "Εισαγωγή και Εξαγωγή Δεδομένων",
|
||||
"Import": "Εισαγωγή",
|
||||
"Import Invidious data": "Εsαγωγή δεδομένων Invidious JSON",
|
||||
"Import YouTube subscriptions": "Εισαγωγή συνδρομών YouTube/OPML",
|
||||
"Import YouTube subscriptions": "Εισαγωγή συνδρομών YouTube απο CVS/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Εισαγωγή συνδρομών FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Εισαγωγή συνδρομών NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Εισαγωγή δεδομένων NewPipe (.zip)",
|
||||
@ -37,16 +36,14 @@
|
||||
"source": "πηγή",
|
||||
"Log in": "Σύνδεση",
|
||||
"Log in/register": "Σύνδεση/εγγραφή",
|
||||
"Log in with Google": "Σύνδεση με Google",
|
||||
"User ID": "Ταυτότητα χρήστη",
|
||||
"Password": "Κωδικός πρόσβασης",
|
||||
"Time (h:mm:ss):": "Ώρα (ω:λλ:δδ):",
|
||||
"Text CAPTCHA": "Κείμενο CAPTCHA",
|
||||
"Image CAPTCHA": "Εικόνα CAPTCHA",
|
||||
"Sign In": "Σύνδεση",
|
||||
"Sign In": "Εγγραφή",
|
||||
"Register": "Εγγραφή",
|
||||
"E-mail": "Ηλεκτρονικό ταχυδρομείο",
|
||||
"Google verification code": "Κωδικός επαλήθευσης Google",
|
||||
"Preferences": "Προτιμήσεις",
|
||||
"preferences_category_player": "Προτιμήσεις αναπαραγωγής",
|
||||
"preferences_video_loop_label": "Αυτόματη επανάληψη: ",
|
||||
@ -148,24 +145,19 @@
|
||||
"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` σχολίου",
|
||||
"": "Προβολή `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.": "Αδυναμία σύνδεσης, βεβαιωθείτε πως ο έλεγχος ταυτότητας δύο παραγόντων (με Authenticator ή SMS) είναι ενεργοποιημένος.",
|
||||
"Invalid TFA code": "Μη έγκυρος κωδικός ελέγχου ταυτότητας δύο παραγόντων",
|
||||
"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'": "Συνδεθείτε με την επιλογή 'Σύνδεση με Google'",
|
||||
"Password cannot be empty": "Ο κωδικός πρόσβασης δεν γίνεται να είναι κενός",
|
||||
"Password cannot be longer than 55 characters": "Ο κωδικός πρόσβασης δεν γίνεται να υπερβαίνει τους 55 χαρακτήρες",
|
||||
"Please log in": "Συνδεθείτε",
|
||||
@ -315,9 +307,9 @@
|
||||
"`x` marked it with a ❤": "Ο χρηστης `x` έβαλε ❤",
|
||||
"Audio mode": "Λειτουργία ήχου",
|
||||
"Video mode": "Λειτουργία βίντεο",
|
||||
"Videos": "Βίντεο",
|
||||
"channel_tab_videos_label": "Βίντεο",
|
||||
"Playlists": "Λίστες Αναπαραγωγής",
|
||||
"Community": "Κοινότητα",
|
||||
"channel_tab_community_label": "Κοινότητα",
|
||||
"Current version: ": "Τρέχουσα έκδοση: ",
|
||||
"generic_playlists_count": "{{count}} λίστα αναπαραγωγής",
|
||||
"generic_playlists_count_plural": "{{count}} λίστες αναπαραγωγής",
|
||||
@ -357,8 +349,8 @@
|
||||
"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>",
|
||||
"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}} βίντεο",
|
||||
@ -366,58 +358,57 @@
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Μεσαία",
|
||||
"preferences_quality_option_small": "Μικρό",
|
||||
"preferences_quality_option_dash": "DASH (προσαρμοστική ποιότητα)",
|
||||
"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°",
|
||||
"search_filters_date_option_today": "Σήμερα",
|
||||
"search_filters_features_option_three_sixty": "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",
|
||||
"search_filters_sort_option_rating": "Αξιολόγηση",
|
||||
"search_filters_sort_option_relevance": "Συνάφεια",
|
||||
"search_filters_features_option_purchased": "Αγορασμένο",
|
||||
"search_filters_sort_option_date": "Ημερομηνία μεταφόρτωσης",
|
||||
"search_filters_type_label": "Τύπος",
|
||||
"search_filters_duration_label": "Διάρκεια",
|
||||
"search_filters_date_option_week": "Αυτή την εβδομάδα",
|
||||
"search_filters_date_option_year": "Φέτος",
|
||||
"search_filters_type_option_channel": "Κανάλι",
|
||||
"search_filters_type_option_playlist": "Λίστα αναπαραγωγής",
|
||||
"search_filters_duration_option_long": "Μεγάλο (> 20 λεπτά)",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_location": "Τοποθεσία",
|
||||
"search_filters_features_option_three_d": "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": "Τελευταία ώρα",
|
||||
"search_filters_date_option_hour": "Τελευταία ώρα",
|
||||
"adminprefs_modified_source_code_url_label": "URL σε αποθετήριο τροποποιημένου πηγαίου κώδικα",
|
||||
"subtitles": "Υπότιτλοι/CC",
|
||||
"month": "Αυτόν τον μήνα",
|
||||
"Released under the AGPLv3 on Github.": "Κυκλοφορεί υπό την AGPLv3 στο Github.",
|
||||
"sort": "Ταξινόμηση κατά",
|
||||
"filter": "Φίλτρο",
|
||||
"movie": "Ταινία",
|
||||
"search_filters_features_option_subtitles": "Υπότιτλοι/CC",
|
||||
"search_filters_date_option_month": "Αυτόν τον μήνα",
|
||||
"Released under the AGPLv3 on Github.": "Κυκλοφορεί υπό την AGPLv3 στο GitHub.",
|
||||
"search_filters_sort_label": "Ταξινόμηση κατά",
|
||||
"search_filters_type_option_movie": "Ταινία",
|
||||
"footer_modfied_source_code": "Τροποποιημένος πηγαίος κώδικας",
|
||||
"features": "Χαρακτηριστικά",
|
||||
"4k": "4K",
|
||||
"search_filters_features_label": "Χαρακτηριστικά",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"footer_documentation": "Τεκμηρίωση",
|
||||
"short": "Σύντομο (< 4 λεπτά)",
|
||||
"search_filters_duration_option_short": "Σύντομο (< 4 λεπτά)",
|
||||
"next_steps_error_message_refresh": "Ανανέωση",
|
||||
"video": "Βίντεο",
|
||||
"live": "Ζωντανά",
|
||||
"creative_commons": "Creative Commons",
|
||||
"search_filters_type_option_video": "Βίντεο",
|
||||
"search_filters_features_option_live": "Ζωντανά",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"Search": "Αναζήτηση",
|
||||
"hdr": "HDR",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"preferences_extend_desc_label": "Αυτόματη επέκταση της περιγραφής του βίντεο: ",
|
||||
"preferences_vr_mode_label": "Διαδραστικά βίντεο 360 μοιρών (απαιτεί WebGL): ",
|
||||
"Show less": "Εμφάνιση λιγότερων",
|
||||
@ -448,5 +439,64 @@
|
||||
"none": "κανένα",
|
||||
"videoinfo_youTube_embed_link": "Ενσωμάτωση",
|
||||
"videoinfo_invidious_embed_link": "Σύνδεσμος Ενσωμάτωσης",
|
||||
"show": "Μπάρα προόδου διαβάσματος"
|
||||
"search_filters_type_option_show": "Μπάρα προόδου διαβάσματος",
|
||||
"preferences_watch_history_label": "Ενεργοποίηση ιστορικού παρακολούθησης: ",
|
||||
"search_filters_title": "Φίλτρο",
|
||||
"search_message_no_results": "Δε βρέθηκαν αποτελέσματα.",
|
||||
"channel_tab_podcasts_label": "Podcast",
|
||||
"preferences_save_player_pos_label": "Αποθήκευση σημείου αναπαραγωγής: ",
|
||||
"search_filters_apply_button": "Εφαρμογή επιλεγμένων φίλτρων",
|
||||
"Download is disabled": "Είναι απενεργοποιημένη η λήψη",
|
||||
"comments_points_count": "{{count}} βαθμός",
|
||||
"comments_points_count_plural": "{{count}} βαθμοί",
|
||||
"search_filters_sort_option_views": "Προβολές",
|
||||
"search_message_change_filters_or_query": "Προσπαθήστε να διευρύνετε το ερώτημα αναζήτησης ή/και να αλλάξετε τα φίλτρα.",
|
||||
"Channel Sponsor": "Χορηγός Καναλιού",
|
||||
"channel_tab_streams_label": "Ζωντανή μετάδοση",
|
||||
"playlist_button_add_items": "Προσθήκη βίντεο",
|
||||
"Artist: ": "Καλλιτέχνης: ",
|
||||
"search_message_use_another_instance": "Μπορείτε επίσης <a href=\"`x`\">να αναζητήσετε σε άλλο instance</a>.",
|
||||
"generic_button_save": "Αποθήκευση",
|
||||
"generic_button_cancel": "Ακύρωση",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} μη αναγνωσμένη ειδοποίηση",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} μη αναγνωσμένες ειδοποιήσεις",
|
||||
"Album: ": "Δίσκος: ",
|
||||
"tokens_count": "{{count}} σύμβολο",
|
||||
"tokens_count_plural": "{{count}} σύμβολα",
|
||||
"channel_tab_shorts_label": "Short",
|
||||
"channel_tab_releases_label": "Κυκλοφορίες",
|
||||
"Song: ": "Τραγούδι: ",
|
||||
"generic_channels_count": "{{count}} κανάλι",
|
||||
"generic_channels_count_plural": "{{count}} κανάλια",
|
||||
"Popular enabled: ": "Ενεργοποιημένα Δημοφιλή: ",
|
||||
"channel_tab_playlists_label": "Λίστες αναπαραγωγής",
|
||||
"generic_button_edit": "Επεξεργασία",
|
||||
"search_filters_date_option_none": "Οποιαδήποτε ημερομηνία",
|
||||
"crash_page_switch_instance": "προσπάθεια <a href=\"`x`\">χρήσης άλλου instance</a>",
|
||||
"Music in this video": "Μουσική σε αυτό το βίντεο",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_channels_label": "Κανάλια",
|
||||
"search_filters_type_option_all": "Οποιοσδήποτε τύπος",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"error_video_not_in_playlist": "Το αιτούμενο βίντεο δεν υπάρχει στη δεδομένη λίστα αναπαραγωγής. <a href=\"`x`\">Πατήστε εδώ για επιστροφή στη κεντρική σελίδα λιστών αναπαραγωγής.</a>",
|
||||
"search_filters_duration_option_none": "Οποιαδήποτε διάρκεια",
|
||||
"preferences_automatic_instance_redirect_label": "Αυτόματη ανακατεύθυνση instance (εναλλακτική σε redirect.invidious.io): ",
|
||||
"generic_button_delete": "Διαγραφή",
|
||||
"Import YouTube playlist (.csv)": "Εισαγωγή λίστας αναπαραγωγής YouTube (.csv)",
|
||||
"Switch Invidious Instance": "Αλλαγή Instance Invidious",
|
||||
"Standard YouTube license": "Τυπική άδεια YouTube",
|
||||
"search_filters_duration_option_medium": "Μεσαία (4 - 20 λεπτά)",
|
||||
"search_filters_date_label": "Ημερομηνία αναφόρτωσης",
|
||||
"Search for videos": "Αναζήτηση βίντεο",
|
||||
"The Popular feed has been disabled by the administrator.": "Η δημοφιλής ροή έχει απενεργοποιηθεί από τον διαχειριστή.",
|
||||
"Answer": "Απάντηση",
|
||||
"Add to playlist": "Προσθήκη στην λίιστα αναπαραγωγής",
|
||||
"Add to playlist: ": "Προσθήκη στην λίστα αναπαραγωγής : ",
|
||||
"carousel_slide": "Εικόνα {{current}}απο {{total}}",
|
||||
"carousel_go_to": "Πήγαινε στην εικόνα`x`",
|
||||
"toggle_theme": "Αλλαγή θέματος",
|
||||
"Import YouTube watch history (.json)": "Εισαγωγή ιστορικού προβολής YouTube (.json)",
|
||||
"Filipino (auto-generated)": "Φιλιππινέζικα (αυτόματη παραγωγή)",
|
||||
"preferences_preload_label": "Προφόρτιση δεδομένων βίντεο: ",
|
||||
"carousel_skip": "Αποφυγή εμφάνισης εικόνων"
|
||||
}
|
||||
|
@ -1,4 +1,11 @@
|
||||
{
|
||||
"Add to playlist": "Add to playlist",
|
||||
"Add to playlist: ": "Add to playlist: ",
|
||||
"Answer": "Answer",
|
||||
"Search for videos": "Search for videos",
|
||||
"The Popular feed has been disabled by the administrator.": "The Popular feed has been disabled by the administrator.",
|
||||
"generic_channels_count": "{{count}} channel",
|
||||
"generic_channels_count_plural": "{{count}} channels",
|
||||
"generic_views_count": "{{count}} view",
|
||||
"generic_views_count_plural": "{{count}} views",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
@ -9,6 +16,11 @@
|
||||
"generic_subscribers_count_plural": "{{count}} subscribers",
|
||||
"generic_subscriptions_count": "{{count}} subscription",
|
||||
"generic_subscriptions_count_plural": "{{count}} subscriptions",
|
||||
"generic_button_delete": "Delete",
|
||||
"generic_button_edit": "Edit",
|
||||
"generic_button_save": "Save",
|
||||
"generic_button_cancel": "Cancel",
|
||||
"generic_button_rss": "RSS",
|
||||
"LIVE": "LIVE",
|
||||
"Shared `x` ago": "Shared `x` ago",
|
||||
"Unsubscribe": "Unsubscribe",
|
||||
@ -21,10 +33,10 @@
|
||||
"last": "last",
|
||||
"Next page": "Next page",
|
||||
"Previous page": "Previous page",
|
||||
"First page": "First page",
|
||||
"Clear watch history?": "Clear watch history?",
|
||||
"New password": "New password",
|
||||
"New passwords must match": "New passwords must match",
|
||||
"Cannot change password for Google accounts": "Cannot change password for Google accounts",
|
||||
"Authorize token?": "Authorize token?",
|
||||
"Authorize token for `x`?": "Authorize token for `x`?",
|
||||
"Yes": "Yes",
|
||||
@ -32,7 +44,9 @@
|
||||
"Import and Export Data": "Import and Export Data",
|
||||
"Import": "Import",
|
||||
"Import Invidious data": "Import Invidious JSON data",
|
||||
"Import YouTube subscriptions": "Import YouTube/OPML subscriptions",
|
||||
"Import YouTube subscriptions": "Import YouTube CSV or OPML subscriptions",
|
||||
"Import YouTube playlist (.csv)": "Import YouTube playlist (.csv)",
|
||||
"Import YouTube watch history (.json)": "Import YouTube watch history (.json)",
|
||||
"Import FreeTube subscriptions (.db)": "Import FreeTube subscriptions (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Import NewPipe subscriptions (.json)",
|
||||
"Import NewPipe data (.zip)": "Import NewPipe data (.zip)",
|
||||
@ -47,7 +61,6 @@
|
||||
"source": "source",
|
||||
"Log in": "Log in",
|
||||
"Log in/register": "Log in/register",
|
||||
"Log in with Google": "Log in with Google",
|
||||
"User ID": "User ID",
|
||||
"Password": "Password",
|
||||
"Time (h:mm:ss):": "Time (h:mm:ss):",
|
||||
@ -56,10 +69,10 @@
|
||||
"Sign In": "Sign In",
|
||||
"Register": "Register",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Google verification code",
|
||||
"Preferences": "Preferences",
|
||||
"preferences_category_player": "Player preferences",
|
||||
"preferences_video_loop_label": "Always loop: ",
|
||||
"preferences_preload_label": "Preload video data: ",
|
||||
"preferences_autoplay_label": "Autoplay: ",
|
||||
"preferences_continue_label": "Play next by default: ",
|
||||
"preferences_continue_autoplay_label": "Autoplay next video: ",
|
||||
@ -68,7 +81,7 @@
|
||||
"preferences_watch_history_label": "Enable watch history: ",
|
||||
"preferences_speed_label": "Default speed: ",
|
||||
"preferences_quality_label": "Preferred video quality: ",
|
||||
"preferences_quality_option_dash": "DASH (adaptative quality)",
|
||||
"preferences_quality_option_dash": "DASH (adaptive quality)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Medium",
|
||||
"preferences_quality_option_small": "Small",
|
||||
@ -136,6 +149,7 @@
|
||||
"preferences_default_home_label": "Default homepage: ",
|
||||
"preferences_feed_menu_label": "Feed menu: ",
|
||||
"preferences_show_nick_label": "Show nickname on top: ",
|
||||
"Popular enabled: ": "Popular enabled: ",
|
||||
"Top enabled: ": "Top enabled: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA enabled: ",
|
||||
"Login enabled: ": "Login enabled: ",
|
||||
@ -155,7 +169,7 @@
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} unseen notifications",
|
||||
"search": "search",
|
||||
"Log out": "Log out",
|
||||
"Released under the AGPLv3 on Github.": "Released under the AGPLv3 on Github.",
|
||||
"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.",
|
||||
@ -171,20 +185,28 @@
|
||||
"Title": "Title",
|
||||
"Playlist privacy": "Playlist privacy",
|
||||
"Editing playlist `x`": "Editing playlist `x`",
|
||||
"playlist_button_add_items": "Add videos",
|
||||
"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",
|
||||
"search_message_no_results": "No results found.",
|
||||
"search_message_change_filters_or_query": "Try widening your search query and/or changing the filters.",
|
||||
"search_message_use_another_instance": "You can also <a href=\"`x`\">search on another instance</a>.",
|
||||
"Hide annotations": "Hide annotations",
|
||||
"Show annotations": "Show annotations",
|
||||
"Genre: ": "Genre: ",
|
||||
"License: ": "License: ",
|
||||
"Standard YouTube license": "Standard YouTube license",
|
||||
"Family friendly? ": "Family friendly? ",
|
||||
"Wilson score: ": "Wilson score: ",
|
||||
"Engagement: ": "Engagement: ",
|
||||
"Whitelisted regions: ": "Whitelisted regions: ",
|
||||
"Blacklisted regions: ": "Blacklisted regions: ",
|
||||
"Music in this video": "Music in this video",
|
||||
"Artist: ": "Artist: ",
|
||||
"Song: ": "Song: ",
|
||||
"Album: ": "Album: ",
|
||||
"Shared `x`": "Shared `x`",
|
||||
"Premieres in `x`": "Premieres in `x`",
|
||||
"Premieres `x`": "Premieres `x`",
|
||||
@ -199,17 +221,12 @@
|
||||
"Hide replies": "Hide replies",
|
||||
"Show replies": "Show replies",
|
||||
"Incorrect password": "Incorrect password",
|
||||
"Quota exceeded, try again in a few hours": "Quota exceeded, try again in a few hours",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.",
|
||||
"Invalid TFA code": "Invalid TFA code",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Login failed. This may be because two-factor authentication is not turned on for your account.",
|
||||
"Wrong answer": "Wrong answer",
|
||||
"Erroneous CAPTCHA": "Erroneous CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA is a required field",
|
||||
"User ID is a required field": "User ID is a required field",
|
||||
"Password is a required field": "Password is a required field",
|
||||
"Wrong username or password": "Wrong username or password",
|
||||
"Please sign in using 'Log in with Google'": "Please sign in using 'Log in with Google'",
|
||||
"Password cannot be empty": "Password cannot be empty",
|
||||
"Password cannot be longer than 55 characters": "Password cannot be longer than 55 characters",
|
||||
"Please log in": "Please log in",
|
||||
@ -270,6 +287,7 @@
|
||||
"Esperanto": "Esperanto",
|
||||
"Estonian": "Estonian",
|
||||
"Filipino": "Filipino",
|
||||
"Filipino (auto-generated)": "Filipino (auto-generated)",
|
||||
"Finnish": "Finnish",
|
||||
"French": "French",
|
||||
"French (auto-generated)": "French (auto-generated)",
|
||||
@ -394,47 +412,54 @@
|
||||
"Movies": "Movies",
|
||||
"Download": "Download",
|
||||
"Download as: ": "Download as: ",
|
||||
"Download is disabled": "Download is disabled",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(edited)",
|
||||
"YouTube comment permalink": "YouTube comment permalink",
|
||||
"permalink": "permalink",
|
||||
"`x` marked it with a ❤": "`x` marked it with a ❤",
|
||||
"Channel Sponsor": "Channel Sponsor",
|
||||
"Audio mode": "Audio mode",
|
||||
"Video mode": "Video mode",
|
||||
"Videos": "Videos",
|
||||
"Playlists": "Playlists",
|
||||
"Community": "Community",
|
||||
"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",
|
||||
"search_filters_title": "Filters",
|
||||
"search_filters_date_label": "Upload date",
|
||||
"search_filters_date_option_none": "Any date",
|
||||
"search_filters_date_option_hour": "Last hour",
|
||||
"search_filters_date_option_today": "Today",
|
||||
"search_filters_date_option_week": "This week",
|
||||
"search_filters_date_option_month": "This month",
|
||||
"search_filters_date_option_year": "This year",
|
||||
"search_filters_type_label": "Type",
|
||||
"search_filters_type_option_all": "Any type",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Channel",
|
||||
"search_filters_type_option_playlist": "Playlist",
|
||||
"search_filters_type_option_movie": "Movie",
|
||||
"search_filters_type_option_show": "Show",
|
||||
"search_filters_duration_label": "Duration",
|
||||
"search_filters_duration_option_none": "Any duration",
|
||||
"search_filters_duration_option_short": "Short (< 4 minutes)",
|
||||
"search_filters_duration_option_medium": "Medium (4 - 20 minutes)",
|
||||
"search_filters_duration_option_long": "Long (> 20 minutes)",
|
||||
"search_filters_features_label": "Features",
|
||||
"search_filters_features_option_live": "Live",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Subtitles/CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_features_option_location": "Location",
|
||||
"search_filters_features_option_purchased": "Purchased",
|
||||
"search_filters_sort_label": "Sort By",
|
||||
"search_filters_sort_option_relevance": "Relevance",
|
||||
"search_filters_sort_option_rating": "Rating",
|
||||
"search_filters_sort_option_date": "Upload date",
|
||||
"search_filters_sort_option_views": "View count",
|
||||
"search_filters_apply_button": "Apply selected filters",
|
||||
"Current version: ": "Current version: ",
|
||||
"next_steps_error_message": "After which you should try to: ",
|
||||
"next_steps_error_message_refresh": "Refresh",
|
||||
@ -443,7 +468,7 @@
|
||||
"footer_documentation": "Documentation",
|
||||
"footer_source_code": "Source code",
|
||||
"footer_original_source_code": "Original source code",
|
||||
"footer_modfied_source_code": "Modified 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",
|
||||
@ -459,7 +484,22 @@
|
||||
"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):"
|
||||
"crash_page_read_the_faq": "read the <a href=\"`x`\">Frequently 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):",
|
||||
"error_video_not_in_playlist": "The requested video doesn't exist in this playlist. <a href=\"`x`\">Click here for the playlist home page.</a>",
|
||||
"channel_tab_videos_label": "Videos",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_streams_label": "Livestreams",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"channel_tab_releases_label": "Releases",
|
||||
"channel_tab_courses_label": "Courses",
|
||||
"channel_tab_playlists_label": "Playlists",
|
||||
"channel_tab_community_label": "Community",
|
||||
"channel_tab_posts_label": "Posts",
|
||||
"channel_tab_channels_label": "Channels",
|
||||
"toggle_theme": "Toggle Theme",
|
||||
"carousel_slide": "Slide {{current}} of {{total}}",
|
||||
"carousel_skip": "Skip the Carousel",
|
||||
"carousel_go_to": "Go to slide `x`"
|
||||
}
|
||||
|
219
locales/eo.json
219
locales/eo.json
@ -5,8 +5,8 @@
|
||||
"Subscribe": "Abonu",
|
||||
"View channel on YouTube": "Vidu kanalon en JuTubo",
|
||||
"View playlist on YouTube": "Vidu ludliston en JuTubo",
|
||||
"newest": "pli novaj",
|
||||
"oldest": "pli malnovaj",
|
||||
"newest": "plej novaj",
|
||||
"oldest": "plej malnovaj",
|
||||
"popular": "popularaj",
|
||||
"last": "lasta",
|
||||
"Next page": "Sekva paĝo",
|
||||
@ -14,22 +14,21 @@
|
||||
"Clear watch history?": "Ĉu forigi vidohistorion?",
|
||||
"New password": "Nova pasvorto",
|
||||
"New passwords must match": "Novaj pasvortoj devas kongrui",
|
||||
"Cannot change password for Google accounts": "Ne eblas ŝanĝi pasvorton por kontoj de Google",
|
||||
"Authorize token?": "Ĉu rajtigi ĵetonon?",
|
||||
"Authorize token for `x`?": "Ĉu rajtigi ĵetonon por `x`?",
|
||||
"Yes": "Jes",
|
||||
"No": "Ne",
|
||||
"Import and Export Data": "Importi kaj Eksporti Datumojn",
|
||||
"Import": "Importi",
|
||||
"Import Invidious data": "Importi datumojn de Invidious",
|
||||
"Import YouTube subscriptions": "Importi abonojn de JuTubo",
|
||||
"Import Invidious data": "Importi JSON-datumojn de Invidious",
|
||||
"Import YouTube subscriptions": "Importi abonojn de YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importi abonojn de FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importi abonojn de NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importi datumojn de NewPipe (.zip)",
|
||||
"Export": "Eksporti",
|
||||
"Export subscriptions as OPML": "Eksporti abonojn kiel OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Eksporti abonojn kiel OPML (por NewPipe kaj FreeTube)",
|
||||
"Export data as JSON": "Eksporti datumojn kiel JSON",
|
||||
"Export data as JSON": "Eksporti Invidious-datumojn kiel JSON",
|
||||
"Delete account?": "Ĉu forigi konton?",
|
||||
"History": "Historio",
|
||||
"An alternative front-end to YouTube": "Alternativa fasado al JuTubo",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "fonto",
|
||||
"Log in": "Ensaluti",
|
||||
"Log in/register": "Ensaluti/Registriĝi",
|
||||
"Log in with Google": "Ensaluti al Google",
|
||||
"User ID": "Uzula identigilo",
|
||||
"Password": "Pasvorto",
|
||||
"Time (h:mm:ss):": "Horo (h:mm:ss):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "Ensaluti",
|
||||
"Register": "Registriĝi",
|
||||
"E-mail": "Retpoŝto",
|
||||
"Google verification code": "Kontrolkodo de Google",
|
||||
"Preferences": "Agordoj",
|
||||
"preferences_category_player": "Spektilaj agordoj",
|
||||
"preferences_video_loop_label": "Ĉiam ripeti: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"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_vr_mode_label": "Interagaj 360-gradaj filmoj (postulas WebGL-n): ",
|
||||
"preferences_category_visual": "Vidaj preferoj",
|
||||
"preferences_player_style_label": "Ludila stilo: ",
|
||||
"Dark mode: ": "Malhela reĝimo: ",
|
||||
@ -75,7 +72,7 @@
|
||||
"light": "hela",
|
||||
"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_automatic_instance_redirect_label": "Aŭtomata alidirektado de nodo (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: ",
|
||||
@ -121,7 +118,7 @@
|
||||
"Subscriptions": "Abonoj",
|
||||
"search": "serĉi",
|
||||
"Log out": "Elsaluti",
|
||||
"Released under the AGPLv3 on Github.": "Eldonita sub la AGPLv3 en Github.",
|
||||
"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.",
|
||||
@ -140,8 +137,7 @@
|
||||
"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",
|
||||
"Switch Invidious Instance": "Ŝanĝi nodon de Indivious",
|
||||
"Hide annotations": "Kaŝi prinotojn",
|
||||
"Show annotations": "Montri prinotojn",
|
||||
"Genre: ": "Ĝenro: ",
|
||||
@ -158,24 +154,19 @@
|
||||
"View YouTube comments": "Vidi komentojn de JuTubo",
|
||||
"View more comments on Reddit": "Vidi pli komentoj en Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vidi `x` komentojn",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vidi `x` komenton",
|
||||
"": "Vidi `x` komentojn"
|
||||
},
|
||||
"View Reddit comments": "Vidi komentojn de Reddit",
|
||||
"Hide replies": "Kaŝi respondojn",
|
||||
"Show replies": "Montri respondojn",
|
||||
"Incorrect password": "Malbona pasvorto",
|
||||
"Quota exceeded, try again in a few hours": "Kvoto transpasita, provu denove post iuj horoj",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Ne povas ensaluti, certigu, ke dufaktora aŭtentigo (Authenticator aŭ SMS) estas ebligita.",
|
||||
"Invalid TFA code": "Nevalida TFA-kodo",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Ensalutado fiaskis. Eble ĉar la dufaktora aŭtentigo estas malebligita en via konto.",
|
||||
"Wrong answer": "Nevalida respondo",
|
||||
"Erroneous CAPTCHA": "Nevalida CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA estas deviga kampo",
|
||||
"User ID is a required field": "Uzula identigilo estas deviga kampo",
|
||||
"Password is a required field": "Pasvorto estas deviga kampo",
|
||||
"Wrong username or password": "Nevalida uzantnomo aŭ pasvorto",
|
||||
"Please sign in using 'Log in with Google'": "Bonvolu ensaluti per 'Ensaluti per Google'",
|
||||
"Password cannot be empty": "Pasvorto ne povas esti malplena",
|
||||
"Password cannot be longer than 55 characters": "Pasvorto ne povas esti pli longa ol 55 signoj",
|
||||
"Please log in": "Bonvolu ensaluti",
|
||||
@ -326,42 +317,41 @@
|
||||
"`x` marked it with a ❤": "`x` markis ĝin per ❤",
|
||||
"Audio mode": "Aŭda reĝimo",
|
||||
"Video mode": "Videa reĝimo",
|
||||
"Videos": "Filmetoj",
|
||||
"channel_tab_videos_label": "Videoj",
|
||||
"Playlists": "Ludlistoj",
|
||||
"Community": "Komunumo",
|
||||
"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",
|
||||
"channel_tab_community_label": "Komunumo",
|
||||
"search_filters_sort_option_relevance": "rilateco",
|
||||
"search_filters_sort_option_rating": "takso",
|
||||
"search_filters_sort_option_date": "dato",
|
||||
"search_filters_sort_option_views": "vidoj",
|
||||
"search_filters_type_label": "enhavtipo",
|
||||
"search_filters_duration_label": "daŭro",
|
||||
"search_filters_features_label": "trajtoj",
|
||||
"search_filters_sort_label": "ordigi",
|
||||
"search_filters_date_option_hour": "horo",
|
||||
"search_filters_date_option_today": "hodiaŭ",
|
||||
"search_filters_date_option_week": "semajno",
|
||||
"search_filters_date_option_month": "monato",
|
||||
"search_filters_date_option_year": "jaro",
|
||||
"search_filters_type_option_video": "filmeto",
|
||||
"search_filters_type_option_channel": "kanalo",
|
||||
"search_filters_type_option_playlist": "ludlisto",
|
||||
"search_filters_type_option_movie": "filmo",
|
||||
"search_filters_type_option_show": "spektaĵo",
|
||||
"search_filters_features_option_hd": "altdistingiva",
|
||||
"search_filters_features_option_subtitles": "subtekstoj",
|
||||
"search_filters_features_option_c_commons": "Krea Komunaĵo",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "nuna",
|
||||
"search_filters_features_option_four_k": "4k",
|
||||
"search_filters_features_option_location": "loko",
|
||||
"search_filters_features_option_hdr": "granddinamikgama",
|
||||
"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)",
|
||||
"search_filters_duration_option_long": "Longa (> 20 minutos)",
|
||||
"search_filters_duration_option_short": "Mallonga (< 4 minutos)",
|
||||
"footer_documentation": "Dokumentaro",
|
||||
"footer_source_code": "Fontkodo",
|
||||
"adminprefs_modified_source_code_url_label": "URL al modifita deponejo de fontkodo",
|
||||
@ -369,5 +359,132 @@
|
||||
"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: "
|
||||
"preferences_quality_dash_label": "Preferata DASH-a videkvalito: ",
|
||||
"search_filters_title": "Filtri",
|
||||
"preferences_quality_dash_option_best": "Plej bona",
|
||||
"preferences_quality_dash_option_worst": "Malplej bona",
|
||||
"Popular enabled: ": "Populara sekcio ebligita: ",
|
||||
"search_message_no_results": "Neniu rezulto trovita.",
|
||||
"search_message_use_another_instance": " Vi ankaŭ povas <a href=\"`x`\">serĉi en alia nodo</a>.",
|
||||
"tokens_count": "{{count}} ĵetono",
|
||||
"tokens_count_plural": "{{count}} ĵetonoj",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} nevidita sciigo",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} neviditaj sciigoj",
|
||||
"Indonesian (auto-generated)": "Indonezia (aŭtomate generita)",
|
||||
"Interlingue": "Interlingvo",
|
||||
"Italian (auto-generated)": "Itala (aŭtomate generita)",
|
||||
"Korean (auto-generated)": "Korea (aŭtomate generita)",
|
||||
"Portuguese (Brazil)": "Portugala (Brazilo)",
|
||||
"Portuguese (auto-generated)": "Portugala (aŭtomate generita)",
|
||||
"Russian (auto-generated)": "Rusa (aŭtomate generita)",
|
||||
"Spanish (Spain)": "Hispana (Hispanio)",
|
||||
"generic_count_years": "{{count}} jaro",
|
||||
"generic_count_years_plural": "{{count}} jaroj",
|
||||
"Turkish (auto-generated)": "Turka (aŭtomate generita)",
|
||||
"Vietnamese (auto-generated)": "Vjetnama (aŭtomate generita)",
|
||||
"generic_count_hours": "{{count}} horo",
|
||||
"generic_count_hours_plural": "{{count}} horoj",
|
||||
"generic_count_minutes": "{{count}} minuto",
|
||||
"generic_count_minutes_plural": "{{count}} minutoj",
|
||||
"search_filters_date_label": "Alŝutdato",
|
||||
"search_filters_date_option_none": "Ajna dato",
|
||||
"search_filters_duration_option_medium": "Meza (4 - 20 minutoj)",
|
||||
"search_filters_features_option_three_sixty": "360º",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"user_created_playlists": "`x`kreitaj ludlistoj",
|
||||
"user_saved_playlists": "`x`konservitaj ludlistoj",
|
||||
"crash_page_switch_instance": "klopodis <a href=\"`x`\">uzi alian nodon</a>",
|
||||
"crash_page_read_the_faq": "legis la <a href=\"`x`\">oftajn demandojn</a>",
|
||||
"error_video_not_in_playlist": "La petita video ne ekzistas en ĉi tiu ludlisto. <a href=\"`x`\">Alklaku ĉi tie por iri al la ludlista hejmpaĝo.</a>",
|
||||
"crash_page_search_issue": "serĉis por <a href=\"`x`\">ekzistantaj problemoj en GitHub</a>",
|
||||
"generic_count_seconds": "{{count}} sekundo",
|
||||
"generic_count_seconds_plural": "{{count}} sekundoj",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"comments_view_x_replies": "Vidi {{count}} respondon",
|
||||
"comments_view_x_replies_plural": "Vidi {{count}} respondojn",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"invidious": "Invidious",
|
||||
"Chinese (Taiwan)": "Ĉina (Tajvano)",
|
||||
"English (United Kingdom)": "Angla (Britio)",
|
||||
"search_filters_features_option_purchased": "Aĉetita",
|
||||
"Japanese (auto-generated)": "Japana (aŭtomate generita)",
|
||||
"search_message_change_filters_or_query": "Provu vastigi vian serĉpeton kaj/aŭ ŝanĝi la filtrilojn.",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"generic_count_weeks": "{{count}} semajno",
|
||||
"generic_count_weeks_plural": "{{count}} semajnoj",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_auto": "Aŭtomate",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"English (United States)": "Angla (Usono)",
|
||||
"Chinese": "Ĉina",
|
||||
"videoinfo_watch_on_youTube": "Vidi en YouTube",
|
||||
"crash_page_you_found_a_bug": "Ŝajnas, ke vi trovis eraron en Invidious!",
|
||||
"comments_points_count": "{{count}} poento",
|
||||
"comments_points_count_plural": "{{count}} poentoj",
|
||||
"Cantonese (Hong Kong)": "Kantona (Honkongo)",
|
||||
"preferences_watch_history_label": "Ebligi vidohistorion: ",
|
||||
"preferences_quality_option_small": "Eta",
|
||||
"generic_playlists_count": "{{count}} ludlisto",
|
||||
"generic_playlists_count_plural": "{{count}} ludlistoj",
|
||||
"videoinfo_youTube_embed_link": "Enigi",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Meza",
|
||||
"generic_subscriptions_count": "{{count}} abono",
|
||||
"generic_subscriptions_count_plural": "{{count}} abonoj",
|
||||
"videoinfo_started_streaming_x_ago": "Komercis elsendi antaŭ `x`",
|
||||
"download_subtitles": "Subtitoloj - `x` (.vtt)",
|
||||
"videoinfo_invidious_embed_link": "Enigi Ligilon",
|
||||
"crash_page_report_issue": "Se neniu el la antaŭaj agoj helpis, bonvolu <a href=\"`x`\">estigi novan problemon en GitHub</a> (prefere angle) kaj inkludi la jenan tekston en via mesaĝo (NE traduku tiun tekston):",
|
||||
"preferences_quality_option_dash": "DASH (adapta kvalito)",
|
||||
"Chinese (Hong Kong)": "Ĉina (Honkongo)",
|
||||
"Chinese (China)": "Ĉina (Ĉinio)",
|
||||
"Dutch (auto-generated)": "Nederlanda (aŭtomate generita)",
|
||||
"German (auto-generated)": "Germana (aŭtomate generita)",
|
||||
"French (auto-generated)": "Franca (aŭtomate generita)",
|
||||
"Spanish (Mexico)": "Hispana (Meksiko)",
|
||||
"Spanish (auto-generated)": "Hispana (aŭtomate generita)",
|
||||
"generic_count_days": "{{count}} tago",
|
||||
"generic_count_days_plural": "{{count}} tagoj",
|
||||
"search_filters_type_option_all": "Ajna speco",
|
||||
"search_filters_duration_option_none": "Ajna daŭro",
|
||||
"search_filters_apply_button": "Uzi elektitajn filtrilojn",
|
||||
"none": "neniu",
|
||||
"Video unavailable": "Nedisponebla video",
|
||||
"crash_page_before_reporting": "Antaŭ ol informi pri eraro certigu, ke vi:",
|
||||
"crash_page_refresh": "klopodis <a href=\"`x`\">reŝarĝi la paĝon</a>",
|
||||
"generic_views_count": "{{count}} spekto",
|
||||
"generic_views_count_plural": "{{count}} spektoj",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videoj",
|
||||
"generic_subscribers_count": "{{count}} abonanto",
|
||||
"generic_subscribers_count_plural": "{{count}} abonantoj",
|
||||
"generic_count_months": "{{count}} monato",
|
||||
"generic_count_months_plural": "{{count}} monatoj",
|
||||
"preferences_save_player_pos_label": "Konservi ludadan pozicion: ",
|
||||
"channel_tab_streams_label": "Tujelsendoj",
|
||||
"channel_tab_playlists_label": "Ludlistoj",
|
||||
"channel_tab_channels_label": "Kanaloj",
|
||||
"channel_tab_shorts_label": "Mallongaj",
|
||||
"Music in this video": "Muziko en ĉi tiu video",
|
||||
"Artist: ": "Artisto: ",
|
||||
"Album: ": "Albumo: ",
|
||||
"Channel Sponsor": "Kanala sponsoro",
|
||||
"Song: ": "Muzikaĵo: ",
|
||||
"Standard YouTube license": "Implicita YouTube-licenco",
|
||||
"Download is disabled": "Elŝuto estas malebligita",
|
||||
"Import YouTube playlist (.csv)": "Importi YouTube-ludliston (.csv)",
|
||||
"generic_button_edit": "Redakti",
|
||||
"playlist_button_add_items": "Aldoni videojn",
|
||||
"generic_button_rss": "RSS",
|
||||
"generic_button_delete": "Forigi",
|
||||
"channel_tab_podcasts_label": "Podkastoj",
|
||||
"generic_button_cancel": "Nuligi",
|
||||
"channel_tab_releases_label": "Eldonoj",
|
||||
"generic_button_save": "Konservi",
|
||||
"generic_channels_count": "{{count}} kanalo",
|
||||
"generic_channels_count_plural": "{{count}} kanaloj"
|
||||
}
|
||||
|
266
locales/es.json
266
locales/es.json
@ -14,7 +14,6 @@
|
||||
"Clear watch history?": "¿Quiere borrar el historial de reproducción?",
|
||||
"New password": "Nueva contraseña",
|
||||
"New passwords must match": "Las nuevas contraseñas deben coincidir",
|
||||
"Cannot change password for Google accounts": "No se puede cambiar la contraseña de la cuenta de Google",
|
||||
"Authorize token?": "¿Autorizar el token?",
|
||||
"Authorize token for `x`?": "¿Autorizar el token para `x`?",
|
||||
"Yes": "Sí",
|
||||
@ -22,7 +21,7 @@
|
||||
"Import and Export Data": "Importación y exportación de datos",
|
||||
"Import": "Importar",
|
||||
"Import Invidious data": "Importar datos JSON de Invidious",
|
||||
"Import YouTube subscriptions": "Importar suscripciones de YouTube/OPML",
|
||||
"Import YouTube subscriptions": "Importar suscripciones CSV u OPML de YouTube",
|
||||
"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)",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "código fuente",
|
||||
"Log in": "Iniciar sesión",
|
||||
"Log in/register": "Iniciar sesión/Registrarse",
|
||||
"Log in with Google": "Iniciar sesión en Google",
|
||||
"User ID": "Nombre",
|
||||
"Password": "Contraseña",
|
||||
"Time (h:mm:ss):": "Hora (h:mm:ss):",
|
||||
@ -46,27 +44,26 @@
|
||||
"Sign In": "Iniciar sesión",
|
||||
"Register": "Registrarse",
|
||||
"E-mail": "Correo",
|
||||
"Google verification code": "Código de verificación de Google",
|
||||
"Preferences": "Preferencias",
|
||||
"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_continue_autoplay_label": "Reproducir automáticamente el video siguiente: ",
|
||||
"preferences_listen_label": "Activar el sonido por defecto: ",
|
||||
"preferences_local_label": "¿Usar un proxy para los vídeos? ",
|
||||
"preferences_local_label": "¿Usar un proxy para los videos? ",
|
||||
"preferences_speed_label": "Velocidad por defecto: ",
|
||||
"preferences_quality_label": "Calidad de vídeo preferida: ",
|
||||
"preferences_quality_label": "Calidad de video preferida: ",
|
||||
"preferences_volume_label": "Volumen del reproductor: ",
|
||||
"preferences_comments_label": "Comentarios por defecto: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Subtítulos por defecto: ",
|
||||
"Fallback captions: ": "Subtítulos alternativos: ",
|
||||
"preferences_related_videos_label": "¿Mostrar vídeos relacionados? ",
|
||||
"preferences_related_videos_label": "¿Mostrar videos 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_extend_desc_label": "Extender automáticamente la descripción del video: ",
|
||||
"preferences_vr_mode_label": "Videos interactivos de 360 grados (necesita WebGL): ",
|
||||
"preferences_category_visual": "Preferencias visuales",
|
||||
"preferences_player_style_label": "Estilo de reproductor: ",
|
||||
"Dark mode: ": "Modo oscuro: ",
|
||||
@ -79,21 +76,21 @@
|
||||
"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: ",
|
||||
"preferences_max_results_label": "Número de vídeos mostrados en la fuente: ",
|
||||
"preferences_sort_label": "Ordenar los vídeos por: ",
|
||||
"preferences_max_results_label": "Número de videos mostrados en la fuente: ",
|
||||
"preferences_sort_label": "Ordenar los videos por: ",
|
||||
"published": "fecha de publicación",
|
||||
"published - reverse": "fecha de publicación: orden inverso",
|
||||
"alphabetically": "alfabéticamente",
|
||||
"alphabetically - reverse": "alfabéticamente: orden inverso",
|
||||
"channel name": "nombre del canal",
|
||||
"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 latest video from channel: ": "Mostrar solo el último video del canal: ",
|
||||
"Only show latest unwatched video from channel: ": "Mostrar solo el último video sin ver del canal: ",
|
||||
"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",
|
||||
"`x` is live": "`x` está en directo",
|
||||
"preferences_category_data": "Preferencias de los datos",
|
||||
"Clear watch history": "Borrar el historial de reproducción",
|
||||
"Import/export data": "Importar/Exportar datos",
|
||||
@ -105,7 +102,7 @@
|
||||
"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: ",
|
||||
"preferences_show_nick_label": "Mostrar nombre de usuario encima: ",
|
||||
"Top enabled: ": "¿Habilitar los destacados? ",
|
||||
"CAPTCHA enabled: ": "¿Habilitar los CAPTCHA? ",
|
||||
"Login enabled: ": "¿Habilitar el inicio de sesión? ",
|
||||
@ -114,14 +111,14 @@
|
||||
"Save preferences": "Guardar las preferencias",
|
||||
"Subscription manager": "Gestor de suscripciones",
|
||||
"Token manager": "Gestor de tokens",
|
||||
"Token": "Token",
|
||||
"Token": "Ficha",
|
||||
"Import/export": "Importar/Exportar",
|
||||
"unsubscribe": "Desuscribirse",
|
||||
"unsubscribe": "desuscribirse",
|
||||
"revoke": "revocar",
|
||||
"Subscriptions": "Suscripciones",
|
||||
"search": "buscar",
|
||||
"Log out": "Cerrar la sesión",
|
||||
"Released under the AGPLv3 on Github.": "Publicado bajo la AGPLv3 en Github.",
|
||||
"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.",
|
||||
@ -136,48 +133,42 @@
|
||||
"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'",
|
||||
"Editing playlist `x`": "Editando la lista de reproducción `x`",
|
||||
"Show more": "Mostrar más",
|
||||
"Show less": "Mostrar menos",
|
||||
"Watch on YouTube": "Ver el vídeo en YouTube",
|
||||
"Watch on YouTube": "Ver 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: ",
|
||||
"License: ": "Licencia: ",
|
||||
"Family friendly? ": "¿Filtrar contenidos? ",
|
||||
"Wilson score: ": "Puntuación Wilson: ",
|
||||
"Engagement: ": "Compromiso: ",
|
||||
"Engagement: ": "Retención: ",
|
||||
"Whitelisted regions: ": "Regiones permitidas: ",
|
||||
"Blacklisted regions: ": "Regiones bloqueadas: ",
|
||||
"Shared `x`": "Compartido `x`",
|
||||
"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.",
|
||||
"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 tienes JavaScript desactivado. Haz clic aquí para ver los comentarios, ten en cuenta que pueden tardar un poco más en cargar.",
|
||||
"View YouTube comments": "Ver los comentarios de YouTube",
|
||||
"View more comments on Reddit": "Ver más comentarios en Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentarios",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentario",
|
||||
"": "Ver `x` comentarios"
|
||||
},
|
||||
"View Reddit comments": "Ver los comentarios de Reddit",
|
||||
"Hide replies": "Ocultar las respuestas",
|
||||
"Show replies": "Mostrar las respuestas",
|
||||
"Incorrect password": "Contraseña incorrecta",
|
||||
"Quota exceeded, try again in a few hours": "Cuota excedida, pruebe otra vez en unas horas",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "No se puede iniciar sesión, asegúrese de que la autentificación de dos factores (autentificador o SMS) esté habilitada.",
|
||||
"Invalid TFA code": "Código TFA no válido",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Error de inicio de sesion. Puede deberse a que la autentificación de dos factores no está habilitada en su cuenta.",
|
||||
"Wrong answer": "Respuesta no válida",
|
||||
"Erroneous CAPTCHA": "CAPTCHA no válido",
|
||||
"CAPTCHA is a required field": "El CAPTCHA es un campo obligatorio",
|
||||
"User ID is a required field": "El nombre es un campo obligatorio",
|
||||
"Password is a required field": "La contraseña es un campo obligatorio",
|
||||
"Wrong username or password": "Nombre o contraseña incorrecto",
|
||||
"Please sign in using 'Log in with Google'": "Inicie sesión con «Iniciar sesión con Google»",
|
||||
"Password cannot be empty": "La contraseña no puede estar en blanco",
|
||||
"Password cannot be longer than 55 characters": "La contraseña no puede tener más de 55 caracteres",
|
||||
"Password cannot be longer than 55 characters": "La contraseña no debe tener más de 55 caracteres",
|
||||
"Please log in": "Inicie sesión, por favor",
|
||||
"Invidious Private Feed for `x`": "Fuente privada de Invidious para `x`",
|
||||
"channel:`x`": "canal: `x`",
|
||||
@ -196,10 +187,10 @@
|
||||
"Hidden field \"token\" is a required field": "El campo oculto «símbolo» es un campo obligatorio",
|
||||
"Erroneous challenge": "Desafío no válido",
|
||||
"Erroneous token": "Símbolo no válido",
|
||||
"No such user": "Usuario no válido",
|
||||
"No such user": "Usuario no existe",
|
||||
"Token is expired, please try again": "El símbolo ha caducado, inténtelo de nuevo",
|
||||
"English": "Inglés",
|
||||
"English (auto-generated)": "Inglés (generados automáticamente)",
|
||||
"English (auto-generated)": "Inglés (generado automáticamente)",
|
||||
"Afrikaans": "Afrikáans",
|
||||
"Albanian": "Albanés",
|
||||
"Amharic": "Amárico",
|
||||
@ -321,55 +312,55 @@
|
||||
"Download as: ": "Descargar como: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(editado)",
|
||||
"YouTube comment permalink": "Enlace permanente de YouTube del comentario",
|
||||
"YouTube comment permalink": "Enlace permanente de comentario de YouTube",
|
||||
"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",
|
||||
"Video mode": "Modo de video",
|
||||
"channel_tab_videos_label": "Videos",
|
||||
"Playlists": "Listas de reproducción",
|
||||
"Community": "Comunidad",
|
||||
"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",
|
||||
"channel_tab_community_label": "Comunidad",
|
||||
"search_filters_sort_option_relevance": "Relevancia",
|
||||
"search_filters_sort_option_rating": "Valoración",
|
||||
"search_filters_sort_option_date": "Fecha de subida",
|
||||
"search_filters_sort_option_views": "Visualizaciones",
|
||||
"search_filters_type_label": "Tipo de contenido",
|
||||
"search_filters_duration_label": "Duración",
|
||||
"search_filters_features_label": "Funcionalidades",
|
||||
"search_filters_sort_label": "Ordenar",
|
||||
"search_filters_date_option_hour": "Última hora",
|
||||
"search_filters_date_option_today": "Hoy",
|
||||
"search_filters_date_option_week": "Esta semana",
|
||||
"search_filters_date_option_month": "Este mes",
|
||||
"search_filters_date_option_year": "Este año",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Canal",
|
||||
"search_filters_type_option_playlist": "Lista de reproducción",
|
||||
"search_filters_type_option_movie": "Película",
|
||||
"search_filters_type_option_show": "Programa",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Subtítulos",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "En directo",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Ubicación",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"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": "Después de lo cual debes intentar: ",
|
||||
"next_steps_error_message_refresh": "Recargar la página",
|
||||
"next_steps_error_message_go_to_youtube": "Ir a YouTube",
|
||||
"short": "Corto (< 4 minutos)",
|
||||
"long": "Largo (> 20 minutos)",
|
||||
"search_filters_duration_option_short": "Menos de 4 minutos",
|
||||
"search_filters_duration_option_medium": "De 4 a 20 minutos",
|
||||
"search_filters_duration_option_long": "Más de 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",
|
||||
"adminprefs_modified_source_code_url_label": "Enlace 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_dash_label": "Calidad de video DASH preferida: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Intermedia",
|
||||
"preferences_quality_dash_option_auto": "Automática",
|
||||
@ -378,7 +369,7 @@
|
||||
"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",
|
||||
"Video unavailable": "Video no disponible",
|
||||
"videoinfo_youTube_embed_link": "Insertar",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
@ -395,44 +386,59 @@
|
||||
"preferences_quality_dash_option_worst": "La peor",
|
||||
"videoinfo_invidious_embed_link": "Enlace para Insertar",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"purchased": "Comprado",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_purchased": "Comprado",
|
||||
"search_filters_features_option_three_sixty": "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",
|
||||
"generic_views_count_0": "{{count}} visualización",
|
||||
"generic_views_count_1": "{{count}} visualizaciones",
|
||||
"generic_views_count_2": "{{count}} visualizaciones",
|
||||
"generic_subscribers_count_0": "{{count}} suscriptor",
|
||||
"generic_subscribers_count_1": "{{count}} suscriptores",
|
||||
"generic_subscribers_count_2": "{{count}} suscriptores",
|
||||
"generic_subscriptions_count_0": "{{count}} suscripción",
|
||||
"generic_subscriptions_count_1": "{{count}} suscripciones",
|
||||
"generic_subscriptions_count_2": "{{count}} suscripciones",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} notificación sin ver",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} notificaciones sin ver",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} notificaciones sin ver",
|
||||
"generic_count_days_0": "{{count}} día",
|
||||
"generic_count_days_1": "{{count}} días",
|
||||
"generic_count_days_2": "{{count}} días",
|
||||
"comments_view_x_replies_0": "Ver {{count}} respuesta",
|
||||
"comments_view_x_replies_1": "Ver {{count}} respuestas",
|
||||
"comments_view_x_replies_2": "Ver {{count}} respuestas",
|
||||
"generic_count_weeks_0": "{{count}} semana",
|
||||
"generic_count_weeks_1": "{{count}} semanas",
|
||||
"generic_count_weeks_2": "{{count}} semanas",
|
||||
"generic_playlists_count_0": "{{count}} lista de reproducción",
|
||||
"generic_playlists_count_1": "{{count}} listas de reproducciones",
|
||||
"generic_playlists_count_2": "{{count}} listas de reproducciones",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} videos",
|
||||
"generic_videos_count_2": "{{count}} videos",
|
||||
"generic_count_months_0": "{{count}} mes",
|
||||
"generic_count_months_1": "{{count}} meses",
|
||||
"generic_count_months_2": "{{count}} meses",
|
||||
"comments_points_count_0": "{{count}} punto",
|
||||
"comments_points_count_1": "{{count}} puntos",
|
||||
"comments_points_count_2": "{{count}} puntos",
|
||||
"generic_count_years_0": "{{count}} año",
|
||||
"generic_count_years_1": "{{count}} años",
|
||||
"generic_count_years_2": "{{count}} años",
|
||||
"generic_count_hours_0": "{{count}} hora",
|
||||
"generic_count_hours_1": "{{count}} horas",
|
||||
"generic_count_hours_2": "{{count}} horas",
|
||||
"generic_count_minutes_0": "{{count}} minuto",
|
||||
"generic_count_minutes_1": "{{count}} minutos",
|
||||
"generic_count_minutes_2": "{{count}} minutos",
|
||||
"generic_count_seconds_0": "{{count}} segundo",
|
||||
"generic_count_seconds_1": "{{count}} segundos",
|
||||
"generic_count_seconds_2": "{{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_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):",
|
||||
@ -459,5 +465,55 @@
|
||||
"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: "
|
||||
"preferences_watch_history_label": "Habilitar historial de reproducciones: ",
|
||||
"search_message_no_results": "No se han encontrado resultados.",
|
||||
"search_message_change_filters_or_query": "Pruebe ampliar la consulta de búsqueda y/o a cambiar los filtros.",
|
||||
"search_filters_title": "Filtros",
|
||||
"search_filters_date_label": "Fecha de subida",
|
||||
"search_filters_date_option_none": "Cualquier fecha",
|
||||
"search_filters_type_option_all": "Cualquier tipo",
|
||||
"search_filters_duration_option_none": "Cualquier duración",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_apply_button": "Aplicar filtros",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"tokens_count_1": "{{count}} tokens",
|
||||
"tokens_count_2": "{{count}} tokens",
|
||||
"search_message_use_another_instance": "También puedes <a href=\"`x`\">buscar en otra instancia</a>.",
|
||||
"Popular enabled: ": "¿Habilitar la sección popular? ",
|
||||
"error_video_not_in_playlist": "El video que solicitaste no existe en esta lista de reproducción. <a href=\"`x`\">Haz clic aquí para acceder a la página de inicio de la lista de reproducción.</a>",
|
||||
"channel_tab_streams_label": "Directos",
|
||||
"channel_tab_channels_label": "Canales",
|
||||
"channel_tab_shorts_label": "Cortos",
|
||||
"channel_tab_playlists_label": "Listas de reproducción",
|
||||
"Music in this video": "Música en este video",
|
||||
"Artist: ": "Artista: ",
|
||||
"Album: ": "Álbum: ",
|
||||
"Song: ": "Canción: ",
|
||||
"Channel Sponsor": "Patrocinador del canal",
|
||||
"Standard YouTube license": "Licencia de YouTube estándar",
|
||||
"Download is disabled": "La descarga está deshabilitada",
|
||||
"Import YouTube playlist (.csv)": "Importar lista de reproducción de YouTube (.csv)",
|
||||
"playlist_button_add_items": "Añadir vídeos",
|
||||
"generic_button_edit": "Editar",
|
||||
"generic_button_save": "Guardar",
|
||||
"generic_button_delete": "Borrar",
|
||||
"generic_button_cancel": "Cancelar",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"channel_tab_releases_label": "Publicaciones",
|
||||
"generic_channels_count_0": "{{count}} canal",
|
||||
"generic_channels_count_1": "{{count}} canales",
|
||||
"generic_channels_count_2": "{{count}} canales",
|
||||
"Import YouTube watch history (.json)": "Importar el historial de las visualizaciones de YouTube (.json)",
|
||||
"toggle_theme": "Alternar tema",
|
||||
"Add to playlist: ": "Añadir a la lista de reproducción: ",
|
||||
"Add to playlist": "Añadir a la lista de reproducción",
|
||||
"Answer": "Respuesta",
|
||||
"Search for videos": "Buscar por vídeos",
|
||||
"The Popular feed has been disabled by the administrator.": "El feed Popular ha sido desactivado por el administrador.",
|
||||
"carousel_slide": "Diapositiva {{current}} de {{total}}",
|
||||
"carousel_skip": "Saltar el carrusel",
|
||||
"carousel_go_to": "Ir a la diapositiva `x`",
|
||||
"preferences_preload_label": "Precargar datos del vídeo: ",
|
||||
"Filipino (auto-generated)": "Filipino (generado automáticamente)"
|
||||
}
|
||||
|
332
locales/et.json
Normal file
332
locales/et.json
Normal file
@ -0,0 +1,332 @@
|
||||
{
|
||||
"generic_playlists_count": "{{count}} esitusloend",
|
||||
"generic_playlists_count_plural": "{{count}} esindusloendit",
|
||||
"LIVE": "OTSEÜLEKANNE",
|
||||
"View channel on YouTube": "Vaata kanalit YouTube'is",
|
||||
"Log in": "Logi sisse",
|
||||
"Log in/register": "Logi sisse/registreeru",
|
||||
"Dark mode: ": "Tume režiim: ",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} videot",
|
||||
"generic_subscribers_count": "{{count}} tellija",
|
||||
"generic_subscribers_count_plural": "{{count}} tellijat",
|
||||
"generic_subscriptions_count": "{{count}} tellimus",
|
||||
"generic_subscriptions_count_plural": "{{count}} tellimust",
|
||||
"Shared `x` ago": "Jagatud `x` tagasi",
|
||||
"Unsubscribe": "Loobu tellimusest",
|
||||
"Subscribe": "Telli",
|
||||
"View playlist on YouTube": "Vaata esitusloendit YouTube'is",
|
||||
"newest": "uusimad",
|
||||
"oldest": "vanimad",
|
||||
"popular": "populaarsed",
|
||||
"last": "viimane",
|
||||
"Next page": "Järgmine leht",
|
||||
"Previous page": "Eelmine leht",
|
||||
"Clear watch history?": "Kustuta vaatamiste ajalugu?",
|
||||
"New password": "Uus salasõna",
|
||||
"New passwords must match": "Uued salasõnad peavad ühtima",
|
||||
"Import and Export Data": "Impordi ja ekspordi andmed",
|
||||
"Import": "Impordi",
|
||||
"Import YouTube subscriptions": "Impordi tellimused Youtube'ist/OPML-ist",
|
||||
"Import FreeTube subscriptions (.db)": "Impordi tellimused FreeTube'ist (.db)",
|
||||
"Import NewPipe data (.zip)": "Impordi NewPipe'i andmed (.zip)",
|
||||
"Export": "Ekspordi",
|
||||
"Export subscriptions as OPML": "Ekspordi tellimused OPML-ina",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Ekspordi tellimused OPML-ina (NewPipe'i ja FreeTube'i jaoks)",
|
||||
"Delete account?": "Kustuta kasutaja?",
|
||||
"History": "Ajalugu",
|
||||
"JavaScript license information": "JavaScripti litsentsi info",
|
||||
"source": "allikas",
|
||||
"User ID": "Kasutada ID",
|
||||
"Password": "Salasõna",
|
||||
"Time (h:mm:ss):": "Aeg (h:mm:ss):",
|
||||
"Text CAPTCHA": "CAPTCHA-tekst",
|
||||
"Image CAPTCHA": "CAPTCHA-foto",
|
||||
"Sign In": "Logi sisse",
|
||||
"Register": "Registreeru",
|
||||
"E-mail": "E-post",
|
||||
"Preferences": "Eelistused",
|
||||
"preferences_category_player": "Mängija eelistused",
|
||||
"preferences_continue_autoplay_label": "Mängi järgmine video automaatselt: ",
|
||||
"preferences_quality_label": "Eelistatud videokvaliteet: ",
|
||||
"preferences_quality_option_dash": "DASH (kohanduv kvaliteet)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Keskmine",
|
||||
"preferences_quality_option_small": "Väike",
|
||||
"preferences_quality_dash_label": "Eelistatav DASH-video kvaliteet: ",
|
||||
"preferences_quality_dash_option_auto": "Automaatne",
|
||||
"preferences_quality_dash_option_best": "Parim",
|
||||
"preferences_quality_dash_option_worst": "Halvim",
|
||||
"preferences_volume_label": "Video helitugevus: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_related_videos_label": "Näita sarnaseid videosid: ",
|
||||
"preferences_vr_mode_label": "Interaktiivne 360-kraadine video (vajalik WebGL): ",
|
||||
"preferences_dark_mode_label": "Teema: ",
|
||||
"dark": "tume",
|
||||
"light": "hele",
|
||||
"preferences_category_subscription": "Tellimuse seaded",
|
||||
"preferences_max_results_label": "Avalehel näidatavate videote arv: ",
|
||||
"preferences_sort_label": "Sorteeri: ",
|
||||
"published": "avaldatud",
|
||||
"alphabetically": "tähestikulises järjekorras",
|
||||
"alphabetically - reverse": "vastupidi tähestikulises järjekorras",
|
||||
"channel name": "kanali nimi",
|
||||
"preferences_unseen_only_label": "Näita ainult vaatamata videosid: ",
|
||||
"Only show latest video from channel: ": "Näita ainult viimast videot: ",
|
||||
"preferences_notifications_only_label": "Näita ainult teavitusi (kui neid on): ",
|
||||
"Enable web notifications": "Luba veebiteavitused",
|
||||
"`x` uploaded a video": "`x` laadis video üles",
|
||||
"`x` is live": "`x` teeb otseülekannet",
|
||||
"preferences_category_data": "Andme-eelistused",
|
||||
"Clear watch history": "Puhasta vaatamisajalugu",
|
||||
"Import/export data": "Impordi/ekspordi andmed",
|
||||
"Change password": "Muuda salasõna",
|
||||
"Watch history": "Vaatamisajalugu",
|
||||
"Delete account": "Kustuta kasutaja",
|
||||
"Save preferences": "Salvesta eelistused",
|
||||
"Token": "Token",
|
||||
"Import/export": "Imprort/eksport",
|
||||
"unsubscribe": "loobu tellimusest",
|
||||
"Subscriptions": "Tellimused",
|
||||
"search": "otsi",
|
||||
"Source available here.": "Allikas on kättesaadaval siin.",
|
||||
"View privacy policy.": "Vaata privaatsuspoliitikat.",
|
||||
"Public": "Avalik",
|
||||
"Private": "Privaatne",
|
||||
"View all playlists": "Vaata kõiki esitusloendeid",
|
||||
"Updated `x` ago": "Uuendas `x` tagasi",
|
||||
"Delete playlist `x`?": "Kustuta esitusloend `x`?",
|
||||
"Delete playlist": "Kustuta esitusloend",
|
||||
"Create playlist": "Loo esitlusloend",
|
||||
"Title": "Pealkiri",
|
||||
"Playlist privacy": "Esitusloendi privaatsus",
|
||||
"Show more": "Näita rohkem",
|
||||
"Show less": "Näita vähem",
|
||||
"Watch on YouTube": "Vaata YouTube'is",
|
||||
"search_message_no_results": "Tulemusi ei leitud.",
|
||||
"search_message_change_filters_or_query": "Proovi otsingut laiendada või filtreid muuta.",
|
||||
"Genre: ": "Žanr: ",
|
||||
"License: ": "Litsents: ",
|
||||
"Family friendly? ": "Peresõbralik? ",
|
||||
"Shared `x`": "Jagas `x`",
|
||||
"Premieres in `x`": "Esilinastub `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.": "Tundub, et oled JavaScripti välja lülitanud. Vajuta siia, et kommentaare vaadata; nende laadimine võib võtta natukene rohkem aega.",
|
||||
"View Reddit comments": "Vaata Redditi kommentaare",
|
||||
"Hide replies": "Peida vastused",
|
||||
"Show replies": "Näita vastuseid",
|
||||
"Incorrect password": "Vale salasõna",
|
||||
"Wrong answer": "Vale vastus",
|
||||
"User ID is a required field": "Kasutaja ID on kohustuslik väli",
|
||||
"Password is a required field": "Salasõna on kohustuslik väli",
|
||||
"Wrong username or password": "Vale kasutajanimi või salasõna",
|
||||
"Password cannot be longer than 55 characters": "Salasõna ei tohi olla pikem kui 55 tähemärki",
|
||||
"Password cannot be empty": "Salasõna ei tohi olla tühi",
|
||||
"Please log in": "Palun logige sisse",
|
||||
"channel:`x`": "kanal:`x`",
|
||||
"Deleted or invalid channel": "Kanal on kustutatud või seda ei leitud",
|
||||
"This channel does not exist.": "Sellist kanalit pole olemas.",
|
||||
"comments_view_x_replies": "{{count}} vastus",
|
||||
"comments_view_x_replies_plural": "{{count}} vastust",
|
||||
"`x` ago": "`x` tagasi",
|
||||
"Load more": "Laadi rohkem",
|
||||
"Empty playlist": "Tühi esitusloend",
|
||||
"Not a playlist.": "Tegu pole esitusloendiga.",
|
||||
"Playlist does not exist.": "Seda esitusloendit pole olemas.",
|
||||
"No such user": "Sellist kasutajat pole",
|
||||
"English": "Inglise",
|
||||
"English (United Kingdom)": "Inglise (Suurbritannia)",
|
||||
"English (United States)": "Inglise (USA)",
|
||||
"English (auto-generated)": "Inglise (automaatselt koostatud)",
|
||||
"Afrikaans": "Afrikaani",
|
||||
"Albanian": "Albaania",
|
||||
"Arabic": "Araabia",
|
||||
"Armenian": "Armeenia",
|
||||
"Bangla": "Bengali",
|
||||
"Basque": "Baski",
|
||||
"Belarusian": "Valgevene",
|
||||
"Bulgarian": "Bulgaaria",
|
||||
"Burmese": "Birma",
|
||||
"Cantonese (Hong Kong)": "Kantoni (Hong Konk)",
|
||||
"Chinese (China)": "Hiina (Hiina)",
|
||||
"Chinese (Hong Kong)": "Hiina (Hong Kong)",
|
||||
"Chinese (Simplified)": "Hiina (lihtsustatud)",
|
||||
"Chinese (Taiwan)": "Hiina (Taiwan)",
|
||||
"Croatian": "Horvaatia",
|
||||
"Czech": "Tšehhi",
|
||||
"Danish": "Taani",
|
||||
"Dutch": "Hollandi",
|
||||
"Esperanto": "Esperanto",
|
||||
"Estonian": "Eesti",
|
||||
"Filipino": "Filipiini",
|
||||
"Finnish": "Soome",
|
||||
"French": "Prantsuse",
|
||||
"French (auto-generated)": "Prantsuse (automaatne)",
|
||||
"Dutch (auto-generated)": "Hollandi (automaatne)",
|
||||
"Galician": "Kaliitsia",
|
||||
"Georgian": "Gruusia",
|
||||
"Haitian Creole": "Haiti kreool",
|
||||
"Hausa": "Hausa",
|
||||
"Hawaiian": "Havaii",
|
||||
"Hebrew": "Heebrea",
|
||||
"Hindi": "Hindi",
|
||||
"Hungarian": "Ungari",
|
||||
"Icelandic": "Islandi",
|
||||
"Indonesian": "Indoneesia",
|
||||
"Japanese (auto-generated)": "Jaapani (automaatne)",
|
||||
"Kannada": "Kannada",
|
||||
"Kazakh": "Kasahhi",
|
||||
"Luxembourgish": "Luksemburgi",
|
||||
"Macedonian": "Makedoonia",
|
||||
"Malay": "Malai",
|
||||
"Maltese": "Malta",
|
||||
"Maori": "Maori",
|
||||
"Marathi": "Marathi",
|
||||
"Mongolian": "Mongoli",
|
||||
"Nepali": "Nepaali",
|
||||
"Norwegian Bokmål": "Norra (Bokmål)",
|
||||
"Persian": "Pärsia",
|
||||
"Polish": "Poola",
|
||||
"Portuguese": "Portugali",
|
||||
"Portuguese (auto-generated)": "Portugali (automaatne)",
|
||||
"Portuguese (Brazil)": "Portugali (Brasiilia)",
|
||||
"Romanian": "Rumeenia",
|
||||
"Russian": "Vene",
|
||||
"Russian (auto-generated)": "Vene (automaatne)",
|
||||
"Scottish Gaelic": "Šoti (Gaeli)",
|
||||
"Serbian": "Serbia",
|
||||
"Slovak": "Slovaki",
|
||||
"Slovenian": "Sloveeni",
|
||||
"Somali": "Somaali",
|
||||
"Spanish": "Hispaania",
|
||||
"Spanish (auto-generated)": "Hispaania (automaatne)",
|
||||
"Spanish (Latin America)": "Hispaania (Ladina-Ameerika)",
|
||||
"Spanish (Mexico)": "Hispaania (Mehhiko)",
|
||||
"Spanish (Spain)": "Hispaania (Hispaania)",
|
||||
"Swahili": "Suahili",
|
||||
"Swedish": "Rootsi",
|
||||
"Tajik": "Tadžiki",
|
||||
"Tamil": "Tamiili",
|
||||
"Thai": "Tai",
|
||||
"Turkish": "Türgi",
|
||||
"Turkish (auto-generated)": "Türgi (automaatne)",
|
||||
"Ukrainian": "Ukraina",
|
||||
"Uzbek": "Usbeki",
|
||||
"Vietnamese": "Vietnami",
|
||||
"Vietnamese (auto-generated)": "Vietnami (automaatne)",
|
||||
"generic_count_years": "{{count}} aasta",
|
||||
"generic_count_years_plural": "{{count}} aastat",
|
||||
"generic_count_months": "{{count}} kuu",
|
||||
"generic_count_months_plural": "{{count}} kuud",
|
||||
"generic_count_weeks": "{{count}} nädal",
|
||||
"generic_count_weeks_plural": "{{count}} nädalat",
|
||||
"generic_count_days": "{{count}} päev",
|
||||
"generic_count_days_plural": "{{count}} päeva",
|
||||
"generic_count_hours": "{{count}} tund",
|
||||
"generic_count_hours_plural": "{{count}} tundi",
|
||||
"generic_count_minutes": "{{count}} minut",
|
||||
"generic_count_minutes_plural": "{{count}} minutit",
|
||||
"Popular": "Populaarne",
|
||||
"Search": "Otsi",
|
||||
"Top": "Top",
|
||||
"About": "Leheküljest",
|
||||
"preferences_locale_label": "Keel: ",
|
||||
"View as playlist": "Vaata esitusloendina",
|
||||
"Movies": "Filmid",
|
||||
"Download as: ": "Laadi kui: ",
|
||||
"(edited)": "(muudetud)",
|
||||
"`x` marked it with a ❤": "`x` märkis ❤",
|
||||
"Audio mode": "Audiorežiim",
|
||||
"Video mode": "Videorežiim",
|
||||
"search_filters_date_label": "Üleslaadimise kuupäev",
|
||||
"search_filters_date_option_none": "Ükskõik mis kuupäev",
|
||||
"search_filters_date_option_today": "Täna",
|
||||
"search_filters_date_option_week": "Sel nädalal",
|
||||
"search_filters_date_option_hour": "Viimasel tunnil",
|
||||
"search_filters_date_option_month": "Sel kuul",
|
||||
"search_filters_date_option_year": "Sel aastal",
|
||||
"search_filters_type_label": "Tüüp",
|
||||
"search_filters_type_option_all": "Ükskõik mis tüüp",
|
||||
"search_filters_duration_label": "Kestus",
|
||||
"search_filters_type_option_show": "Näita",
|
||||
"search_filters_duration_option_none": "Ükskõik mis kestus",
|
||||
"search_filters_duration_option_short": "Lühike (alla 4 minuti)",
|
||||
"search_filters_duration_option_medium": "Keskmine (4 - 20 minutit)",
|
||||
"search_filters_duration_option_long": "Pikk (üle 20 minuti)",
|
||||
"search_filters_features_option_live": "Otseülekanne",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Subtiitrid",
|
||||
"search_filters_features_option_location": "Asukoht",
|
||||
"search_filters_sort_label": "Sorteeri",
|
||||
"search_filters_sort_option_views": "Vaatamiste arv",
|
||||
"next_steps_error_message": "Pärast mida võiksite proovida: ",
|
||||
"videoinfo_started_streaming_x_ago": "Alustas otseülekannet `x` tagasi",
|
||||
"Yes": "Jah",
|
||||
"generic_views_count": "{{count}} vaatamine",
|
||||
"generic_views_count_plural": "{{count}} vaatamist",
|
||||
"Import NewPipe subscriptions (.json)": "Impordi tellimused NewPipe'ist (.json)",
|
||||
"No": "Ei",
|
||||
"preferences_region_label": "Riik: ",
|
||||
"View YouTube comments": "Vaata YouTube'i kommentaare",
|
||||
"preferences_extend_desc_label": "Ava video kirjeldus automaatselt: ",
|
||||
"German (auto-generated)": "Saksa (automaatne)",
|
||||
"Italian": "Itaalia",
|
||||
"preferences_player_style_label": "Mängija stiil: ",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} lugemata teavitus",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} lugemata teavitust",
|
||||
"View more comments on Reddit": "Vaata teisi kommentaare Redditis",
|
||||
"Only show latest unwatched video from channel: ": "Näita ainult viimast vaatamata videot: ",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokenit",
|
||||
"Log out": "Logi välja",
|
||||
"Premieres `x`": "Linastub`x`",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vaata `x` kommentaari",
|
||||
"": "Vaata `x` kommentaare"
|
||||
},
|
||||
"Khmer": "Khmeeri",
|
||||
"Bosnian": "Bosnia",
|
||||
"Corsican": "Korsika",
|
||||
"Javanese": "Jaava",
|
||||
"Lithuanian": "Leedu",
|
||||
"channel_tab_videos_label": "Videod",
|
||||
"channel_tab_community_label": "Kogukond",
|
||||
"CAPTCHA is a required field": "CAPTCHA on kohustuslik väli",
|
||||
"comments_points_count": "{{count}} punkt",
|
||||
"comments_points_count_plural": "{{count}} punkti",
|
||||
"Chinese": "Hiina",
|
||||
"German": "Saksa",
|
||||
"Indonesian (auto-generated)": "Indoneesia (automaatne)",
|
||||
"Italian (auto-generated)": "Itaalia (automaatne)",
|
||||
"Kyrgyz": "Kirkiisi",
|
||||
"Latin": "Ladina",
|
||||
"generic_count_seconds": "{{count}} sekund",
|
||||
"generic_count_seconds_plural": "{{count}} sekundit",
|
||||
"Catalan": "Katalaani",
|
||||
"Chinese (Traditional)": "Hiina (traditsiooniline)",
|
||||
"Greek": "Kreeka",
|
||||
"Kurdish": "Kurdi",
|
||||
"Latvian": "Läti",
|
||||
"Irish": "Iiri",
|
||||
"Korean": "Korea",
|
||||
"Japanese": "Jaapani",
|
||||
"Korean (auto-generated)": "Korea (automaatne)",
|
||||
"Music": "Muusika",
|
||||
"Playlists": "Esitusloendid",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_sort_option_date": "Üleslaadimise kuupäev",
|
||||
"Current version: ": "Praegune versioon: ",
|
||||
"footer_documentation": "Dokumentatsioon",
|
||||
"Gaming": "Mängud",
|
||||
"News": "Uudised",
|
||||
"Download": "Laadi alla",
|
||||
"search_filters_title": "Filtrid",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_type_option_playlist": "Esitusloend",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"next_steps_error_message_go_to_youtube": "Minna YouTube'i",
|
||||
"next_steps_error_message_refresh": "Laadida uuesti",
|
||||
"footer_donate_page": "Anneta",
|
||||
"videoinfo_watch_on_youTube": "Vaata YouTube'is"
|
||||
}
|
217
locales/eu.json
217
locales/eu.json
@ -14,21 +14,20 @@
|
||||
"Clear watch history?": "Garbitu ikusitakoen historia?",
|
||||
"New password": "Pasahitz berria",
|
||||
"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?",
|
||||
"Yes": "Bai",
|
||||
"No": "Ez",
|
||||
"Import and Export Data": "Datuak inportatu eta esportatu",
|
||||
"Import": "Inportatu",
|
||||
"Import Invidious data": "Inportatu Invidiouseko datuak",
|
||||
"Import YouTube subscriptions": "Inportatu YouTubeko harpidetzak",
|
||||
"Import Invidious data": "Inportatu Invidiouseko JSON datuak",
|
||||
"Import YouTube subscriptions": "Inportatu YouTubeko/OPML harpidetzak",
|
||||
"Import FreeTube subscriptions (.db)": "Inportatu FreeTubeko harpidetzak (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Inportatu NewPipeko harpidetzak (.json)",
|
||||
"Import NewPipe data (.zip)": "Inportatu NewPipeko datuak (.zip)",
|
||||
"Export": "Esportatu",
|
||||
"Export subscriptions as OPML": "Esportatu harpidetzak OPML bezala",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Esportatu harpidetzak OPML bezala (NewPipe eta FreeTuberako)",
|
||||
"Export data as JSON": "Esportatu datuak JSON bezala",
|
||||
"Export data as JSON": "Esportatu Invidious datuak JSON gisa",
|
||||
"Delete account?": "Kontua ezabatu?",
|
||||
"History": "Historia",
|
||||
"An alternative front-end to YouTube": "YouTuberako interfaze alternatibo bat",
|
||||
@ -36,7 +35,6 @@
|
||||
"source": "iturburua",
|
||||
"Log in": "Saioa hasi",
|
||||
"Log in/register": "Hasi saioa / Eman izena",
|
||||
"Log in with Google": "Hasi saioa Googlekin",
|
||||
"User ID": "Erabiltzaile IDa",
|
||||
"Password": "Pasahitza",
|
||||
"Time (h:mm:ss):": "Denbora (h:mm:ss):",
|
||||
@ -53,7 +51,7 @@
|
||||
"preferences_volume_label": "Erreproduzigailuaren bolumena: ",
|
||||
"preferences_comments_label": "Lehenetsitako iruzkinak: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "reddit",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Lehenetsitako azpitituluak: ",
|
||||
"preferences_related_videos_label": "Erakutsi erlazionatutako bideoak: ",
|
||||
"preferences_annotations_label": "Erakutsi oharrak modu lehenetsian: ",
|
||||
@ -62,5 +60,210 @@
|
||||
"Dark mode: ": "Gai iluna: ",
|
||||
"preferences_dark_mode_label": "Gaia: ",
|
||||
"dark": "iluna",
|
||||
"light": "argia"
|
||||
"light": "argia",
|
||||
"generic_subscriptions_count": "{{count}} harpidetza",
|
||||
"generic_subscriptions_count_plural": "{{count}} harpidetzak",
|
||||
"tokens_count": "{{count}} tokena",
|
||||
"tokens_count_plural": "{{count}} tokenak",
|
||||
"comments_points_count": "{{count}} puntua",
|
||||
"comments_points_count_plural": "{{count}} puntuak",
|
||||
"View more comments on Reddit": "Iruzkin gehiago Redditen",
|
||||
"Fallback captions: ": "Ordezko azpitituluak: ",
|
||||
"generic_subscribers_count": "{{count}} harpidedun",
|
||||
"generic_subscribers_count_plural": "{{count}} harpidedunak",
|
||||
"preferences_quality_option_dash": "DASH (kalitate egokitua)",
|
||||
"preferences_listen_label": "Lehenetsiz jo: ",
|
||||
"preferences_speed_label": "Abiadura lehenetsia: ",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_worst": "Txarrena",
|
||||
"preferences_quality_dash_option_best": "Hoberena",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_extend_desc_label": "Bideoaren azalpena automatikoki zabaldu: ",
|
||||
"preferences_annotations_subscribed_label": "Harpidetutako kanalen oharrak erakutsi lehenetsiz? ",
|
||||
"Redirect homepage to feed: ": "Hasierako orrira bidali jarraitzeko: ",
|
||||
"channel name - reverse": "kanalaren izena - alderantziz",
|
||||
"preferences_notifications_only_label": "Jakinarazpenak soilik erakutsi (baldin badago): ",
|
||||
"Top enabled: ": "Goikoa gaitu: ",
|
||||
"Import/export data": "Inportatu/exportatu data",
|
||||
"Create playlist": "Zerrenda sortu",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Aditu! JavaScript itzalita dakazula ematen du. Hemen sakatu iruzkinak ikusteko. Denbora luza leikeela kontuan hartu.",
|
||||
"generic_views_count": "{{count}}ikusia",
|
||||
"generic_views_count_plural": "{{count}}ikusiak",
|
||||
"generic_playlists_count": "{{count}}zerrenda",
|
||||
"generic_playlists_count_plural": "{{count}}zerrendak",
|
||||
"Could not fetch comments": "Iruzkinei ezin heldu",
|
||||
"Erroneous token": "Token okerra",
|
||||
"Albanian": "Albaniarra",
|
||||
"Azerbaijani": "Azerbaitarra",
|
||||
"No such user": "Ez dago erabiltzailerik",
|
||||
"Bulgarian": "Bulgariarra",
|
||||
"Filipino": "Filipinera",
|
||||
"French": "Frantsesa",
|
||||
"French (auto-generated)": "Frantsesa (auto-sortua)",
|
||||
"Show more": "Erakutsi gehiago",
|
||||
"Show less": "Erakutsi gutxiago",
|
||||
"Delete playlist": "Zerrenda ezabatu",
|
||||
"Delete account": "Kontua ezabatu",
|
||||
"User ID is a required field": "Erabiltzailearen IDa beharrezkoa da",
|
||||
"English (United Kingdom)": "Ingelesa (Britania Handia",
|
||||
"preferences_vr_mode_label": "360 graduko bideo interaktiboak (WebGL beharko): ",
|
||||
"English (United States)": "Estatu batuarra (AEB)",
|
||||
"English (auto-generated)": "Ingelesa (autosortua)",
|
||||
"Arabic": "Arabiarra",
|
||||
"Armenian": "Armeniarra",
|
||||
"Bangla": "Banglera",
|
||||
"Belarusian": "Bielorrusiara",
|
||||
"Burmese": "Burmesera",
|
||||
"Chinese (Simplified)": "Txinera (sinplifikatua)",
|
||||
"preferences_watch_history_label": "Baimendu historia ikusi ",
|
||||
"generic_videos_count": "{{count}}bideo",
|
||||
"generic_videos_count_plural": "{{count}}bideoak",
|
||||
"View privacy policy.": "Pribatutasun politika ikusi.",
|
||||
"Cantonese (Hong Kong)": "Kantoniera (Hong Kong)",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} ezikusitako oharra",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} ezikusitako oharrak",
|
||||
"Trending": "Joera",
|
||||
"Playlist privacy": "Zerrendaren privatutasuna",
|
||||
"Switch Invidious Instance": "Invidious adibidea aldatu",
|
||||
"Genre: ": "Genero: ",
|
||||
"License: ": "Lizentzia: ",
|
||||
"Family friendly? ": "Adeikorra familiarekin? ",
|
||||
"Wilson score: ": "Wilsonen puntuazioa: ",
|
||||
"comments_view_x_replies": "{{count}} erantzuna ikusi",
|
||||
"comments_view_x_replies_plural": "{{count}} erantzunak ikusi",
|
||||
"Catalan": "Katalaniera",
|
||||
"Chinese": "Txinera",
|
||||
"Chinese (China)": "Txinatarra",
|
||||
"Chinese (Hong Kong)": "Hongkondarra",
|
||||
"Chinese (Taiwan)": "Taiwandarra",
|
||||
"Corsican": "Korsikera",
|
||||
"Dutch (auto-generated)": "Alemaniera (auto-sortua)",
|
||||
"Estonian": "Estoniera",
|
||||
"Finnish": "Finlandiera",
|
||||
"Galician": "Galizera",
|
||||
"German (auto-generated)": "Alemaiera (auto-sortua)",
|
||||
"Greek": "Greziera",
|
||||
"crash_page_report_issue": "Aurreko ezerk ez badizu lagundu, arren <a href=\"`x`\"> GitHuben gai berri bat zabaldu </a> (ingelesez ahal bada) eta zure mezuan hurrengo testua sartu (testuari EZ itzulpena egin):",
|
||||
"crash_page_search_issue": "GitHuben dauden gaiak <a href=\"`x`\"> buruz</a>",
|
||||
"preferences_quality_option_medium": "Erdixka",
|
||||
"preferences_quality_option_small": "Txikia",
|
||||
"preferences_quality_dash_label": "DASH bideo kalitate lehenetsia: ",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"invidious": "Invidious",
|
||||
"Source available here.": "Iturburua hemen eskura.",
|
||||
"View JavaScript license information.": "JavaScriptaren lizentzi adierazpena ikusi.",
|
||||
"Blacklisted regions: ": "zerrenda beltzaren zonaldeak: ",
|
||||
"Premieres `x`": "`x` estrenaldiak",
|
||||
"Wrong answer": "Erantzun ez zuzena",
|
||||
"Password is a required field": "Pasahitza beharrezkoa da",
|
||||
"Wrong username or password": "Pasahitza edo ezizena gaizki",
|
||||
"Password cannot be longer than 55 characters": "Pasahitza 55 karaktere baino luzeagoa ezin da izan",
|
||||
"This channel does not exist.": "Kanal hau ez dago.",
|
||||
"`x` ago": "duela `x`",
|
||||
"Czech": "Txekiera",
|
||||
"preferences_region_label": "Herrialdeko edukiera: ",
|
||||
"preferences_sort_label": "Bideoak ordenatu: ",
|
||||
"published": "argitaratuta",
|
||||
"Only show latest video from channel: ": "Kanalaren azken bideoa soilik erakutsi ",
|
||||
"preferences_category_admin": "Administratzailearen lehentasunak",
|
||||
"Registration enabled: ": "Harpidetza gaituta: ",
|
||||
"Save preferences": "Baloreak gorde",
|
||||
"Token manager": "Token kudeatzailea",
|
||||
"unsubscribe": "Baja eman",
|
||||
"search": "Bilatu",
|
||||
"Log out": "Irten",
|
||||
"English": "Ingelesa",
|
||||
"Afrikaans": "Afrikarra",
|
||||
"Amharic": "Amharerra",
|
||||
"Basque": "Euskera",
|
||||
"Bosnian": "Bosniarra",
|
||||
"Cebuano": "Zebuera",
|
||||
"Chinese (Traditional)": "Txinera (Tradizionala)",
|
||||
"Croatian": "Croaziera",
|
||||
"Danish": "Daniera",
|
||||
"Dutch": "Alemaniera",
|
||||
"Esperanto": "Esperanto",
|
||||
"Erroneous challenge": "Erronka okerra",
|
||||
"View all playlists": "Zerrenda guztiak ikusi",
|
||||
"Show annotations": "Oharrak erakutsi",
|
||||
"Empty playlist": "Zerrenda hutsik",
|
||||
"Please log in": "Sartu, mesedez",
|
||||
"CAPTCHA is a required field": "CAPTCHA beharrezko eremua da",
|
||||
"preferences_category_data": "Dataren lehentasunak",
|
||||
"preferences_default_home_label": "Homepage lehenetsia: ",
|
||||
"preferences_automatic_instance_redirect_label": "berbideratze adibide automatikoa (atzera egin berbideratzeko: invidious.io) ",
|
||||
"`x` uploaded a video": "' x'(e)k bideo bat igo du",
|
||||
"published - reverse": "argitaratuta - alderantziz",
|
||||
"Could not get channel info.": "Kanalaren adierazpena ezin lortu.",
|
||||
"alphabetically - reverse": "alfabetikoki - alderantziz",
|
||||
"Public": "Orokorra",
|
||||
"Unlisted": "Ez zerrendatua",
|
||||
"Subscription manager": "Harpidetzen kudeatzailea",
|
||||
"Updated `x` ago": "Duela `x` eguneratua",
|
||||
"Hide replies": "Erantzunak izkutatu",
|
||||
"preferences_thin_mode_label": "Urri eran: ",
|
||||
"Show replies": "Erantzunak erakutsi",
|
||||
"Watch on YouTube": "YouTuben ikusi",
|
||||
"Premieres in `x`": "`x`eko estrenaldiak",
|
||||
"Delete playlist `x`?": "`x` zerrenda ezabatu nahi?",
|
||||
"Token is expired, please try again": "Token kadukatua, saiatu berriro",
|
||||
"CAPTCHA enabled: ": "CAPTCHA gaitu: ",
|
||||
"Released under the AGPLv3 on Github.": "GitHubeko AGPLv3pean argitaratuta.",
|
||||
"channel:`x`": "Kanal: `x`",
|
||||
"Georgian": "Georgiera",
|
||||
"Incorrect password": "Pasahitza gaizki",
|
||||
"Playlist does not exist.": "Zerrenda ez da existitzen.",
|
||||
"preferences_category_misc": "Askotariko lehentasunak",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` iruzkina ikusi",
|
||||
"": "`x` iruzkinak ikusi"
|
||||
},
|
||||
"Report statistics: ": "Estatistikak adierazi: ",
|
||||
"preferences_max_results_label": "Jotzeko bideo zerrendaren luzera: ",
|
||||
"Subscriptions": "Harpidetzak",
|
||||
"Load more": "Gehiago atera",
|
||||
"Change password": "Pasahitza aldatu",
|
||||
"preferences_show_nick_label": "Erakutsi ezizena goian: ",
|
||||
"View Reddit comments": "Redditeko iruzkinak ikusi",
|
||||
"preferences_category_subscription": "Harpidetzaren lehentasunak",
|
||||
"Hidden field \"challenge\" is a required field": "\"challenge\" eremu ezkutua beharrezkoa da",
|
||||
"German": "Alemaniarra",
|
||||
"View YouTube comments": "YouTubeko iruzkinak ikusi",
|
||||
"`x` is live": "`x` bizirik darrai",
|
||||
"Password cannot be empty": "Pasahitza ezin da hutsik utzi",
|
||||
"preferences_video_loop_label": "Beti begiztatu: ",
|
||||
"Only show latest unwatched video from channel: ": "kanalaren azken bideo ezikusia erakutsi soilik ",
|
||||
"Enable web notifications": "Webaren jakinarazpenak baimendu",
|
||||
"revoke": "ukatu",
|
||||
"preferences_continue_label": "Hurrengo lehenetsia jo: ",
|
||||
"Whitelisted regions: ": "Zuri zerrendaren zonaldeak: ",
|
||||
"Erroneous CAPTCHA": "CAPTCHA gaizki",
|
||||
"Deleted or invalid channel": "Ezgai edota ezabatutako kanala",
|
||||
"Could not create mix.": "Nahastea ezin sortu.",
|
||||
"Not a playlist.": "Ez da zerrenda.",
|
||||
"Hidden field \"token\" is a required field": "\"token\" eremu ezkutua beharrezkoa da",
|
||||
"Import/export": "Inportatu/esportatu",
|
||||
"alphabetically": "alfabetikoki",
|
||||
"preferences_unseen_only_label": "Ezikusiak besterik ez erakutsi: ",
|
||||
"Clear watch history": "Historia ezabatu",
|
||||
"Manage subscriptions": "Harpidetzak kudeatu",
|
||||
"Manage tokens": "Fitxak kudeatu",
|
||||
"Watch history": "Historia ikusi",
|
||||
"Login enabled: ": "Login gaitu: ",
|
||||
"Hide annotations": "Oharrak izkutatu",
|
||||
"Title": "Titulua",
|
||||
"channel name": "Kanalaren izena",
|
||||
"Authorize token for `x`?": "Baimendu tokena `x`tzako?",
|
||||
"Private": "Pribatua",
|
||||
"Editing playlist `x`": "`x` zerrenda editatu",
|
||||
"Could not pull trending pages.": "Ezin ekarri orri arrakastatsuak.",
|
||||
"crash_page_read_the_faq": "Bide <a href=\"`x`\"> (FAQ) ohiko galderak</a>"
|
||||
}
|
||||
|
223
locales/fa.json
223
locales/fa.json
@ -1,9 +1,14 @@
|
||||
{
|
||||
"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}} اشتراک ها",
|
||||
"generic_views_count": "{{count}} بازدید",
|
||||
"generic_views_count_plural": "{{count}} بازدید",
|
||||
"generic_videos_count": "{{count}} ویدئو",
|
||||
"generic_videos_count_plural": "{{count}} ویدئو",
|
||||
"generic_playlists_count": "{{count}} فهرست پخش",
|
||||
"generic_playlists_count_plural": "{{count}} فهرست پخش",
|
||||
"generic_subscribers_count": "{{count}} دنبال کننده",
|
||||
"generic_subscribers_count_plural": "{{count}} دنبال کننده",
|
||||
"generic_subscriptions_count": "{{count}} اشتراک",
|
||||
"generic_subscriptions_count_plural": "{{count}} اشتراک",
|
||||
"LIVE": "زنده",
|
||||
"Shared `x` ago": "`x` پیش به اشتراک گذاشته شده",
|
||||
"Unsubscribe": "لغو اشتراک",
|
||||
@ -12,29 +17,28 @@
|
||||
"View playlist on YouTube": "دیدن فهرست پخش در یوتیوب",
|
||||
"newest": "تازهترین",
|
||||
"oldest": "کهنهترین",
|
||||
"popular": "محبوب",
|
||||
"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 Invidious data": "وارد کردن داده JSON اینویدیوس",
|
||||
"Import YouTube subscriptions": "وارد کردن فایل CSV یا OPML سابسکرایب های یوتیوب",
|
||||
"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",
|
||||
"Export data as JSON": "گرفتن(خارج کردن) اطلاعات اینویدیوس با فرمت JSON",
|
||||
"Delete account?": "حذف حساب کاربری؟",
|
||||
"History": "تاریخچه",
|
||||
"An alternative front-end to YouTube": "یک پیشانه جایگزین برای یوتیوب",
|
||||
@ -42,7 +46,6 @@
|
||||
"source": "منبع",
|
||||
"Log in": "ورود",
|
||||
"Log in/register": "ورود/ثبت نام",
|
||||
"Log in with Google": "ورود با گوگل",
|
||||
"User ID": "شناسه کاربری",
|
||||
"Password": "گذرواژه",
|
||||
"Time (h:mm:ss):": "زمان (h:mm:ss):",
|
||||
@ -51,7 +54,6 @@
|
||||
"Sign In": "ورود",
|
||||
"Register": "ثبت نام",
|
||||
"E-mail": "ایمیل",
|
||||
"Google verification code": "کد تایید گوگل",
|
||||
"Preferences": "ترجیحات",
|
||||
"preferences_category_player": "ترجیحات نمایشدهنده",
|
||||
"preferences_video_loop_label": "همواره ویدئو را بازپخش کن ",
|
||||
@ -71,7 +73,7 @@
|
||||
"preferences_related_videos_label": "نمایش ویدیو های مرتبط: ",
|
||||
"preferences_annotations_label": "نمایش حاشیه نویسی ها به طور پیشفرض: ",
|
||||
"preferences_extend_desc_label": "گسترش خودکار توضیحات ویدئو: ",
|
||||
"preferences_vr_mode_label": "ویدئوها ۳۶۰ درجه تعاملی: ",
|
||||
"preferences_vr_mode_label": "ویدئوها ۳۶۰ درجه تعاملی(نیازمند WebGL): ",
|
||||
"preferences_category_visual": "ترجیحات بصری",
|
||||
"preferences_player_style_label": "حالت پخش کننده: ",
|
||||
"Dark mode: ": "حالت تاریک: ",
|
||||
@ -80,7 +82,7 @@
|
||||
"light": "روشن",
|
||||
"preferences_thin_mode_label": "حالت نازک: ",
|
||||
"preferences_category_misc": "ترجیحات متفرقه",
|
||||
"preferences_automatic_instance_redirect_label": "هدایت خودکار نمونه (به طور پیشفرض به redirect.invidious.io): ",
|
||||
"preferences_automatic_instance_redirect_label": "هدایت خودکار نمونه (انتقال به redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "ترجیحات اشتراک",
|
||||
"preferences_annotations_subscribed_label": "نمایش حاشیه نویسی ها به طور پیشفرض برای کانال های مشترک شده: ",
|
||||
"Redirect homepage to feed: ": "تغییر مسیر صفحه خانه به خوراک: ",
|
||||
@ -120,13 +122,15 @@
|
||||
"Subscription manager": "مدیریت اشتراک",
|
||||
"Token manager": "مدیر توکن",
|
||||
"Token": "توکن",
|
||||
"tokens_count_0": "{{count}} توکن ها",
|
||||
"tokens_count": "{{count}} توکن",
|
||||
"tokens_count_plural": "{{count}} توکن",
|
||||
"Import/export": "وارد کردن/خارج کردن",
|
||||
"unsubscribe": "لغو اشتراک",
|
||||
"revoke": "ابطال",
|
||||
"Subscriptions": "اشتراک ها",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} اعلان نادیده",
|
||||
"search": "جستجو",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} اعلان نادیده",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} اعلان نادیده",
|
||||
"search": "جست و جو",
|
||||
"Log out": "خروج",
|
||||
"Released under the AGPLv3 on Github.": "منتشر شده تحت پروانه AGPLv3 روی گیتهاب.",
|
||||
"Source available here.": "منبع اینجا دردسترس است.",
|
||||
@ -148,7 +152,6 @@
|
||||
"Show less": "نمایش کمتر",
|
||||
"Watch on YouTube": "تماشا در یوتیوب",
|
||||
"Switch Invidious Instance": "تعویض نمونه اینویدیوس",
|
||||
"Broken? Try another Invidious Instance": "کار نمیکند؟ نمونه دیگری از اینویدیوس را امتحان کنید",
|
||||
"Hide annotations": "مخفی کردن حاشیه نویسی ها",
|
||||
"Show annotations": "نمایش حاشیه نویسی ها",
|
||||
"Genre: ": "ژانر: ",
|
||||
@ -158,7 +161,7 @@
|
||||
"Engagement: ": "نامزدی: ",
|
||||
"Whitelisted regions: ": "مناطق لیست سفید: ",
|
||||
"Blacklisted regions: ": "مناطق لیست سیاه: ",
|
||||
"Shared `x`": "به اشتراک گذاشته شده `x`",
|
||||
"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.": "سلام! مثل اینکه تو جاوا اسکریپت رو خاموش کرده ای. اینجا کلیک کن تا نظرات را ببینی، این رو یادت باشه که ممکنه بارگذاری اونها کمی طول بکشه.",
|
||||
@ -172,17 +175,12 @@
|
||||
"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": "لطفا وارد شوید",
|
||||
@ -192,10 +190,12 @@
|
||||
"This channel does not exist.": "این کانال وجود ندارد.",
|
||||
"Could not get channel info.": "نمیتوان اطلاعات کانال را دریافت کرد.",
|
||||
"Could not fetch comments": "نمیتوان نظرات را دریافت کرد",
|
||||
"comments_view_x_replies_0": "نمایش {{count}} پاسخ ها",
|
||||
"comments_view_x_replies": "نمایش {{count}} پاسخ",
|
||||
"comments_view_x_replies_plural": "نمایش {{count}} پاسخ",
|
||||
"`x` ago": "`x` پیش",
|
||||
"Load more": "بارگذاری بیشتر",
|
||||
"comments_points_count_0": "{{count}} نقطه ها",
|
||||
"comments_points_count": "{{count}} نقطه",
|
||||
"comments_points_count_plural": "{{count}} نقطه",
|
||||
"Could not create mix.": "نمیتوان میکس ساخت.",
|
||||
"Empty playlist": "سیاههٔ پخش خالی",
|
||||
"Not a playlist.": "یک سیاههٔ پخش نیست.",
|
||||
@ -313,16 +313,23 @@
|
||||
"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}} ثانیه",
|
||||
"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}} روز",
|
||||
"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}} ثانیه",
|
||||
"Fallback comments: ": "نظرات عقب گرد: ",
|
||||
"Popular": "محبوب",
|
||||
"Search": "جستجو",
|
||||
"Popular": "پربیننده",
|
||||
"Search": "جست و جو",
|
||||
"Top": "بالا",
|
||||
"About": "درباره",
|
||||
"Rating: ": "رتبه دهی: ",
|
||||
@ -342,42 +349,41 @@
|
||||
"`x` marked it with a ❤": "`x` نشان گذاری شده با یک ❤",
|
||||
"Audio mode": "حالت صدا",
|
||||
"Video mode": "حالت ویدیو",
|
||||
"Videos": "ویدیو ها",
|
||||
"channel_tab_videos_label": "ویدیو ها",
|
||||
"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": "پالایه",
|
||||
"channel_tab_community_label": "اجتماع",
|
||||
"search_filters_sort_option_relevance": "مرتبط بودن",
|
||||
"search_filters_sort_option_rating": "امتیاز",
|
||||
"search_filters_sort_option_date": "تاریخ بارگذاری",
|
||||
"search_filters_sort_option_views": "تعداد بازدید",
|
||||
"search_filters_type_label": "نوع",
|
||||
"search_filters_duration_label": "مدت",
|
||||
"search_filters_features_label": "ویژگیها",
|
||||
"search_filters_sort_label": "به ترتیب",
|
||||
"search_filters_date_option_hour": "ساعت گذشته",
|
||||
"search_filters_date_option_today": "امروز",
|
||||
"search_filters_date_option_week": "این هفته",
|
||||
"search_filters_date_option_month": "این ماه",
|
||||
"search_filters_date_option_year": "امسال",
|
||||
"search_filters_type_option_video": "ویدئو",
|
||||
"search_filters_type_option_channel": "کانال",
|
||||
"search_filters_type_option_playlist": "سیاههٔ پخش",
|
||||
"search_filters_type_option_movie": "فیلم",
|
||||
"search_filters_type_option_show": "نمایش",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "زیرنویس",
|
||||
"search_filters_features_option_c_commons": "کریتیو کامونز",
|
||||
"search_filters_features_option_three_d": "سهبعدی",
|
||||
"search_filters_features_option_live": "زنده",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "مکان",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"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_dash": "DASH (کیفیت تطبیفی)",
|
||||
"preferences_quality_option_medium": "میانه",
|
||||
"preferences_quality_option_small": "پایین",
|
||||
"preferences_quality_dash_option_auto": "خودکار",
|
||||
@ -393,7 +399,7 @@
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "اینویدیوس",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"footer_donate_page": "کمک مالی",
|
||||
"footer_source_code": "کد منبع",
|
||||
"footer_modfied_source_code": "کد منبع ویرایش شده",
|
||||
@ -405,12 +411,91 @@
|
||||
"download_subtitles": "زیرنویسها - `x` (.vtt)",
|
||||
"Video unavailable": "ویدئو دردسترس نیست",
|
||||
"preferences_save_player_pos_label": "ذخیره زمان کنونی ویدئو: ",
|
||||
"purchased": "خریداری شده",
|
||||
"search_filters_features_option_purchased": "خریداری شده",
|
||||
"preferences_quality_dash_label": "کیفیت ترجیحی ویدئو DASH: ",
|
||||
"preferences_region_label": "کشور محتوا: ",
|
||||
"footer_documentation": "مستندات",
|
||||
"footer_original_source_code": "کد منبع اصلی",
|
||||
"long": "بلند (> 20 دقیقه)",
|
||||
"search_filters_duration_option_long": "بلند (> ۲۰ دقیقه)",
|
||||
"adminprefs_modified_source_code_url_label": "URL مخزن کد منبع ویریش شده",
|
||||
"short": "کوتاه (< 4 دقیقه)"
|
||||
"search_filters_duration_option_short": "کوتاه (< ۴ دقیقه)",
|
||||
"search_filters_title": "پالایه",
|
||||
"Chinese (Hong Kong)": "چینی (هنگکنگ)",
|
||||
"Dutch (auto-generated)": "هلندی (تولید خودکار)",
|
||||
"preferences_watch_history_label": "فعالسازی تاریخچهی پخش ",
|
||||
"Indonesian (auto-generated)": "اندونزیایی (تولید خودکار)",
|
||||
"English (United States)": "انگلیسی (ایالات متحده)",
|
||||
"Chinese": "چینی",
|
||||
"Chinese (Taiwan)": "چینی (تایوان)",
|
||||
"French (auto-generated)": "فرانسوی (تولید خودکار)",
|
||||
"English (United Kingdom)": "انگلیسی (ایالات بریتانیا)",
|
||||
"search_message_no_results": "نتیجهای یافت نشد.",
|
||||
"search_message_change_filters_or_query": "سعی کنید جستوجوی خود را وسیعتر کنید و/یا فیلترها را تغییر دهید.",
|
||||
"Chinese (China)": "چینی (چین)",
|
||||
"German (auto-generated)": "آلمانی (تولید خودکار)",
|
||||
"Japanese (auto-generated)": "ژاپنی (تولید خودکار)",
|
||||
"Korean (auto-generated)": "کرهای (تولید خودکار)",
|
||||
"Portuguese (Brazil)": "پرتغالی (برزیل)",
|
||||
"search_filters_apply_button": "اعمال فیلترهای انتخاب شده",
|
||||
"Italian (auto-generated)": "ایتالیایی (تولید خودکار)",
|
||||
"Vietnamese (auto-generated)": "ویتنامی (تولید خودکار)",
|
||||
"search_filters_type_option_all": "هر نوعی",
|
||||
"search_filters_duration_option_none": "هر مدت زمانی",
|
||||
"search_filters_date_label": "تاریخ بارگذاری",
|
||||
"search_filters_date_option_none": "هر تاریخی",
|
||||
"user_created_playlists": "`x` فهرست پخش ایجاد شد",
|
||||
"Interlingue": "سرخپوستی",
|
||||
"Russian (auto-generated)": "روسی (تولید خودکار)",
|
||||
"Spanish (auto-generated)": "اسپانیایی (تولید خودکار)",
|
||||
"search_filters_duration_option_medium": "متوسط (۴ تا ۲۰ دقیقه)",
|
||||
"Portuguese (auto-generated)": "پرتغالی (تولید خودکار)",
|
||||
"Cantonese (Hong Kong)": "کانتونی (هنگ کنگ)",
|
||||
"Spanish (Spain)": "اسپانیایی (اسپانیا)",
|
||||
"Turkish (auto-generated)": "ترکی (تولید خودکار)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"Spanish (Mexico)": "اسپانیایی (مکزیک)",
|
||||
"Popular enabled: ": "محبوب ها فعال شد: ",
|
||||
"Music in this video": "آهنگ در این ویدیو",
|
||||
"Artist: ": "هنرمند: ",
|
||||
"Album: ": "آلبوم: ",
|
||||
"Song: ": "آهنگ: ",
|
||||
"Channel Sponsor": "اسپانسر کانال",
|
||||
"Standard YouTube license": "پروانه استاندارد YouTube",
|
||||
"search_message_use_another_instance": "همچنین میتوانید <a href=\"`x`\">در نمونهای دیگر هم جستوجو کنید</a>.",
|
||||
"Download is disabled": "دریافت غیرفعال است",
|
||||
"crash_page_before_reporting": "پیش از گزارش ایراد، مطمئنید شوید که:",
|
||||
"playlist_button_add_items": "افزودن ویدیو",
|
||||
"user_saved_playlists": "فهرستهای پخش ذخیره شده",
|
||||
"crash_page_refresh": "که صفحه را <a href=\"`x`\">بازنشانی</a> کردهاید",
|
||||
"generic_button_save": "ذخیره",
|
||||
"generic_button_cancel": "لغو",
|
||||
"generic_channels_count": "{{count}} کانال",
|
||||
"generic_channels_count_plural": "{{count}} کانال",
|
||||
"generic_button_edit": "ویرایش",
|
||||
"crash_page_switch_instance": "که تلاش کردهاید <a href=\"`x`\">از یک نمونهٔ دیگر</a> استفاده کنید",
|
||||
"generic_button_rss": "خوراک RSS",
|
||||
"crash_page_read_the_faq": "که <a href=\"`x`\">سوالات بیشتر پرسیده شده (FAQ)</a> را خواندهاید",
|
||||
"generic_button_delete": "حذف",
|
||||
"Import YouTube playlist (.csv)": "واردکردن فهرستپخش YouTube (.csv)",
|
||||
"Import YouTube watch history (.json)": "وارد کردن فهرست پخش YouTube (.json)",
|
||||
"crash_page_you_found_a_bug": "به نظر میرسد که ایرادی در Invidious پیدا کردهاید!",
|
||||
"channel_tab_podcasts_label": "پادکستها",
|
||||
"channel_tab_streams_label": "پخش زندهها",
|
||||
"channel_tab_shorts_label": "Shortها",
|
||||
"channel_tab_playlists_label": "فهرستهای پخش",
|
||||
"channel_tab_channels_label": "کانالها",
|
||||
"error_video_not_in_playlist": "ویدیوی درخواستی معلق به این فهرست پخش نیست. <a href=\"`x`\">کلیک کنید تا به صفحهٔ اصلی فهرست پخش بروید.</a>",
|
||||
"Add to playlist": "به لیست پخش افزوده شود",
|
||||
"Answer": "پاسخ",
|
||||
"Search for videos": "جست و جو برای ویدیوها",
|
||||
"Add to playlist: ": "افزودن به لیست پخش ",
|
||||
"The Popular feed has been disabled by the administrator.": "بخش ویدیوهای پرطرفدار توسط مدیر غیرفعال شده است.",
|
||||
"carousel_slide": "اسلاید {{current}} از {{total}}",
|
||||
"carousel_skip": "رد شدن از گرداننده",
|
||||
"carousel_go_to": "به اسلاید `x` برو",
|
||||
"crash_page_search_issue": "دنبال <a href=\"`x`\"> گشتیم بین مشکلات در گیت هاب </a>",
|
||||
"crash_page_report_issue": "اگر هیچ یک از روش های بالا کمکی نکردند لطفا <a href=\"`x`\"> (ترجیحا به انگلیسی) یک سوال جدید در گیت هاب بپرسید و </a> طوری که سوالتون شامل متن زیر باشه:",
|
||||
"channel_tab_releases_label": "آثار",
|
||||
"toggle_theme": "تغییر وضعیت تم",
|
||||
"preferences_preload_label": "پیش بار کردن دادههای ویدیو: "
|
||||
}
|
||||
|
190
locales/fi.json
190
locales/fi.json
@ -14,22 +14,21 @@
|
||||
"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?": "Valtuutetaanko 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 Invidious data": "Tuo Invidiousin JSON-tietoja",
|
||||
"Import YouTube subscriptions": "Tuo YouTube/OPML-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",
|
||||
"Export data as JSON": "Vie Invidiousin tiedot JSON-muodossa",
|
||||
"Delete account?": "Poista tili?",
|
||||
"History": "Historia",
|
||||
"An alternative front-end to YouTube": "Vaihtoehtoinen front-end YouTubelle",
|
||||
@ -37,7 +36,6 @@
|
||||
"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):",
|
||||
@ -46,15 +44,14 @@
|
||||
"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_video_loop_label": "Toista aina uudelleen: ",
|
||||
"preferences_autoplay_label": "Automaattinen toiston aloitus: ",
|
||||
"preferences_continue_label": "Toista seuraava oletuksena: ",
|
||||
"preferences_continue_autoplay_label": "Toista seuraava video automaattisesti: ",
|
||||
"preferences_continue_autoplay_label": "Aloita seuraava video automaattisesti: ",
|
||||
"preferences_listen_label": "Kuuntele oletuksena: ",
|
||||
"preferences_local_label": "Proxytä videot: ",
|
||||
"preferences_local_label": "Videot välityspalvelimen kautta: ",
|
||||
"preferences_speed_label": "Oletusnopeus: ",
|
||||
"preferences_quality_label": "Ensisijainen videon laatu: ",
|
||||
"preferences_volume_label": "Soittimen äänenvoimakkuus: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"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_vr_mode_label": "Interaktiiviset 360-videot (vaatii WebGL:n): ",
|
||||
"preferences_category_visual": "Visuaaliset asetukset",
|
||||
"preferences_player_style_label": "Soittimen tyyli: ",
|
||||
"Dark mode: ": "Tumma tila: ",
|
||||
@ -140,10 +137,9 @@
|
||||
"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: ",
|
||||
"Hide annotations": "Piilota huomautukset",
|
||||
"Show annotations": "Näytä huomautukset",
|
||||
"Genre: ": "Tyylilaji: ",
|
||||
"License: ": "Lisenssi: ",
|
||||
"Family friendly? ": "Kaiken ikäisille sopiva? ",
|
||||
"Wilson score: ": "Wilson-pistemäärä: ",
|
||||
@ -164,20 +160,15 @@
|
||||
"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ä",
|
||||
"Please log in": "Kirjaudu sisään",
|
||||
"Invidious Private Feed for `x`": "Invidiousin yksityinen syöte `x`:lle",
|
||||
"channel:`x`": "kanava:`x`",
|
||||
"Deleted or invalid channel": "Poistettu tai virheellinen kanava",
|
||||
@ -187,7 +178,7 @@
|
||||
"`x` ago": "`x` sitten",
|
||||
"Load more": "Lataa lisää",
|
||||
"Could not create mix.": "Sekoituksen luominen epäonnistui.",
|
||||
"Empty playlist": "Tyhjennä soittolista",
|
||||
"Empty playlist": "Tyhjä 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.",
|
||||
@ -225,11 +216,11 @@
|
||||
"Filipino": "filipino",
|
||||
"Finnish": "suomi",
|
||||
"French": "ranska",
|
||||
"Galician": "galego",
|
||||
"Galician": "galicia",
|
||||
"Georgian": "georgia",
|
||||
"German": "saksa",
|
||||
"Greek": "kreikka",
|
||||
"Gujarati": "gujarati",
|
||||
"Gujarati": "gudžarati",
|
||||
"Haitian Creole": "haitinkreoli",
|
||||
"Hausa": "hausa",
|
||||
"Hawaiian": "havaiji",
|
||||
@ -325,38 +316,37 @@
|
||||
"`x` marked it with a ❤": "`x` merkkasi ❤:llä",
|
||||
"Audio mode": "Äänitila",
|
||||
"Video mode": "Videotila",
|
||||
"Videos": "Videot",
|
||||
"channel_tab_videos_label": "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",
|
||||
"channel_tab_community_label": "Yhteisö",
|
||||
"search_filters_sort_option_relevance": "Osuvuus",
|
||||
"search_filters_sort_option_rating": "Arvostelu",
|
||||
"search_filters_sort_option_date": "Latauspäivämäärä",
|
||||
"search_filters_sort_option_views": "Katselukerrat",
|
||||
"search_filters_type_label": "Tyyppi",
|
||||
"search_filters_duration_label": "Kesto",
|
||||
"search_filters_features_label": "Ominaisuudet",
|
||||
"search_filters_sort_label": "Luokittele",
|
||||
"search_filters_date_option_hour": "Tunnin sisään",
|
||||
"search_filters_date_option_today": "Tänään",
|
||||
"search_filters_date_option_week": "Tällä viikolla",
|
||||
"search_filters_date_option_month": "Tässä kuussa",
|
||||
"search_filters_date_option_year": "Tänä vuonna",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanava",
|
||||
"search_filters_type_option_playlist": "Soittolista",
|
||||
"search_filters_type_option_movie": "Elokuva",
|
||||
"search_filters_type_option_show": "Ohjelma",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Tekstitys/CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Suora lähetys",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Sijainti",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Tämänhetkinen versio: ",
|
||||
"next_steps_error_message": "Sinun tulisi kokeilla seuraavia: ",
|
||||
"next_steps_error_message": "Kokeile seuraavia: ",
|
||||
"next_steps_error_message_refresh": "Päivitä",
|
||||
"next_steps_error_message_go_to_youtube": "Siirry YouTubeen",
|
||||
"generic_count_hours": "{{count}} tunti",
|
||||
@ -390,7 +380,7 @@
|
||||
"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>",
|
||||
"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",
|
||||
@ -401,7 +391,7 @@
|
||||
"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",
|
||||
"videoinfo_invidious_embed_link": "Upotettava linkki",
|
||||
"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",
|
||||
@ -420,22 +410,92 @@
|
||||
"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: ",
|
||||
"preferences_quality_dash_label": "Ensisijainen DASH-videolaatu: ",
|
||||
"generic_count_years": "{{count}} vuosi",
|
||||
"generic_count_years_plural": "{{count}} vuotta",
|
||||
"purchased": "Ostettu",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_purchased": "Ostettu",
|
||||
"search_filters_features_option_three_sixty": "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)",
|
||||
"adminprefs_modified_source_code_url_label": "URL muokatun lähdekoodin repositorioon",
|
||||
"Released under the AGPLv3 on Github.": "Julkaistu AGPLv3-lisenssillä GitHubissa.",
|
||||
"search_filters_duration_option_short": "Lyhyt (< 4 minuuttia)",
|
||||
"search_filters_duration_option_long": "Pitkä (> 20 minuuttia)",
|
||||
"footer_documentation": "Dokumentaatio",
|
||||
"footer_original_source_code": "Alkuperäinen lähdekoodi",
|
||||
"footer_modfied_source_code": "Muokattu lähdekoodi"
|
||||
"footer_modfied_source_code": "Muokattu lähdekoodi",
|
||||
"Japanese (auto-generated)": "japani (automaattisesti luotu)",
|
||||
"German (auto-generated)": "saksa (automaattisesti luotu)",
|
||||
"Portuguese (auto-generated)": "portugali (automaattisesti luotu)",
|
||||
"Russian (auto-generated)": "Venäjä (automaattisesti luotu)",
|
||||
"preferences_watch_history_label": "Ota katseluhistoria käyttöön: ",
|
||||
"English (United Kingdom)": "englanti (Iso-Britannia)",
|
||||
"English (United States)": "englanti (Yhdysvallat)",
|
||||
"Cantonese (Hong Kong)": "kantoninkiina (Hongkong)",
|
||||
"Chinese": "kiina",
|
||||
"Chinese (China)": "kiina (Kiina)",
|
||||
"Chinese (Hong Kong)": "kiina (Hongkong)",
|
||||
"Chinese (Taiwan)": "kiina (Taiwan)",
|
||||
"Dutch (auto-generated)": "hollanti (automaattisesti luotu)",
|
||||
"French (auto-generated)": "ranska (automaattisesti luotu)",
|
||||
"Indonesian (auto-generated)": "indonesia (automaattisesti luotu)",
|
||||
"Interlingue": "interlingue",
|
||||
"Italian (auto-generated)": "Italia (automaattisesti luotu)",
|
||||
"Korean (auto-generated)": "korea (automaattisesti luotu)",
|
||||
"Portuguese (Brazil)": "portugali (Brasilia)",
|
||||
"Spanish (auto-generated)": "espanja (automaattisesti luotu)",
|
||||
"Spanish (Mexico)": "espanja (Meksiko)",
|
||||
"Spanish (Spain)": "espanja (Espanja)",
|
||||
"Turkish (auto-generated)": "turkki (automaattisesti luotu)",
|
||||
"Vietnamese (auto-generated)": "vietnam (automaattisesti luotu)",
|
||||
"search_filters_title": "Suodattimet",
|
||||
"search_message_no_results": "Tuloksia ei löytynyt.",
|
||||
"search_message_change_filters_or_query": "Yritä hakukyselysi laajentamista ja/tai suodattimien muuttamista.",
|
||||
"search_filters_duration_option_none": "Mikä tahansa kesto",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_apply_button": "Ota valitut suodattimet käyttöön",
|
||||
"search_filters_date_label": "Latausaika",
|
||||
"search_filters_duration_option_medium": "Keskipituinen (4 - 20 minuuttia)",
|
||||
"search_message_use_another_instance": "Voit myös <a href=\"`x`\">hakea toisella instanssilla</a>.",
|
||||
"search_filters_date_option_none": "Milloin tahansa",
|
||||
"search_filters_type_option_all": "Mikä tahansa tyyppi",
|
||||
"Popular enabled: ": "Suosittu käytössä: ",
|
||||
"error_video_not_in_playlist": "Pyydettyä videota ei ole tässä soittolistassa. <a href=\"`x`\">Klikkaa tästä päästäksesi soittolistan kotisivulle.</a>",
|
||||
"Import YouTube playlist (.csv)": "Tuo YouTube-soittolista (.csv)",
|
||||
"Music in this video": "Musiikki tässä videossa",
|
||||
"Add to playlist": "Lisää soittolistaan",
|
||||
"Add to playlist: ": "Lisää soittolistaan: ",
|
||||
"Search for videos": "Etsi videoita",
|
||||
"generic_button_rss": "RSS",
|
||||
"Answer": "Vastaus",
|
||||
"Standard YouTube license": "Vakio YouTube-lisenssi",
|
||||
"Song: ": "Kappale: ",
|
||||
"Album: ": "Albumi: ",
|
||||
"Download is disabled": "Lataus on poistettu käytöstä",
|
||||
"Channel Sponsor": "Kanavan sponsori",
|
||||
"channel_tab_podcasts_label": "Podcastit",
|
||||
"channel_tab_releases_label": "Julkaisut",
|
||||
"channel_tab_shorts_label": "Shorts-videot",
|
||||
"carousel_slide": "Dia {{current}}/{{total}}",
|
||||
"carousel_skip": "Ohita karuselli",
|
||||
"carousel_go_to": "Siirry diaan `x`",
|
||||
"channel_tab_playlists_label": "Soittolistat",
|
||||
"channel_tab_channels_label": "Kanavat",
|
||||
"generic_button_delete": "Poista",
|
||||
"generic_button_edit": "Muokkaa",
|
||||
"generic_button_save": "Tallenna",
|
||||
"generic_button_cancel": "Peru",
|
||||
"playlist_button_add_items": "Lisää videoita",
|
||||
"Artist: ": "Esittäjä: ",
|
||||
"channel_tab_streams_label": "Suoratoistot",
|
||||
"generic_channels_count": "{{count}} kanava",
|
||||
"generic_channels_count_plural": "{{count}} kanavaa",
|
||||
"The Popular feed has been disabled by the administrator.": "Järjestelmänvalvoja on poistanut Suositut-syötteen.",
|
||||
"Import YouTube watch history (.json)": "Tuo Youtube-katseluhistoria (.json)",
|
||||
"toggle_theme": "Vaihda teemaa",
|
||||
"preferences_preload_label": "Esilataa video data. "
|
||||
}
|
||||
|
216
locales/fr.json
216
locales/fr.json
@ -1,14 +1,27 @@
|
||||
{
|
||||
"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",
|
||||
"generic_channels_count_0": "{{count}} chaîne",
|
||||
"generic_channels_count_1": "{{count}} de chaînes",
|
||||
"generic_channels_count_2": "{{count}} chaînes",
|
||||
"generic_views_count_0": "{{count}} vue",
|
||||
"generic_views_count_1": "{{count}} de vues",
|
||||
"generic_views_count_2": "{{count}} vues",
|
||||
"generic_videos_count_0": "{{count}} vidéo",
|
||||
"generic_videos_count_1": "{{count}} de vidéos",
|
||||
"generic_videos_count_2": "{{count}} vidéos",
|
||||
"generic_playlists_count_0": "{{count}} liste de lecture",
|
||||
"generic_playlists_count_1": "{{count}} listes de lecture",
|
||||
"generic_playlists_count_2": "{{count}} listes de lecture",
|
||||
"generic_subscribers_count_0": "{{count}} abonné",
|
||||
"generic_subscribers_count_1": "{{count}} d'abonnés",
|
||||
"generic_subscribers_count_2": "{{count}} abonnés",
|
||||
"generic_subscriptions_count_0": "{{count}} abonnement",
|
||||
"generic_subscriptions_count_1": "{{count}} d'abonnements",
|
||||
"generic_subscriptions_count_2": "{{count}} abonnements",
|
||||
"generic_button_delete": "Supprimer",
|
||||
"generic_button_edit": "Modifier",
|
||||
"generic_button_save": "Enregistrer",
|
||||
"generic_button_cancel": "Annuler",
|
||||
"generic_button_rss": "RSS",
|
||||
"LIVE": "EN DIRECT",
|
||||
"Shared `x` ago": "Ajoutée il y a `x`",
|
||||
"Unsubscribe": "Se désabonner",
|
||||
@ -24,7 +37,6 @@
|
||||
"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 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 for `x`?": "Autoriser le token pour `x` ?",
|
||||
"Yes": "Oui",
|
||||
@ -32,7 +44,7 @@
|
||||
"Import and Export Data": "Importer et exporter des données",
|
||||
"Import": "Importer",
|
||||
"Import Invidious data": "Importer des données Invidious au format JSON",
|
||||
"Import YouTube subscriptions": "Importer des abonnements YouTube/OPML",
|
||||
"Import YouTube subscriptions": "Importer des abonnements YouTube aux formats OPML/CSV",
|
||||
"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)",
|
||||
@ -47,16 +59,14 @@
|
||||
"source": "source",
|
||||
"Log in": "Se connecter",
|
||||
"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 textuel",
|
||||
"Image CAPTCHA": "CAPTCHA graphique",
|
||||
"Sign In": "Se connecter",
|
||||
"Image CAPTCHA": "CAPTCHA pictural",
|
||||
"Sign In": "S'identifier",
|
||||
"Register": "S'inscrire",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Code de vérification Google",
|
||||
"E-mail": "Courriel",
|
||||
"Preferences": "Préférences",
|
||||
"preferences_category_player": "Préférences du lecteur",
|
||||
"preferences_video_loop_label": "Lire en boucle : ",
|
||||
@ -116,6 +126,7 @@
|
||||
"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 : ",
|
||||
"Popular enabled: ": "Page \"populaire\" activée : ",
|
||||
"Top enabled: ": "Top activé : ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA activé : ",
|
||||
"Login enabled: ": "Autoriser l'ouverture de sessions utilisateur : ",
|
||||
@ -125,17 +136,19 @@
|
||||
"Subscription manager": "Gestionnaire d'abonnement",
|
||||
"Token manager": "Gestionnaire de token",
|
||||
"Token": "Token",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"tokens_count_0": "{{count}} jeton",
|
||||
"tokens_count_1": "{{count}} de jetons",
|
||||
"tokens_count_2": "{{count}} jetons",
|
||||
"Import/export": "Importer/Exporter",
|
||||
"unsubscribe": "se désabonner",
|
||||
"revoke": "révoquer",
|
||||
"Subscriptions": "Abonnements",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notification non vue",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notifications non vues",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} notification non vue",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} de notifications non vues",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} notifications non vues",
|
||||
"search": "rechercher",
|
||||
"Log out": "Se déconnecter",
|
||||
"Released under the AGPLv3 on Github.": "Publié sous licence AGPLv3 sur Github.",
|
||||
"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é.",
|
||||
@ -151,11 +164,11 @@
|
||||
"Title": "Titre",
|
||||
"Playlist privacy": "Paramètres de confidentialité de la liste de lecture",
|
||||
"Editing playlist `x`": "Modifier la liste de lecture `x`",
|
||||
"playlist_button_add_items": "Ajouter des vidéos",
|
||||
"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 : ",
|
||||
@ -179,17 +192,12 @@
|
||||
"Hide replies": "Masquer les réponses",
|
||||
"Show replies": "Afficher les réponses",
|
||||
"Incorrect password": "Mot de passe incorrect",
|
||||
"Quota exceeded, try again in a few hours": "Nombre de tentatives de connexion dépassé, réessayez dans quelques heures",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Impossible de se connecter, si après plusieurs tentative vous ne parvenez toujours pas à vous connecter, assurez-vous que l'authentification à deux facteurs (Authenticator ou SMS) est activée.",
|
||||
"Invalid TFA code": "Code d'authentification à deux facteurs invalide",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "La connexion a échoué. Cela peut être dû au fait que l'authentification à deux facteurs n'est pas activée sur votre compte.",
|
||||
"Wrong answer": "Réponse invalide",
|
||||
"Erroneous CAPTCHA": "CAPTCHA invalide",
|
||||
"CAPTCHA is a required field": "Veuillez entrer un CAPTCHA",
|
||||
"User ID is a required field": "Veuillez entrer un Identifiant Utilisateur",
|
||||
"Password is a required field": "Veuillez entrer un Mot de passe",
|
||||
"Wrong username or password": "Nom d'utilisateur ou mot de passe invalide",
|
||||
"Please sign in using 'Log in with Google'": "Veuillez vous connecter en utilisant \"Se connecter avec Google\"",
|
||||
"Password cannot be empty": "Le mot de passe ne peut pas être vide",
|
||||
"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",
|
||||
@ -199,12 +207,14 @@
|
||||
"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",
|
||||
"comments_view_x_replies": "Voir {{count}} réponse",
|
||||
"comments_view_x_replies_plural": "Voir {{count}} réponses",
|
||||
"comments_view_x_replies_0": "Voir {{count}} réponse",
|
||||
"comments_view_x_replies_1": "Voir {{count}} de réponses",
|
||||
"comments_view_x_replies_2": "Voir {{count}} réponses",
|
||||
"`x` ago": "il y a `x`",
|
||||
"Load more": "Voir plus",
|
||||
"comments_points_count": "{{count}} point",
|
||||
"comments_points_count_plural": "{{count}} points",
|
||||
"comments_points_count_0": "{{count}} point",
|
||||
"comments_points_count_1": "{{count}} de points",
|
||||
"comments_points_count_2": "{{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.",
|
||||
@ -322,20 +332,27 @@
|
||||
"Yiddish": "Yiddish",
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zoulou",
|
||||
"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",
|
||||
"generic_count_years_0": "{{count}} an",
|
||||
"generic_count_years_1": "{{count}} ans",
|
||||
"generic_count_years_2": "{{count}} ans",
|
||||
"generic_count_months_0": "{{count}} mois",
|
||||
"generic_count_months_1": "{{count}} mois",
|
||||
"generic_count_months_2": "{{count}} mois",
|
||||
"generic_count_weeks_0": "{{count}} semaine",
|
||||
"generic_count_weeks_1": "{{count}} semaines",
|
||||
"generic_count_weeks_2": "{{count}} semaines",
|
||||
"generic_count_days_0": "{{count}} jour",
|
||||
"generic_count_days_1": "{{count}} jours",
|
||||
"generic_count_days_2": "{{count}} jours",
|
||||
"generic_count_hours_0": "{{count}} heure",
|
||||
"generic_count_hours_1": "{{count}} heures",
|
||||
"generic_count_hours_2": "{{count}} heures",
|
||||
"generic_count_minutes_0": "{{count}} minute",
|
||||
"generic_count_minutes_1": "{{count}} minutes",
|
||||
"generic_count_minutes_2": "{{count}} minutes",
|
||||
"generic_count_seconds_0": "{{count}} seconde",
|
||||
"generic_count_seconds_1": "{{count}} secondes",
|
||||
"generic_count_seconds_2": "{{count}} secondes",
|
||||
"Fallback comments: ": "Commentaires alternatifs : ",
|
||||
"Popular": "Populaire",
|
||||
"Search": "Rechercher",
|
||||
@ -358,36 +375,35 @@
|
||||
"`x` marked it with a ❤": "`x` l'a marqué d'un ❤",
|
||||
"Audio mode": "Mode audio",
|
||||
"Video mode": "Mode vidéo",
|
||||
"Videos": "Vidéos",
|
||||
"channel_tab_videos_label": "Vidéos",
|
||||
"Playlists": "Listes de lecture",
|
||||
"Community": "Communauté",
|
||||
"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",
|
||||
"channel_tab_community_label": "Communauté",
|
||||
"search_filters_sort_option_relevance": "Pertinence",
|
||||
"search_filters_sort_option_rating": "Notation",
|
||||
"search_filters_sort_option_date": "Date d'ajout",
|
||||
"search_filters_sort_option_views": "Nombre de vues",
|
||||
"search_filters_type_label": "Type de contenu",
|
||||
"search_filters_duration_label": "Durée",
|
||||
"search_filters_features_label": "Fonctionnalités",
|
||||
"search_filters_sort_label": "Trier par",
|
||||
"search_filters_date_option_hour": "Dernière heure",
|
||||
"search_filters_date_option_today": "Aujourd'hui",
|
||||
"search_filters_date_option_week": "Cette semaine",
|
||||
"search_filters_date_option_month": "Ce mois-ci",
|
||||
"search_filters_date_option_year": "Cette année",
|
||||
"search_filters_type_option_video": "Vidéo",
|
||||
"search_filters_type_option_channel": "Chaîne",
|
||||
"search_filters_type_option_playlist": "Liste de lecture",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Émission",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Sous-titres (CC)",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "En direct",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "emplacement",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Version actuelle : ",
|
||||
"next_steps_error_message": "Vous pouvez essayer de : ",
|
||||
"next_steps_error_message_refresh": "Rafraîchir la page",
|
||||
@ -397,8 +413,8 @@
|
||||
"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)",
|
||||
"search_filters_duration_option_short": "Courte (< 4 minutes)",
|
||||
"search_filters_duration_option_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",
|
||||
@ -415,12 +431,12 @@
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_three_sixty": "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",
|
||||
"search_filters_features_option_purchased": "Acheté",
|
||||
"videoinfo_invidious_embed_link": "Lien intégré",
|
||||
"download_subtitles": "Sous-titres - `x` (.vtt)",
|
||||
"user_saved_playlists": "`x` listes de lecture sauvegardées",
|
||||
@ -435,7 +451,7 @@
|
||||
"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_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)",
|
||||
@ -461,5 +477,43 @@
|
||||
"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 : "
|
||||
"preferences_watch_history_label": "Activer l'historique de visionnage : ",
|
||||
"search_filters_title": "Filtres",
|
||||
"search_message_change_filters_or_query": "Essayez d'élargir votre recherche et/ou de changer les filtres.",
|
||||
"search_filters_date_option_none": "Toutes les dates",
|
||||
"search_filters_duration_option_medium": "Moyenne (de 4 à 20 minutes)",
|
||||
"search_filters_apply_button": "Appliquer les filtres",
|
||||
"search_message_no_results": "Aucun résultat.",
|
||||
"search_message_use_another_instance": "Vous pouvez également <a href=\"`x`\">effectuer votre recherche sur une autre instance</a>.",
|
||||
"search_filters_type_option_all": "Tous les types",
|
||||
"search_filters_date_label": "Date d'ajout",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_duration_option_none": "Toutes les durées",
|
||||
"error_video_not_in_playlist": "La vidéo demandée n'existe pas dans cette liste de lecture. <a href=\"`x`\">Cliquez ici pour retourner à la liste de lecture.</a>",
|
||||
"channel_tab_shorts_label": "Vidéos courtes",
|
||||
"channel_tab_streams_label": "Vidéos en direct",
|
||||
"channel_tab_playlists_label": "Listes de lecture",
|
||||
"channel_tab_channels_label": "Chaînes",
|
||||
"Song: ": "Chanson : ",
|
||||
"Artist: ": "Artiste : ",
|
||||
"Album: ": "Album : ",
|
||||
"Standard YouTube license": "Licence YouTube Standard",
|
||||
"Music in this video": "Musique dans cette vidéo",
|
||||
"Channel Sponsor": "Soutien de la chaîne",
|
||||
"Download is disabled": "Le téléchargement est désactivé",
|
||||
"Import YouTube playlist (.csv)": "Importer des listes de lecture de Youtube (.csv)",
|
||||
"channel_tab_releases_label": "Parutions",
|
||||
"channel_tab_podcasts_label": "Émissions audio",
|
||||
"Import YouTube watch history (.json)": "Importer l'historique de visionnement YouTube (.json)",
|
||||
"Add to playlist: ": "Ajouter à la playlist : ",
|
||||
"Add to playlist": "Ajouter à la playlist",
|
||||
"Answer": "Répondre",
|
||||
"Search for videos": "Rechercher des vidéos",
|
||||
"The Popular feed has been disabled by the administrator.": "Le flux populaire a été désactivé par l'administrateur.",
|
||||
"carousel_skip": "Passez le carrousel",
|
||||
"carousel_slide": "Diapositive {{current}} sur {{total}}",
|
||||
"carousel_go_to": "Aller à la diapositive `x`",
|
||||
"toggle_theme": "Changer le Thème",
|
||||
"Filipino (auto-generated)": "Philippines (automatiquement générer)",
|
||||
"preferences_preload_label": "Précharger les données de la vidéo : "
|
||||
}
|
||||
|
@ -14,7 +14,6 @@
|
||||
"Clear watch history?": "לנקות את היסטוריית הצפייה?",
|
||||
"New password": "סיסמה חדשה",
|
||||
"New passwords must match": "על הסיסמאות החדשות להתאים",
|
||||
"Cannot change password for Google accounts": "לא ניתן לשנות את הסיסמה לחשבונות Google",
|
||||
"Authorize token?": "לאשר את האסימון?",
|
||||
"Authorize token for `x`?": "האם לאשר את האסימון עבור `x`?",
|
||||
"Yes": "כן",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "source",
|
||||
"Log in": "כניסה",
|
||||
"Log in/register": "כניסה/הרשמה",
|
||||
"Log in with Google": "כניסה עם Google",
|
||||
"User ID": "שם משתמש",
|
||||
"Password": "סיסמה",
|
||||
"Time (h:mm:ss):": "זמן (h:mm:ss):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "התחברות",
|
||||
"Register": "הרשמה",
|
||||
"E-mail": "דוא״ל",
|
||||
"Google verification code": "קוד האימות של Google",
|
||||
"Preferences": "העדפות",
|
||||
"preferences_category_player": "העדפות הנגן",
|
||||
"preferences_autoplay_label": "ניגון אוטומטי: ",
|
||||
@ -137,7 +134,6 @@
|
||||
"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`",
|
||||
@ -271,35 +267,35 @@
|
||||
"`x` marked it with a ❤": "סומנה ב־❤ על ידי `x`",
|
||||
"Audio mode": "Audio mode",
|
||||
"Video mode": "Video mode",
|
||||
"Videos": "סרטונים",
|
||||
"channel_tab_videos_label": "סרטונים",
|
||||
"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: ": "הגרסה הנוכחית: "
|
||||
"channel_tab_community_label": "קהילה",
|
||||
"search_filters_sort_option_relevance": "רלוונטיות",
|
||||
"search_filters_sort_option_rating": "דירוג",
|
||||
"search_filters_sort_option_date": "תאריך העלאה",
|
||||
"search_filters_sort_option_views": "מספר צפיות",
|
||||
"search_filters_type_label": "סוג",
|
||||
"search_filters_duration_label": "משך זמן",
|
||||
"search_filters_features_label": "תכונות",
|
||||
"search_filters_sort_label": "מיון לפי",
|
||||
"search_filters_date_option_hour": "השעה האחרונה",
|
||||
"search_filters_date_option_today": "היום",
|
||||
"search_filters_date_option_week": "השבוע",
|
||||
"search_filters_date_option_month": "החודש",
|
||||
"search_filters_date_option_year": "השנה",
|
||||
"search_filters_type_option_video": "סרטון",
|
||||
"search_filters_type_option_channel": "ערוץ",
|
||||
"search_filters_type_option_playlist": "פלייליסט",
|
||||
"search_filters_type_option_movie": "סרט",
|
||||
"search_filters_type_option_show": "תכנית טלוויזיה",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "כתוביות",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Live",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "מיקום",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "הגרסה הנוכחית: ",
|
||||
"search_filters_title": "סינון"
|
||||
}
|
||||
|
500
locales/hi.json
Normal file
500
locales/hi.json
Normal file
@ -0,0 +1,500 @@
|
||||
{
|
||||
"last": "आखिरी",
|
||||
"Yes": "हाँ",
|
||||
"No": "नहीं",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "OPML के रूप में सदस्यताएँ निर्यात करें (NewPipe और FreeTube के लिए)",
|
||||
"Log in/register": "लॉग-इन/पंजीकृत करें",
|
||||
"preferences_autoplay_label": "अपने आप चलाने की सुविधा: ",
|
||||
"preferences_dark_mode_label": "थीम: ",
|
||||
"preferences_default_home_label": "डिफ़ॉल्ट मुखपृष्ठ: ",
|
||||
"Could not fetch comments": "टिप्पणियाँ प्राप्त न की जा सकीं",
|
||||
"comments_points_count": "{{count}} पॉइंट",
|
||||
"comments_points_count_plural": "{{count}} पॉइंट्स",
|
||||
"Subscription manager": "सदस्यता प्रबंधन",
|
||||
"License: ": "लाइसेंस: ",
|
||||
"Wilson score: ": "Wilson स्कोर: ",
|
||||
"Wrong answer": "गलत जवाब",
|
||||
"Erroneous CAPTCHA": "गलत CAPTCHA",
|
||||
"Please log in": "कृपया लॉग-इन करें",
|
||||
"Bosnian": "बोस्नियाई",
|
||||
"Bulgarian": "बुल्गारियाई",
|
||||
"Burmese": "बर्मी",
|
||||
"Chinese (Traditional)": "चीनी (पारंपरिक)",
|
||||
"Kurdish": "कुर्द",
|
||||
"Punjabi": "पंजाबी",
|
||||
"Sinhala": "सिंहली",
|
||||
"Slovak": "स्लोवाक",
|
||||
"generic_count_days": "{{count}} दिन",
|
||||
"generic_count_days_plural": "{{count}} दिन",
|
||||
"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}} सेकंड",
|
||||
"generic_playlists_count": "{{count}} प्लेलिस्ट",
|
||||
"generic_playlists_count_plural": "{{count}} प्लेलिस्ट्स",
|
||||
"crash_page_report_issue": "अगर इनमें से कुछ भी काम नहीं करता, कृपया <a href=\"`x`\">GitHub पर एक नया मुद्दा खोल दें</a> (अंग्रेज़ी में) और अपने संदेश में यह टेक्स्ट दर्ज करें (इसे अनुवादित न करें!):",
|
||||
"generic_views_count": "{{count}} बार देखा गया",
|
||||
"generic_views_count_plural": "{{count}} बार देखा गया",
|
||||
"generic_videos_count": "{{count}} वीडियो",
|
||||
"generic_videos_count_plural": "{{count}} वीडियो",
|
||||
"generic_subscribers_count": "{{count}} सदस्य",
|
||||
"generic_subscribers_count_plural": "{{count}} सदस्य",
|
||||
"generic_subscriptions_count": "{{count}} सदस्यता",
|
||||
"generic_subscriptions_count_plural": "{{count}} सदस्यताएँ",
|
||||
"LIVE": "लाइव",
|
||||
"Shared `x` ago": "`x` पहले बाँटा गया",
|
||||
"Unsubscribe": "सदस्यता छोड़ें",
|
||||
"Subscribe": "सदस्यता लें",
|
||||
"View channel on YouTube": "चैनल YouTube पर देखें",
|
||||
"View playlist on YouTube": "प्लेलिस्ट YouTube पर देखें",
|
||||
"newest": "सबसे नया",
|
||||
"oldest": "सबसे पुराना",
|
||||
"popular": "सर्वाधिक लोकप्रिय",
|
||||
"Next page": "अगला पृष्ठ",
|
||||
"Previous page": "पिछला पृष्ठ",
|
||||
"Clear watch history?": "देखने का इतिहास मिटाएँ?",
|
||||
"New password": "नया पासवर्ड",
|
||||
"New passwords must match": "पासवर्ड्स को मेल खाना होगा",
|
||||
"Authorize token?": "टोकन को प्रमाणित करें?",
|
||||
"Authorize token for `x`?": "`x` के लिए टोकन को प्रमाणित करें?",
|
||||
"Import and Export Data": "डेटा को आयात और निर्यात करें",
|
||||
"Import": "आयात करें",
|
||||
"Import Invidious data": "Invidious JSON डेटा आयात करें",
|
||||
"Import YouTube subscriptions": "YouTube CSV या 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 data as JSON": "Invidious डेटा को JSON के रूप में निर्यात करें",
|
||||
"Delete account?": "खाता हटाएँ?",
|
||||
"History": "देखे गए वीडियो",
|
||||
"An alternative front-end to YouTube": "YouTube का एक वैकल्पिक फ्रंट-एंड",
|
||||
"JavaScript license information": "जावास्क्रिप्ट लाइसेंस की जानकारी",
|
||||
"source": "स्रोत",
|
||||
"Log in": "लॉग-इन करें",
|
||||
"User ID": "सदस्य ID",
|
||||
"Password": "पासवर्ड",
|
||||
"Register": "पंजीकृत करें",
|
||||
"E-mail": "ईमेल",
|
||||
"Time (h:mm:ss):": "समय (घं:मिमि:सेसे):",
|
||||
"Text CAPTCHA": "टेक्स्ट CAPTCHA",
|
||||
"Image CAPTCHA": "चित्र CAPTCHA",
|
||||
"Sign In": "साइन इन करें",
|
||||
"Preferences": "प्राथमिकताएँ",
|
||||
"preferences_category_player": "प्लेयर की प्राथमिकताएँ",
|
||||
"preferences_video_loop_label": "हमेशा लूप करें: ",
|
||||
"preferences_continue_label": "डिफ़ॉल्ट से अगला चलाएँ: ",
|
||||
"preferences_continue_autoplay_label": "अगला वीडियो अपने आप चलाएँ: ",
|
||||
"preferences_listen_label": "डिफ़ॉल्ट से सुनें: ",
|
||||
"preferences_local_label": "प्रॉक्सी वीडियो: ",
|
||||
"preferences_watch_history_label": "देखने का इतिहास सक्षम करें: ",
|
||||
"preferences_speed_label": "वीडियो चलाने की डिफ़ॉल्ट रफ़्तार: ",
|
||||
"preferences_quality_label": "वीडियो की प्राथमिक क्वालिटी: ",
|
||||
"preferences_quality_option_dash": "DASH (अनुकूली गुणवत्ता)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "मध्यम",
|
||||
"preferences_quality_option_small": "छोटा",
|
||||
"preferences_quality_dash_label": "प्राथमिक DASH वीडियो क्वालिटी: ",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"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_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_comments_label": "डिफ़ॉल्ट टिप्पणियाँ: ",
|
||||
"preferences_volume_label": "प्लेयर का वॉल्यूम: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"invidious": "Invidious",
|
||||
"preferences_captions_label": "डिफ़ॉल्ट कैप्शन: ",
|
||||
"Fallback captions: ": "वैकल्पिक कैप्शन: ",
|
||||
"preferences_related_videos_label": "संबंधित वीडियो दिखाएँ: ",
|
||||
"preferences_annotations_label": "डिफ़ॉल्ट से टिप्पणियाँ दिखाएँ: ",
|
||||
"preferences_extend_desc_label": "अपने आप वीडियो के विवरण का विस्तार करें: ",
|
||||
"preferences_vr_mode_label": "उत्तरदायी 360 डिग्री वीडियो (WebGL की ज़रूरत है): ",
|
||||
"preferences_category_visual": "यथादृश्य प्राथमिकताएँ",
|
||||
"preferences_region_label": "सामग्री का राष्ट्र: ",
|
||||
"preferences_player_style_label": "प्लेयर का स्टाइल: ",
|
||||
"Dark mode: ": "डार्क मोड: ",
|
||||
"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": "प्रकाशित - उल्टा",
|
||||
"Only show latest video from channel: ": "चैनल से सिर्फ नवीनतम वीडियो ही दिखाएँ: ",
|
||||
"alphabetically": "वर्णक्रमानुसार",
|
||||
"Only show latest unwatched video from channel: ": "चैनल से सिर्फ न देखा गया नवीनतम वीडियो ही दिखाएँ: ",
|
||||
"alphabetically - reverse": "वर्णक्रमानुसार - उल्टा",
|
||||
"channel name": "चैनल का नाम",
|
||||
"channel name - reverse": "चैनल का नाम - उल्टा",
|
||||
"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_feed_menu_label": "फ़ीड मेन्यू: ",
|
||||
"preferences_show_nick_label": "ऊपर उपनाम दिखाएँ: ",
|
||||
"Top enabled: ": "ऊपर का हिस्सा सक्षम है: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA सक्षम है: ",
|
||||
"Login enabled: ": "लॉग-इन सक्षम है: ",
|
||||
"Registration enabled: ": "पंजीकरण सक्षम है: ",
|
||||
"Report statistics: ": "सांख्यिकी रिपोर्ट करें: ",
|
||||
"Released under the AGPLv3 on Github.": "GitHub पर AGPLv3 के अंतर्गत प्रकाशित।",
|
||||
"Save preferences": "प्राथमिकताएँ सहेजें",
|
||||
"Token manager": "टोकन प्रबंधन",
|
||||
"Token": "टोकन",
|
||||
"tokens_count": "{{count}} टोकन",
|
||||
"tokens_count_plural": "{{count}} टोकन",
|
||||
"Import/export": "आयात/निर्यात करें",
|
||||
"unsubscribe": "सदस्यता छोड़ें",
|
||||
"revoke": "हटाएँ",
|
||||
"Subscriptions": "सदस्यताएँ",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} अपठित सूचना",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} अपठित सूचना",
|
||||
"search": "खोजें",
|
||||
"Log out": "लॉग-आउट करें",
|
||||
"Source available here.": "स्रोत यहाँ उपलब्ध है।",
|
||||
"View JavaScript license information.": "जावास्क्रिप्ट लाइसेंस की जानकारी देखें।",
|
||||
"View privacy policy.": "निजता नीति देखें।",
|
||||
"Trending": "रुझान में",
|
||||
"Public": "सार्वजनिक",
|
||||
"Unlisted": "सबके लिए उपलब्ध नहीं",
|
||||
"Private": "निजी",
|
||||
"View all playlists": "सभी प्लेलिस्ट देखें",
|
||||
"Create playlist": "प्लेलिस्ट बनाएँ",
|
||||
"Updated `x` ago": "`x` पहले अपडेट किया गया",
|
||||
"Delete playlist `x`?": "प्लेलिस्ट `x` हटाएँ?",
|
||||
"Delete playlist": "प्लेलिस्ट हटाएँ",
|
||||
"Title": "शीर्षक",
|
||||
"Playlist privacy": "प्लेलिस्ट की निजता",
|
||||
"Editing playlist `x`": "प्लेलिस्ट `x` को संपादित किया जा रहा है",
|
||||
"Show more": "अधिक देखें",
|
||||
"Show less": "कम देखें",
|
||||
"Watch on YouTube": "YouTube पर देखें",
|
||||
"Switch Invidious Instance": "Invidious उदाहरण बदलें",
|
||||
"search_message_no_results": "कोई परिणाम नहीं मिला।",
|
||||
"search_message_change_filters_or_query": "अपने खोज क्वेरी को और चौड़ा करें और/या फ़िल्टर बदलें।",
|
||||
"search_message_use_another_instance": " आप <a href=\"`x`\">दूसरे उदाहरण पर भी खोज सकते हैं</a>।",
|
||||
"Hide annotations": "टिप्पणियाँ छिपाएँ",
|
||||
"Show annotations": "टिप्पणियाँ दिखाएँ",
|
||||
"Genre: ": "श्रेणी: ",
|
||||
"Family friendly? ": "परिवार के लिए ठीक है? ",
|
||||
"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": "YouTube टिप्पणियाँ देखें",
|
||||
"View more comments on Reddit": "Reddit पर अधिक टिप्पणियाँ देखें",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` टिप्पणी देखें",
|
||||
"": "`x` टिप्पणियाँ देखें"
|
||||
},
|
||||
"View Reddit comments": "Reddit पर टिप्पणियाँ",
|
||||
"Hide replies": "जवाब छिपाएँ",
|
||||
"Show replies": "जवाब दिखाएँ",
|
||||
"Incorrect password": "गलत पासवर्ड",
|
||||
"CAPTCHA is a required field": "CAPTCHA एक ज़रूरी फ़ील्ड है",
|
||||
"User ID is a required field": "सदस्य ID एक ज़रूरी फ़ील्ड है",
|
||||
"Password is a required field": "पासवर्ड एक ज़रूरी फ़ील्ड है",
|
||||
"Wrong username or password": "गलत सदस्यनाम या पासवर्ड",
|
||||
"Password cannot be empty": "पासवर्ड खाली नहीं हो सकता",
|
||||
"Password cannot be longer than 55 characters": "पासवर्ड में अधिकतम 55 अक्षर हो सकते हैं",
|
||||
"Invidious Private Feed for `x`": "`x` के लिए Invidious निजी फ़ीड",
|
||||
"channel:`x`": "चैनल:`x`",
|
||||
"Deleted or invalid channel": "हटाया गया या अमान्य चैनल",
|
||||
"This channel does not exist.": "यह चैनल मौजूद नहीं है।",
|
||||
"Could not get channel info.": "चैनल की जानकारी प्राप्त न की जा सकी।",
|
||||
"comments_view_x_replies": "{{count}} टिप्पणी देखें",
|
||||
"comments_view_x_replies_plural": "{{count}} टिप्पणियाँ देखें",
|
||||
"`x` ago": "`x` पहले",
|
||||
"Load more": "अधिक लोड करें",
|
||||
"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 (United Kingdom)": "अंग्रेज़ी (यूनाइटेड किंग्डम)",
|
||||
"English (United States)": "अंग्रेज़ी (संयुक्त राष्ट्र)",
|
||||
"English (auto-generated)": "अंग्रेज़ी (अपने-आप जनरेट हुआ)",
|
||||
"Afrikaans": "अफ़्रीकी",
|
||||
"Albanian": "अल्बानियाई",
|
||||
"Amharic": "अम्हेरी",
|
||||
"Arabic": "अरबी",
|
||||
"Armenian": "आर्मेनियाई",
|
||||
"Belarusian": "बेलारूसी",
|
||||
"Azerbaijani": "अज़रबैजानी",
|
||||
"Bangla": "बंगाली",
|
||||
"Basque": "बास्क",
|
||||
"Cantonese (Hong Kong)": "कैंटोनीज़ (हाँग काँग)",
|
||||
"Catalan": "कातालान",
|
||||
"Cebuano": "सेबुआनो",
|
||||
"Chinese": "चीनी",
|
||||
"Chinese (China)": "चीनी (चीन)",
|
||||
"Chinese (Hong Kong)": "चीनी (हाँग काँग)",
|
||||
"Chinese (Simplified)": "चीनी (सरलीकृत)",
|
||||
"Chinese (Taiwan)": "चीनी (ताइवान)",
|
||||
"Corsican": "कोर्सिकन",
|
||||
"Croatian": "क्रोएशियाई",
|
||||
"Czech": "चेक",
|
||||
"Danish": "डेनिश",
|
||||
"Dutch": "डच",
|
||||
"Dutch (auto-generated)": "डच (अपने-आप जनरेट हुआ)",
|
||||
"Esperanto": "एस्पेरांतो",
|
||||
"Estonian": "एस्टोनियाई",
|
||||
"Filipino": "फ़िलिपीनो",
|
||||
"Finnish": "फ़िनिश",
|
||||
"French": "फ़्रेंच",
|
||||
"French (auto-generated)": "फ़्रेंच (अपने-आप जनरेट हुआ)",
|
||||
"Galician": "गैलिशियन",
|
||||
"Georgian": "जॉर्जियाई",
|
||||
"German": "जर्मन",
|
||||
"German (auto-generated)": "जर्मन (अपने-आप जनरेट हुआ)",
|
||||
"Greek": "यूनानी",
|
||||
"Gujarati": "गुजराती",
|
||||
"Haitian Creole": "हैती क्रियोल",
|
||||
"Hausa": "हौसा",
|
||||
"Hawaiian": "हवाई",
|
||||
"Hebrew": "हीब्रू",
|
||||
"Hindi": "हिन्दी",
|
||||
"Hmong": "हमोंग",
|
||||
"Hungarian": "हंगेरी",
|
||||
"Icelandic": "आइसलैंडिक",
|
||||
"Igbo": "इग्बो",
|
||||
"Indonesian": "इंडोनेशियाई",
|
||||
"Indonesian (auto-generated)": "इंडोनेशियाई (अपने-आप जनरेट हुआ)",
|
||||
"Interlingue": "इंटरलिंगुआ",
|
||||
"Irish": "आयरिश",
|
||||
"Italian": "इतालवी",
|
||||
"Italian (auto-generated)": "इतालवी (अपने-आप जनरेट हुआ)",
|
||||
"Japanese": "जापानी",
|
||||
"Japanese (auto-generated)": "जापानी (अपने-आप जनरेट हुआ)",
|
||||
"Javanese": "जावानीज़",
|
||||
"Kannada": "कन्नड़",
|
||||
"Kazakh": "कज़ाख़",
|
||||
"Khmer": "खमेर",
|
||||
"Korean": "कोरियाई",
|
||||
"Korean (auto-generated)": "कोरियाई (अपने-आप जनरेट हुआ)",
|
||||
"Kyrgyz": "किर्गीज़",
|
||||
"Lao": "लाओ",
|
||||
"Latin": "लैटिन",
|
||||
"Latvian": "लातवियाई",
|
||||
"Lithuanian": "लिथुएनियाई",
|
||||
"Luxembourgish": "लग्ज़मबर्गी",
|
||||
"Macedonian": "मकादूनियाई",
|
||||
"Malagasy": "मालागासी",
|
||||
"Malay": "मलय",
|
||||
"Malayalam": "मलयालम",
|
||||
"Maltese": "माल्टीज़",
|
||||
"Maori": "माओरी",
|
||||
"Marathi": "मराठी",
|
||||
"Mongolian": "मंगोलियाई",
|
||||
"Nepali": "नेपाली",
|
||||
"Norwegian Bokmål": "नॉर्वेजियाई",
|
||||
"Nyanja": "न्यानजा",
|
||||
"Pashto": "पश्तो",
|
||||
"Persian": "फ़ारसी",
|
||||
"Polish": "पोलिश",
|
||||
"Portuguese": "पुर्तगाली",
|
||||
"Portuguese (auto-generated)": "पुर्तगाली (अपने-आप जनरेट हुआ)",
|
||||
"Portuguese (Brazil)": "पुर्तगाली (ब्राज़ील)",
|
||||
"Romanian": "रोमेनियाई",
|
||||
"Russian": "रूसी",
|
||||
"Russian (auto-generated)": "रूसी (अपने-आप जनरेट हुआ)",
|
||||
"Samoan": "सामोन",
|
||||
"Scottish Gaelic": "स्कॉटिश गाएलिक",
|
||||
"Serbian": "सर्बियाई",
|
||||
"Shona": "शोणा",
|
||||
"Sindhi": "सिंधी",
|
||||
"Slovenian": "स्लोवेनियाई",
|
||||
"Somali": "सोमाली",
|
||||
"Southern Sotho": "दक्षिणी सोथो",
|
||||
"Spanish": "स्पेनी",
|
||||
"Spanish (auto-generated)": "स्पेनी (अपने-आप जनरेट हुआ)",
|
||||
"Spanish (Latin America)": "स्पेनी (लातिन अमेरिकी)",
|
||||
"Spanish (Mexico)": "स्पेनी (मेक्सिको)",
|
||||
"Spanish (Spain)": "स्पेनी (स्पेन)",
|
||||
"Sundanese": "सुंडानी",
|
||||
"Swahili": "स्वाहिली",
|
||||
"Swedish": "स्वीडिश",
|
||||
"Tajik": "ताजीक",
|
||||
"Tamil": "तमिल",
|
||||
"Telugu": "तेलुगु",
|
||||
"Thai": "थाई",
|
||||
"Turkish": "तुर्की",
|
||||
"Turkish (auto-generated)": "तुर्की (अपने-आप जनरेट हुआ)",
|
||||
"Ukrainian": "यूक्रेनी",
|
||||
"Urdu": "उर्दू",
|
||||
"Uzbek": "उज़्बेक",
|
||||
"Vietnamese": "वियतनामी",
|
||||
"Vietnamese (auto-generated)": "वियतनामी (अपने-आप जनरेट हुआ)",
|
||||
"Welsh": "Welsh",
|
||||
"Western Frisian": "पश्चिमी फ़्रिसियाई",
|
||||
"Xhosa": "खोसा",
|
||||
"Yiddish": "यहूदी",
|
||||
"generic_count_years": "{{count}} वर्ष",
|
||||
"generic_count_years_plural": "{{count}} वर्ष",
|
||||
"Yoruba": "योरुबा",
|
||||
"generic_count_months": "{{count}} महीने",
|
||||
"generic_count_months_plural": "{{count}} महीने",
|
||||
"Zulu": "ज़ूलू",
|
||||
"generic_count_weeks": "{{count}} हफ़्ते",
|
||||
"generic_count_weeks_plural": "{{count}} हफ़्ते",
|
||||
"Fallback comments: ": "फ़ॉलबैक टिप्पणियाँ: ",
|
||||
"Popular": "प्रसिद्ध",
|
||||
"Search": "खोजें",
|
||||
"Top": "ऊपर",
|
||||
"About": "जानकारी",
|
||||
"Rating: ": "रेटिंग: ",
|
||||
"preferences_locale_label": "भाषा: ",
|
||||
"View as playlist": "प्लेलिस्ट के रूप में देखें",
|
||||
"Default": "डिफ़ॉल्ट",
|
||||
"Download": "डाउनलोड करें",
|
||||
"Download as: ": "इस रूप में डाउनलोड करें: ",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"Music": "संगीत",
|
||||
"Gaming": "गेमिंग",
|
||||
"News": "समाचार",
|
||||
"Movies": "फ़िल्में",
|
||||
"(edited)": "(संपादित)",
|
||||
"YouTube comment permalink": "YouTube पर टिप्पणी की स्थायी कड़ी",
|
||||
"permalink": "स्थायी कड़ी",
|
||||
"channel_tab_videos_label": "वीडियो",
|
||||
"`x` marked it with a ❤": "`x` ने इसे एक ❤ से चिह्नित किया",
|
||||
"Audio mode": "ऑडियो मोड",
|
||||
"Playlists": "प्लेलिस्ट्स",
|
||||
"Video mode": "वीडियो मोड",
|
||||
"channel_tab_community_label": "समुदाय",
|
||||
"search_filters_title": "फ़िल्टर",
|
||||
"search_filters_date_label": "अपलोड करने का समय",
|
||||
"search_filters_date_option_none": "कोई भी समय",
|
||||
"search_filters_date_option_week": "इस हफ़्ते",
|
||||
"search_filters_date_option_month": "इस महीने",
|
||||
"search_filters_date_option_hour": "पिछला घंटा",
|
||||
"search_filters_date_option_today": "आज",
|
||||
"search_filters_date_option_year": "इस साल",
|
||||
"search_filters_type_label": "प्रकार",
|
||||
"search_filters_type_option_all": "कोई भी प्रकार",
|
||||
"search_filters_type_option_video": "वीडियो",
|
||||
"search_filters_type_option_channel": "चैनल",
|
||||
"search_filters_sort_option_relevance": "प्रासंगिकता",
|
||||
"search_filters_type_option_playlist": "प्लेलिस्ट",
|
||||
"search_filters_type_option_movie": "फ़िल्म",
|
||||
"search_filters_type_option_show": "शो",
|
||||
"search_filters_duration_label": "अवधि",
|
||||
"search_filters_duration_option_none": "कोई भी अवधि",
|
||||
"search_filters_duration_option_short": "4 मिनट से कम",
|
||||
"search_filters_duration_option_medium": "4 से 20 मिनट तक",
|
||||
"search_filters_duration_option_long": "20 मिनट से ज़्यादा",
|
||||
"search_filters_features_label": "सुविधाएँ",
|
||||
"search_filters_features_option_live": "लाइव",
|
||||
"search_filters_sort_option_rating": "रेटिंग",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "उपशीर्षक/कैप्शन",
|
||||
"search_filters_features_option_c_commons": "क्रिएटिव कॉमन्स",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_features_option_location": "जगह",
|
||||
"search_filters_features_option_purchased": "खरीदा गया",
|
||||
"search_filters_sort_label": "इस क्रम से लगाएँ",
|
||||
"search_filters_sort_option_date": "अपलोड की ताऱीख",
|
||||
"search_filters_sort_option_views": "देखे जाने की संख्या",
|
||||
"search_filters_apply_button": "चयनित फ़िल्टर लागू करें",
|
||||
"footer_documentation": "प्रलेख",
|
||||
"footer_source_code": "स्रोत कोड",
|
||||
"footer_original_source_code": "मूल स्रोत कोड",
|
||||
"footer_modfied_source_code": "बदला गया स्रोत कोड",
|
||||
"Current version: ": "वर्तमान संस्करण: ",
|
||||
"next_steps_error_message": "इसके बाद आपके ये आज़माने चाहिए: ",
|
||||
"next_steps_error_message_refresh": "साफ़ करें",
|
||||
"next_steps_error_message_go_to_youtube": "YouTube पर जाएँ",
|
||||
"footer_donate_page": "दान करें",
|
||||
"adminprefs_modified_source_code_url_label": "बदले गए स्रोत कोड के रिपॉज़िटरी का URL",
|
||||
"none": "कुछ नहीं",
|
||||
"videoinfo_started_streaming_x_ago": "`x` पहले स्ट्रीम करना शुरू किया",
|
||||
"videoinfo_watch_on_youTube": "YouTube पर देखें",
|
||||
"Video unavailable": "वीडियो उपलब्ध नहीं है",
|
||||
"preferences_save_player_pos_label": "यहाँ से चलाना शुरू करें: ",
|
||||
"crash_page_you_found_a_bug": "शायद आपको Invidious में कोई बग नज़र आ गया है!",
|
||||
"videoinfo_youTube_embed_link": "एम्बेड करें",
|
||||
"videoinfo_invidious_embed_link": "एम्बेड करने की कड़ी",
|
||||
"download_subtitles": "उपशीर्षक - `x` (.vtt)",
|
||||
"user_created_playlists": "बनाए गए `x` प्लेलिस्ट्स",
|
||||
"user_saved_playlists": "सहेजे गए `x` प्लेलिस्ट्स",
|
||||
"crash_page_before_reporting": "बग रिपोर्ट करने से पहले:",
|
||||
"crash_page_switch_instance": "<a href=\"`x`\">किसी दूसरे उदाहरण का इस्तेमाल करें</a>",
|
||||
"crash_page_read_the_faq": "<a href=\"`x`\">अक्सर पूछे जाने वाले प्रश्न (FAQ)</a> पढ़ें",
|
||||
"crash_page_refresh": "<a href=\"`x`\">पृष्ठ को एक बार साफ़ करें</a>",
|
||||
"crash_page_search_issue": "<a href=\"`x`\">GitHub पर मौजूदा मुद्दे</a> ढूँढ़ें",
|
||||
"Popular enabled: ": "लोकप्रिय सक्षम: ",
|
||||
"Artist: ": "कलाकार: ",
|
||||
"Music in this video": "इस वीडियो में संगीत",
|
||||
"Album: ": "एल्बम: ",
|
||||
"error_video_not_in_playlist": "अनुरोधित वीडियो इस प्लेलिस्ट में मौजूद नहीं है। <a href=\"`x`\">प्लेलिस्ट के मुखपृष्ठ पर जाने के लिए यहाँ क्लिक करें।</a>",
|
||||
"channel_tab_shorts_label": "शॉर्ट्स",
|
||||
"channel_tab_streams_label": "लाइवस्ट्रीम्स",
|
||||
"channel_tab_playlists_label": "प्लेलिस्ट्स",
|
||||
"channel_tab_channels_label": "चैनल्स",
|
||||
"generic_button_save": "सहेजें",
|
||||
"generic_button_cancel": "रद्द करें",
|
||||
"generic_button_rss": "आरएसएस",
|
||||
"generic_button_edit": "संपादित करें",
|
||||
"generic_button_delete": "हटाएं",
|
||||
"playlist_button_add_items": "वीडियो जोड़ें",
|
||||
"Song: ": "गाना: ",
|
||||
"channel_tab_podcasts_label": "पाॅडकास्ट",
|
||||
"channel_tab_releases_label": "रिलीज़ेस्",
|
||||
"Import YouTube playlist (.csv)": "YouTube प्लेलिस्ट (.csv) आयात करें",
|
||||
"Standard YouTube license": "मानक यूट्यूब लाइसेंस",
|
||||
"Channel Sponsor": "चैनल प्रायोजक",
|
||||
"Download is disabled": "डाउनलोड करना अक्षम है",
|
||||
"generic_channels_count": "{{count}} चैनल",
|
||||
"generic_channels_count_plural": "{{count}} चैनल",
|
||||
"Import YouTube watch history (.json)": "YouTube पर देखने का इतिहास आयात करें (.json)",
|
||||
"Add to playlist": "प्लेलिस्ट में जोड़ें",
|
||||
"Answer": "जवाब",
|
||||
"The Popular feed has been disabled by the administrator.": "लोकप्रिय फ़ीड व्यवस्थापक द्वारा अक्षम कर दिया गया है।",
|
||||
"toggle_theme": "थीम टॉगल करें",
|
||||
"carousel_slide": "{{total}} में से स्लाइड {{current}}",
|
||||
"carousel_skip": "कैरोसेल छोड़ें",
|
||||
"Add to playlist: ": "प्लेलिस्ट में जोड़ें: ",
|
||||
"Search for videos": "वीडियो खोजें",
|
||||
"carousel_go_to": "स्लाइड `x` पर जाएँ"
|
||||
}
|
183
locales/hr.json
183
locales/hr.json
@ -7,14 +7,13 @@
|
||||
"View playlist on YouTube": "Prikaži zbirku na YouTubeu",
|
||||
"newest": "najnovije",
|
||||
"oldest": "najstarije",
|
||||
"popular": "popularni",
|
||||
"last": "zadnji",
|
||||
"popular": "popularne",
|
||||
"last": "zadnje",
|
||||
"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",
|
||||
@ -22,7 +21,7 @@
|
||||
"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 YouTube subscriptions": "Uvezi YouTube CSV ili 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)",
|
||||
@ -37,16 +36,14 @@
|
||||
"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",
|
||||
"Sign In": "Prijavi se",
|
||||
"Register": "Registriraj se",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Googleov potvrdni kod",
|
||||
"E-mail": "E-mail adresa",
|
||||
"Preferences": "Postavke",
|
||||
"preferences_category_player": "Postavke playera",
|
||||
"preferences_video_loop_label": "Uvijek ponavljaj: ",
|
||||
@ -88,7 +85,7 @@
|
||||
"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: ",
|
||||
"Only show latest unwatched video from channel: ": "Prikaži samo najnovija nepogledana videa od 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",
|
||||
@ -107,7 +104,7 @@
|
||||
"preferences_feed_menu_label": "Izbornik za feedove: ",
|
||||
"preferences_show_nick_label": "Prikaži nadimak na vrhu: ",
|
||||
"Top enabled: ": "Najbolji aktivirani: ",
|
||||
"CAPTCHA enabled: ": "Aktivirani CAPTCHA: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA aktiviran: ",
|
||||
"Login enabled: ": "Prijava aktivirana: ",
|
||||
"Registration enabled: ": "Registracija aktivirana: ",
|
||||
"Report statistics: ": "Izvještaj o statistici: ",
|
||||
@ -121,7 +118,7 @@
|
||||
"Subscriptions": "Pretplate",
|
||||
"search": "traži",
|
||||
"Log out": "Odjavi se",
|
||||
"Released under the AGPLv3 on Github.": "Izdano pod licencom AGPLv3 na Github-u.",
|
||||
"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.",
|
||||
@ -137,11 +134,10 @@
|
||||
"Title": "Naslov",
|
||||
"Playlist privacy": "Privatnost zbirke",
|
||||
"Editing playlist `x`": "Uređivanje zbirke `x`",
|
||||
"Show more": "Pokaži više",
|
||||
"Show less": "Pokaži manje",
|
||||
"Show more": "Prikaži više",
|
||||
"Show less": "Prikaž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: ",
|
||||
@ -165,17 +161,12 @@
|
||||
"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",
|
||||
@ -319,55 +310,54 @@
|
||||
"Movies": "Filmovi",
|
||||
"Download": "Preuzmi",
|
||||
"Download as: ": "Preuzmi kao: ",
|
||||
"%A %B %-d, %Y": "%A, %-d. %B %Y",
|
||||
"%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",
|
||||
"channel_tab_videos_label": "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",
|
||||
"channel_tab_community_label": "Zajednica",
|
||||
"search_filters_sort_option_relevance": "Značaj",
|
||||
"search_filters_sort_option_rating": "Ocjena",
|
||||
"search_filters_sort_option_date": "Datum prijenosa",
|
||||
"search_filters_sort_option_views": "Broj gledanja",
|
||||
"search_filters_type_label": "Vrsta",
|
||||
"search_filters_duration_label": "Trajanje",
|
||||
"search_filters_features_label": "Funkcije",
|
||||
"search_filters_sort_label": "Redoslijed",
|
||||
"search_filters_date_option_hour": "Zadnjih sat vremena",
|
||||
"search_filters_date_option_today": "Danas",
|
||||
"search_filters_date_option_week": "Ovaj tjedan",
|
||||
"search_filters_date_option_month": "Ovaj mjesec",
|
||||
"search_filters_date_option_year": "Ova godina",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_type_option_playlist": "Zbirka",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Emisija",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Titlovi/CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Uživo",
|
||||
"search_filters_features_option_four_k": "4k",
|
||||
"search_filters_features_option_location": "Lokacija",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"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)",
|
||||
"adminprefs_modified_source_code_url_label": "URL do repozitorija prilagođenog izvornog koda",
|
||||
"search_filters_duration_option_short": "Kratko (< 4 minute)",
|
||||
"search_filters_duration_option_long": "Dugo (> 20 minute)",
|
||||
"footer_source_code": "Izvorni kod",
|
||||
"footer_modfied_source_code": "Izmijenjeni izvorni kod",
|
||||
"footer_modfied_source_code": "Prilagođen izvorni kod",
|
||||
"footer_documentation": "Dokumentacija",
|
||||
"footer_original_source_code": "Izvoran izvorni kod",
|
||||
"footer_original_source_code": "Prvobitan izvorni kod",
|
||||
"preferences_region_label": "Zemlja sadržaja: ",
|
||||
"preferences_quality_dash_label": "Preferirana DASH videokvaliteta: ",
|
||||
"preferences_quality_option_dash": "DASH (adaptativna kvaliteta)",
|
||||
@ -382,12 +372,12 @@
|
||||
"preferences_quality_dash_option_240p": "240 p",
|
||||
"preferences_quality_dash_option_144p": "144 p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Kupljeno",
|
||||
"360": "360 °",
|
||||
"search_filters_features_option_purchased": "Kupljeno",
|
||||
"search_filters_features_option_three_sixty": "360 °",
|
||||
"none": "bez",
|
||||
"videoinfo_youTube_embed_link": "Ugradi",
|
||||
"user_created_playlists": "`x` stvorene zbirke",
|
||||
"user_saved_playlists": "`x` spremljene zbirke",
|
||||
"user_created_playlists": "`x` je stvorio/la zbirke",
|
||||
"user_saved_playlists": "`x` je spremio/la zbirke",
|
||||
"Video unavailable": "Video nedostupan",
|
||||
"preferences_save_player_pos_label": "Spremi mjesto reprodukcije: ",
|
||||
"videoinfo_watch_on_youTube": "Gledaj na YouTubeu",
|
||||
@ -434,7 +424,7 @@
|
||||
"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_playlists_count_2": "{{count}} zbiraka",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} videa",
|
||||
"generic_videos_count_2": "{{count}} videa",
|
||||
@ -452,29 +442,78 @@
|
||||
"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_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)",
|
||||
"Dutch (auto-generated)": "Nizozemski (automatski generirano)",
|
||||
"French (auto-generated)": "Francuski (automatski generirano)",
|
||||
"Indonesian (auto-generated)": "Indonezijski (automatski generirano)",
|
||||
"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)",
|
||||
"Japanese (auto-generated)": "Japanski (automatski generirano)",
|
||||
"Russian (auto-generated)": "Ruski (automatski generirano)",
|
||||
"Turkish (auto-generated)": "Turski (automatski generirano)",
|
||||
"Vietnamese (auto-generated)": "Vijetnamski (automatski generirano)",
|
||||
"Spanish (Spain)": "Španjolski (Španjolska)",
|
||||
"Italian (auto-generated)": "Talijanski (automatski generiran)",
|
||||
"Italian (auto-generated)": "Talijanski (automatski generirano)",
|
||||
"Portuguese (Brazil)": "Portugalski (Brazil)",
|
||||
"Spanish (Mexico)": "Španjolski (Meksiko)",
|
||||
"German (auto-generated)": "Njemački (automatski generiran)",
|
||||
"German (auto-generated)": "Njemački (automatski generirano)",
|
||||
"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)"
|
||||
"Korean (auto-generated)": "Korejski (automatski generirano)",
|
||||
"Portuguese (auto-generated)": "Portugalski (automatski generirano)",
|
||||
"Spanish (auto-generated)": "Španjolski (automatski generirano)",
|
||||
"preferences_watch_history_label": "Aktiviraj povijest gledanja: ",
|
||||
"search_filters_title": "Filtri",
|
||||
"search_filters_date_option_none": "Bilo koji datum",
|
||||
"search_filters_date_label": "Datum prijenosa",
|
||||
"search_message_no_results": "Nema rezultata.",
|
||||
"search_message_use_another_instance": "Također možeš <a href=\"`x`\">tražiti na jednoj drugoj instanci</a>.",
|
||||
"search_message_change_filters_or_query": "Pokušaj proširiti upit za pretragu i/ili promijeni filtre.",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_duration_option_none": "Bilo koje duljine",
|
||||
"search_filters_duration_option_medium": "Srednje (4 – 20 minuta)",
|
||||
"search_filters_apply_button": "Primijeni odabrane filtre",
|
||||
"search_filters_type_option_all": "Bilo koja vrsta",
|
||||
"Popular enabled: ": "Popularni aktivirani: ",
|
||||
"error_video_not_in_playlist": "Traženi video ne postoji u ovoj zbirci. <a href=\"`x`\">Pritisni ovdje za početnu stranicu zbirke.</a>",
|
||||
"channel_tab_streams_label": "Prijenosi uživo",
|
||||
"channel_tab_playlists_label": "Zbirke",
|
||||
"channel_tab_channels_label": "Kanali",
|
||||
"channel_tab_shorts_label": "Kratka videa",
|
||||
"Music in this video": "Glazba u ovom videu",
|
||||
"Album: ": "Album: ",
|
||||
"Artist: ": "Izvođač: ",
|
||||
"Channel Sponsor": "Sponzor kanala",
|
||||
"Song: ": "Pjesma: ",
|
||||
"Standard YouTube license": "Standardna YouTube licenca",
|
||||
"Download is disabled": "Preuzimanje je deaktivirano",
|
||||
"Import YouTube playlist (.csv)": "Uvezi YouTube zbirku (.csv)",
|
||||
"generic_button_delete": "Izbriši",
|
||||
"playlist_button_add_items": "Dodaj videa",
|
||||
"channel_tab_podcasts_label": "Podcasti",
|
||||
"generic_button_edit": "Uredi",
|
||||
"generic_button_save": "Spremi",
|
||||
"generic_button_cancel": "Odustani",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_releases_label": "Izdanja",
|
||||
"generic_channels_count_0": "{{count}} kanal",
|
||||
"generic_channels_count_1": "{{count}} kanala",
|
||||
"generic_channels_count_2": "{{count}} kanala",
|
||||
"Import YouTube watch history (.json)": "Uvezi YouTube povijest gledanja (.json)",
|
||||
"Add to playlist": "Dodaj u zbirku",
|
||||
"Add to playlist: ": "Dodaj u zbirku: ",
|
||||
"Answer": "Odgovor",
|
||||
"Search for videos": "Traži videa",
|
||||
"The Popular feed has been disabled by the administrator.": "Popularni feed je administrator deaktivirao.",
|
||||
"toggle_theme": "Uklj./Isklj. temu",
|
||||
"carousel_slide": "Kadar {{current}} od {{total}}",
|
||||
"carousel_go_to": "Idi na kadar `x`",
|
||||
"carousel_skip": "Preskoči vrtuljak",
|
||||
"Filipino (auto-generated)": "Filipinski (automatski generirano)",
|
||||
"preferences_preload_label": "Unaprijed učitaj podatke videa: "
|
||||
}
|
||||
|
@ -24,22 +24,21 @@
|
||||
"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": "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": "Az Invidious adatainak importálása",
|
||||
"Import YouTube subscriptions": "YouTube-feliratkozások importálása",
|
||||
"Import Invidious data": "Az Invidious JSON-adatainak importálása",
|
||||
"Import YouTube subscriptions": "YouTube- vagy OPML-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-hoz és FreeTube-hoz)",
|
||||
"Export data as JSON": "Adat exportálása JSON-ként",
|
||||
"Export data as JSON": "Az Invidious JSON-adatainak exportálása",
|
||||
"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",
|
||||
@ -47,7 +46,6 @@
|
||||
"source": "forrás",
|
||||
"Log in": "Bejelentkezés",
|
||||
"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):": "A pontos idő (ó:pp:mm):",
|
||||
@ -56,7 +54,6 @@
|
||||
"Sign In": "Bejelentkezés",
|
||||
"Register": "Regisztrálás",
|
||||
"E-mail": "E-mail-cím",
|
||||
"Google verification code": "A Google ellenőrző kódja",
|
||||
"Preferences": "Beállítások",
|
||||
"preferences_category_player": "Lejátszó beállításai",
|
||||
"preferences_video_loop_label": "Videó állandó ismétlése: ",
|
||||
@ -159,7 +156,7 @@
|
||||
"Engagement: ": "Visszajelzési mutató: ",
|
||||
"Whitelisted regions: ": "Engedélyezett régiók: ",
|
||||
"Blacklisted regions: ": "Tiltott régiók: ",
|
||||
"Shared `x`": "`x` napon osztották meg",
|
||||
"Shared `x`": "`x` dátummal 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.",
|
||||
@ -173,16 +170,12 @@
|
||||
"Hide replies": "Válaszok elrejtése",
|
||||
"Show replies": "Válaszok mutatása",
|
||||
"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.",
|
||||
@ -348,9 +341,9 @@
|
||||
"`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",
|
||||
"channel_tab_videos_label": "Videói",
|
||||
"Playlists": "Lejátszási listái",
|
||||
"Community": "Közösség",
|
||||
"channel_tab_community_label": "Közösség",
|
||||
"Current version: ": "Jelenlegi verzió: ",
|
||||
"preferences_quality_option_medium": "Közepes",
|
||||
"preferences_quality_dash_option_auto": "Automatikus",
|
||||
@ -365,14 +358,14 @@
|
||||
"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",
|
||||
"search_filters_sort_option_views": "Mennyien látták",
|
||||
"search_filters_features_option_purchased": "Megvásárolt",
|
||||
"search_filters_features_option_three_sixty": "360°-os virtuális valóság",
|
||||
"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",
|
||||
"videoinfo_invidious_embed_link": "Beágyazott hivatkozás",
|
||||
"download_subtitles": "Felirat – `x` (.vtt)",
|
||||
"user_created_playlists": "`x` létrehozott lejátszási lista",
|
||||
"user_saved_playlists": "`x` mentett lejátszási lista",
|
||||
@ -382,14 +375,13 @@
|
||||
"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",
|
||||
"search_filters_sort_option_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",
|
||||
"search_filters_features_option_three_d": "3D-ben",
|
||||
"search_filters_features_option_live": "Élőben",
|
||||
"next_steps_error_message_refresh": "Újratöltés",
|
||||
"footer_donate_page": "Adakozás",
|
||||
"footer_source_code": "Forráskód",
|
||||
@ -397,40 +389,38 @@
|
||||
"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",
|
||||
"search_filters_sort_option_relevance": "Relevancia",
|
||||
"search_filters_sort_option_rating": "Pontszám",
|
||||
"search_filters_type_label": "Típus",
|
||||
"search_filters_date_option_today": "Mai napon",
|
||||
"search_filters_type_option_channel": "Csatorna",
|
||||
"search_filters_type_option_video": "Videó",
|
||||
"search_filters_type_option_playlist": "Lejátszási lista",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_label": "Jellemzők",
|
||||
"search_filters_sort_label": "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ő",
|
||||
"search_filters_duration_option_long": "Hosszú (20 percnél hosszabb)",
|
||||
"search_filters_date_option_year": "Ebben az évben",
|
||||
"search_filters_date_option_hour": "Az elmúlt órában",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_duration_label": "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ő",
|
||||
"search_filters_date_option_week": "Ezen a héten",
|
||||
"footer_documentation": "Dokumentáció",
|
||||
"hd": "HD",
|
||||
"search_filters_features_option_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",
|
||||
"search_filters_type_option_show": "Műsor",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_duration_option_short": "Rövid (4 percnél nem több)",
|
||||
"search_filters_date_option_month": "Ebben a hónapban",
|
||||
"search_filters_features_option_subtitles": "Felirattal",
|
||||
"search_filters_features_option_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>",
|
||||
@ -460,5 +450,37 @@
|
||||
"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)"
|
||||
"Vietnamese (auto-generated)": "vietnámi (automatikusan generált)",
|
||||
"search_filters_title": "Szűrők",
|
||||
"preferences_watch_history_label": "Megnézett videók naplózása: ",
|
||||
"search_message_no_results": "Nincs találat.",
|
||||
"search_message_change_filters_or_query": "Próbálj meg bővebben rákeresni vagy a szűrőkön állítani.",
|
||||
"search_message_use_another_instance": " Megpróbálhatod <a href=\"`x`\">egy másik</a> Invidious-oldalon is a keresést.",
|
||||
"search_filters_date_label": "Feltöltés ideje",
|
||||
"search_filters_date_option_none": "Mindegy mikor",
|
||||
"search_filters_type_option_all": "Bármilyen",
|
||||
"search_filters_duration_option_none": "Mindegy",
|
||||
"search_filters_duration_option_medium": "Átlagos (4 és 20 perc között)",
|
||||
"search_filters_features_option_vr180": "180°-os virtuális valóság",
|
||||
"search_filters_apply_button": "Keresés a megadott szűrőkkel",
|
||||
"Popular enabled: ": "Népszerű engedélyezve ",
|
||||
"error_video_not_in_playlist": "A lejátszási listában keresett videó nem létezik. <a href=\"`x`\">Kattintson ide a lejátszási listához jutáshoz.</a>",
|
||||
"generic_button_delete": "Törlés",
|
||||
"generic_button_rss": "RSS",
|
||||
"Import YouTube playlist (.csv)": "Youtube lejátszási lista (.csv) importálása",
|
||||
"Standard YouTube license": "Alap YouTube-licensz",
|
||||
"Add to playlist": "Hozzáadás lejátszási listához",
|
||||
"Add to playlist: ": "Hozzáadás a lejátszási listához: ",
|
||||
"Answer": "Válasz",
|
||||
"Search for videos": "Keresés videókhoz",
|
||||
"generic_channels_count": "{{count}} csatorna",
|
||||
"generic_channels_count_plural": "{{count}} csatornák",
|
||||
"generic_button_edit": "Szerkesztés",
|
||||
"generic_button_save": "Mentés",
|
||||
"generic_button_cancel": "Mégsem",
|
||||
"playlist_button_add_items": "Videók hozzáadása",
|
||||
"Music in this video": "Zene ezen videóban",
|
||||
"Song: ": "Dal: ",
|
||||
"Album: ": "Album: ",
|
||||
"Import YouTube watch history (.json)": "Youtube megtekintési előzmények (.json) importálása"
|
||||
}
|
||||
|
45
locales/ia.json
Normal file
45
locales/ia.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"New password": "Nove contrasigno",
|
||||
"preferences_player_style_label": "Stylo de reproductor: ",
|
||||
"preferences_region_label": "Pais de contento: ",
|
||||
"oldest": "plus ancian",
|
||||
"published": "data de publication",
|
||||
"invidious": "Invidious",
|
||||
"Image CAPTCHA": "Imagine CAPTCHA",
|
||||
"newest": "plus nove",
|
||||
"generic_button_save": "Salveguardar",
|
||||
"Dark mode: ": "Modo obscur: ",
|
||||
"preferences_dark_mode_label": "Thema: ",
|
||||
"preferences_category_subscription": "Preferentias de subscription",
|
||||
"last": "ultime",
|
||||
"generic_button_cancel": "Cancellar",
|
||||
"popular": "popular",
|
||||
"Time (h:mm:ss):": "Tempore (h:mm:ss):",
|
||||
"preferences_autoplay_label": "Reproduction automatic: ",
|
||||
"Sign In": "Aperir le session",
|
||||
"Log in": "Initiar le session",
|
||||
"preferences_speed_label": "Velocitate per predefinition: ",
|
||||
"preferences_comments_label": "Commentos predefinite: ",
|
||||
"light": "clar",
|
||||
"No": "Non",
|
||||
"youtube": "YouTube",
|
||||
"LIVE": "IN DIRECTO",
|
||||
"reddit": "Reddit",
|
||||
"preferences_category_player": "Preferentias de reproductor",
|
||||
"Preferences": "Preferentias",
|
||||
"preferences_quality_dash_option_auto": "Automatic",
|
||||
"dark": "obscur",
|
||||
"generic_button_rss": "RSS",
|
||||
"Export": "Exportar",
|
||||
"History": "Chronologia",
|
||||
"Password": "Contrasigno",
|
||||
"User ID": "ID de usator",
|
||||
"E-mail": "E-mail",
|
||||
"Delete account?": "Deler conto?",
|
||||
"preferences_volume_label": "Volumine del reproductor: ",
|
||||
"preferences_sort_label": "Ordinar le videos per: ",
|
||||
"Next page": "Pagina sequente",
|
||||
"Previous page": "Pagina previe",
|
||||
"Yes": "Si",
|
||||
"Import": "Importar"
|
||||
}
|
152
locales/id.json
152
locales/id.json
@ -19,22 +19,21 @@
|
||||
"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 Invidious data": "Impor JSON data Invidious",
|
||||
"Import YouTube subscriptions": "Impor langganan YouTube/OPML",
|
||||
"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",
|
||||
"Export data as JSON": "Ekspor data Invidious sebagai JSON",
|
||||
"Delete account?": "Hapus akun?",
|
||||
"History": "Riwayat",
|
||||
"An alternative front-end to YouTube": "Sebuah alternatif layar depan untuk YouTube",
|
||||
@ -42,7 +41,6 @@
|
||||
"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):",
|
||||
@ -51,7 +49,6 @@
|
||||
"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: ",
|
||||
@ -71,7 +68,7 @@
|
||||
"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_vr_mode_label": "Video interaktif 360° (memerlukan WebGL): ",
|
||||
"preferences_category_visual": "Preferensi visual",
|
||||
"preferences_player_style_label": "Gaya pemutar: ",
|
||||
"Dark mode: ": "Mode gelap: ",
|
||||
@ -126,9 +123,9 @@
|
||||
"revoke": "cabut",
|
||||
"Subscriptions": "Langganan",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} pemberitahuan belum dilihat",
|
||||
"search": "cari",
|
||||
"search": "Telusuri",
|
||||
"Log out": "Keluar",
|
||||
"Released under the AGPLv3 on Github.": "Dirilis di bawah AGPLv3 di Github.",
|
||||
"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.",
|
||||
@ -148,7 +145,6 @@
|
||||
"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: ",
|
||||
@ -172,17 +168,12 @@
|
||||
"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",
|
||||
@ -342,36 +333,35 @@
|
||||
"`x` marked it with a ❤": "`x` telah ditandai dengan ❤",
|
||||
"Audio mode": "Mode audio",
|
||||
"Video mode": "Mode video",
|
||||
"Videos": "Video",
|
||||
"channel_tab_videos_label": "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",
|
||||
"channel_tab_community_label": "Komunitas",
|
||||
"search_filters_sort_option_relevance": "Relevansi",
|
||||
"search_filters_sort_option_rating": "Penilaian",
|
||||
"search_filters_sort_option_date": "Tanggal Unggah",
|
||||
"search_filters_sort_option_views": "Jumlah ditonton",
|
||||
"search_filters_type_label": "Tipe",
|
||||
"search_filters_duration_label": "Durasi",
|
||||
"search_filters_features_label": "Fitur",
|
||||
"search_filters_sort_label": "Urut Berdasarkan",
|
||||
"search_filters_date_option_hour": "Jam Terakhir",
|
||||
"search_filters_date_option_today": "Hari Ini",
|
||||
"search_filters_date_option_week": "Pekan Ini",
|
||||
"search_filters_date_option_month": "Bulan Ini",
|
||||
"search_filters_date_option_year": "Tahun Ini",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_type_option_playlist": "Daftar Putar",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Pertunjukan/Acara",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Takarir",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Siaran Langsung",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Lokasi",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Versi saat ini: ",
|
||||
"next_steps_error_message": "Setelah itu Anda harus mencoba: ",
|
||||
"next_steps_error_message_refresh": "Segarkan",
|
||||
@ -380,8 +370,8 @@
|
||||
"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)",
|
||||
"search_filters_duration_option_short": "Pendek (< 4 menit)",
|
||||
"search_filters_duration_option_long": "Panjang (> 20 menit)",
|
||||
"footer_modfied_source_code": "Kode sumber yang dimodifikasi",
|
||||
"footer_documentation": "Dokumentasi",
|
||||
"preferences_region_label": "Konten dari negara: ",
|
||||
@ -398,8 +388,8 @@
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Dibeli",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_purchased": "Dibeli",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"none": "tidak ada",
|
||||
"videoinfo_watch_on_youTube": "Tonton di YouTube",
|
||||
"videoinfo_youTube_embed_link": "Tersemat",
|
||||
@ -416,5 +406,69 @@
|
||||
"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:"
|
||||
"crash_page_before_reporting": "Sebelum melaporkan masalah, pastikan anda memiliki:",
|
||||
"English (United States)": "Inggris (US)",
|
||||
"preferences_watch_history_label": "Aktifkan riwayat tontonan: ",
|
||||
"English (United Kingdom)": "Inggris (UK)",
|
||||
"search_filters_title": "Saring",
|
||||
"search_message_no_results": "Tidak ada hasil yang ditemukan.",
|
||||
"search_message_change_filters_or_query": "Coba perbanyak kueri pencarian dan/atau ubah filter Anda.",
|
||||
"search_message_use_another_instance": " Anda juga bisa <a href=\"`x`\">mencari di peladen lain</a>.",
|
||||
"Indonesian (auto-generated)": "Indonesia (dibuat secara otomatis)",
|
||||
"Japanese (auto-generated)": "Jepang (dibuat secara otomatis)",
|
||||
"Korean (auto-generated)": "Korea (dibuat secara otomatis)",
|
||||
"Portuguese (Brazil)": "Portugis (Brasil)",
|
||||
"Russian (auto-generated)": "Rusia (dibuat secara otomatis)",
|
||||
"Spanish (Mexico)": "Spanyol (Meksiko)",
|
||||
"Spanish (Spain)": "Spanyol (Spanyol)",
|
||||
"Vietnamese (auto-generated)": "Vietnam (dibuat secara otomatis)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"Spanish (auto-generated)": "Spanyol (dibuat secara otomatis)",
|
||||
"Chinese": "Bahasa Cina",
|
||||
"Chinese (Taiwan)": "Bahasa Cina (Taiwan)",
|
||||
"Chinese (Hong Kong)": "Bahasa Cina (Hong Kong)",
|
||||
"Chinese (China)": "Bahasa Cina (China)",
|
||||
"French (auto-generated)": "Perancis (dibuat secara otomatis)",
|
||||
"German (auto-generated)": "Jerman (dibuat secara otomatis)",
|
||||
"Italian (auto-generated)": "Italia (dibuat secara otomatis)",
|
||||
"Portuguese (auto-generated)": "Portugis (dibuat secara otomatis)",
|
||||
"Turkish (auto-generated)": "Turki (dibuat secara otomatis)",
|
||||
"search_filters_date_label": "Tanggal unggah",
|
||||
"search_filters_type_option_all": "Segala jenis",
|
||||
"search_filters_apply_button": "Terapkan saringan yang dipilih",
|
||||
"Dutch (auto-generated)": "Belanda (dihasilkan secara otomatis)",
|
||||
"search_filters_date_option_none": "Tanggal berapa pun",
|
||||
"search_filters_duration_option_none": "Durasi berapa pun",
|
||||
"search_filters_duration_option_medium": "Sedang (4 - 20 menit)",
|
||||
"Cantonese (Hong Kong)": "Bahasa Kanton (Hong Kong)",
|
||||
"crash_page_refresh": "mencoba untuk <a href=\"`x`\">memuat ulang halaman</a>",
|
||||
"crash_page_switch_instance": "mencoba untuk <a href=\"`x`\">menggunakan peladen lainnya</a>",
|
||||
"crash_page_read_the_faq": "baca <a href=\"`x`\">Soal Sering Ditanya (SSD/FAQ)</a>",
|
||||
"crash_page_search_issue": "mencari <a href=\"`x`\">isu yang ada di GitHub</a>",
|
||||
"crash_page_report_issue": "Jika yang di atas tidak membantu, <a href=\"`x`\">buka isu baru di GitHub</a> (sebaiknya dalam bahasa Inggris) dan sertakan teks berikut dalam pesan Anda (JANGAN terjemahkan teks tersebut):",
|
||||
"Popular enabled: ": "Populer diaktifkan: ",
|
||||
"channel_tab_podcasts_label": "Podcast",
|
||||
"Download is disabled": "Download dinonaktifkan",
|
||||
"Channel Sponsor": "Saluran Sponsor",
|
||||
"channel_tab_streams_label": "Streaming langsung",
|
||||
"playlist_button_add_items": "Tambahkan video",
|
||||
"Artist: ": "Artis: ",
|
||||
"generic_button_save": "Simpan",
|
||||
"generic_button_cancel": "Batal",
|
||||
"Album: ": "Album: ",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_releases_label": "Terbit",
|
||||
"Interlingue": "Interlingue",
|
||||
"Song: ": "Lagu: ",
|
||||
"generic_channels_count_0": "Saluran {{count}}",
|
||||
"channel_tab_playlists_label": "Daftar putar",
|
||||
"generic_button_edit": "Ubah",
|
||||
"Music in this video": "Musik dalam video ini",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_channels_label": "Saluran",
|
||||
"error_video_not_in_playlist": "Video yang diminta tidak ada dalam daftar putar ini. <a href=\"`x`\">Klik di sini untuk halaman beranda daftar putar.</a>",
|
||||
"generic_button_delete": "Hapus",
|
||||
"Import YouTube playlist (.csv)": "Impor daftar putar YouTube (.csv)",
|
||||
"Standard YouTube license": "Lisensi YouTube standar",
|
||||
"Import YouTube watch history (.json)": "Impor riwayat tontonan YouTube (.json)"
|
||||
}
|
||||
|
305
locales/is.json
305
locales/is.json
@ -1,43 +1,41 @@
|
||||
{
|
||||
"LIVE": "BEINT",
|
||||
"Shared `x` ago": "Deilt `x` síðan",
|
||||
"Shared `x` ago": "Deilt fyrir `x` síðan",
|
||||
"Unsubscribe": "Afskrá",
|
||||
"Subscribe": "Áskrifa",
|
||||
"View channel on YouTube": "Skoða rás á YouTube",
|
||||
"View playlist on YouTube": "Skoða spilunarlisti á YouTube",
|
||||
"View playlist on YouTube": "Skoða spilunarlista á YouTube",
|
||||
"newest": "nýjasta",
|
||||
"oldest": "elsta",
|
||||
"popular": "vinsælt",
|
||||
"last": "síðast",
|
||||
"Next page": "Næsta síða",
|
||||
"Previous page": "Fyrri síða",
|
||||
"Clear watch history?": "Hreinsa áhorfssögu?",
|
||||
"Clear watch history?": "Hreinsa áhorfsferil?",
|
||||
"New password": "Nýtt lykilorð",
|
||||
"New passwords must match": "Nýtt lykilorð verður að passa",
|
||||
"Cannot change password for Google accounts": "Ekki er hægt að breyta lykilorði fyrir Google reikninga",
|
||||
"Authorize token?": "Leyfa tákn?",
|
||||
"Authorize token for `x`?": "Leyfa tákn fyrir `x`?",
|
||||
"Authorize token?": "Leyfa teikn?",
|
||||
"Authorize token for `x`?": "Leyfa teikn fyrir `x`?",
|
||||
"Yes": "Já",
|
||||
"No": "Nei",
|
||||
"Import and Export Data": "Innflutningur og Útflutningur Gagna",
|
||||
"Import and Export Data": "Inn- og útflutningur gagna",
|
||||
"Import": "Flytja inn",
|
||||
"Import Invidious data": "Flytja inn Invidious gögn",
|
||||
"Import YouTube subscriptions": "Flytja inn YouTube áskriftir",
|
||||
"Import Invidious data": "Flytja inn Invidious JSON-gögn",
|
||||
"Import YouTube subscriptions": "Flytja inn YouTube CSV eða OPML-áskriftir",
|
||||
"Import FreeTube subscriptions (.db)": "Flytja inn FreeTube áskriftir (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Flytja inn NewPipe áskriftir (.json)",
|
||||
"Import NewPipe data (.zip)": "Flytja inn NewPipe gögn (.zip)",
|
||||
"Export": "Flytja út",
|
||||
"Export subscriptions as OPML": "Flytja út áskriftir sem OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Flytja út áskriftir sem OPML (fyrir NewPipe & FreeTube)",
|
||||
"Export data as JSON": "Flytja út gögn sem JSON",
|
||||
"Export data as JSON": "Flytja út Invidious-gögn sem JSON",
|
||||
"Delete account?": "Eyða reikningi?",
|
||||
"History": "Saga",
|
||||
"An alternative front-end to YouTube": "Önnur framhlið fyrir YouTube",
|
||||
"JavaScript license information": "JavaScript leyfi upplýsingar",
|
||||
"source": "uppspretta",
|
||||
"History": "Ferill",
|
||||
"An alternative front-end to YouTube": "Annað viðmót fyrir YouTube",
|
||||
"JavaScript license information": "Upplýsingar um notkunarleyfi JavaScript",
|
||||
"source": "uppruni",
|
||||
"Log in": "Skrá inn",
|
||||
"Log in/register": "Innskráning/nýskráning",
|
||||
"Log in with Google": "Skrá inn með Google",
|
||||
"User ID": "Notandakenni",
|
||||
"Password": "Lykilorð",
|
||||
"Time (h:mm:ss):": "Tími (h:mm: ss):",
|
||||
@ -46,37 +44,36 @@
|
||||
"Sign In": "Skrá inn",
|
||||
"Register": "Nýskrá",
|
||||
"E-mail": "Tölvupóstur",
|
||||
"Google verification code": "Google staðfestingarkóði",
|
||||
"Preferences": "Kjörstillingar",
|
||||
"preferences_category_player": "Kjörstillingar spilara",
|
||||
"preferences_video_loop_label": "Alltaf lykkja: ",
|
||||
"preferences_autoplay_label": "Spila sjálfkrafa: ",
|
||||
"preferences_autoplay_label": "Sjálfvirk spilun: ",
|
||||
"preferences_continue_label": "Spila næst sjálfgefið: ",
|
||||
"preferences_continue_autoplay_label": "Spila næst sjálfkrafa: ",
|
||||
"preferences_continue_autoplay_label": "Spila næsta myndskeið sjálfkrafa: ",
|
||||
"preferences_listen_label": "Hlusta sjálfgefið: ",
|
||||
"preferences_local_label": "Proxy myndbönd? ",
|
||||
"preferences_local_label": "Milliþjónn fyrir myndskeið: ",
|
||||
"preferences_speed_label": "Sjálfgefinn hraði: ",
|
||||
"preferences_quality_label": "Æskilegt myndbands gæði: ",
|
||||
"preferences_quality_label": "Æskileg gæði myndmerkis: ",
|
||||
"preferences_volume_label": "Spilara hljóðstyrkur: ",
|
||||
"preferences_comments_label": "Sjálfgefin ummæli: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "reddit",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Sjálfgefin texti: ",
|
||||
"Fallback captions: ": "Varatextar: ",
|
||||
"preferences_related_videos_label": "Sýna tengd myndbönd? ",
|
||||
"preferences_related_videos_label": "Sýna tengd myndskeið? ",
|
||||
"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: ",
|
||||
"preferences_player_style_label": "Stíll spilara: ",
|
||||
"Dark mode: ": "Dökkur hamur: ",
|
||||
"preferences_dark_mode_label": "Þema: ",
|
||||
"dark": "dimmt",
|
||||
"dark": "dökkt",
|
||||
"light": "ljóst",
|
||||
"preferences_thin_mode_label": "Þunnt ham: ",
|
||||
"preferences_thin_mode_label": "Grannur hamur: ",
|
||||
"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: ",
|
||||
"preferences_max_results_label": "Fjöldi myndbanda sem sýndir eru í straumi: ",
|
||||
"preferences_sort_label": "Raða myndbönd eftir: ",
|
||||
"Redirect homepage to feed: ": "Endurbeina heimasíðu að streymi: ",
|
||||
"preferences_max_results_label": "Fjöldi myndskeiða sem sýnd eru í streymi: ",
|
||||
"preferences_sort_label": "Raða myndskeiðum eftir: ",
|
||||
"published": "birt",
|
||||
"published - reverse": "birt - afturábak",
|
||||
"alphabetically": "í stafrófsröð",
|
||||
@ -91,31 +88,31 @@
|
||||
"`x` uploaded a video": "`x` hlóð upp myndband",
|
||||
"`x` is live": "`x` er í beinni",
|
||||
"preferences_category_data": "Gagnastillingar",
|
||||
"Clear watch history": "Hreinsa áhorfssögu",
|
||||
"Clear watch history": "Hreinsa áhorfsferil",
|
||||
"Import/export data": "Flytja inn/út gögn",
|
||||
"Change password": "Breyta lykilorði",
|
||||
"Manage subscriptions": "Stjórna áskriftum",
|
||||
"Manage tokens": "Stjórna tákn",
|
||||
"Watch history": "Áhorfssögu",
|
||||
"Manage subscriptions": "Sýsla með áskriftir",
|
||||
"Manage tokens": "Sýsla með teikn",
|
||||
"Watch history": "Áhorfsferill",
|
||||
"Delete account": "Eyða reikningi",
|
||||
"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? ",
|
||||
"preferences_feed_menu_label": "Streymisvalmynd: ",
|
||||
"Top enabled: ": "Vinsælast virkt? ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA virk? ",
|
||||
"Login enabled: ": "Innskráning virk? ",
|
||||
"Registration enabled: ": "Nýskráning virkjuð? ",
|
||||
"Report statistics: ": "Skrá talnagögn? ",
|
||||
"Report statistics: ": "Skrá tölfræði? ",
|
||||
"Save preferences": "Vista stillingar",
|
||||
"Subscription manager": "Áskriftarstjóri",
|
||||
"Token manager": "Táknstjóri",
|
||||
"Token": "Tákn",
|
||||
"Token manager": "Teiknastjórnun",
|
||||
"Token": "Teikn",
|
||||
"Import/export": "Flytja inn/út",
|
||||
"unsubscribe": "afskrá",
|
||||
"revoke": "afturkalla",
|
||||
"Subscriptions": "Áskriftir",
|
||||
"search": "leita",
|
||||
"Log out": "Útskrá",
|
||||
"Log out": "Skrá út",
|
||||
"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.",
|
||||
@ -125,13 +122,13 @@
|
||||
"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",
|
||||
"Delete playlist `x`?": "Eyða spilunarlista `x`?",
|
||||
"Delete playlist": "Eyð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",
|
||||
"Playlist privacy": "Friðhelgi spilunarlista",
|
||||
"Editing playlist `x`": "Breyti spilunarlista `x`",
|
||||
"Watch on YouTube": "Skoða á YouTube",
|
||||
"Hide annotations": "Fela glósur",
|
||||
"Show annotations": "Sýna glósur",
|
||||
"Genre: ": "Tegund: ",
|
||||
@ -155,39 +152,34 @@
|
||||
"Hide replies": "Fela svör",
|
||||
"Show replies": "Sýna svör",
|
||||
"Incorrect password": "Rangt lykilorð",
|
||||
"Quota exceeded, try again in a few hours": "Kvóti fór yfir, reyndu aftur eftir nokkrar klukkustundir",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Ekki er hægt að skrá þig inn, vertu viss um að tvíþætt staðfesting (Authenticator eða SMS) sé kveikt á.",
|
||||
"Invalid TFA code": "Ógildur TFA kóði",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Innskráning mistókst. Þetta gæti verið vegna þess að tvíþátta staðfesting er ekki kveikt á reikningnum þínum.",
|
||||
"Wrong answer": "Rangt svar",
|
||||
"Erroneous CAPTCHA": "Rangt CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA er nauðsynlegur reitur",
|
||||
"User ID is a required field": "Notandakenni er nauðsynlegur reitur",
|
||||
"Password is a required field": "Lykilorð er nauðsynlegur reitur",
|
||||
"Wrong username or password": "Rangt notandanafn eða lykilorð",
|
||||
"Please sign in using 'Log in with Google'": "Vinsamlegast skráðu þig inn með því að nota 'Innskráning með Google'",
|
||||
"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",
|
||||
"Invidious Private Feed for `x`": "Invidious Persónulegur Straumur fyrir `x`",
|
||||
"Please log in": "Skráðu þig inn",
|
||||
"Invidious Private Feed for `x`": "Persónulegt Invidious-streymi fyrir `x`",
|
||||
"channel:`x`": "rás:`x`",
|
||||
"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 get channel info.": "Ekki tókst að fá upplýsingar um rásina.",
|
||||
"Could not fetch comments": "Ekki tókst að sækja ummæli",
|
||||
"`x` ago": "`x` síðan",
|
||||
"Load more": "Hlaða meira",
|
||||
"Could not create mix.": "Ekki tókst að búa til blöndu.",
|
||||
"Empty playlist": "Tómur spilunarlisti",
|
||||
"Not a playlist.": "Ekki spilunarlisti.",
|
||||
"Not a playlist.": "Er ekki spilunarlisti.",
|
||||
"Playlist does not exist.": "Spilunarlisti er ekki til.",
|
||||
"Could not pull trending pages.": "Ekki tókst að draga vinsælar síður.",
|
||||
"Hidden field \"challenge\" is a required field": "Falinn reitur \"áskorun\" er nauðsynlegur reitur",
|
||||
"Hidden field \"token\" is a required field": "Falinn reitur \"tákn\" er nauðsynlegur reitur",
|
||||
"Hidden field \"token\" is a required field": "Falinn reitur \"teikn\" er nauðsynlegur reitur",
|
||||
"Erroneous challenge": "Röng áskorun",
|
||||
"Erroneous token": "Rangt tákn",
|
||||
"Erroneous token": "Rangt teikn",
|
||||
"No such user": "Enginn slíkur notandi",
|
||||
"Token is expired, please try again": "Tákn er útrunnið, vinsamlegast reyndu aftur",
|
||||
"Token is expired, please try again": "Teiknið er útrunnið, reyndu aftur",
|
||||
"English": "Enska",
|
||||
"English (auto-generated)": "Enska (sjálfkrafa)",
|
||||
"Afrikaans": "Afríkanska",
|
||||
@ -275,14 +267,14 @@
|
||||
"Somali": "Sómalska",
|
||||
"Southern Sotho": "Suður Sótó",
|
||||
"Spanish": "Spænska",
|
||||
"Spanish (Latin America)": "Spænska (Rómönsku Ameríka)",
|
||||
"Spanish (Latin America)": "Spænska (Rómanska Ameríka)",
|
||||
"Sundanese": "Sundaneska",
|
||||
"Swahili": "Svahílí",
|
||||
"Swedish": "Sænska",
|
||||
"Tajik": "Tadsikíska",
|
||||
"Tamil": "Tamílska",
|
||||
"Telugu": "Telúgú",
|
||||
"Thai": "Taílenska",
|
||||
"Thai": "Tælenska",
|
||||
"Turkish": "Tyrkneska",
|
||||
"Ukrainian": "Úkraníska",
|
||||
"Urdu": "Úrdú",
|
||||
@ -294,9 +286,9 @@
|
||||
"Yiddish": "Jiddíska",
|
||||
"Yoruba": "Jórúba",
|
||||
"Zulu": "Zúlú",
|
||||
"Fallback comments: ": "Vara ummæli: ",
|
||||
"Fallback comments: ": "Ummæli til vara: ",
|
||||
"Popular": "Vinsælt",
|
||||
"Top": "Topp",
|
||||
"Top": "Vinsælast",
|
||||
"About": "Um",
|
||||
"Rating: ": "Einkunn: ",
|
||||
"preferences_locale_label": "Tungumál: ",
|
||||
@ -315,9 +307,196 @@
|
||||
"`x` marked it with a ❤": "`x` merkti það með ❤",
|
||||
"Audio mode": "Hljóð ham",
|
||||
"Video mode": "Myndband ham",
|
||||
"Videos": "Myndbönd",
|
||||
"channel_tab_videos_label": "Myndskeið",
|
||||
"Playlists": "Spilunarlistar",
|
||||
"Community": "Samfélag",
|
||||
"channel_tab_community_label": "Samfélag",
|
||||
"Current version: ": "Núverandi útgáfa: ",
|
||||
"preferences_watch_history_label": "Virkja áhorfssögu: "
|
||||
"preferences_watch_history_label": "Virkja áhorfsferil: ",
|
||||
"Chinese (China)": "Kínverska (Kína)",
|
||||
"Turkish (auto-generated)": "Tyrkneska (sjálfvirkt útbúið)",
|
||||
"Search": "Leita",
|
||||
"preferences_save_player_pos_label": "Vista staðsetningu í afspilun: ",
|
||||
"Popular enabled: ": "Vinsælt virkjað: ",
|
||||
"search_filters_features_option_purchased": "Keypt",
|
||||
"Standard YouTube license": "Staðlað YouTube-notkunarleyfi",
|
||||
"French (auto-generated)": "Franska (sjálfvirkt útbúið)",
|
||||
"Spanish (Spain)": "Spænska (Spánn)",
|
||||
"search_filters_title": "Síur",
|
||||
"search_filters_date_label": "Dags. innsendingar",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"crash_page_read_the_faq": "lesið <a href=\"`x`\">Algengar spurningar (FAQ)</a>",
|
||||
"Add to playlist": "Bæta á spilunarlista",
|
||||
"Add to playlist: ": "Bæta á spilunarlista: ",
|
||||
"Answer": "Svar",
|
||||
"Search for videos": "Leita að myndskeiðum",
|
||||
"generic_channels_count": "{{count}} rás",
|
||||
"generic_channels_count_plural": "{{count}} rásir",
|
||||
"generic_videos_count": "{{count}} myndskeið",
|
||||
"generic_videos_count_plural": "{{count}} myndskeið",
|
||||
"The Popular feed has been disabled by the administrator.": "Kerfisstjórinn hefur gert Vinsælt-streymið óvirkt.",
|
||||
"generic_playlists_count": "{{count}} spilunarlisti",
|
||||
"generic_playlists_count_plural": "{{count}} spilunarlistar",
|
||||
"generic_subscribers_count": "{{count}} áskrifandi",
|
||||
"generic_subscribers_count_plural": "{{count}} áskrifendur",
|
||||
"generic_subscriptions_count": "{{count}} áskrift",
|
||||
"generic_subscriptions_count_plural": "{{count}} áskriftir",
|
||||
"generic_button_delete": "Eyða",
|
||||
"Import YouTube watch history (.json)": "Flytja inn YouTube áhorfsferil (.json)",
|
||||
"preferences_vr_mode_label": "Gagnvirk 360 gráðu myndskeið (krefst WebGL): ",
|
||||
"preferences_quality_dash_option_auto": "Sjálfvirkt",
|
||||
"preferences_quality_dash_option_best": "Best",
|
||||
"preferences_quality_dash_option_worst": "Verst",
|
||||
"preferences_quality_dash_label": "Æskileg DASH-gæði myndmerkis: ",
|
||||
"preferences_extend_desc_label": "Sjálfvirkt útvíkka lýsingu á myndskeiði: ",
|
||||
"preferences_region_label": "Land efnis: ",
|
||||
"preferences_show_nick_label": "Birta gælunafn efst: ",
|
||||
"tokens_count": "{{count}} teikn",
|
||||
"tokens_count_plural": "{{count}} teikn",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} óskoðuð tilkynning",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} óskoðaðar tilkynningar",
|
||||
"Released under the AGPLv3 on Github.": "Gefið út með AGPLv3-notkunarleyfi á GitHub.",
|
||||
"Music in this video": "Tónlist í þessu myndskeiði",
|
||||
"Artist: ": "Flytjandi: ",
|
||||
"Album: ": "Hljómplata: ",
|
||||
"comments_view_x_replies": "Skoða {{count}} svar",
|
||||
"comments_view_x_replies_plural": "Skoða {{count}} svör",
|
||||
"comments_points_count": "{{count}} punktur",
|
||||
"comments_points_count_plural": "{{count}} punktar",
|
||||
"Cantonese (Hong Kong)": "Kantónska (Hong Kong)",
|
||||
"Chinese": "Kínverska",
|
||||
"Chinese (Hong Kong)": "Kínverska (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Kínverska (Taívan)",
|
||||
"Japanese (auto-generated)": "Japanska (sjálfvirkt útbúið)",
|
||||
"generic_count_minutes": "{{count}} mínúta",
|
||||
"generic_count_minutes_plural": "{{count}} mínútur",
|
||||
"generic_count_seconds": "{{count}} sekúnda",
|
||||
"generic_count_seconds_plural": "{{count}} sekúndur",
|
||||
"search_filters_date_option_hour": "Síðustu klukkustund",
|
||||
"search_filters_apply_button": "Virkja valdar síur",
|
||||
"next_steps_error_message_go_to_youtube": "Fara á YouTube",
|
||||
"footer_original_source_code": "Upprunalegur grunnkóði",
|
||||
"videoinfo_started_streaming_x_ago": "Byrjaði streymi fyrir `x` síðan",
|
||||
"next_steps_error_message": "Á eftir þessu ættirðu að prófa: ",
|
||||
"videoinfo_invidious_embed_link": "Ívefja tengil",
|
||||
"download_subtitles": "Skjátextar - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` útbjó spilunarlista",
|
||||
"user_saved_playlists": "`x` vistaði spilunarlista",
|
||||
"Video unavailable": "Myndskeið ekki tiltækt",
|
||||
"videoinfo_watch_on_youTube": "Skoða á YouTube",
|
||||
"crash_page_you_found_a_bug": "Það lítur út eins og þú hafir fundið galla í Invidious!",
|
||||
"crash_page_before_reporting": "Áður en þú tilkynnir villu, gakktu úr skugga um að þú hafir:",
|
||||
"crash_page_switch_instance": "reynt að <a href=\"`x`\">nota annað tilvik</a>",
|
||||
"crash_page_report_issue": "Ef ekkert af ofantöldu hjálpaði, ættirðu að <a href=\"`x`\">opna nýja verkbeiðni (issue) á GitHub</a> (helst á ensku) og láta fylgja eftirfarandi texta í skilaboðunum þínum (alls EKKI þýða þennan texta):",
|
||||
"channel_tab_shorts_label": "Stuttmyndir",
|
||||
"carousel_slide": "Skyggna {{current}} af {{total}}",
|
||||
"carousel_go_to": "Fara á skyggnu `x`",
|
||||
"channel_tab_streams_label": "Bein streymi",
|
||||
"channel_tab_playlists_label": "Spilunarlistar",
|
||||
"toggle_theme": "Víxla þema",
|
||||
"carousel_skip": "Sleppa hringekjunni",
|
||||
"preferences_quality_option_medium": "Miðlungs",
|
||||
"search_message_use_another_instance": "Þú getur líka <a href=\"`x`\">leitað á öðrum netþjóni</a>.",
|
||||
"footer_source_code": "Grunnkóði",
|
||||
"English (United Kingdom)": "Enska (Bretland)",
|
||||
"English (United States)": "Enska (Bandarísk)",
|
||||
"Vietnamese (auto-generated)": "Víetnamska (sjálfvirkt útbúið)",
|
||||
"generic_count_months": "{{count}} mánuður",
|
||||
"generic_count_months_plural": "{{count}} mánuðir",
|
||||
"search_filters_sort_option_rating": "Einkunn",
|
||||
"videoinfo_youTube_embed_link": "Ívefja",
|
||||
"error_video_not_in_playlist": "Umbeðið myndskeið fyrirfinnst ekki í þessum spilunarlista. <a href=\"`x`\">Smelltu hér til að fara á heimasíðu spilunarlistans.</a>",
|
||||
"generic_views_count": "{{count}} áhorf",
|
||||
"generic_views_count_plural": "{{count}} áhorf",
|
||||
"playlist_button_add_items": "Bæta við myndskeiðum",
|
||||
"Show more": "Sýna meira",
|
||||
"Show less": "Sýna minna",
|
||||
"Song: ": "Lag: ",
|
||||
"channel_tab_podcasts_label": "Hlaðvörp (podcasts)",
|
||||
"channel_tab_releases_label": "Útgáfur",
|
||||
"Download is disabled": "Niðurhal er óvirkt",
|
||||
"search_filters_features_option_location": "Staðsetning",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"Switch Invidious Instance": "Skipta um Invidious-tilvik",
|
||||
"search_message_no_results": "Engar niðurstöður fundust.",
|
||||
"search_message_change_filters_or_query": "Reyndu að víkka leitarsviðið og/eða breyta síunum.",
|
||||
"Dutch (auto-generated)": "Hollenska (sjálfvirkt útbúið)",
|
||||
"German (auto-generated)": "Þýska (sjálfvirkt útbúið)",
|
||||
"Indonesian (auto-generated)": "Indónesíska (sjálfvirkt útbúið)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Italian (auto-generated)": "Ítalska (sjálfvirkt útbúið)",
|
||||
"Russian (auto-generated)": "Rússneska (sjálfvirkt útbúið)",
|
||||
"Spanish (auto-generated)": "Spænska (sjálfvirkt útbúið)",
|
||||
"Spanish (Mexico)": "Spænska (Mexíkó)",
|
||||
"generic_count_hours": "{{count}} klukkustund",
|
||||
"generic_count_hours_plural": "{{count}} klukkustundir",
|
||||
"generic_count_years": "{{count}} ár",
|
||||
"generic_count_years_plural": "{{count}} ár",
|
||||
"generic_count_weeks": "{{count}} vika",
|
||||
"generic_count_weeks_plural": "{{count}} vikur",
|
||||
"search_filters_date_option_none": "Hvaða dagsetning sem er",
|
||||
"Channel Sponsor": "Styrktaraðili rásar",
|
||||
"search_filters_date_option_week": "Í þessari viku",
|
||||
"search_filters_date_option_month": "Í þessum mánuði",
|
||||
"search_filters_date_option_year": "Á þessu ári",
|
||||
"search_filters_type_option_playlist": "Spilunarlisti",
|
||||
"search_filters_type_option_show": "Þáttur",
|
||||
"search_filters_duration_label": "Tímalengd",
|
||||
"search_filters_duration_option_long": "Langt (> 20 mínútur)",
|
||||
"search_filters_features_option_live": "Beint",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_sort_label": "Raða eftir",
|
||||
"search_filters_sort_option_relevance": "Samsvörun",
|
||||
"footer_donate_page": "Styrkja",
|
||||
"footer_modfied_source_code": "Breyttur grunnkóði",
|
||||
"crash_page_refresh": "reynt að <a href=\"`x`\">endurlesa síðuna</a>",
|
||||
"crash_page_search_issue": "leitað að <a href=\"`x`\">fyrirliggjandi villum á GitHub</a>",
|
||||
"none": "ekkert",
|
||||
"adminprefs_modified_source_code_url_label": "Slóð á gagnasafn með breyttum grunnkóða",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_small": "Lítið",
|
||||
"preferences_category_misc": "Ýmsar kjörstillingar",
|
||||
"preferences_automatic_instance_redirect_label": "Sjálfvirk endurbeining tilvika (farið til vara á redirect.invidious.io): ",
|
||||
"Portuguese (auto-generated)": "Portúgalska (sjálfvirkt útbúið)",
|
||||
"Portuguese (Brazil)": "Portúgalska (Brasilía)",
|
||||
"generic_button_edit": "Breyta",
|
||||
"generic_button_save": "Vista",
|
||||
"generic_button_cancel": "Hætta við",
|
||||
"generic_button_rss": "RSS",
|
||||
"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_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"Korean (auto-generated)": "Kóreska (sjálfvirkt útbúið)",
|
||||
"generic_count_days": "{{count}} dagur",
|
||||
"generic_count_days_plural": "{{count}} dagar",
|
||||
"search_filters_date_option_today": "Í dag",
|
||||
"search_filters_type_label": "Tegund",
|
||||
"search_filters_type_option_all": "Hvaða tegund sem er",
|
||||
"search_filters_type_option_video": "Myndskeið",
|
||||
"search_filters_type_option_channel": "Rás",
|
||||
"search_filters_type_option_movie": "Kvikmynd",
|
||||
"search_filters_duration_option_none": "Hvaða lengd sem er",
|
||||
"search_filters_duration_option_short": "Stutt (< 4 mínútur)",
|
||||
"search_filters_duration_option_medium": "Miðlungs (4 - 20 mínútur)",
|
||||
"search_filters_features_label": "Eiginleikar",
|
||||
"search_filters_features_option_subtitles": "Skjátextar/CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_sort_option_date": "Dags. innsendingar",
|
||||
"search_filters_sort_option_views": "Fjöldi áhorfa",
|
||||
"next_steps_error_message_refresh": "Endurlesa",
|
||||
"footer_documentation": "Leiðbeiningar",
|
||||
"channel_tab_channels_label": "Rásir",
|
||||
"Import YouTube playlist (.csv)": "Flytja inn YouTube spilunarlista (.csv)",
|
||||
"preferences_quality_option_dash": "DASH (aðlaganleg gæði)",
|
||||
"preferences_preload_label": "Forhlaða gögnum myndskeiðs: ",
|
||||
"Filipino (auto-generated)": "Filippínska (sjálfvirkt útbúin)"
|
||||
}
|
||||
|
295
locales/it.json
295
locales/it.json
@ -1,10 +1,13 @@
|
||||
{
|
||||
"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",
|
||||
"generic_subscribers_count_0": "{{count}} iscritto",
|
||||
"generic_subscribers_count_1": "{{count}} iscritti",
|
||||
"generic_subscribers_count_2": "{{count}} iscritti",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} video",
|
||||
"generic_videos_count_2": "{{count}} video",
|
||||
"generic_playlists_count_0": "{{count}} playlist",
|
||||
"generic_playlists_count_1": "{{count}} playlist",
|
||||
"generic_playlists_count_2": "{{count}} playlist",
|
||||
"LIVE": "IN DIRETTA",
|
||||
"Shared `x` ago": "Condiviso `x` fa",
|
||||
"Unsubscribe": "Disiscriviti",
|
||||
@ -13,29 +16,28 @@
|
||||
"View playlist on YouTube": "Vedi playlist su YouTube",
|
||||
"newest": "più recente",
|
||||
"oldest": "più vecchio",
|
||||
"popular": "Tendenze",
|
||||
"last": "durare",
|
||||
"popular": "popolare",
|
||||
"last": "ultimo",
|
||||
"Next page": "Pagina successiva",
|
||||
"Previous page": "Pagina precedente",
|
||||
"Clear watch history?": "Eliminare la cronologia dei video guardati?",
|
||||
"New password": "Nuova password",
|
||||
"New passwords must match": "Le nuove password devono corrispondere",
|
||||
"Cannot change password for Google accounts": "Non è possibile modificare la password per gli account Google",
|
||||
"Authorize token?": "Autorizzare gettone?",
|
||||
"Authorize token for `x`?": "Autorizzare gettone per `x`?",
|
||||
"Yes": "Sì",
|
||||
"No": "No",
|
||||
"Import and Export Data": "Importazione ed esportazione dati",
|
||||
"Import": "Importa",
|
||||
"Import Invidious data": "Importa dati Invidious",
|
||||
"Import YouTube subscriptions": "Importa le iscrizioni da YouTube",
|
||||
"Import Invidious data": "Importa dati Invidious in formato JSON",
|
||||
"Import YouTube subscriptions": "Importa iscrizioni in CSV o OPML di YouTube",
|
||||
"Import FreeTube subscriptions (.db)": "Importa le iscrizioni da FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importa le iscrizioni da NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importa i dati di NewPipe (.zip)",
|
||||
"Export": "Esporta",
|
||||
"Export subscriptions as OPML": "Esporta gli abbonamenti come OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Esporta gli abbonamenti come OPML (per NewPipe e FreeTube)",
|
||||
"Export data as JSON": "Esporta i dati in formato JSON",
|
||||
"Export data as JSON": "Esporta i dati Invidious in formato JSON",
|
||||
"Delete account?": "Eliminare l'account?",
|
||||
"History": "Cronologia",
|
||||
"An alternative front-end to YouTube": "Un'interfaccia alternativa per YouTube",
|
||||
@ -43,7 +45,6 @@
|
||||
"source": "sorgente",
|
||||
"Log in": "Accedi",
|
||||
"Log in/register": "Accedi/Registrati",
|
||||
"Log in with Google": "Accedi con Google",
|
||||
"User ID": "ID utente",
|
||||
"Password": "Password",
|
||||
"Time (h:mm:ss):": "Orario (h:mm:ss):",
|
||||
@ -52,7 +53,6 @@
|
||||
"Sign In": "Accedi",
|
||||
"Register": "Registrati",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Codice di verifica Google",
|
||||
"Preferences": "Preferenze",
|
||||
"preferences_category_player": "Preferenze del riproduttore",
|
||||
"preferences_video_loop_label": "Ripeti sempre: ",
|
||||
@ -116,16 +116,19 @@
|
||||
"Subscription manager": "Gestione delle iscrizioni",
|
||||
"Token manager": "Gestione dei gettoni",
|
||||
"Token": "Gettone",
|
||||
"generic_subscriptions_count": "{{count}} iscrizione",
|
||||
"generic_subscriptions_count_plural": "{{count}} iscrizioni",
|
||||
"tokens_count": "{{count}} gettone",
|
||||
"tokens_count_plural": "{{count}} gettoni",
|
||||
"generic_subscriptions_count_0": "{{count}} iscrizione",
|
||||
"generic_subscriptions_count_1": "{{count}} iscrizioni",
|
||||
"generic_subscriptions_count_2": "{{count}} iscrizioni",
|
||||
"tokens_count_0": "{{count}} gettone",
|
||||
"tokens_count_1": "{{count}} gettoni",
|
||||
"tokens_count_2": "{{count}} gettoni",
|
||||
"Import/export": "Importa/esporta",
|
||||
"unsubscribe": "disiscriviti",
|
||||
"revoke": "revoca",
|
||||
"Subscriptions": "Iscrizioni",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notifica non visualizzata",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notifiche non visualizzate",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} notifica non visualizzata",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} notifiche non visualizzate",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} notifiche non visualizzate",
|
||||
"search": "Cerca",
|
||||
"Log out": "Esci",
|
||||
"Source available here.": "Codice sorgente.",
|
||||
@ -154,11 +157,12 @@
|
||||
"Whitelisted regions: ": "Regioni in lista bianca: ",
|
||||
"Blacklisted regions: ": "Regioni in lista nera: ",
|
||||
"Shared `x`": "Condiviso `x`",
|
||||
"generic_views_count": "{{count}} visualizzazione",
|
||||
"generic_views_count_plural": "{{count}} visualizzazioni",
|
||||
"generic_views_count_0": "{{count}} visualizzazione",
|
||||
"generic_views_count_1": "{{count}} visualizzazioni",
|
||||
"generic_views_count_2": "{{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.",
|
||||
"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, ma considera che il caricamento potrebbe richiedere più tempo.",
|
||||
"View YouTube comments": "Visualizza i commenti da YouTube",
|
||||
"View more comments on Reddit": "Visualizza più commenti su Reddit",
|
||||
"View `x` comments": {
|
||||
@ -169,17 +173,12 @@
|
||||
"Hide replies": "Nascondi le risposte",
|
||||
"Show replies": "Mostra le risposte",
|
||||
"Incorrect password": "Password sbagliata",
|
||||
"Quota exceeded, try again in a few hours": "Limite superato, prova di nuovo fra qualche ora",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Impossibile autenticarsi, controlla che l'autenticazione in due passaggi (Authenticator o SMS) sia attiva.",
|
||||
"Invalid TFA code": "Codice di autenticazione a due fattori non valido",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Login fallito. L'errore potrebbe essere causato dal fatto che la verifica in due passaggi non è attiva sul tuo account.",
|
||||
"Wrong answer": "Risposta errata",
|
||||
"Erroneous CAPTCHA": "CAPTCHA errato",
|
||||
"CAPTCHA is a required field": "Il CAPTCHA è un campo obbligatorio",
|
||||
"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»",
|
||||
"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",
|
||||
@ -212,7 +211,7 @@
|
||||
"Azerbaijani": "Azero",
|
||||
"Bangla": "Bengalese",
|
||||
"Basque": "Basco",
|
||||
"Belarusian": "Biellorusso",
|
||||
"Belarusian": "Bielorusso",
|
||||
"Bosnian": "Bosniaco",
|
||||
"Bulgarian": "Bulgaro",
|
||||
"Burmese": "Birmano",
|
||||
@ -238,10 +237,10 @@
|
||||
"Haitian Creole": "Creolo haitiano",
|
||||
"Hausa": "Lingua hausa",
|
||||
"Hawaiian": "Hawaiano",
|
||||
"Hebrew": "Ebreo",
|
||||
"Hebrew": "Ebraico",
|
||||
"Hindi": "Hindi",
|
||||
"Hmong": "Hmong",
|
||||
"Hungarian": "Ungarese",
|
||||
"Hungarian": "Ungherese",
|
||||
"Icelandic": "Islandese",
|
||||
"Igbo": "Igbo",
|
||||
"Indonesian": "Indonesiano",
|
||||
@ -254,7 +253,7 @@
|
||||
"Khmer": "Khmer",
|
||||
"Korean": "Coreano",
|
||||
"Kurdish": "Curdo",
|
||||
"Kyrgyz": "Kirghize",
|
||||
"Kyrgyz": "Kirghiso",
|
||||
"Lao": "Lao",
|
||||
"Latin": "Latino",
|
||||
"Latvian": "Lettone",
|
||||
@ -269,7 +268,7 @@
|
||||
"Marathi": "Marathi",
|
||||
"Mongolian": "Mongolo",
|
||||
"Nepali": "Nepalese",
|
||||
"Norwegian Bokmål": "Norvegese",
|
||||
"Norwegian Bokmål": "Norvegese bokmål",
|
||||
"Nyanja": "Nyanja",
|
||||
"Pashto": "Pashtu",
|
||||
"Persian": "Persiano",
|
||||
@ -278,7 +277,7 @@
|
||||
"Punjabi": "Punjabi",
|
||||
"Romanian": "Rumeno",
|
||||
"Russian": "Russo",
|
||||
"Samoan": "Samoan",
|
||||
"Samoan": "Samoano",
|
||||
"Scottish Gaelic": "Gaelico scozzese",
|
||||
"Serbian": "Serbo",
|
||||
"Shona": "Shona",
|
||||
@ -290,38 +289,45 @@
|
||||
"Southern Sotho": "Sotho del Sud",
|
||||
"Spanish": "Spagnolo",
|
||||
"Spanish (Latin America)": "Spagnolo (America latina)",
|
||||
"Sundanese": "Sudanese",
|
||||
"Sundanese": "Sundanese",
|
||||
"Swahili": "Swahili",
|
||||
"Swedish": "Svedese",
|
||||
"Tajik": "Tajik",
|
||||
"Tajik": "Tagico",
|
||||
"Tamil": "Tamil",
|
||||
"Telugu": "Telugu",
|
||||
"Thai": "Thaï",
|
||||
"Thai": "Thailandese",
|
||||
"Turkish": "Turco",
|
||||
"Ukrainian": "Ucraino",
|
||||
"Urdu": "Urdu",
|
||||
"Uzbek": "Uzbeco",
|
||||
"Vietnamese": "Vietnamese",
|
||||
"Vietnamese": "Vietnamita",
|
||||
"Welsh": "Gallese",
|
||||
"Western Frisian": "Frisone occidentale",
|
||||
"Xhosa": "Xhosa",
|
||||
"Yiddish": "Yiddish",
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zulu",
|
||||
"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",
|
||||
"generic_count_years_0": "{{count}} anno",
|
||||
"generic_count_years_1": "{{count}} anni",
|
||||
"generic_count_years_2": "{{count}} anni",
|
||||
"generic_count_months_0": "{{count}} mese",
|
||||
"generic_count_months_1": "{{count}} mesi",
|
||||
"generic_count_months_2": "{{count}} mesi",
|
||||
"generic_count_weeks_0": "{{count}} settimana",
|
||||
"generic_count_weeks_1": "{{count}} settimane",
|
||||
"generic_count_weeks_2": "{{count}} settimane",
|
||||
"generic_count_days_0": "{{count}} giorno",
|
||||
"generic_count_days_1": "{{count}} giorni",
|
||||
"generic_count_days_2": "{{count}} giorni",
|
||||
"generic_count_hours_0": "{{count}} ora",
|
||||
"generic_count_hours_1": "{{count}} ore",
|
||||
"generic_count_hours_2": "{{count}} ore",
|
||||
"generic_count_minutes_0": "{{count}} minuto",
|
||||
"generic_count_minutes_1": "{{count}} minuti",
|
||||
"generic_count_minutes_2": "{{count}} minuti",
|
||||
"generic_count_seconds_0": "{{count}} secondo",
|
||||
"generic_count_seconds_1": "{{count}} secondi",
|
||||
"generic_count_seconds_2": "{{count}} secondi",
|
||||
"Fallback comments: ": "Commenti alternativi: ",
|
||||
"Popular": "Popolare",
|
||||
"Search": "Cerca",
|
||||
@ -340,39 +346,37 @@
|
||||
"%A %B %-d, %Y": "%A %-d %B %Y",
|
||||
"(edited)": "(modificato)",
|
||||
"YouTube comment permalink": "Link permanente al commento di YouTube",
|
||||
"permalink": "permalink",
|
||||
"permalink": "perma-collegamento",
|
||||
"`x` marked it with a ❤": "`x` l'ha contrassegnato con un ❤",
|
||||
"Audio mode": "Modalità audio",
|
||||
"Video mode": "Modalità video",
|
||||
"Videos": "Video",
|
||||
"channel_tab_videos_label": "Video",
|
||||
"Playlists": "Playlist",
|
||||
"Community": "Comunità",
|
||||
"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",
|
||||
"search_filters_sort_option_relevance": "Pertinenza",
|
||||
"search_filters_sort_option_rating": "Valutazione",
|
||||
"search_filters_sort_option_date": "Data di caricamento",
|
||||
"search_filters_sort_option_views": "Numero di visualizzazioni",
|
||||
"search_filters_type_label": "Tipo",
|
||||
"search_filters_duration_label": "Durata",
|
||||
"search_filters_features_label": "Caratteristiche",
|
||||
"search_filters_sort_label": "Ordina per",
|
||||
"search_filters_date_option_hour": "Ultima ora",
|
||||
"search_filters_date_option_today": "Oggi",
|
||||
"search_filters_date_option_week": "Questa settimana",
|
||||
"search_filters_date_option_month": "Questo mese",
|
||||
"search_filters_date_option_year": "Quest'anno",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Canale",
|
||||
"search_filters_type_option_playlist": "Playlist",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Sottotitoli / CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "In diretta",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Posizione",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Versione attuale: ",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
@ -382,15 +386,134 @@
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Released under the AGPLv3 on Github.": "Rilasciato su Github con licenza AGPLv3.",
|
||||
"Released under the AGPLv3 on Github.": "Pubblicato su GitHub con licenza AGPLv3.",
|
||||
"preferences_quality_option_medium": "Media",
|
||||
"preferences_quality_option_small": "Piccola",
|
||||
"preferences_quality_option_small": "Limitata",
|
||||
"preferences_quality_dash_option_best": "Migliore",
|
||||
"preferences_quality_dash_option_worst": "Peggiore",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_label": "Qualità video DASH preferita ",
|
||||
"preferences_quality_dash_label": "Qualità video DASH preferita: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_auto": "Automatica"
|
||||
"preferences_quality_dash_option_auto": "Automatica",
|
||||
"videoinfo_watch_on_youTube": "Guarda su YouTube",
|
||||
"preferences_extend_desc_label": "Estendi automaticamente la descrizione del video: ",
|
||||
"preferences_vr_mode_label": "Video interattivi a 360 gradi: ",
|
||||
"Show less": "Mostra di meno",
|
||||
"Switch Invidious Instance": "Cambia istanza Invidious",
|
||||
"next_steps_error_message_go_to_youtube": "Andare su YouTube",
|
||||
"footer_documentation": "Documentazione",
|
||||
"footer_original_source_code": "Codice sorgente originale",
|
||||
"footer_modfied_source_code": "Codice sorgente modificato",
|
||||
"none": "nessuno",
|
||||
"videoinfo_started_streaming_x_ago": "Ha iniziato a trasmettere `x` fa",
|
||||
"download_subtitles": "Sottotitoli - `x` (.vtt)",
|
||||
"user_saved_playlists": "playlist salvate da `x`",
|
||||
"preferences_automatic_instance_redirect_label": "Reindirizzamento automatico dell'istanza (ripiego su redirect.invidious.io): ",
|
||||
"Video unavailable": "Video non disponibile",
|
||||
"preferences_show_nick_label": "Mostra nickname in alto: ",
|
||||
"videoinfo_youTube_embed_link": "Incorpora",
|
||||
"videoinfo_invidious_embed_link": "Incorpora collegamento",
|
||||
"user_created_playlists": "playlist create da `x`",
|
||||
"preferences_save_player_pos_label": "Memorizza il minutaggio raggiunto dal video: ",
|
||||
"preferences_quality_option_dash": "DASH (qualità adattiva)",
|
||||
"preferences_region_label": "Nazione del contenuto: ",
|
||||
"preferences_category_misc": "Preferenze varie",
|
||||
"next_steps_error_message": "Dopodiché dovresti provare a: ",
|
||||
"next_steps_error_message_refresh": "Aggiornare",
|
||||
"footer_donate_page": "Dona",
|
||||
"footer_source_code": "Codice sorgente",
|
||||
"adminprefs_modified_source_code_url_label": "Link per il repository del codice sorgente modificato",
|
||||
"Show more": "Mostra di più",
|
||||
"search_filters_title": "Filtra",
|
||||
"search_filters_type_option_show": "Serie",
|
||||
"search_filters_duration_option_short": "Corto (< 4 minuti)",
|
||||
"search_filters_duration_option_long": "Lungo (> 20 minuti)",
|
||||
"search_filters_features_option_purchased": "Acquistato",
|
||||
"comments_view_x_replies_0": "Vedi {{count}} risposta",
|
||||
"comments_view_x_replies_1": "Vedi {{count}} risposte",
|
||||
"comments_view_x_replies_2": "Vedi {{count}} risposte",
|
||||
"comments_points_count_0": "{{count}} punto",
|
||||
"comments_points_count_1": "{{count}} punti",
|
||||
"comments_points_count_2": "{{count}} punti",
|
||||
"Portuguese (auto-generated)": "Portoghese (generati automaticamente)",
|
||||
"crash_page_you_found_a_bug": "Sembra che tu abbia trovato un bug in Invidious!",
|
||||
"crash_page_switch_instance": "provato a <a href=\"`x`\">usare un'altra istanza</a>",
|
||||
"crash_page_before_reporting": "Prima di segnalare un bug, assicurati di aver:",
|
||||
"crash_page_read_the_faq": "letto le <a href=\"`x`\">domande più frequenti (FAQ)</a>",
|
||||
"crash_page_search_issue": "cercato tra <a href=\"`x`\"> i problemi esistenti su GitHub</a>",
|
||||
"crash_page_report_issue": "Se niente di tutto ciò ha aiutato, per favore <a href=\"`x`\">apri un nuovo problema su GitHub</a> (preferibilmente in inglese) e includi il seguente testo nel tuo messaggio (NON tradurre il testo):",
|
||||
"Popular enabled: ": "Popolare attivato: ",
|
||||
"English (United Kingdom)": "Inglese (Regno Unito)",
|
||||
"Portuguese (Brazil)": "Portoghese (Brasile)",
|
||||
"preferences_watch_history_label": "Attiva cronologia di riproduzione: ",
|
||||
"French (auto-generated)": "Francese (generati automaticamente)",
|
||||
"search_message_use_another_instance": "Puoi anche <a href=\"`x`\">cercare in un'altra istanza</a>.",
|
||||
"search_message_no_results": "Nessun risultato trovato.",
|
||||
"search_message_change_filters_or_query": "Prova ad ampliare la ricerca e/o modificare i filtri.",
|
||||
"English (United States)": "Inglese (Stati Uniti)",
|
||||
"Cantonese (Hong Kong)": "Cantonese (Hong Kong)",
|
||||
"Chinese": "Cinese",
|
||||
"Chinese (China)": "Cinese (Cina)",
|
||||
"Chinese (Hong Kong)": "Cinese (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Cinese (Taiwan)",
|
||||
"Dutch (auto-generated)": "Olandese (generati automaticamente)",
|
||||
"German (auto-generated)": "Tedesco (generati automaticamente)",
|
||||
"Indonesian (auto-generated)": "Indonesiano (generati automaticamente)",
|
||||
"Interlingue": "Interlingua",
|
||||
"Italian (auto-generated)": "Italiano (generati automaticamente)",
|
||||
"Japanese (auto-generated)": "Giapponese (generati automaticamente)",
|
||||
"Korean (auto-generated)": "Coreano (generati automaticamente)",
|
||||
"Russian (auto-generated)": "Russo (generati automaticamente)",
|
||||
"Spanish (auto-generated)": "Spagnolo (generati automaticamente)",
|
||||
"Spanish (Mexico)": "Spagnolo (Messico)",
|
||||
"Spanish (Spain)": "Spagnolo (Spagna)",
|
||||
"Turkish (auto-generated)": "Turco (generati automaticamente)",
|
||||
"Vietnamese (auto-generated)": "Vietnamita (generati automaticamente)",
|
||||
"search_filters_date_label": "Data caricamento",
|
||||
"search_filters_date_option_none": "Qualunque data",
|
||||
"search_filters_type_option_all": "Qualunque tipo",
|
||||
"search_filters_duration_option_none": "Qualunque durata",
|
||||
"search_filters_duration_option_medium": "Media (4 - 20 minuti)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_apply_button": "Applica filtri selezionati",
|
||||
"crash_page_refresh": "provato a <a href=\"`x`\">ricaricare la pagina</a>",
|
||||
"error_video_not_in_playlist": "Il video richiesto non esiste in questa playlist. <a href=\"`x`\">Fai clic qui per la pagina iniziale della playlist.</a>",
|
||||
"channel_tab_shorts_label": "Short",
|
||||
"channel_tab_playlists_label": "Playlist",
|
||||
"channel_tab_channels_label": "Canali",
|
||||
"channel_tab_streams_label": "Trasmissioni in diretta",
|
||||
"channel_tab_community_label": "Comunità",
|
||||
"Music in this video": "Musica in questo video",
|
||||
"Artist: ": "Artista: ",
|
||||
"Album: ": "Album: ",
|
||||
"Download is disabled": "Il download è disabilitato",
|
||||
"Song: ": "Canzone: ",
|
||||
"Standard YouTube license": "Licenza standard di YouTube",
|
||||
"Channel Sponsor": "Sponsor del canale",
|
||||
"Import YouTube playlist (.csv)": "Importa playlist di YouTube (.csv)",
|
||||
"generic_button_edit": "Modifica",
|
||||
"generic_button_cancel": "Annulla",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_releases_label": "Pubblicazioni",
|
||||
"generic_button_delete": "Elimina",
|
||||
"generic_button_save": "Salva",
|
||||
"playlist_button_add_items": "Aggiungi video",
|
||||
"channel_tab_podcasts_label": "Podcast",
|
||||
"generic_channels_count_0": "{{count}} canale",
|
||||
"generic_channels_count_1": "{{count}} canali",
|
||||
"generic_channels_count_2": "{{count}} canali",
|
||||
"Import YouTube watch history (.json)": "Importa la cronologia delle visualizzazioni di YouTube (.json)",
|
||||
"Answer": "Risposta",
|
||||
"toggle_theme": "Cambia Tema",
|
||||
"Add to playlist": "Aggiungi alla playlist",
|
||||
"Add to playlist: ": "Aggiungi alla playlist ",
|
||||
"Search for videos": "Cerca dei video",
|
||||
"The Popular feed has been disabled by the administrator.": "La sezione dei contenuti popolari è stata disabilitata dall'amministratore.",
|
||||
"carousel_slide": "Fotogramma {{current}} di {{total}}",
|
||||
"carousel_skip": "Salta la galleria",
|
||||
"carousel_go_to": "Vai al fotogramma `x`",
|
||||
"preferences_preload_label": "Precarica dati video: ",
|
||||
"Filipino (auto-generated)": "Filippino (generati automaticamente)"
|
||||
}
|
||||
|
300
locales/ja.json
300
locales/ja.json
@ -1,15 +1,15 @@
|
||||
{
|
||||
"generic_views_count_0": "{{count}} 回視聴",
|
||||
"generic_videos_count_0": "{{count}} 個の動画",
|
||||
"generic_playlists_count_0": "{{count}} 個の再生リスト",
|
||||
"generic_videos_count_0": "{{count}}本の動画",
|
||||
"generic_playlists_count_0": "{{count}}個の再生リスト",
|
||||
"generic_subscribers_count_0": "{{count}} 人の登録者",
|
||||
"generic_subscriptions_count_0": "{{count}} 個の登録チャンネル",
|
||||
"generic_subscriptions_count_0": "{{count}}個の登録チャンネル",
|
||||
"LIVE": "ライブ",
|
||||
"Shared `x` ago": "`x`前に共有",
|
||||
"Shared `x` ago": "`x`前に公開",
|
||||
"Unsubscribe": "登録解除",
|
||||
"Subscribe": "登録",
|
||||
"View channel on YouTube": "YouTube でチャンネルを見る",
|
||||
"View playlist on YouTube": "YouTube で再生リストを見る",
|
||||
"View channel on YouTube": "YouTube でチャンネルを表示",
|
||||
"View playlist on YouTube": "YouTube で再生リストを表示",
|
||||
"newest": "新しい順",
|
||||
"oldest": "古い順",
|
||||
"popular": "人気順",
|
||||
@ -19,22 +19,21 @@
|
||||
"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 Invidious data": "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 向けの代用フロントエンド",
|
||||
@ -42,7 +41,6 @@
|
||||
"source": "ソース",
|
||||
"Log in": "ログイン",
|
||||
"Log in/register": "ログイン/登録",
|
||||
"Log in with Google": "Google でログイン",
|
||||
"User ID": "ユーザー ID",
|
||||
"Password": "パスワード",
|
||||
"Time (h:mm:ss):": "時間 (時:分分:秒秒):",
|
||||
@ -51,40 +49,39 @@
|
||||
"Sign In": "サインイン",
|
||||
"Register": "登録",
|
||||
"E-mail": "メールアドレス",
|
||||
"Google verification code": "Google 認証コード",
|
||||
"Preferences": "設定",
|
||||
"preferences_category_player": "プレイヤー設定",
|
||||
"preferences_category_player": "プレイヤーの設定",
|
||||
"preferences_video_loop_label": "常にループ: ",
|
||||
"preferences_autoplay_label": "自動再生: ",
|
||||
"preferences_continue_label": "デフォルトで次を再生: ",
|
||||
"preferences_continue_label": "次の動画に移動: ",
|
||||
"preferences_continue_autoplay_label": "次の動画を自動再生: ",
|
||||
"preferences_listen_label": "デフォルトでオーディオモードを使用: ",
|
||||
"preferences_local_label": "動画をプロキシーに通す: ",
|
||||
"preferences_speed_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": "デフォルトの字幕: ",
|
||||
"preferences_captions_label": "優先する字幕: ",
|
||||
"Fallback captions: ": "フォールバック時の字幕: ",
|
||||
"preferences_related_videos_label": "関連動画を表示: ",
|
||||
"preferences_annotations_label": "デフォルトでアノテーションを表示: ",
|
||||
"preferences_annotations_label": "最初からアノテーションを表示: ",
|
||||
"preferences_extend_desc_label": "動画の説明文を自動的に拡張: ",
|
||||
"preferences_vr_mode_label": "対話的な360°動画: ",
|
||||
"preferences_vr_mode_label": "対話的な360°動画 (WebGLが必要): ",
|
||||
"preferences_category_visual": "外観設定",
|
||||
"preferences_player_style_label": "プレイヤースタイル: ",
|
||||
"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_misc": "ほかの設定",
|
||||
"preferences_automatic_instance_redirect_label": "インスタンスの自動転送 (redirect.invidious.ioにフォールバック): ",
|
||||
"preferences_category_subscription": "登録チャンネル設定",
|
||||
"preferences_annotations_subscribed_label": "デフォルトで登録チャンネルのアノテーションを表示しますか? ",
|
||||
"preferences_annotations_subscribed_label": "最初から登録チャンネルのアノテーションを表示 ",
|
||||
"Redirect homepage to feed: ": "ホームからフィードにリダイレクト: ",
|
||||
"preferences_max_results_label": "フィードに表示する動画の量: ",
|
||||
"preferences_max_results_label": "フィードに表示する動画数: ",
|
||||
"preferences_sort_label": "動画を並び替え: ",
|
||||
"published": "投稿日",
|
||||
"published - reverse": "投稿日 - 逆順",
|
||||
@ -108,105 +105,99 @@
|
||||
"Watch history": "再生履歴",
|
||||
"Delete account": "アカウントを削除",
|
||||
"preferences_category_admin": "管理者設定",
|
||||
"preferences_default_home_label": "デフォルトのホーム: ",
|
||||
"preferences_feed_menu_label": "フィードメニュー: ",
|
||||
"preferences_show_nick_label": "ニックネームを一番上に表示する: ",
|
||||
"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": "トークンマネージャー",
|
||||
"Subscription manager": "登録チャンネルの管理",
|
||||
"Token manager": "トークンの管理",
|
||||
"Token": "トークン",
|
||||
"tokens_count_0": "{{count}} 個のトークン",
|
||||
"tokens_count_0": "{{count}}個のトークン",
|
||||
"Import/export": "インポート/エクスポート",
|
||||
"unsubscribe": "登録解除",
|
||||
"revoke": "取り消す",
|
||||
"Subscriptions": "登録チャンネル",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} 個の未読通知",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}}件の未読通知",
|
||||
"search": "検索",
|
||||
"Log out": "ログアウト",
|
||||
"Released under the AGPLv3 on Github.": "GitHub 上で 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": "限定公開",
|
||||
"Private": "非公開",
|
||||
"View all playlists": "再生リストをすべて見る",
|
||||
"View all playlists": "すべての再生リストを表示",
|
||||
"Updated `x` ago": "`x`前に更新",
|
||||
"Delete playlist `x`?": "再生リスト `x` を削除しますか?",
|
||||
"Delete playlist": "再生リストを削除",
|
||||
"Create playlist": "再生リストを作成",
|
||||
"Title": "タイトル",
|
||||
"Playlist privacy": "再生リストのプライバシー",
|
||||
"Playlist privacy": "再生リストの公開状態",
|
||||
"Editing playlist `x`": "再生リスト `x` を編集中",
|
||||
"Show more": "表示を増やす",
|
||||
"Show less": "表示を減らす",
|
||||
"Watch on YouTube": "YouTube で視聴",
|
||||
"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? ": "家族向け: ",
|
||||
"Wilson score: ": "ウィルソンスコア: ",
|
||||
"Wilson score: ": "ウィルソン得点区間: ",
|
||||
"Engagement: ": "エンゲージメント: ",
|
||||
"Whitelisted regions: ": "ホワイトリストの地域: ",
|
||||
"Blacklisted regions: ": "ブラックリストの地域: ",
|
||||
"Shared `x`": "`x`に共有",
|
||||
"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.": "やあ!君は JavaScript を無効にしているのかな?ここをクリックしてコメントを見れるけど、読み込みには少し時間がかかることがあるのを覚えておいてね。",
|
||||
"View YouTube comments": "YouTube のコメントを見る",
|
||||
"View YouTube comments": "YouTube のコメントを表示",
|
||||
"View more comments on Reddit": "Reddit でコメントをもっと見る",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 件のコメントを見る",
|
||||
"": "`x` 件のコメントを見る"
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 件のコメントを表示",
|
||||
"": "`x` 件のコメントを表示"
|
||||
},
|
||||
"View Reddit comments": "Reddit のコメントを見る",
|
||||
"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.": "ログインできませんでした。2段階認証 (認証アプリまたは SMS) が有効になっていることを確認してください。",
|
||||
"Invalid TFA code": "TFA (2段階認証) コードが無効です",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "ログインに失敗しました。あなたのアカウントで2段階認証が有効になっていない可能性があります。",
|
||||
"Wrong answer": "回答が間違っています",
|
||||
"Erroneous CAPTCHA": "CAPTCHA が間違っています",
|
||||
"CAPTCHA is a required field": "CAPTCHA は必須項目です",
|
||||
"User ID is a required field": "ユーザー ID は必須項目です",
|
||||
"Password is a required field": "パスワードは必須項目です",
|
||||
"Wrong username or password": "ユーザー名またはパスワードが間違っています",
|
||||
"Please sign in using 'Log in with Google'": "'Google でログイン' を使用してログインしてください",
|
||||
"Password cannot be empty": "パスワードを空にすることはできません",
|
||||
"Password cannot be empty": "パスワードは空にできません",
|
||||
"Password cannot be longer than 55 characters": "パスワードは55文字より長くできません",
|
||||
"Please log in": "ログインをしてください",
|
||||
"Invidious Private Feed for `x`": "`x` の Invidious プライベートフィード",
|
||||
"Please log in": "ログインしてください",
|
||||
"Invidious Private Feed for `x`": "`x` 個人の Invidious によるフィード",
|
||||
"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}} 件の返信を見る",
|
||||
"comments_view_x_replies_0": "{{count}}件の返信を表示",
|
||||
"`x` ago": "`x`前",
|
||||
"Load more": "もっと読み込む",
|
||||
"comments_points_count_0": "{{count}} ポイント",
|
||||
"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": "非表示項目 \"challenge\" は必須項目です",
|
||||
"Hidden field \"token\" is a required field": "非表示項目 \"token\" は必須項目です",
|
||||
"Hidden field \"challenge\" is a required field": "非表示項目 challenge は必須項目です",
|
||||
"Hidden field \"token\" is a required field": "非表示項目 token は必須項目です",
|
||||
"Erroneous challenge": "チャレンジが間違っています",
|
||||
"Erroneous token": "トークンが間違っています",
|
||||
"No such user": "ユーザーが存在しません",
|
||||
"Token is expired, please try again": "トークンが期限切れです。再度試してください",
|
||||
"Token is expired, please try again": "トークンが期限切れです。再度お試しください",
|
||||
"English": "英語",
|
||||
"English (auto-generated)": "英語 (自動生成)",
|
||||
"Afrikaans": "アフリカーンス語",
|
||||
@ -314,8 +305,8 @@
|
||||
"Yoruba": "ヨルバ語",
|
||||
"Zulu": "ズール語",
|
||||
"generic_count_years_0": "{{count}}年",
|
||||
"generic_count_months_0": "{{count}}ヶ月",
|
||||
"generic_count_weeks_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}}分",
|
||||
@ -327,8 +318,8 @@
|
||||
"About": "このサービスについて",
|
||||
"Rating: ": "評価: ",
|
||||
"preferences_locale_label": "言語: ",
|
||||
"View as playlist": "再生リストで見る",
|
||||
"Default": "デフォルト",
|
||||
"View as playlist": "再生リストとして閲覧",
|
||||
"Default": "標準",
|
||||
"Music": "音楽",
|
||||
"Gaming": "ゲーム",
|
||||
"News": "ニュース",
|
||||
@ -339,53 +330,52 @@
|
||||
"(edited)": "(編集済み)",
|
||||
"YouTube comment permalink": "YouTube コメントのパーマリンク",
|
||||
"permalink": "パーマリンク",
|
||||
"`x` marked it with a ❤": "`x` が❤を込めてマークしました",
|
||||
"Audio mode": "オーディオモード",
|
||||
"Video mode": "ビデオモード",
|
||||
"Videos": "動画",
|
||||
"Playlists": "プレイリスト",
|
||||
"Community": "コミュニティ",
|
||||
"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": "フィルタ",
|
||||
"`x` marked it with a ❤": "`x` が❤を送りました",
|
||||
"Audio mode": "音声モード",
|
||||
"Video mode": "動画モード",
|
||||
"channel_tab_videos_label": "動画",
|
||||
"Playlists": "再生リスト",
|
||||
"channel_tab_community_label": "コミュニティ",
|
||||
"search_filters_sort_option_relevance": "関連度",
|
||||
"search_filters_sort_option_rating": "評価",
|
||||
"search_filters_sort_option_date": "アップロード日",
|
||||
"search_filters_sort_option_views": "視聴回数",
|
||||
"search_filters_type_label": "種類",
|
||||
"search_filters_duration_label": "再生時間",
|
||||
"search_filters_features_label": "特徴",
|
||||
"search_filters_sort_label": "順番",
|
||||
"search_filters_date_option_hour": "1時間以内",
|
||||
"search_filters_date_option_today": "今日",
|
||||
"search_filters_date_option_week": "今週",
|
||||
"search_filters_date_option_month": "今月",
|
||||
"search_filters_date_option_year": "今年",
|
||||
"search_filters_type_option_video": "動画",
|
||||
"search_filters_type_option_channel": "チャンネル",
|
||||
"search_filters_type_option_playlist": "再生リスト",
|
||||
"search_filters_type_option_movie": "映画",
|
||||
"search_filters_type_option_show": "番組",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "字幕",
|
||||
"search_filters_features_option_c_commons": "クリエイティブ・コモンズ",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "ライブ",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "場所",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "現在のバージョン: ",
|
||||
"next_steps_error_message": "下記のものを試して下さい: ",
|
||||
"next_steps_error_message_refresh": "再読込",
|
||||
"next_steps_error_message_go_to_youtube": "YouTubeへ",
|
||||
"short": "4 分未満",
|
||||
"footer_documentation": "文書",
|
||||
"next_steps_error_message": "以下をお試しください: ",
|
||||
"next_steps_error_message_refresh": "再読み込み",
|
||||
"next_steps_error_message_go_to_youtube": "YouTubeを開く",
|
||||
"search_filters_duration_option_short": "4分未満",
|
||||
"footer_documentation": "説明書",
|
||||
"footer_source_code": "ソースコード",
|
||||
"footer_original_source_code": "ソースコード(元)",
|
||||
"footer_modfied_source_code": "ソースコード(編集)",
|
||||
"adminprefs_modified_source_code_url_label": "編集したソースコードのレポジトリーURL",
|
||||
"long": "20 分以上",
|
||||
"footer_original_source_code": "元のソースコード",
|
||||
"footer_modfied_source_code": "改変して使用",
|
||||
"adminprefs_modified_source_code_url_label": "改変されたソースコードのレポジトリのURL",
|
||||
"search_filters_duration_option_long": "20分以上",
|
||||
"preferences_region_label": "地域: ",
|
||||
"footer_donate_page": "寄付する",
|
||||
"preferences_quality_dash_label": "優先するDash画質 : ",
|
||||
"preferences_quality_dash_label": "優先するDASH画質: ",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
@ -404,12 +394,92 @@
|
||||
"videoinfo_invidious_embed_link": "埋め込みリンク",
|
||||
"none": "なし",
|
||||
"download_subtitles": "字幕 - `x` (.vtt)",
|
||||
"purchased": "購入済み",
|
||||
"preferences_quality_option_dash": "DASH (適切な品質)",
|
||||
"preferences_quality_dash_option_worst": "最悪",
|
||||
"search_filters_features_option_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": "ビデオは利用できません"
|
||||
"videoinfo_started_streaming_x_ago": "`x`前に配信を開始",
|
||||
"videoinfo_watch_on_youTube": "YouTubeで視聴",
|
||||
"user_created_playlists": "`x`個の作成した再生リスト",
|
||||
"Video unavailable": "動画は利用できません",
|
||||
"Chinese": "中国語",
|
||||
"Chinese (Taiwan)": "中国語 (台湾)",
|
||||
"Korean (auto-generated)": "韓国語 (自動生成)",
|
||||
"Portuguese (auto-generated)": "ポルトガル語 (自動生成)",
|
||||
"Turkish (auto-generated)": "トルコ語 (自動生成)",
|
||||
"English (United Kingdom)": "英語 (イギリス)",
|
||||
"Cantonese (Hong Kong)": "広東語 (香港)",
|
||||
"Chinese (China)": "中国語 (中国)",
|
||||
"Chinese (Hong Kong)": "中国語 (香港)",
|
||||
"Dutch (auto-generated)": "オランダ語 (自動生成)",
|
||||
"French (auto-generated)": "フランス語 (自動生成)",
|
||||
"German (auto-generated)": "ドイツ語 (自動生成)",
|
||||
"Indonesian (auto-generated)": "インドネシア語 (自動生成)",
|
||||
"Italian (auto-generated)": "イタリア語 (自動生成)",
|
||||
"Japanese (auto-generated)": "日本語 (自動生成)",
|
||||
"Interlingue": "インターリング",
|
||||
"Portuguese (Brazil)": "ポルトガル語 (ブラジル)",
|
||||
"Russian (auto-generated)": "ロシア語 (自動生成)",
|
||||
"Spanish (auto-generated)": "スペイン語 (自動生成)",
|
||||
"Spanish (Mexico)": "スペイン語 (メキシコ)",
|
||||
"Spanish (Spain)": "スペイン語 (スペイン)",
|
||||
"Vietnamese (auto-generated)": "ベトナム語 (自動生成)",
|
||||
"search_filters_title": "フィルタ",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_message_change_filters_or_query": "別の検索語句を試したり、検索フィルタを変更してください。",
|
||||
"search_message_no_results": "一致する検索結果はありません。",
|
||||
"English (United States)": "英語 (アメリカ)",
|
||||
"search_filters_date_label": "アップロード日",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"crash_page_switch_instance": "<a href=\"`x`\">別のインスタンスを使用</a>を試す",
|
||||
"crash_page_read_the_faq": "<a href=\"`x`\">よくある質問 (FAQ)</a> を読む",
|
||||
"Popular enabled: ": "人気動画を有効化 ",
|
||||
"search_message_use_another_instance": "<a href=\"`x`\">別のインスタンス上での検索</a>も可能です。",
|
||||
"search_filters_apply_button": "選択したフィルターを適用",
|
||||
"user_saved_playlists": "`x`個の保存済みの再生リスト",
|
||||
"crash_page_you_found_a_bug": "Invidious のバグのようです!",
|
||||
"crash_page_refresh": "<a href=\"`x`\">ページを更新</a>を試す",
|
||||
"preferences_watch_history_label": "再生履歴を有効化 ",
|
||||
"search_filters_date_option_none": "すべて",
|
||||
"search_filters_type_option_all": "すべての種類",
|
||||
"search_filters_duration_option_none": "すべての長さ",
|
||||
"search_filters_duration_option_medium": "4 ~ 20分",
|
||||
"preferences_save_player_pos_label": "再生位置を保存: ",
|
||||
"crash_page_before_reporting": "バグを報告する前に、次のことを確認してください。",
|
||||
"crash_page_report_issue": "上記が助けにならないなら、<a href=\"`x`\">GitHub</a> に新しい issue を作成し(英語が好ましい)、メッセージに次のテキストを含めてください(テキストは翻訳しない)。",
|
||||
"crash_page_search_issue": "<a href=\"`x`\">GitHub の既存の問題 (issue)</a> を検索",
|
||||
"channel_tab_streams_label": "ライブ",
|
||||
"channel_tab_playlists_label": "再生リスト",
|
||||
"error_video_not_in_playlist": "要求された動画はこの再生リスト内に存在しません。<a href=\"`x`\">再生リストのホームへ。</a>",
|
||||
"channel_tab_shorts_label": "ショート",
|
||||
"channel_tab_channels_label": "チャンネル",
|
||||
"Music in this video": "この動画の音楽",
|
||||
"Artist: ": "アーティスト: ",
|
||||
"Album: ": "アルバム: ",
|
||||
"Song: ": "曲: ",
|
||||
"Channel Sponsor": "チャンネルのスポンサー",
|
||||
"Standard YouTube license": "標準 Youtube ライセンス",
|
||||
"Download is disabled": "ダウンロード: このインスタンスは未対応",
|
||||
"Import YouTube playlist (.csv)": "YouTube 再生リストをインポート (.csv)",
|
||||
"generic_button_delete": "削除",
|
||||
"generic_button_cancel": "キャンセル",
|
||||
"channel_tab_podcasts_label": "ポッドキャスト",
|
||||
"channel_tab_releases_label": "リリース",
|
||||
"generic_button_edit": "編集",
|
||||
"generic_button_save": "保存",
|
||||
"generic_button_rss": "RSS",
|
||||
"playlist_button_add_items": "動画を追加",
|
||||
"generic_channels_count_0": "{{count}}個のチャンネル",
|
||||
"Import YouTube watch history (.json)": "YouTube 視聴履歴をインポート (.json)",
|
||||
"Add to playlist": "再生リストに追加",
|
||||
"Add to playlist: ": "再生リストに追加: ",
|
||||
"Answer": "回答",
|
||||
"Search for videos": "動画を検索",
|
||||
"The Popular feed has been disabled by the administrator.": "人気の動画のページは管理者によって無効にされています。",
|
||||
"carousel_go_to": "スライド`x`を表示",
|
||||
"carousel_slide": "スライド{{current}} / 全{{total}}個中",
|
||||
"carousel_skip": "画像のスライド表示をスキップ",
|
||||
"toggle_theme": "テーマの切り替え",
|
||||
"preferences_preload_label": "動画データを事前に読み込む: ",
|
||||
"Filipino (auto-generated)": "フィリピノ語 (自動生成)"
|
||||
}
|
||||
|
314
locales/ko.json
314
locales/ko.json
@ -2,7 +2,7 @@
|
||||
"preferences_sort_label": "동영상 정렬 기준: ",
|
||||
"preferences_max_results_label": "피드에 표시된 동영상 수: ",
|
||||
"Redirect homepage to feed: ": "피드로 홈페이지 리디렉션: ",
|
||||
"preferences_annotations_subscribed_label": "구독한 채널에 기본적으로 특수효과를 표시하시겠습니까? ",
|
||||
"preferences_annotations_subscribed_label": "구독한 채널에 기본으로 주석 표시: ",
|
||||
"preferences_category_subscription": "구독 설정",
|
||||
"preferences_automatic_instance_redirect_label": "자동 인스턴스 리디렉션 (redirect.invidious.io로 대체): ",
|
||||
"preferences_thin_mode_label": "단순 모드: ",
|
||||
@ -11,73 +11,70 @@
|
||||
"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_category_visual": "환경 설정",
|
||||
"preferences_vr_mode_label": "360도 영상 활성화 (WebGL 필요): ",
|
||||
"preferences_extend_desc_label": "자동으로 비디오 설명 펼치기: ",
|
||||
"preferences_annotations_label": "기본으로 주석 표시: ",
|
||||
"preferences_related_videos_label": "관련 동영상 보기: ",
|
||||
"Fallback captions: ": "대체 자막: ",
|
||||
"preferences_captions_label": "기본 자막: ",
|
||||
"reddit": "Reddit",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "레딧",
|
||||
"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_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",
|
||||
"Image CAPTCHA": "이미지 캡차",
|
||||
"Text 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": "역사",
|
||||
"JavaScript license information": "자바스크립트 라이선스 정보",
|
||||
"An alternative front-end to 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 data as JSON": "인비디어스 데이터 내보내기 (.json)",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "OPML로 구독 내보내기 (뉴파이프 및 프리튜브)",
|
||||
"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 NewPipe data (.zip)": "뉴파이프 데이터 가져오기 (.zip)",
|
||||
"Import NewPipe subscriptions (.json)": "뉴파이프 구독 가져오기 (.json)",
|
||||
"Import FreeTube subscriptions (.db)": "프리튜브 구독 가져오기 (.db)",
|
||||
"Import YouTube subscriptions": "유튜브 구독 가져오기",
|
||||
"Import Invidious data": "인비디어스 데이터 가져오기 (.json)",
|
||||
"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?": "재생 기록을 삭제 하시겠습니까?",
|
||||
"Clear watch history?": "시청 기록을 지우시겠습니까?",
|
||||
"Previous page": "이전 페이지",
|
||||
"Next page": "다음 페이지",
|
||||
"last": "마지막",
|
||||
"Shared `x` ago": "`x` 전에 공유",
|
||||
"popular": "인기",
|
||||
"oldest": "오래된순",
|
||||
"Shared `x` ago": "`x` 전",
|
||||
"popular": "인기순",
|
||||
"oldest": "과거순",
|
||||
"newest": "최신순",
|
||||
"View playlist on YouTube": "YouTube에서 재생목록 보기",
|
||||
"View channel on YouTube": "YouTube에서 채널 보기",
|
||||
"View playlist on YouTube": "유튜브에서 재생목록 보기",
|
||||
"View channel on YouTube": "유튜브에서 채널 보기",
|
||||
"Subscribe": "구독",
|
||||
"Unsubscribe": "구독 취소",
|
||||
"LIVE": "실시간",
|
||||
@ -86,12 +83,12 @@
|
||||
"generic_playlists_count_0": "{{count}} 재생목록",
|
||||
"generic_subscribers_count_0": "{{count}} 구독자",
|
||||
"generic_subscriptions_count_0": "{{count}} 구독",
|
||||
"playlist": "재생목록",
|
||||
"search_filters_type_option_playlist": "재생목록",
|
||||
"Korean": "한국어",
|
||||
"Japanese": "일본어",
|
||||
"Greek": "그리스어",
|
||||
"German": "독일어",
|
||||
"Chinese (Traditional)": "중국어 (정자)",
|
||||
"Chinese (Traditional)": "중국어 (정체자)",
|
||||
"Chinese (Simplified)": "중국어 (간체자)",
|
||||
"French": "프랑스어",
|
||||
"Finnish": "핀란드어",
|
||||
@ -112,7 +109,6 @@
|
||||
"This channel does not exist.": "이 채널은 존재하지 않습니다.",
|
||||
"Deleted or invalid channel": "삭제되었거나 더 이상 존재하지 않는 채널",
|
||||
"channel:`x`": "채널:`x`",
|
||||
"Invalid TFA code": "유효하지 않은 TFA 코드",
|
||||
"Show replies": "댓글 보기",
|
||||
"Hide replies": "댓글 숨기기",
|
||||
"Incorrect password": "잘못된 비밀번호",
|
||||
@ -120,22 +116,22 @@
|
||||
"Genre: ": "장르: ",
|
||||
"Editing playlist `x`": "재생목록 `x` 수정하기",
|
||||
"Playlist privacy": "재생목록 공개 범위",
|
||||
"Watch on YouTube": "YouTube에서 보기",
|
||||
"Watch on YouTube": "유튜브에서 보기",
|
||||
"Show less": "간략히",
|
||||
"Show more": "더보기",
|
||||
"Title": "제목",
|
||||
"Create playlist": "재생목록 생성",
|
||||
"Trending": "급상승",
|
||||
"Delete playlist": "재생목록 삭제",
|
||||
"Delete playlist `x`?": "재생목록 `x` 를 삭제 하시겠습니까?",
|
||||
"Delete playlist `x`?": "재생목록 `x` 를 삭제하시겠습니까?",
|
||||
"Updated `x` ago": "`x` 전에 업데이트됨",
|
||||
"Released under the AGPLv3 on Github.": "Github에 AGPLv3 으로 배포됩니다.",
|
||||
"Released under the AGPLv3 on Github.": "깃허브에 AGPLv3 으로 배포됩니다.",
|
||||
"View all playlists": "모든 재생목록 보기",
|
||||
"Private": "비공개",
|
||||
"Unlisted": "목록에 없음",
|
||||
"Public": "공개",
|
||||
"View privacy policy.": "개인정보 처리방침 보기.",
|
||||
"View JavaScript license information.": "JavaScript 라이센스 정보 보기.",
|
||||
"View JavaScript license information.": "자바스크립트 라이선스 정보 보기.",
|
||||
"Source available here.": "소스는 여기에서 사용할 수 있습니다.",
|
||||
"Log out": "로그아웃",
|
||||
"search": "검색",
|
||||
@ -150,9 +146,9 @@
|
||||
"Subscription manager": "구독 관리자",
|
||||
"Save preferences": "설정 저장",
|
||||
"Report statistics: ": "통계 보고: ",
|
||||
"Registration enabled: ": "등록 활성화: ",
|
||||
"Registration enabled: ": "회원가입 활성화: ",
|
||||
"Login enabled: ": "로그인 활성화: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA 활성화: ",
|
||||
"CAPTCHA enabled: ": "캡차 활성화: ",
|
||||
"Top enabled: ": "Top 활성화: ",
|
||||
"preferences_show_nick_label": "상단에 닉네임 표시: ",
|
||||
"preferences_feed_menu_label": "피드 메뉴: ",
|
||||
@ -183,28 +179,27 @@
|
||||
"Russian": "러시아어",
|
||||
"Romanian": "루마니아어",
|
||||
"Punjabi": "펀자브어",
|
||||
"Portuguese": "포르투갈어(포어)",
|
||||
"Portuguese": "포르투갈어",
|
||||
"Polish": "폴란드어",
|
||||
"Persian": "페르시아어(파사어)",
|
||||
"Persian": "페르시아어",
|
||||
"Pashto": "파슈토어",
|
||||
"Nyanja": "체와어",
|
||||
"Norwegian Bokmål": "보크몰",
|
||||
"Nyanja": "냔자어",
|
||||
"Norwegian Bokmål": "노르웨이 부크몰어",
|
||||
"Nepali": "네팔어",
|
||||
"Mongolian": "몽골어",
|
||||
"Marathi": "마라티어",
|
||||
"Maori": "마오리어",
|
||||
"Maltese": "몰타어",
|
||||
"Wrong answer": "잘못된 답변",
|
||||
"live": "실시간",
|
||||
"3d": "3D",
|
||||
"location": "지역",
|
||||
"4k": "4K",
|
||||
"filter": "필터",
|
||||
"hdr": "HDR",
|
||||
"search_filters_features_option_live": "실시간",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_location": "지역",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "현재 버전: ",
|
||||
"next_steps_error_message_refresh": "새로 고침",
|
||||
"next_steps_error_message_go_to_youtube": "YouTube로 가기",
|
||||
"subtitles": "자막",
|
||||
"next_steps_error_message_go_to_youtube": "유튜브로 가기",
|
||||
"search_filters_features_option_subtitles": "자막",
|
||||
"`x` marked it with a ❤": "`x`님의 ❤",
|
||||
"Download as: ": "다음으로 다운로드: ",
|
||||
"Download": "다운로드",
|
||||
@ -219,14 +214,14 @@
|
||||
"Latvian": "라트비아어",
|
||||
"Latin": "라틴어",
|
||||
"Lao": "라오어",
|
||||
"channel": "채널",
|
||||
"search_filters_type_option_channel": "채널",
|
||||
"Kyrgyz": "키르기스어",
|
||||
"Kurdish": "쿠르드어",
|
||||
"Khmer": "크메르어",
|
||||
"Kazakh": "카자흐어",
|
||||
"Kannada": "칸나다어",
|
||||
"Javanese": "자바어",
|
||||
"Italian": "이탈리아어(이태리어)",
|
||||
"Italian": "이탈리아어",
|
||||
"Irish": "아일랜드어",
|
||||
"Indonesian": "인도네시아어",
|
||||
"Igbo": "이보어",
|
||||
@ -246,18 +241,17 @@
|
||||
"Could not create mix.": "믹스를 생성할 수 없습니다.",
|
||||
"`x` ago": "`x` 전",
|
||||
"comments_view_x_replies_0": "답글 {{count}}개 보기",
|
||||
"View Reddit comments": "Reddit의 댓글 보기",
|
||||
"View Reddit comments": "레딧 댓글 보기",
|
||||
"Engagement: ": "약속: ",
|
||||
"Wilson score: ": "Wilson Score: ",
|
||||
"Family friendly? ": "가족 친화적입니까? ",
|
||||
"Quota exceeded, try again in a few hours": "한도량을 초과했습니다. 몇 시간 후에 다시 시도하세요",
|
||||
"Family friendly? ": "전연령 영상입니까? ",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x` 개의 댓글 보기",
|
||||
"": "`x` 개의 댓글 보기"
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "`x`개의 댓글 보기",
|
||||
"": "`x`개의 댓글 보기"
|
||||
},
|
||||
"Haitian Creole": "아이티 크레올어",
|
||||
"Gujarati": "구자라트어",
|
||||
"Esperanto": "에스페란토(에스페란토어)",
|
||||
"Esperanto": "에스페란토",
|
||||
"Georgian": "조지아어",
|
||||
"Galician": "갈리시아어",
|
||||
"Filipino": "타갈로그어(필리핀어)",
|
||||
@ -273,23 +267,20 @@
|
||||
"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`",
|
||||
"View more comments on Reddit": "레딧에서 댓글 더 보기",
|
||||
"View YouTube comments": "유튜브 댓글 보기",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "자바스크립트가 꺼져 있는 것 같습니다! 댓글을 보려면 여기를 클릭하세요. 댓글을 로드하는 데 시간이 조금 더 걸릴 수 있습니다.",
|
||||
"Shared `x`": "`x` 업로드",
|
||||
"Whitelisted regions: ": "차단되지 않은 지역: ",
|
||||
"views": "조회수",
|
||||
"search_filters_sort_option_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.": "로그인 실패. 계정에 이중 인증이 설정되어 있지 않기 때문일 수 있습니다.",
|
||||
"Password is a required field": "비밀번호는 필수 입력란입니다",
|
||||
"User ID is a required field": "사용자 ID는 필수 입력란입니다",
|
||||
"CAPTCHA is a required field": "캡차는 필수 입력란입니다",
|
||||
"Erroneous CAPTCHA": "잘못된 캡차",
|
||||
"Blacklisted regions: ": "차단된 지역: ",
|
||||
"Playlists": "재생목록",
|
||||
"View as playlist": "재생목록으로 보기",
|
||||
@ -298,8 +289,7 @@
|
||||
"Empty playlist": "재생목록 비어 있음",
|
||||
"Show annotations": "주석 보이기",
|
||||
"Hide annotations": "주석 숨기기",
|
||||
"Broken? Try another Invidious Instance": "안되나요? 다른 Invidious 인스턴스를 시도해보세요",
|
||||
"Switch Invidious Instance": "Invidious 인스턴스 변경",
|
||||
"Switch Invidious Instance": "인비디어스 인스턴스 변경",
|
||||
"Spanish": "스페인어",
|
||||
"Southern Sotho": "소토어",
|
||||
"Somali": "소말리어",
|
||||
@ -314,13 +304,13 @@
|
||||
"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}} 초",
|
||||
"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": "이디시어",
|
||||
@ -339,48 +329,156 @@
|
||||
"Swedish": "스웨덴어",
|
||||
"Spanish (Latin America)": "스페인어 (라틴 아메리카)",
|
||||
"comments_points_count_0": "{{count}} 포인트",
|
||||
"Invidious Private Feed for `x`": "`x` 에 대한 Invidious 비공개 피드",
|
||||
"Invidious Private Feed for `x`": "`x` 에 대한 인비디어스 비공개 피드",
|
||||
"Premieres `x`": "최초 공개 `x`",
|
||||
"Premieres in `x`": "`x` 에 최초 공개",
|
||||
"Premieres in `x`": "`x` 후 최초 공개",
|
||||
"next_steps_error_message": "다음 방법을 시도해 보세요: ",
|
||||
"creative_commons": "크리에이티브 커먼즈",
|
||||
"duration": "길이",
|
||||
"content_type": "구분",
|
||||
"date": "업로드 날짜",
|
||||
"rating": "평점",
|
||||
"relevance": "관련성",
|
||||
"Community": "커뮤니티",
|
||||
"Videos": "동영상",
|
||||
"search_filters_features_option_c_commons": "크리에이티브 커먼즈",
|
||||
"search_filters_duration_label": "길이",
|
||||
"search_filters_type_label": "구분",
|
||||
"search_filters_sort_option_date": "업로드 날짜",
|
||||
"search_filters_sort_option_rating": "평점",
|
||||
"search_filters_sort_option_relevance": "관련성",
|
||||
"channel_tab_community_label": "커뮤니티",
|
||||
"channel_tab_videos_label": "동영상",
|
||||
"Video mode": "비디오 모드",
|
||||
"Audio mode": "오디오 모드",
|
||||
"permalink": "퍼머링크",
|
||||
"YouTube comment permalink": "YouTube 댓글 퍼머링크",
|
||||
"YouTube comment permalink": "유튜브 댓글 퍼머링크",
|
||||
"(edited)": "(수정됨)",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"Movies": "영화",
|
||||
"News": "뉴스",
|
||||
"Gaming": "게임",
|
||||
"Music": "음악",
|
||||
"Default": "디폴트",
|
||||
"Default": "전체",
|
||||
"Rating: ": "평점: ",
|
||||
"About": "정보",
|
||||
"Top": "최고",
|
||||
"hd": "HD",
|
||||
"show": "쇼",
|
||||
"movie": "영화",
|
||||
"video": "동영상",
|
||||
"year": "올해",
|
||||
"month": "이번 달",
|
||||
"week": "이번 주",
|
||||
"today": "오늘",
|
||||
"hour": "지난 1시간",
|
||||
"sort": "정렬기준",
|
||||
"features": "기능별",
|
||||
"short": "4분 미만",
|
||||
"long": "20분 초과",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_type_option_show": "쇼",
|
||||
"search_filters_type_option_movie": "영화",
|
||||
"search_filters_type_option_video": "동영상",
|
||||
"search_filters_date_option_year": "올해",
|
||||
"search_filters_date_option_month": "이번 달",
|
||||
"search_filters_date_option_week": "이번 주",
|
||||
"search_filters_date_option_today": "오늘",
|
||||
"search_filters_date_option_hour": "지난 1시간",
|
||||
"search_filters_sort_label": "정렬기준",
|
||||
"search_filters_features_label": "기능별",
|
||||
"search_filters_duration_option_short": "짧음 (4분 미만)",
|
||||
"search_filters_duration_option_long": "김 (20분 초과)",
|
||||
"footer_documentation": "문서",
|
||||
"footer_source_code": "소스 코드",
|
||||
"footer_original_source_code": "원본 소스 코드",
|
||||
"footer_modfied_source_code": "수정된 소스 코드",
|
||||
"adminprefs_modified_source_code_url_label": "수정된 소스 코드 저장소의 URL"
|
||||
"adminprefs_modified_source_code_url_label": "수정된 소스 코드 저장소의 URL",
|
||||
"search_filters_title": "필터",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"Popular enabled: ": "인기 활성화: ",
|
||||
"Dutch (auto-generated)": "네덜란드어 (자동 생성됨)",
|
||||
"Chinese (Hong Kong)": "중국어 (홍콩)",
|
||||
"Chinese (Taiwan)": "중국어 (대만)",
|
||||
"German (auto-generated)": "독일어 (자동 생성됨)",
|
||||
"Interlingue": "Interlingue",
|
||||
"search_filters_date_label": "업로드 날짜",
|
||||
"search_filters_date_option_none": "모든 날짜",
|
||||
"search_filters_duration_option_none": "모든 기간",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_purchased": "구입한 항목",
|
||||
"search_filters_apply_button": "선택한 필터 적용하기",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_region_label": "국가: ",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"French (auto-generated)": "프랑스어 (자동 생성됨)",
|
||||
"Indonesian (auto-generated)": "인도네시아어 (자동 생성됨)",
|
||||
"Turkish (auto-generated)": "터키어 (자동 생성됨)",
|
||||
"Vietnamese (auto-generated)": "베트남어 (자동 생성됨)",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"Italian (auto-generated)": "이탈리아어 (자동 생성됨)",
|
||||
"preferences_quality_option_medium": "보통",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"search_filters_duration_option_medium": "중간 (4 - 20분)",
|
||||
"preferences_quality_dash_option_best": "최고",
|
||||
"Portuguese (auto-generated)": "포르투갈어 (자동 생성됨)",
|
||||
"Spanish (Spain)": "스페인어 (스페인)",
|
||||
"preferences_quality_dash_label": "선호하는 DASH 비디오 품질: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"Spanish (auto-generated)": "스페인어 (자동 생성됨)",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_worst": "최저",
|
||||
"preferences_watch_history_label": "시청 기록 저장: ",
|
||||
"invidious": "인비디어스",
|
||||
"preferences_quality_option_small": "낮음",
|
||||
"preferences_quality_dash_option_auto": "자동",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"English (United Kingdom)": "영어 (영국)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"Cantonese (Hong Kong)": "광동어 (홍콩)",
|
||||
"Portuguese (Brazil)": "포르투갈어 (브라질)",
|
||||
"search_message_no_results": "결과가 없습니다.",
|
||||
"search_message_change_filters_or_query": "필터를 변경하시거나 검색어를 넓게 시도해보세요.",
|
||||
"search_message_use_another_instance": " <a href=\"`x`\">다른 인스턴스에서 검색</a>할 수도 있습니다.",
|
||||
"English (United States)": "영어 (미국)",
|
||||
"Chinese": "중국어",
|
||||
"Chinese (China)": "중국어 (중국)",
|
||||
"Japanese (auto-generated)": "일본어 (자동 생성됨)",
|
||||
"Korean (auto-generated)": "한국어 (자동 생성됨)",
|
||||
"Russian (auto-generated)": "러시아어 (자동 생성됨)",
|
||||
"Spanish (Mexico)": "스페인어 (멕시코)",
|
||||
"search_filters_type_option_all": "모든 유형",
|
||||
"footer_donate_page": "기부하기",
|
||||
"preferences_quality_option_dash": "DASH (다양한 화질)",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_save_player_pos_label": "이어서 보기: ",
|
||||
"none": "없음",
|
||||
"videoinfo_started_streaming_x_ago": "`x` 전에 스트리밍을 시작했습니다",
|
||||
"crash_page_you_found_a_bug": "인비디어스에서 버그를 찾은 것 같습니다!",
|
||||
"download_subtitles": "자막 - `x`(.vtt)",
|
||||
"user_saved_playlists": "`x`개의 저장된 재생목록",
|
||||
"crash_page_before_reporting": "버그를 보고하기 전에 다음 사항이 있는지 확인합니다:",
|
||||
"crash_page_search_issue": "<a href=\"`x`\">깃허브에서 기존 이슈</a>를 검색했습니다",
|
||||
"Video unavailable": "비디오를 사용할 수 없음",
|
||||
"crash_page_refresh": "<a href=\"`x`\">페이지를 새로고침</a>하려고 했습니다",
|
||||
"videoinfo_watch_on_youTube": "유튜브에서 보기",
|
||||
"crash_page_switch_instance": "<a href=\"`x`\">다른 인스턴스를 사용</a>하려고 했습니다",
|
||||
"crash_page_read_the_faq": "<a href=\"`x`\">자주 묻는 질문(FAQ)</a> 읽기",
|
||||
"user_created_playlists": "`x`개의 생성된 재생목록",
|
||||
"crash_page_report_issue": "위의 방법 중 어느 것도 도움이 되지 않았다면, <a href=\"`x`\">깃허브에서 새 이슈를 열고</a>(가능하면 영어로) 메시지에 다음 텍스트를 포함하세요(해당 텍스트를 번역하지 마십시오):",
|
||||
"videoinfo_youTube_embed_link": "임베드",
|
||||
"videoinfo_invidious_embed_link": "임베드 링크",
|
||||
"error_video_not_in_playlist": "요청한 동영상이 이 재생목록에 없습니다. <a href=\"`x`\">재생목록 목록을 보려면 여기를 클릭하십시오.</a>",
|
||||
"channel_tab_shorts_label": "쇼츠",
|
||||
"channel_tab_streams_label": "실시간 스트리밍",
|
||||
"channel_tab_channels_label": "채널",
|
||||
"channel_tab_playlists_label": "재생목록",
|
||||
"Standard YouTube license": "표준 유튜브 라이선스",
|
||||
"Song: ": "제목: ",
|
||||
"Channel Sponsor": "채널 스폰서",
|
||||
"Album: ": "앨범: ",
|
||||
"Music in this video": "동영상 속 음악",
|
||||
"Artist: ": "아티스트: ",
|
||||
"Download is disabled": "다운로드가 비활성화 되어있음",
|
||||
"Import YouTube playlist (.csv)": "유튜브 재생목록 가져오기 (.csv)",
|
||||
"playlist_button_add_items": "동영상 추가",
|
||||
"channel_tab_podcasts_label": "팟캐스트",
|
||||
"generic_button_delete": "삭제",
|
||||
"generic_button_edit": "편집",
|
||||
"generic_button_save": "저장",
|
||||
"generic_button_cancel": "취소",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_releases_label": "발매",
|
||||
"generic_channels_count_0": "{{count}} 채널",
|
||||
"Import YouTube watch history (.json)": "유튜브 시청 기록 가져오기 (.json)",
|
||||
"Add to playlist": "재생목록에 추가",
|
||||
"Add to playlist: ": "재생목록에 추가: ",
|
||||
"Answer": "답",
|
||||
"The Popular feed has been disabled by the administrator.": "관리자가 인기 피드를 비활성화했습니다.",
|
||||
"carousel_skip": "캐러셀 건너뛰기",
|
||||
"carousel_go_to": "`x` 슬라이드로 이동",
|
||||
"Search for videos": "비디오 검색",
|
||||
"toggle_theme": "테마 전환",
|
||||
"carousel_slide": "{{total}}의 슬라이드 {{current}}",
|
||||
"preferences_preload_label": "비디오 데이터 사전 로드: "
|
||||
}
|
||||
|
232
locales/lmo.json
Normal file
232
locales/lmo.json
Normal file
@ -0,0 +1,232 @@
|
||||
{
|
||||
"Add to playlist": "Giont a la playlist",
|
||||
"generic_button_edit": "Modifega",
|
||||
"generic_button_save": "Salva",
|
||||
"LIVE": "EN DÌRETT",
|
||||
"Shared `x` ago": "Compartiss `x` fa",
|
||||
"View channel on YouTube": "Varda el canal sul YouTube",
|
||||
"newest": "plù nöeuf",
|
||||
"oldest": "plù végh",
|
||||
"Search for videos": "Càuta dei video",
|
||||
"The Popular feed has been disabled by the administrator.": "la seziùn Pupular la è stada disabilidada par l'amministratòr.",
|
||||
"generic_channels_count": "{{count}} canal",
|
||||
"generic_channels_count_plural": "{{count}} canai",
|
||||
"popular": "pupular",
|
||||
"generic_views_count": "{{count}} visualisazión",
|
||||
"generic_views_count_plural": "{{count}} visualisazióni",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} video",
|
||||
"generic_playlists_count": "{{count}} playlist",
|
||||
"generic_playlists_count_plural": "{{count}} playlist",
|
||||
"generic_subscriptions_count": "{{count}} inscrizion",
|
||||
"generic_subscriptions_count_plural": "{{count}} inscrizioni",
|
||||
"generic_button_cancel": "Cançéla",
|
||||
"generic_button_delete": "Scassa via",
|
||||
"Unsubscribe": "Disinscriviti",
|
||||
"Next page": "Pagina siguènt",
|
||||
"Previous page": "Pagina indrèe",
|
||||
"Clear watch history?": "Cançélar la istoria dei video vardàa?",
|
||||
"New password": "Nöeva password",
|
||||
"Import and Export Data": "Importazion ed esportazion dei dat",
|
||||
"Import": "Importa",
|
||||
"Import Invidious data": "Importa i dat de l'Invidious en el formàt JSON",
|
||||
"Import YouTube subscriptions": "Importa le inscrizioni dal YouTube/OPML",
|
||||
"Import YouTube playlist (.csv)": "Importa le playlist dal YouTube (.csv)",
|
||||
"Import YouTube watch history (.json)": "Importa la istoria de visualizazzion dal YouTube (.json)",
|
||||
"Import FreeTube subscriptions (.db)": "Importa le inscrizioni dal FreeTube (.db)",
|
||||
"Import NewPipe data (.zip)": "importa i dat del NewPipe (.zip)",
|
||||
"Export": "Esporta",
|
||||
"Export subscriptions as OPML": "Esporta inscrizioni com OPML",
|
||||
"Export data as JSON": "Esporta i dat de l'Invidious com JSON",
|
||||
"Delete account?": "Eliminà 'l profil?",
|
||||
"History": "Istoria",
|
||||
"An alternative front-end to YouTube": "Una interfacia alternatif al YouTube",
|
||||
"JavaScript license information": "Informaziòn su la licensa JavaScript",
|
||||
"source": "font",
|
||||
"Log in": "Và dent",
|
||||
"Text CAPTCHA": "Tèst del CAPTCHA",
|
||||
"Image CAPTCHA": "Imàgen del CAPTCHA",
|
||||
"Sign In": "Ven denter",
|
||||
"Register": "Registres",
|
||||
"E-mail": "E-mail",
|
||||
"Preferences": "Priferenze",
|
||||
"preferences_category_player": "Priferenze del riprodutòr",
|
||||
"preferences_quality_option_dash": "DASH (qualità adatif)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Media",
|
||||
"preferences_quality_option_small": "Picinina",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_best": "Meglior",
|
||||
"preferences_quality_dash_option_worst": "Peggior",
|
||||
"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",
|
||||
"reddit": "Reddit",
|
||||
"invidious": "Invidious",
|
||||
"light": "ciar",
|
||||
"dark": "scur",
|
||||
"preferences_category_misc": "Priferenze varie",
|
||||
"preferences_category_subscription": "Priferenze de le inscrizioni",
|
||||
"published": "data de publicazion",
|
||||
"published - reverse": "data de publicazion - invertì",
|
||||
"alphabetically": "orden alfabetegh",
|
||||
"channel name": "nòm del canal",
|
||||
"channel name - reverse": "nòm del canal - invertì",
|
||||
"Enable web notifications": "Empisa le notifeghe da la red",
|
||||
"`x` uploaded a video": "`x` la ghàa cargà un video",
|
||||
"`x` is live": "`x` l'è 'n dirétt adés",
|
||||
"preferences_category_data": "Priferenze dei dat",
|
||||
"Import/export data": "Importa/esporta i dat",
|
||||
"Change password": "Cambia la parola ciav",
|
||||
"Manage subscriptions": "Organisa le inscrizioni",
|
||||
"Manage tokens": "Organisa i tokens",
|
||||
"Watch history": "Istoria dei video vardà",
|
||||
"Delete account": "Cançéla 'l profil",
|
||||
"Save preferences": "Salva priferenze",
|
||||
"Subscription manager": "Manegia le inscrizioni",
|
||||
"Token": "Token",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} token",
|
||||
"Import/export": "Importa/esporta",
|
||||
"unsubscribe": "disinscriviti",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notifega mia visualisada",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notifeghe mia visualisade",
|
||||
"Log out": "Sortiss",
|
||||
"Released under the AGPLv3 on Github.": "Publicà en el GitHub suta licenza AGPLv3.",
|
||||
"Source available here.": "Codegh de la font disponivel chì.",
|
||||
"View privacy policy.": "Varda la pulitega de la privacy.",
|
||||
"Trending": "De moda",
|
||||
"Public": "Publico",
|
||||
"Unlisted": "Non en lista",
|
||||
"Private": "Privàt",
|
||||
"View all playlists": "Varda tute le playlist",
|
||||
"Updated `x` ago": "Giurnà `x` fa",
|
||||
"Delete playlist `x`?": "Cançéla la playlist `x`?",
|
||||
"Delete playlist": "Cançéla playlist",
|
||||
"Create playlist": "Crea playlist",
|
||||
"Title": "Titel",
|
||||
"Playlist privacy": "Privacy de la playlist",
|
||||
"Editing playlist `x`": "Modifega playlist `x`",
|
||||
"playlist_button_add_items": "Gionta video",
|
||||
"Show more": "Varda plù",
|
||||
"Show less": "Varda mèn",
|
||||
"Watch on YouTube": "Varda sul YouTube",
|
||||
"Switch Invidious Instance": "Cambia la instanza del Invidious",
|
||||
"search_message_no_results": "Non è stat truvà nigun resultat.",
|
||||
"Cebuano": "Cebuano",
|
||||
"Chinese (Traditional)": "Cines (Tradizional)",
|
||||
"Corsican": "Còrso",
|
||||
"Croatian": "Cruat",
|
||||
"Georgian": "Georgian",
|
||||
"Gujarati": "Gujarati",
|
||||
"Hawaiian": "Hawaiian",
|
||||
"Kurdish": "Curd",
|
||||
"Latin": "Latin",
|
||||
"Latvian": "Letton",
|
||||
"Lithuanian": "Lituan",
|
||||
"Malay": "Males",
|
||||
"Maltese": "Maltes",
|
||||
"Mongolian": "móngol",
|
||||
"Persian": "Persian",
|
||||
"Polish": "Polacch",
|
||||
"Portuguese": "Portoghes",
|
||||
"Romanian": "Romen",
|
||||
"Scottish Gaelic": "Gaelich Scusses",
|
||||
"Spanish (Latin America)": "Spagnöl (America do Sùd)",
|
||||
"Thai": "Thai",
|
||||
"Western Frisian": "Frisian do ponente",
|
||||
"Basque": "Basco",
|
||||
"Chinese (Simplified)": "Cines (Semplificà)",
|
||||
"Haitian Creole": "Creolo de Haiti",
|
||||
"Galician": "Galiçian",
|
||||
"Hebrew": "Ebraich",
|
||||
"Korean": "Corean",
|
||||
"View playlist on YouTube": "Varda la playlist sul YouTube",
|
||||
"Southern Sotho": "Sotho do Sùd",
|
||||
"generic_button_rss": "RSS",
|
||||
"Welsh": "Galés",
|
||||
"Answer": "Resposta",
|
||||
"New passwords must match": "Le nöeve password la deven esere uguai",
|
||||
"Authorize token?": "Autorisà 'l token?",
|
||||
"Authorize token for `x`?": "Autorisà 'l token par `x`?",
|
||||
"Yes": "Sì",
|
||||
"No": "No",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Esporta inscrizioni com OPML (par 'l NewPipe e 'l FreeTube)",
|
||||
"Log in/register": "Va dent/Registres",
|
||||
"User ID": "ID utent",
|
||||
"Password": "Parola ciav",
|
||||
"Time (h:mm:ss):": "Temp (h:mm:ss):",
|
||||
"Import NewPipe subscriptions (.json)": "importa le inscrizioni dal NewPipe (.json)",
|
||||
"youtube": "YouTube",
|
||||
"alphabetically - reverse": "orden alfabetegh - invertì",
|
||||
"preferences_category_visual": "Priferenze grafeghe",
|
||||
"Clear watch history": "Scompartiss la istoria dei video vardà",
|
||||
"preferences_category_admin": "Priferenze de l'amministratòr",
|
||||
"Token manager": "Manegia i token",
|
||||
"Subscriptions": "Inscrizioni",
|
||||
"search": "cerca",
|
||||
"View JavaScript license information.": "Varda le informazion su la licenza JavaScript.",
|
||||
"search_message_change_filters_or_query": "Ti pödi pruà a slargà la reçerca e/or a cangià i filter.",
|
||||
"generic_subscribers_count": "{{count}} inscritt",
|
||||
"generic_subscribers_count_plural": "{{count}} inscriti",
|
||||
"Subscribe": "Inscriviti",
|
||||
"last": "ùltim",
|
||||
"Add to playlist: ": "Giont a la playlist: ",
|
||||
"preferences_autoplay_label": "Reproduzion automatega: ",
|
||||
"preferences_continue_label": "Reproduzion seguént preimpostà: ",
|
||||
"preferences_continue_autoplay_label": "Fa partì en automatico el video seguént: ",
|
||||
"preferences_listen_label": "Modalità de sól audio preimpostà: ",
|
||||
"preferences_local_label": "Proxy par i video: ",
|
||||
"preferences_watch_history_label": "Ativà la istoria de reproduzion: ",
|
||||
"preferences_speed_label": "Velocità preimpostà: ",
|
||||
"preferences_volume_label": "Volume del reprodutòr: ",
|
||||
"preferences_region_label": "Nazion del contenut: ",
|
||||
"Dark mode: ": "Tema scur ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"preferences_thin_mode_label": "Modalità legera: ",
|
||||
"preferences_automatic_instance_redirect_label": "Reindirizazzion automatega de la instansa (rivèrt a redirect.invidious.io): ",
|
||||
"Hide annotations": "Piaca le notazioni",
|
||||
"Show annotations": "Mostra le notazioni",
|
||||
"Family friendly? ": "Adàt a tüti? ",
|
||||
"Whitelisted regions: ": "Regioni en lista bianca: ",
|
||||
"Blacklisted regions: ": "Regioni en lista negher ",
|
||||
"Artist: ": "Artista: ",
|
||||
"Song: ": "Cansòn ",
|
||||
"Album: ": "Album: ",
|
||||
"View YouTube comments": "Varda i comment dal YouTube",
|
||||
"Password cannot be empty": "La parola ciav la no po miga esser voeut",
|
||||
"channel:`x`": "Canal:`x`",
|
||||
"Bangla": "Bengales",
|
||||
"Hausa": "Hausa",
|
||||
"Hindi": "Hindi",
|
||||
"Hmong": "Hmong",
|
||||
"Igbo": "Igbo",
|
||||
"Javanese": "Javanese",
|
||||
"Kannada": "Kannada",
|
||||
"Kazakh": "Kazach",
|
||||
"Khmer": "Khmer",
|
||||
"Kyrgyz": "Kirghiz",
|
||||
"Lao": "Lao",
|
||||
"Luxembourgish": "Lussemburghes",
|
||||
"Macedonian": "Macedon",
|
||||
"Malagasy": "Malagascio",
|
||||
"Malayalam": "Malayalam",
|
||||
"Maori": "Maori",
|
||||
"Marathi": "Marati",
|
||||
"Nepali": "Nepales",
|
||||
"Nyanja": "Nyanja",
|
||||
"Pashto": "Pashtu",
|
||||
"Punjabi": "Punjabi",
|
||||
"Samoan": "Samoan",
|
||||
"Standard YouTube license": "licensa predefinida de Youtube",
|
||||
"License: ": "Licensa: ",
|
||||
"Music in this video": "Musica en sto video",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Ué! Sembra che ti la g'hà desabilitàa el JavaScript. Schisa chì para vardà i comment, ma cunsidera che peul vörse 'n po plu de temp a cargà.",
|
||||
"preferences_video_loop_label": "Reproduci sèmper: "
|
||||
}
|
206
locales/lt.json
206
locales/lt.json
@ -14,22 +14,21 @@
|
||||
"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 Invidious data": "Importuoti Invidious JSON duomenis",
|
||||
"Import YouTube subscriptions": "Importuoti YouTube/OPML 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",
|
||||
"Export data as JSON": "Eksportuoti Invidious duomenis kaip JSON",
|
||||
"Delete account?": "Ištrinti paskyrą?",
|
||||
"History": "Istorija",
|
||||
"An alternative front-end to YouTube": "Alternatyvus YouTube žiūrėjimo būdas",
|
||||
@ -37,7 +36,6 @@
|
||||
"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):",
|
||||
@ -46,7 +44,6 @@
|
||||
"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: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"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_vr_mode_label": "Interaktyvūs 360 laipsnių vaizdo įrašai (reikalingas WebGL): ",
|
||||
"preferences_category_visual": "Vizualinės nuostatos",
|
||||
"preferences_player_style_label": "Vaizdo grotuvo stilius: ",
|
||||
"Dark mode: ": "Tamsus rėžimas: ",
|
||||
@ -121,7 +118,7 @@
|
||||
"Subscriptions": "Prenumeratos",
|
||||
"search": "ieškoti",
|
||||
"Log out": "Atsijungti",
|
||||
"Released under the AGPLv3 on Github.": "Išleista pagal AGPLv3 licenciją Github.",
|
||||
"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ą.",
|
||||
@ -141,7 +138,6 @@
|
||||
"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: ",
|
||||
@ -154,7 +150,7 @@
|
||||
"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.",
|
||||
"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! Panašu, kad turite išjungę „JavaScript“. Spustelėkite čia norėdami peržiūrėti komentarus, atminkite, kad jų įkėlimas gali užtrukti šiek tiek ilgiau.",
|
||||
"View YouTube comments": "Žiūrėti YouTube komentarus",
|
||||
"View more comments on Reddit": "Žiūrėti daugiau komentarų Reddit",
|
||||
"View `x` comments": {
|
||||
@ -165,17 +161,12 @@
|
||||
"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",
|
||||
@ -326,42 +317,41 @@
|
||||
"`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",
|
||||
"channel_tab_videos_label": "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",
|
||||
"channel_tab_community_label": "Bendruomenė",
|
||||
"search_filters_sort_option_relevance": "Aktualumas",
|
||||
"search_filters_sort_option_rating": "Reitingas",
|
||||
"search_filters_sort_option_date": "Įkėlimo data",
|
||||
"search_filters_sort_option_views": "Peržiūrų skaičius",
|
||||
"search_filters_type_label": "Tipas",
|
||||
"search_filters_duration_label": "Trukmė",
|
||||
"search_filters_features_label": "Funkcijos",
|
||||
"search_filters_sort_label": "Rūšiuoti pagal",
|
||||
"search_filters_date_option_hour": "Per paskutinę valandą",
|
||||
"search_filters_date_option_today": "Šiandien",
|
||||
"search_filters_date_option_week": "Šią savaitę",
|
||||
"search_filters_date_option_month": "Šį mėnesį",
|
||||
"search_filters_date_option_year": "Šiais metais",
|
||||
"search_filters_type_option_video": "Vaizdo įrašas",
|
||||
"search_filters_type_option_channel": "Kanalas",
|
||||
"search_filters_type_option_playlist": "Grojaraštis",
|
||||
"search_filters_type_option_movie": "Filmas",
|
||||
"search_filters_type_option_show": "Serialas",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Subtitrai/CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Tiesiogiai",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Vietovė",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"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ų)",
|
||||
"search_filters_duration_option_short": "Trumpas (< 4 minučių)",
|
||||
"search_filters_duration_option_long": "Ilgas (> 20 minučių)",
|
||||
"footer_documentation": "Dokumentacija",
|
||||
"footer_source_code": "Pirminis kodas",
|
||||
"footer_original_source_code": "Pradinis pirminis kodas",
|
||||
@ -369,5 +359,127 @@
|
||||
"footer_modfied_source_code": "Pakeistas pirminis kodas",
|
||||
"footer_donate_page": "Paaukoti",
|
||||
"preferences_region_label": "Turinio šalis: ",
|
||||
"preferences_quality_dash_label": "Pageidaujama DASH vaizdo kokybė: "
|
||||
"preferences_quality_dash_label": "Pageidaujama DASH vaizdo kokybė: ",
|
||||
"preferences_quality_dash_option_best": "Geriausia",
|
||||
"preferences_quality_dash_option_worst": "Blogiausia",
|
||||
"preferences_quality_dash_option_auto": "Automatinis",
|
||||
"search_filters_title": "Filtras",
|
||||
"generic_videos_count_0": "{{count}} vaizdo įrašas",
|
||||
"generic_videos_count_1": "{{count}} vaizdo įrašai",
|
||||
"generic_videos_count_2": "{{count}} vaizdo įrašų",
|
||||
"generic_subscribers_count_0": "{{count}} prenumeratorius",
|
||||
"generic_subscribers_count_1": "{{count}} prenumeratoriai",
|
||||
"generic_subscribers_count_2": "{{count}} prenumeratorių",
|
||||
"generic_subscriptions_count_0": "{{count}} prenumerata",
|
||||
"generic_subscriptions_count_1": "{{count}} prenumeratos",
|
||||
"generic_subscriptions_count_2": "{{count}} prenumeratų",
|
||||
"preferences_watch_history_label": "Įgalinti žiūrėjimo istoriją: ",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"generic_playlists_count_0": "{{count}} grojaraštis",
|
||||
"generic_playlists_count_1": "{{count}} grojaraščiai",
|
||||
"generic_playlists_count_2": "{{count}} grojaraščių",
|
||||
"preferences_quality_option_medium": "Vidutinė",
|
||||
"preferences_quality_option_small": "Maža",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_option_dash": "DASH (prisitaikanti kokybė)",
|
||||
"generic_views_count_0": "{{count}} peržiūra",
|
||||
"generic_views_count_1": "{{count}} peržiūros",
|
||||
"generic_views_count_2": "{{count}} peržiūrų",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"none": "nėra",
|
||||
"search_filters_type_option_all": "Bet koks tipas",
|
||||
"videoinfo_started_streaming_x_ago": "Pradėjo transliuoti prieš `x`",
|
||||
"crash_page_switch_instance": "pabandėte <a href=\"`x`\">naudoti kitą perdavimo šaltinį</a>",
|
||||
"search_filters_duration_option_none": "Bet kokia trukmė",
|
||||
"search_filters_duration_option_medium": "Vidutinio ilgumo (4 - 20 minučių)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"crash_page_before_reporting": "Prieš pranešdami apie klaidą įsitikinkite, kad:",
|
||||
"crash_page_read_the_faq": "perskaitėte <a href=\"`x`\">Dažniausiai užduodamus klausimus (DUK)</a>",
|
||||
"crash_page_search_issue": "ieškojote <a href=\"`x`\"> esamų problemų GitHub</a>",
|
||||
"error_video_not_in_playlist": "Prašomo vaizdo įrašo šiame grojaraštyje nėra. <a href=\"`x`\">Spustelėkite čia, kad pamatytumėte grojaraščio pagrindinį puslapį.</a>",
|
||||
"crash_page_report_issue": "Jei nė vienas iš pirmiau pateiktų būdų nepadėjo, prašome <a href=\"`x`\">atidaryti naują problemą GitHub</a> (pageidautina anglų kalba) ir į savo pranešimą įtraukti šį tekstą (NEVERSKITE šio teksto):",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} nematytas pranešimas",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} nematyti pranešimai",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} nematytų pranešimų",
|
||||
"Vietnamese (auto-generated)": "Vietnamiečių kalba (automatiškai sugeneruota)",
|
||||
"Dutch (auto-generated)": "Olandų kalba (automatiškai sugeneruota)",
|
||||
"generic_count_weeks_0": "{{count}} savaitę",
|
||||
"generic_count_weeks_1": "{{count}} savaitės",
|
||||
"generic_count_weeks_2": "{{count}} savaičių",
|
||||
"Interlingue": "Interlingue",
|
||||
"Italian (auto-generated)": "Italų kalba (automatiškai sugeneruota)",
|
||||
"Japanese (auto-generated)": "Japonų kalba (automatiškai sugeneruota)",
|
||||
"Korean (auto-generated)": "Korėjiečių kalba (automatiškai sugeneruota)",
|
||||
"generic_count_months_0": "{{count}} mėnesį",
|
||||
"generic_count_months_1": "{{count}} mėnesius",
|
||||
"generic_count_months_2": "{{count}} mėnesių",
|
||||
"generic_count_days_0": "{{count}} dieną",
|
||||
"generic_count_days_1": "{{count}} dienas",
|
||||
"generic_count_days_2": "{{count}} dienų",
|
||||
"generic_count_hours_0": "{{count}} valandą",
|
||||
"generic_count_hours_1": "{{count}} valandas",
|
||||
"generic_count_hours_2": "{{count}} valandų",
|
||||
"generic_count_seconds_0": "{{count}} sekundę",
|
||||
"generic_count_seconds_1": "{{count}} sekundes",
|
||||
"generic_count_seconds_2": "{{count}} sekundžių",
|
||||
"generic_count_minutes_0": "{{count}} minutę",
|
||||
"generic_count_minutes_1": "{{count}} minutes",
|
||||
"generic_count_minutes_2": "{{count}} minučių",
|
||||
"generic_count_years_0": "{{count}} metus",
|
||||
"generic_count_years_1": "{{count}} metus",
|
||||
"generic_count_years_2": "{{count}} metų",
|
||||
"Popular enabled: ": "Populiarūs įgalinti: ",
|
||||
"Portuguese (auto-generated)": "Portugalų kalba (automatiškai sugeneruota)",
|
||||
"videoinfo_watch_on_youTube": "Žiaurėti Youtube",
|
||||
"Chinese (China)": "Kinų kalba (Kinija)",
|
||||
"crash_page_you_found_a_bug": "Atrodo, kad radote \"Invidious\" klaidą!",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"English (United Kingdom)": "Anglų kalba (Jungtinė Karalystė)",
|
||||
"Chinese (Hong Kong)": "Kinų kalba (Honkongas)",
|
||||
"search_message_change_filters_or_query": "Pabandykite išplėsti paieškos užklausą ir (arba) pakeisti filtrus.",
|
||||
"English (United States)": "Anglų kalba (Jungtinės Amerikos Valstijos)",
|
||||
"Chinese (Taiwan)": "Kinų kalba (Taivanas)",
|
||||
"search_message_use_another_instance": " Taip pat galite <a href=\"`x`\">ieškoti kitame perdavimo šaltinyje</a>.",
|
||||
"tokens_count_0": "{{count}} žetonas",
|
||||
"tokens_count_1": "{{count}} žetonai",
|
||||
"tokens_count_2": "{{count}} žetonų",
|
||||
"search_message_no_results": "Rezultatų nerasta.",
|
||||
"comments_view_x_replies_0": "Žiūrėti {{count}} atsakymą",
|
||||
"comments_view_x_replies_1": "Žiūrėti {{count}} atsakymus",
|
||||
"comments_view_x_replies_2": "Žiūrėti {{count}} atsakymų",
|
||||
"comments_points_count_0": "{{count}} taškas",
|
||||
"comments_points_count_1": "{{count}} taškai",
|
||||
"comments_points_count_2": "{{count}} taškų",
|
||||
"Cantonese (Hong Kong)": "Kantono kalba (Honkongas)",
|
||||
"Chinese": "Kinų",
|
||||
"French (auto-generated)": "Prancūzų kalba (automatiškai sugeneruota)",
|
||||
"German (auto-generated)": "Vokiečių kalba (automatiškai sugeneruota)",
|
||||
"Indonesian (auto-generated)": "Indoneziečių kalba (automatiškai sugeneruota)",
|
||||
"Portuguese (Brazil)": "Portugalų kalba (Brazilija)",
|
||||
"Russian (auto-generated)": "Rusų kalba (automatiškai sugeneruota)",
|
||||
"Spanish (Mexico)": "Ispanų kalba (Meksika)",
|
||||
"Spanish (auto-generated)": "Ispanų kalba (automatiškai sugeneruota)",
|
||||
"Spanish (Spain)": "Ispanų kalba (Ispanija)",
|
||||
"Turkish (auto-generated)": "Turkų kalba (automatiškai sugeneruota)",
|
||||
"search_filters_date_label": "Įkėlimo data",
|
||||
"search_filters_date_option_none": "Bet kokia data",
|
||||
"search_filters_features_option_purchased": "Įsigyta",
|
||||
"search_filters_apply_button": "Taikyti pasirinktus filtrus",
|
||||
"download_subtitles": "Subtitrai - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` sukurti grojaraščiai",
|
||||
"user_saved_playlists": "`x` išsaugoti grojaraščiai",
|
||||
"Video unavailable": "Vaizdo įrašas nepasiekiamas",
|
||||
"preferences_save_player_pos_label": "Išsaugoti atkūrimo padėtį: ",
|
||||
"videoinfo_youTube_embed_link": "Įterpti",
|
||||
"videoinfo_invidious_embed_link": "Įterpti nuorodą",
|
||||
"crash_page_refresh": "pabandėte <a href=\"`x`\">atnaujinti puslapį</a>",
|
||||
"Album: ": "Albumas "
|
||||
}
|
||||
|
@ -14,7 +14,6 @@
|
||||
"Clear watch history?": "Tøm visningshistorikk?",
|
||||
"New password": "Nytt passord",
|
||||
"New passwords must match": "Nye passordfelter må stemme overens",
|
||||
"Cannot change password for Google accounts": "Kan ikke endre passord for Google-kontoer",
|
||||
"Authorize token?": "Identitetsbekreft symbol?",
|
||||
"Authorize token for `x`?": "Identitetsbekreft symbol for `x`?",
|
||||
"Yes": "Ja",
|
||||
@ -22,14 +21,14 @@
|
||||
"Import and Export Data": "Importer- og eksporter data",
|
||||
"Import": "Importer",
|
||||
"Import Invidious data": "Importer Invidious-JSON-data",
|
||||
"Import YouTube subscriptions": "Importer YouTube/OPML-abonnementer",
|
||||
"Import YouTube subscriptions": "Importer YouTube CSV eller 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)",
|
||||
"Export": "Eksporter",
|
||||
"Export subscriptions as OPML": "Eksporter abonnementer som OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Eksporter abonnementer som OPML (for NewPipe og FreeTube)",
|
||||
"Export data as JSON": "Eksporter data som JSON",
|
||||
"Export data as JSON": "Eksporter Invidiousdata som JSON",
|
||||
"Delete account?": "Slett konto?",
|
||||
"History": "Historikk",
|
||||
"An alternative front-end to YouTube": "En alternativ grenseflate for YouTube",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "kilde",
|
||||
"Log in": "Logg inn",
|
||||
"Log in/register": "Logg inn/registrer",
|
||||
"Log in with Google": "Logg inn med Google",
|
||||
"User ID": "Bruker-ID",
|
||||
"Password": "Passord",
|
||||
"Time (h:mm:ss):": "Tid (h:mm:ss):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "Innlogging",
|
||||
"Register": "Registrer",
|
||||
"E-mail": "E-post",
|
||||
"Google verification code": "Google-bekreftelseskode",
|
||||
"Preferences": "Innstillinger",
|
||||
"preferences_category_player": "Avspillerinnstillinger",
|
||||
"preferences_video_loop_label": "Alltid gjenta: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"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_vr_mode_label": "Interaktive 360-gradersfilmer (krever WebGL): ",
|
||||
"preferences_category_visual": "Visuelle innstillinger",
|
||||
"preferences_player_style_label": "Avspillerstil: ",
|
||||
"Dark mode: ": "Mørk drakt: ",
|
||||
@ -121,7 +118,7 @@
|
||||
"Subscriptions": "Abonnement",
|
||||
"search": "søk",
|
||||
"Log out": "Logg ut",
|
||||
"Released under the AGPLv3 on Github.": "Tilgjengelig med AGPLv3-lisens på Github.",
|
||||
"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.",
|
||||
@ -141,7 +138,6 @@
|
||||
"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: ",
|
||||
@ -158,24 +154,19 @@
|
||||
"View YouTube comments": "Vis YouTube-kommentarer",
|
||||
"View more comments on Reddit": "Vis flere kommenterer på Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vis `x` kommentarer",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Vis `x` kommentar",
|
||||
"": "Vis `x` kommentarer"
|
||||
},
|
||||
"View Reddit comments": "Vis Reddit-kommentarer",
|
||||
"Hide replies": "Skjul svar",
|
||||
"Show replies": "Vis svar",
|
||||
"Incorrect password": "Feil passord",
|
||||
"Quota exceeded, try again in a few hours": "Kvote overskredet, prøv igjen om et par timer",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Kunne ikke logge inn, forsikre deg om at tofaktor-identitetsbekreftelse (Authenticator eller SMS) er skrudd på.",
|
||||
"Invalid TFA code": "Ugyldig tofaktorkode",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Innlogging mislyktes. Dette kan være fordi tofaktor-identitetsbekreftelse er skrudd av på kontoen din.",
|
||||
"Wrong answer": "Ugyldig svar",
|
||||
"Erroneous CAPTCHA": "Ugyldig CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA er et påkrevd felt",
|
||||
"User ID is a required field": "Bruker-ID er et påkrevd felt",
|
||||
"Password is a required field": "Passord er et påkrevd felt",
|
||||
"Wrong username or password": "Ugyldig brukernavn eller passord",
|
||||
"Please sign in using 'Log in with Google'": "Logg inn ved bruk av \"Google-innlogging\"",
|
||||
"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",
|
||||
@ -199,7 +190,7 @@
|
||||
"No such user": "Ugyldig bruker",
|
||||
"Token is expired, please try again": "Symbol utløpt, prøv igjen",
|
||||
"English": "Engelsk",
|
||||
"English (auto-generated)": "Engelsk (auto-generert)",
|
||||
"English (auto-generated)": "Engelsk (laget automatisk)",
|
||||
"Afrikaans": "Afrikansk",
|
||||
"Albanian": "Albansk",
|
||||
"Amharic": "Amharisk",
|
||||
@ -326,43 +317,42 @@
|
||||
"`x` marked it with a ❤": "`x` levnet et ❤",
|
||||
"Audio mode": "Lydmodus",
|
||||
"Video mode": "Video-modus",
|
||||
"Videos": "Videoer",
|
||||
"channel_tab_videos_label": "Videoer",
|
||||
"Playlists": "Spillelister",
|
||||
"Community": "Gemenskap",
|
||||
"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",
|
||||
"channel_tab_community_label": "Gemenskap",
|
||||
"search_filters_sort_option_relevance": "relevans",
|
||||
"search_filters_sort_option_rating": "vurdering",
|
||||
"search_filters_sort_option_date": "Opplastingsdato",
|
||||
"search_filters_sort_option_views": "visninger",
|
||||
"search_filters_type_label": "innholdstype",
|
||||
"search_filters_duration_label": "varighet",
|
||||
"search_filters_features_label": "funksjoner",
|
||||
"search_filters_sort_label": "sorter",
|
||||
"search_filters_date_option_hour": "Siste time",
|
||||
"search_filters_date_option_today": "i dag",
|
||||
"search_filters_date_option_week": "uke",
|
||||
"search_filters_date_option_month": "måned",
|
||||
"search_filters_date_option_year": "år",
|
||||
"search_filters_type_option_video": "video",
|
||||
"search_filters_type_option_channel": "kanal",
|
||||
"search_filters_type_option_playlist": "spilleliste",
|
||||
"search_filters_type_option_movie": "film",
|
||||
"search_filters_type_option_show": "vis",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "undertekster",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "direkte",
|
||||
"search_filters_features_option_four_k": "4k",
|
||||
"search_filters_features_option_location": "sted",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"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)",
|
||||
"search_filters_duration_option_long": "Lang (> 20 minutter)",
|
||||
"footer_donate_page": "Doner",
|
||||
"short": "Kort (< 4 minutter)",
|
||||
"search_filters_duration_option_short": "Kort (< 4 minutter)",
|
||||
"footer_documentation": "Dokumentasjon",
|
||||
"footer_source_code": "Kildekode",
|
||||
"footer_original_source_code": "Opprinnelig kildekode",
|
||||
@ -384,8 +374,8 @@
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"purchased": "Kjøpt",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_purchased": "Kjøpt",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"none": "intet",
|
||||
"videoinfo_watch_on_youTube": "Se på YouTube",
|
||||
"videoinfo_youTube_embed_link": "Bak inn",
|
||||
@ -432,10 +422,80 @@
|
||||
"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_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):"
|
||||
"crash_page_report_issue": "Sett at det overnevnte ikke hjalp, <a href=\"`x`\">lag en ny utfordring på GitHub</a> (fortrinnsvis på engelsk) og få med følgende tekstbit i meldingen dithen (IKKE oversett denne teksten):",
|
||||
"English (United Kingdom)": "Engelsk (Storbritannia)",
|
||||
"English (United States)": "Engelsk (USA)",
|
||||
"Cantonese (Hong Kong)": "Kantonesisk (Hong Kong)",
|
||||
"Portuguese (Brazil)": "Portugisisk (Brasil)",
|
||||
"Spanish (Mexico)": "Spansk (Mexico)",
|
||||
"Spanish (Spain)": "Spansk (Spania)",
|
||||
"Spanish (auto-generated)": "Spansk (laget automatisk)",
|
||||
"Vietnamese (auto-generated)": "Vietnamesisk (laget automatisk)",
|
||||
"preferences_watch_history_label": "Aktiver seerhistorikk: ",
|
||||
"Chinese": "Kinesisk",
|
||||
"Chinese (China)": "Kinesisk (Kina)",
|
||||
"Chinese (Hong Kong)": "Kinesisk (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Kinesisk (Taiwan)",
|
||||
"French (auto-generated)": "Fransk (laget automatisk)",
|
||||
"German (auto-generated)": "Tysk (laget automatisk)",
|
||||
"Indonesian (auto-generated)": "Indonesisk (laget automatisk)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Italian (auto-generated)": "Italiensk (laget automatisk)",
|
||||
"Japanese (auto-generated)": "Japansk (laget automatisk)",
|
||||
"Korean (auto-generated)": "Koreansk (laget automatisk)",
|
||||
"Portuguese (auto-generated)": "Portugisisk (laget automatisk)",
|
||||
"Russian (auto-generated)": "Russisk (laget automatisk)",
|
||||
"Dutch (auto-generated)": "Nederlandsk (laget automatisk)",
|
||||
"Turkish (auto-generated)": "Tyrkisk (laget automatisk)",
|
||||
"search_filters_title": "Filtrer",
|
||||
"Popular enabled: ": "Populære aktiv: ",
|
||||
"search_message_change_filters_or_query": "Prøv ett mindre snevert søk og/eller endre filterne.",
|
||||
"search_filters_duration_option_medium": "Middels (4–20 minutter)",
|
||||
"search_message_no_results": "Resultatløst.",
|
||||
"search_filters_type_option_all": "Alle typer",
|
||||
"search_filters_duration_option_none": "Enhver varighet",
|
||||
"search_message_use_another_instance": "Du kan også <a href=\"`x`\">søke på en annen instans</a>.",
|
||||
"search_filters_date_label": "Opplastningsdato",
|
||||
"search_filters_apply_button": "Bruk valgte filtre",
|
||||
"search_filters_date_option_none": "Siden begynnelsen",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"error_video_not_in_playlist": "Forespurt video finnes ikke i denne spillelisten. <a href=\"`x`\">Trykk her for spillelistens hjemmeside.</a>",
|
||||
"Standard YouTube license": "Standard YouTube-lisens",
|
||||
"Song: ": "Sang: ",
|
||||
"channel_tab_streams_label": "Direktesendinger",
|
||||
"channel_tab_shorts_label": "Kortvideoer",
|
||||
"channel_tab_playlists_label": "Spillelister",
|
||||
"Music in this video": "Musikk i denne videoen",
|
||||
"channel_tab_channels_label": "Kanaler",
|
||||
"Artist: ": "Artist: ",
|
||||
"Album: ": "Album: ",
|
||||
"Download is disabled": "Nedlasting er avskrudd",
|
||||
"Channel Sponsor": "Kanalsponsor",
|
||||
"Import YouTube playlist (.csv)": "Importer YouTube-spilleliste (.csv)",
|
||||
"channel_tab_podcasts_label": "Podkaster",
|
||||
"channel_tab_releases_label": "Utgaver",
|
||||
"generic_button_delete": "Slett",
|
||||
"generic_button_edit": "Endre",
|
||||
"generic_button_save": "Lagre",
|
||||
"generic_button_cancel": "Avbryt",
|
||||
"generic_button_rss": "RSS",
|
||||
"playlist_button_add_items": "Legg til videoer",
|
||||
"generic_channels_count": "{{count}} kanal",
|
||||
"generic_channels_count_plural": "{{count}} kanaler",
|
||||
"Import YouTube watch history (.json)": "Importere YouTube visningshistorikk (.json)",
|
||||
"carousel_go_to": "Gå til lysark `x`",
|
||||
"Search for videos": "Søk i videoer",
|
||||
"Answer": "Svar",
|
||||
"carousel_slide": "Lysark {{current}} av {{total}}",
|
||||
"carousel_skip": "Hopp over karusellen",
|
||||
"Add to playlist": "Legg til i spilleliste",
|
||||
"Add to playlist: ": "Legg til i spilleliste: ",
|
||||
"The Popular feed has been disabled by the administrator.": "Populært-kilden er koblet ut av administratoren.",
|
||||
"toggle_theme": "Endre utseende",
|
||||
"preferences_preload_label": "Last videodata på forhånd: "
|
||||
}
|
||||
|
228
locales/nl.json
228
locales/nl.json
@ -14,22 +14,21 @@
|
||||
"Clear watch history?": "Wil je de kijkgeschiedenis wissen?",
|
||||
"New password": "Nieuw wachtwoord",
|
||||
"New passwords must match": "De nieuwe wachtwoorden moeten overeenkomen",
|
||||
"Cannot change password for Google accounts": "Kan het wachtwoord van Google-accounts niet wijzigen",
|
||||
"Authorize token?": "Wil je de toegangssleutel machtigen?",
|
||||
"Authorize token for `x`?": "Wil je de toegangssleutel machtigen voor `x`?",
|
||||
"Yes": "Ja",
|
||||
"No": "Nee",
|
||||
"Import and Export Data": "Gegevens im- en exporteren",
|
||||
"Import": "Importeren",
|
||||
"Import Invidious data": "Invidious-gegevens importeren",
|
||||
"Import YouTube subscriptions": "YouTube-abonnementen importeren",
|
||||
"Import Invidious data": "JSON-gegevens Invidious importeren",
|
||||
"Import YouTube subscriptions": "YouTube CVS of OPML-abonnementen importeren",
|
||||
"Import FreeTube subscriptions (.db)": "FreeTube-abonnementen importeren (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "NewPipe-abonnementen importeren (.json)",
|
||||
"Import NewPipe data (.zip)": "NewPipe-gegevens importeren (.zip)",
|
||||
"Export": "Exporteren",
|
||||
"Export subscriptions as OPML": "Abonnementen exporteren als OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Abonnementen exporteren als OPML (voor NewPipe en FreeTube)",
|
||||
"Export data as JSON": "Gegevens exporteren als JSON",
|
||||
"Export data as JSON": "Invidious-gegevens naar JSON exporteren",
|
||||
"Delete account?": "Wilt u uw account verwijderen?",
|
||||
"History": "Geschiedenis",
|
||||
"An alternative front-end to YouTube": "Een alternatief front-end voor YouTube",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "bron",
|
||||
"Log in": "Inloggen",
|
||||
"Log in/register": "Inloggen/Registreren",
|
||||
"Log in with Google": "Inloggen met Google",
|
||||
"User ID": "Gebruikers-id",
|
||||
"Password": "Wachtwoord",
|
||||
"Time (h:mm:ss):": "Tijd (h:mm:ss):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "Inloggen",
|
||||
"Register": "Registreren",
|
||||
"E-mail": "E-mailadres",
|
||||
"Google verification code": "Google-verificatiecode",
|
||||
"Preferences": "Instellingen",
|
||||
"preferences_category_player": "Spelerinstellingen",
|
||||
"preferences_video_loop_label": "Altijd herhalen: ",
|
||||
@ -66,7 +63,7 @@
|
||||
"preferences_related_videos_label": "Gerelateerde video's tonen? ",
|
||||
"preferences_annotations_label": "Standaard annotaties tonen? ",
|
||||
"preferences_extend_desc_label": "Breid videobeschrijving automatisch uit: ",
|
||||
"preferences_vr_mode_label": "Interactieve 360-graden-video's ",
|
||||
"preferences_vr_mode_label": "Interactieve 360-graden-video's (vereist WebGL) ",
|
||||
"preferences_category_visual": "Visuele instellingen",
|
||||
"preferences_player_style_label": "Speler vormgeving ",
|
||||
"Dark mode: ": "Donkere modus: ",
|
||||
@ -89,7 +86,7 @@
|
||||
"Only show latest unwatched video from channel: ": "Alleen nieuwste niet-bekeken video van kanaal tonen: ",
|
||||
"preferences_unseen_only_label": "Alleen niet-bekeken videos tonen: ",
|
||||
"preferences_notifications_only_label": "Alleen meldingen tonen (als die er zijn): ",
|
||||
"Enable web notifications": "Systemmeldingen inschakelen",
|
||||
"Enable web notifications": "Systeemmeldingen inschakelen",
|
||||
"`x` uploaded a video": "`x` heeft een video geüpload",
|
||||
"`x` is live": "`x` zendt nu live uit",
|
||||
"preferences_category_data": "Gegevensinstellingen",
|
||||
@ -110,10 +107,10 @@
|
||||
"Report statistics: ": "Statistieken bijhouden? ",
|
||||
"Save preferences": "Instellingen opslaan",
|
||||
"Subscription manager": "Abonnementen beheren",
|
||||
"Token manager": "Toegangssleutels beheren",
|
||||
"Token manager": "Toegangssleutelbeheerder",
|
||||
"Token": "Toegangssleutel",
|
||||
"Import/export": "Importeren/Exporteren",
|
||||
"unsubscribe": "Deabonneren",
|
||||
"unsubscribe": "deabonneren",
|
||||
"revoke": "Intrekken",
|
||||
"Subscriptions": "Abonnementen",
|
||||
"search": "zoeken",
|
||||
@ -159,17 +156,12 @@
|
||||
"Hide replies": "Antwoorden verbergen",
|
||||
"Show replies": "Antwoorden tonen",
|
||||
"Incorrect password": "Wachtwoord is onjuist",
|
||||
"Quota exceeded, try again in a few hours": "Quota overschreden; probeer het over een paar uur opnieuw",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Kan niet inloggen. Zorg ervoor dat authenticatie in twee stappen (Authenticator of sms) is ingeschakeld.",
|
||||
"Invalid TFA code": "Onjuiste TFA-code",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Inloggen mislukt. Wellicht is authenticatie in twee stappen niet ingeschakeld op je account.",
|
||||
"Wrong answer": "Onjuist antwoord",
|
||||
"Erroneous CAPTCHA": "Onjuiste CAPTCHA",
|
||||
"CAPTCHA is a required field": "CAPTCHA is vereist",
|
||||
"User ID is a required field": "Gebruikers-id is vereist",
|
||||
"Password is a required field": "Wachtwoord is vereist",
|
||||
"Wrong username or password": "Onjuiste gebruikersnaam of wachtwoord",
|
||||
"Please sign in using 'Log in with Google'": "Log in via 'Inloggen met Google'",
|
||||
"Password cannot be empty": "Het wachtwoordveld mag niet leeg zijn",
|
||||
"Password cannot be longer than 55 characters": "Het wachtwoord mag niet langer dan 55 tekens zijn",
|
||||
"Please log in": "Log in",
|
||||
@ -200,15 +192,15 @@
|
||||
"Arabic": "Arabisch",
|
||||
"Armenian": "Armeens",
|
||||
"Azerbaijani": "Azerbeidzjaans",
|
||||
"Bangla": "Bangla",
|
||||
"Bangla": "Bengaals",
|
||||
"Basque": "Baskisch",
|
||||
"Belarusian": "Wit-Rrussisch",
|
||||
"Belarusian": "Wit-Russisch",
|
||||
"Bosnian": "Bosnisch",
|
||||
"Bulgarian": "Bulgaars",
|
||||
"Burmese": "Birmaans",
|
||||
"Catalan": "Catalaans",
|
||||
"Cebuano": "Cebuano",
|
||||
"Chinese (Simplified)": "Chinees (Veereenvoudigd)",
|
||||
"Cebuano": "Cebuaans",
|
||||
"Chinese (Simplified)": "Chinees (Vereenvoudigd)",
|
||||
"Chinese (Traditional)": "Chinees (Traditioneel)",
|
||||
"Corsican": "Corsicaans",
|
||||
"Croatian": "Kroatisch",
|
||||
@ -225,23 +217,23 @@
|
||||
"German": "Duits",
|
||||
"Greek": "Grieks",
|
||||
"Gujarati": "Gujarati",
|
||||
"Haitian Creole": "Creools",
|
||||
"Haitian Creole": "Haïtiaans Creools",
|
||||
"Hausa": "Hausa",
|
||||
"Hawaiian": "Hawaïaans",
|
||||
"Hebrew": "Heebreeuws",
|
||||
"Hebrew": "Hebreeuws",
|
||||
"Hindi": "Hindi",
|
||||
"Hmong": "Hmong",
|
||||
"Hungarian": "Hongaars",
|
||||
"Icelandic": "IJslands",
|
||||
"Igbo": "Igbo",
|
||||
"Igbo": "Ikbo",
|
||||
"Indonesian": "Indonesisch",
|
||||
"Irish": "Iers",
|
||||
"Italian": "Italiaans",
|
||||
"Japanese": "Japans",
|
||||
"Javanese": "Javaans",
|
||||
"Kannada": "Kannada",
|
||||
"Kannada": "Kannada-taal",
|
||||
"Kazakh": "Kazachs",
|
||||
"Khmer": "Khmer",
|
||||
"Khmer": "Khmer-taal",
|
||||
"Korean": "Koreaans",
|
||||
"Kurdish": "Koerdisch",
|
||||
"Kyrgyz": "Kirgizisch",
|
||||
@ -253,10 +245,10 @@
|
||||
"Macedonian": "Macedonisch",
|
||||
"Malagasy": "Malagassisch",
|
||||
"Malay": "Maleisisch",
|
||||
"Malayalam": "Malayalam",
|
||||
"Malayalam": "Malayalam-taal",
|
||||
"Maltese": "Maltees",
|
||||
"Maori": "Maorisch",
|
||||
"Marathi": "Marathi",
|
||||
"Marathi": "Marathi-taal",
|
||||
"Mongolian": "Mongools",
|
||||
"Nepali": "Nepalees",
|
||||
"Norwegian Bokmål": "Noors (Bokmål)",
|
||||
@ -317,39 +309,38 @@
|
||||
"(edited)": "(bewerkt)",
|
||||
"YouTube comment permalink": "Link naar YouTube-reactie",
|
||||
"permalink": "permalink",
|
||||
"`x` marked it with a ❤": "`x` heeft dit gemarkeerd met ❤",
|
||||
"`x` marked it with a ❤": "`x` heeft dit gemarkeerd met een ❤",
|
||||
"Audio mode": "Audiomodus",
|
||||
"Video mode": "Videomodus",
|
||||
"Videos": "Video's",
|
||||
"channel_tab_videos_label": "Video's",
|
||||
"Playlists": "Afspeellijsten",
|
||||
"Community": "Gemeenschap",
|
||||
"relevance": "relevantie",
|
||||
"rating": "beoordeling",
|
||||
"date": "datum",
|
||||
"views": "keren bekeken",
|
||||
"content_type": "Type inhoud",
|
||||
"duration": "duur",
|
||||
"features": "eigenschappen",
|
||||
"sort": "sorteren",
|
||||
"hour": "uur",
|
||||
"today": "vandaag",
|
||||
"week": "week",
|
||||
"month": "maand",
|
||||
"year": "jaar",
|
||||
"video": "video",
|
||||
"channel": "kanaal",
|
||||
"playlist": "afspeellijst",
|
||||
"movie": "film",
|
||||
"show": "show",
|
||||
"hd": "HD",
|
||||
"subtitles": "ondertitels",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Live",
|
||||
"4k": "4K",
|
||||
"location": "locatie",
|
||||
"hdr": "HDR",
|
||||
"filter": "verfijnen",
|
||||
"channel_tab_community_label": "Gemeenschap",
|
||||
"search_filters_sort_option_relevance": "relevantie",
|
||||
"search_filters_sort_option_rating": "beoordeling",
|
||||
"search_filters_sort_option_date": "Upload datum",
|
||||
"search_filters_sort_option_views": "keren bekeken",
|
||||
"search_filters_type_label": "Type inhoud",
|
||||
"search_filters_duration_label": "duur",
|
||||
"search_filters_features_label": "eigenschappen",
|
||||
"search_filters_sort_label": "sorteren",
|
||||
"search_filters_date_option_hour": "Laatste uur",
|
||||
"search_filters_date_option_today": "vandaag",
|
||||
"search_filters_date_option_week": "week",
|
||||
"search_filters_date_option_month": "maand",
|
||||
"search_filters_date_option_year": "jaar",
|
||||
"search_filters_type_option_video": "video",
|
||||
"search_filters_type_option_channel": "kanaal",
|
||||
"search_filters_type_option_playlist": "afspeellijst",
|
||||
"search_filters_type_option_movie": "film",
|
||||
"search_filters_type_option_show": "show",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "ondertitels",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Live",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "locatie",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Huidige versie: ",
|
||||
"Switch Invidious Instance": "Schakel tussen de Invidious Instanties",
|
||||
"preferences_automatic_instance_redirect_label": "Automatische instantie-omleiding (terugval naar redirect.invidious.io): ",
|
||||
@ -357,8 +348,8 @@
|
||||
"preferences_region_label": "Inhoud land: ",
|
||||
"preferences_category_misc": "Diverse voorkeuren",
|
||||
"preferences_show_nick_label": "Toon bijnaam bovenaan: ",
|
||||
"Released under the AGPLv3 on Github.": "Uitgebracht onder de AGPLv3 op Github.",
|
||||
"short": "Kort (<4 minuten)",
|
||||
"Released under the AGPLv3 on Github.": "Uitgebracht onder de AGPLv3 op GitHub.",
|
||||
"search_filters_duration_option_short": "Kort (<4 minuten)",
|
||||
"next_steps_error_message_refresh": "Vernieuwen",
|
||||
"next_steps_error_message_go_to_youtube": "Ga naar YouTube",
|
||||
"footer_donate_page": "Doneren",
|
||||
@ -366,10 +357,9 @@
|
||||
"footer_original_source_code": "Originele bron-code",
|
||||
"footer_modfied_source_code": "Gewijzigde bron-code",
|
||||
"adminprefs_modified_source_code_url_label": "URL naar gewijzigde bron-code-opslagplaats",
|
||||
"Broken? Try another Invidious Instance": "Kapot? Probeer een andere Invidious Instantie",
|
||||
"next_steps_error_message": "Waarna u moet proberen om: ",
|
||||
"next_steps_error_message": "Waarna u zou kunnen proberen om: ",
|
||||
"footer_source_code": "Bron-code",
|
||||
"long": "Lang (> 20 minuten)",
|
||||
"search_filters_duration_option_long": "Lang (> 20 minuten)",
|
||||
"preferences_quality_option_dash": "DASH (adaptieve kwaliteit)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Gemiddeld",
|
||||
@ -395,8 +385,118 @@
|
||||
"user_created_playlists": "`x` afspeellijsten aangemaakt",
|
||||
"user_saved_playlists": "`x` afspeellijsten opgeslagen",
|
||||
"Video unavailable": "Video onbeschikbaar",
|
||||
"preferences_save_player_pos_label": "Huidig afspeeltijdstip opslaan: ",
|
||||
"preferences_save_player_pos_label": "Afspeelpositie opslaan: ",
|
||||
"none": "geen",
|
||||
"purchased": "Gekocht",
|
||||
"360": "360º"
|
||||
"search_filters_features_option_purchased": "Gekocht",
|
||||
"search_filters_features_option_three_sixty": "360º",
|
||||
"search_filters_title": "Verfijnen",
|
||||
"generic_count_days": "{{count}} dag",
|
||||
"generic_count_days_plural": "{{count}} dagen",
|
||||
"Chinese (Taiwan)": "Chinees (Taiwan)",
|
||||
"Dutch (auto-generated)": "Nederlands (automatisch gegenereerd)",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"generic_count_seconds": "{{count}} seconde",
|
||||
"generic_count_seconds_plural": "{{count}} seconden",
|
||||
"generic_count_weeks": "{{count}} week",
|
||||
"generic_count_weeks_plural": "{{count}} weken",
|
||||
"English (United States)": "Engels (Verenigde Staten)",
|
||||
"generic_views_count": "{{count}} keer bekeken",
|
||||
"generic_views_count_plural": "{{count}} keren bekeken",
|
||||
"generic_videos_count": "{{count}} video",
|
||||
"generic_videos_count_plural": "{{count}} video's",
|
||||
"generic_subscriptions_count": "{{count}} abonnement",
|
||||
"generic_subscriptions_count_plural": "{{count}} abonnementen",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} ongeziene melding",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} ongeziene meldingen",
|
||||
"preferences_watch_history_label": "Kijkgeschiedenis inschakelen: ",
|
||||
"crash_page_switch_instance": "geprobeerd hebt om <a href=\"`x`\">een andere instantie te gebruiken</a>",
|
||||
"Portuguese (auto-generated)": "Portugees (automatisch gegenereerd)",
|
||||
"Russian (auto-generated)": "Russisch (automatisch gegenereerd)",
|
||||
"Vietnamese (auto-generated)": "Vietnamees (automatisch gegenereerd)",
|
||||
"comments_points_count": "{{count}} punt",
|
||||
"comments_points_count_plural": "{{count}} punten",
|
||||
"crash_page_before_reporting": "Voor je een bug rapporteert, kijk even na of je:",
|
||||
"Chinese": "Chinees",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_date_label": "Uploaddatum",
|
||||
"Portuguese (Brazil)": "Portugees (Brazilië)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Turkish (auto-generated)": "Turks (automatisch gegenereerd)",
|
||||
"search_filters_date_option_none": "Alle datums",
|
||||
"generic_subscribers_count": "{{count}} abonnee",
|
||||
"generic_subscribers_count_plural": "{{count}} abonnees",
|
||||
"search_message_no_results": "Geen resultaten teruggevonden.",
|
||||
"search_message_change_filters_or_query": "Probeer je zoekopdracht uit te breiden en/of de filters aan te passen.",
|
||||
"English (United Kingdom)": "Engels (Verenigd Koninkrijk)",
|
||||
"German (auto-generated)": "Duits (automatisch gegenereerd)",
|
||||
"Spanish (Mexico)": "Spaans (Mexico)",
|
||||
"Spanish (Spain)": "Spaans (Spanje)",
|
||||
"search_filters_type_option_all": "Alle types",
|
||||
"crash_page_refresh": "geprobeerd hebt om <a href=\"`x`\">de pagina te herladen</a>",
|
||||
"comments_view_x_replies": "{{count}} reactie bekijken",
|
||||
"comments_view_x_replies_plural": "{{count}} reacties bekijken",
|
||||
"generic_count_years": "{{count}} jaar",
|
||||
"generic_count_years_plural": "{{count}} jaren",
|
||||
"generic_count_months": "{{count}} maand",
|
||||
"generic_count_months_plural": "{{count}} maanden",
|
||||
"generic_count_hours": "{{count}} uur",
|
||||
"generic_count_hours_plural": "{{count}} uren",
|
||||
"generic_count_minutes": "{{count}} minuut",
|
||||
"generic_count_minutes_plural": "{{count}} minuten",
|
||||
"French (auto-generated)": "Frans (automatisch gegenereerd)",
|
||||
"generic_playlists_count": "{{count}} afspeellijst",
|
||||
"generic_playlists_count_plural": "{{count}} afspeellijsten",
|
||||
"Chinese (Hong Kong)": "Chinees (Hongkong)",
|
||||
"Korean (auto-generated)": "Koreaans (automatisch gegenereerd)",
|
||||
"search_filters_apply_button": "Geselecteerde filters toepassen",
|
||||
"search_message_use_another_instance": "Je kan ook <a href=\"`x`\">zoeken op een andere instantie</a>.",
|
||||
"Cantonese (Hong Kong)": "Kantonees (Hongkong)",
|
||||
"Chinese (China)": "Chinees (China)",
|
||||
"crash_page_read_the_faq": "de <a href=\"`x`\">veelgestelde vragen (FAQ)</a> gelezen hebt",
|
||||
"crash_page_search_issue": "gezocht hebt op <a href=\"`x`\">bestaande problemen op GitHub</a>",
|
||||
"search_filters_duration_option_none": "Alle lengtes",
|
||||
"Indonesian (auto-generated)": "Indonesisch (automatisch gegenereerd)",
|
||||
"Italian (auto-generated)": "Italiaans (automatisch gegenereerd)",
|
||||
"Japanese (auto-generated)": "Japans (automatisch gegenereerd)",
|
||||
"Spanish (auto-generated)": "Spaans (automatisch gegenereerd)",
|
||||
"crash_page_you_found_a_bug": "Je lijkt een bug in Invidious tegengekomen te zijn!",
|
||||
"search_filters_duration_option_medium": "Gemiddeld (4 - 20 minuten)",
|
||||
"crash_page_report_issue": "Indien het bovenstaande niet hielp, gelieve dan <a href=\"`x`\">een nieuw ticket op GitHub</a> te openen (liefst in het Engels) en neem de volgende tekst op in je bericht (gelieve deze NIET te vertalen):",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"Download is disabled": "Downloaden is uitgeschakeld",
|
||||
"Channel Sponsor": "Kanaalsponsor",
|
||||
"channel_tab_streams_label": "Livestreams",
|
||||
"playlist_button_add_items": "Video's toevoegen",
|
||||
"Artist: ": "Artiest: ",
|
||||
"generic_button_save": "Opslaan",
|
||||
"generic_button_cancel": "Annuleren",
|
||||
"Album: ": "Album: ",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_releases_label": "Uitgaves",
|
||||
"Song: ": "Lied: ",
|
||||
"generic_channels_count": "{{count}} kanaal",
|
||||
"generic_channels_count_plural": "{{count}} kanalen",
|
||||
"Popular enabled: ": "Populair ingeschakeld: ",
|
||||
"channel_tab_playlists_label": "Afspeellijsten",
|
||||
"generic_button_edit": "Bewerken",
|
||||
"Music in this video": "Muziek in deze video",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_channels_label": "Kanalen",
|
||||
"error_video_not_in_playlist": "De gevraagde video bestaat niet in deze afspeellijst. <a href=\"`x`\">Klik hier voor de startpagina van de afspeellijst.</a>",
|
||||
"generic_button_delete": "Verwijderen",
|
||||
"Import YouTube playlist (.csv)": "YouTube-afspeellijst importeren (.csv)",
|
||||
"Standard YouTube license": "Standaard YouTube-licentie",
|
||||
"Import YouTube watch history (.json)": "YouTube-kijkgeschiedenis importeren (.json)",
|
||||
"Add to playlist": "Aan afspeellijst toevoegen",
|
||||
"The Popular feed has been disabled by the administrator.": "De Populaire feed werd uitgeschakeld door een beheerder.",
|
||||
"carousel_slide": "Dia {{current}} van {{total}}",
|
||||
"carousel_go_to": "Naar dia `x` gaan",
|
||||
"Add to playlist: ": "Aan afspeellijst toevoegen: ",
|
||||
"Answer": "Antwoorden",
|
||||
"Search for videos": "Naar video's zoeken",
|
||||
"carousel_skip": "Carousel overslaan",
|
||||
"toggle_theme": "Thema omschakelen",
|
||||
"preferences_preload_label": "Videogegevens vooraf laden: ",
|
||||
"Filipino (auto-generated)": "Filipijns (automatisch gegenereerd)"
|
||||
}
|
||||
|
29
locales/or.json
Normal file
29
locales/or.json
Normal file
@ -0,0 +1,29 @@
|
||||
{
|
||||
"preferences_quality_dash_option_720p": "୭୨୦ପି",
|
||||
"preferences_quality_dash_option_4320p": "୪୩୨୦ପି",
|
||||
"preferences_quality_dash_option_240p": "୨୪୦ପି",
|
||||
"preferences_quality_dash_option_2160p": "୨୧୬୦ପି",
|
||||
"preferences_quality_dash_option_144p": "୧୪୪ପି",
|
||||
"reddit": "Reddit",
|
||||
"preferences_quality_dash_option_480p": "୪୮୦ପି",
|
||||
"preferences_dark_mode_label": "ଥିମ୍: ",
|
||||
"dark": "ଗାଢ଼",
|
||||
"published": "ପ୍ରକାଶିତ",
|
||||
"generic_videos_count": "{{count}}ଟିଏ ଵିଡ଼ିଓ",
|
||||
"generic_videos_count_plural": "{{count}}ଟି ଵିଡ଼ିଓ",
|
||||
"generic_button_edit": "ସମ୍ପାଦନା",
|
||||
"light": "ହାଲୁକା",
|
||||
"last": "ଗତ",
|
||||
"New password": "ନୂଆ ପାସ୍ୱର୍ଡ଼",
|
||||
"preferences_quality_dash_option_1440p": "୧୪୪୦ପି",
|
||||
"preferences_quality_dash_option_360p": "୩୬୦ପି",
|
||||
"preferences_quality_option_medium": "ମଧ୍ୟମ",
|
||||
"preferences_quality_dash_option_1080p": "୧୦୮୦ପି",
|
||||
"youtube": "YouTube",
|
||||
"preferences_quality_option_hd720": "HD୭୨୦",
|
||||
"invidious": "Invidious",
|
||||
"generic_playlists_count": "{{count}}ଟିଏ ଚାଳନାତାଲିକା",
|
||||
"generic_playlists_count_plural": "{{count}}ଟି ଚାଳନାତାଲିକା",
|
||||
"Yes": "ହଁ",
|
||||
"No": "ନାହିଁ"
|
||||
}
|
181
locales/pl.json
181
locales/pl.json
@ -14,7 +14,6 @@
|
||||
"Clear watch history?": "Wyczyścić historię?",
|
||||
"New password": "Nowe hasło",
|
||||
"New passwords must match": "Nowe hasła muszą być identyczne",
|
||||
"Cannot change password for Google accounts": "Nie można zmienić hasła do konta Google",
|
||||
"Authorize token?": "Autoryzować token?",
|
||||
"Authorize token for `x`?": "Autoryzować token dla `x`?",
|
||||
"Yes": "Tak",
|
||||
@ -22,13 +21,13 @@
|
||||
"Import and Export Data": "Import i eksport danych",
|
||||
"Import": "Import",
|
||||
"Import Invidious data": "Importuj dane JSON Invidious",
|
||||
"Import YouTube subscriptions": "Importuj subskrybcje z YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importuj subskrybcje z FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importuj subskrybcje z NewPipe (.json)",
|
||||
"Import YouTube subscriptions": "Importuj subskrypcje YouTube w formacie CSV lub OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importuj subskrypcje FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importuj subskrypcje NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importuj dane NewPipe (.zip)",
|
||||
"Export": "Eksport",
|
||||
"Export subscriptions as OPML": "Eksportuj subskrybcje jako OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Eksportuj subskrybcje jako OPML (dla NewPipe i FreeTube)",
|
||||
"Export subscriptions as OPML": "Eksportuj subskrypcje jako OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Eksportuj subskrypcje jako OPML (dla NewPipe i FreeTube)",
|
||||
"Export data as JSON": "Eksportuj dane Invidious jako JSON",
|
||||
"Delete account?": "Usunąć konto?",
|
||||
"History": "Historia",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "źródło",
|
||||
"Log in": "Zaloguj",
|
||||
"Log in/register": "Zaloguj/Zarejestruj",
|
||||
"Log in with Google": "Zaloguj do Google",
|
||||
"User ID": "ID użytkownika",
|
||||
"Password": "Hasło",
|
||||
"Time (h:mm:ss):": "Godzina (h:mm:ss):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "Zaloguj się",
|
||||
"Register": "Zarejestruj się",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Kod weryfikacyjny Google",
|
||||
"Preferences": "Preferencje",
|
||||
"preferences_category_player": "Ustawienia odtwarzacza",
|
||||
"preferences_video_loop_label": "Zawsze zapętlaj: ",
|
||||
@ -54,7 +51,7 @@
|
||||
"preferences_continue_label": "Domyślnie odtwarzaj następny: ",
|
||||
"preferences_continue_autoplay_label": "Odtwórz następny film: ",
|
||||
"preferences_listen_label": "Tryb dźwiękowy: ",
|
||||
"preferences_local_label": "Filmy przez proxy? ",
|
||||
"preferences_local_label": "Wideo przez proxy? ",
|
||||
"preferences_speed_label": "Domyślna prędkość: ",
|
||||
"preferences_quality_label": "Preferowana jakość filmów: ",
|
||||
"preferences_volume_label": "Głośność odtwarzacza: ",
|
||||
@ -67,7 +64,7 @@
|
||||
"preferences_annotations_label": "Domyślnie pokazuj adnotacje: ",
|
||||
"preferences_extend_desc_label": "Automatycznie rozwijaj opisy filmów: ",
|
||||
"preferences_vr_mode_label": "Interaktywne filmy 360 stopni (wymaga WebGL): ",
|
||||
"preferences_category_visual": "Preferencje Wizualne",
|
||||
"preferences_category_visual": "Preferencje wizualne",
|
||||
"preferences_player_style_label": "Styl odtwarzacza: ",
|
||||
"Dark mode: ": "Ciemny motyw: ",
|
||||
"preferences_dark_mode_label": "Motyw: ",
|
||||
@ -76,7 +73,7 @@
|
||||
"preferences_thin_mode_label": "Tryb minimalny: ",
|
||||
"preferences_category_misc": "Różne preferencje",
|
||||
"preferences_automatic_instance_redirect_label": "Automatycznie przekierowanie instancji (powrót do redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Preferencje subskrybcji",
|
||||
"preferences_category_subscription": "Preferencje subskrypcji",
|
||||
"preferences_annotations_subscribed_label": "Domyślnie wyświetlaj adnotacje dla subskrybowanych kanałów: ",
|
||||
"Redirect homepage to feed: ": "Przekieruj stronę główną do subskrybcji: ",
|
||||
"preferences_max_results_label": "Liczba filmów widoczna na stronie subskrybcji: ",
|
||||
@ -98,7 +95,7 @@
|
||||
"Clear watch history": "Wyczyść historię",
|
||||
"Import/export data": "Import/Eksport danych",
|
||||
"Change password": "Zmień hasło",
|
||||
"Manage subscriptions": "Organizuj subskrybcje",
|
||||
"Manage subscriptions": "Organizuj subskrypcje",
|
||||
"Manage tokens": "Zarządzaj tokenami",
|
||||
"Watch history": "Historia",
|
||||
"Delete account": "Usuń konto",
|
||||
@ -112,13 +109,13 @@
|
||||
"Registration enabled: ": "Rejestracja włączona? ",
|
||||
"Report statistics: ": "Raportować statystyki? ",
|
||||
"Save preferences": "Zapisz preferencje",
|
||||
"Subscription manager": "Manager subskrybcji",
|
||||
"Subscription manager": "Menedżer subskrypcji",
|
||||
"Token manager": "Menedżer tokenów",
|
||||
"Token": "Token",
|
||||
"Import/export": "Import/Eksport",
|
||||
"unsubscribe": "odsubskrybuj",
|
||||
"revoke": "cofnij",
|
||||
"Subscriptions": "Subskrybcje",
|
||||
"Subscriptions": "Subskrypcje",
|
||||
"search": "szukaj",
|
||||
"Log out": "Wyloguj",
|
||||
"Source available here.": "Kod źródłowy dostępny tutaj.",
|
||||
@ -140,7 +137,6 @@
|
||||
"Show less": "Pokaż mniej",
|
||||
"Watch on YouTube": "Zobacz film na YouTube",
|
||||
"Switch Invidious Instance": "Przełącz instancję Invidious",
|
||||
"Broken? Try another Invidious Instance": "Nie działa? Spróbuj innej instancji Invidious",
|
||||
"Hide annotations": "Ukryj adnotacje",
|
||||
"Show annotations": "Pokaż adnotacje",
|
||||
"Genre: ": "Gatunek: ",
|
||||
@ -152,29 +148,24 @@
|
||||
"Blacklisted regions: ": "Niedostępny na obszarach: ",
|
||||
"Shared `x`": "Udostępniono `x`",
|
||||
"Premieres in `x`": "Publikacja za `x`",
|
||||
"Premieres `x`": "Publikacja za `x`",
|
||||
"Premieres `x`": "Publikacja `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.": "Cześć! Wygląda na to, że masz wyłączoną obsługę JavaScriptu. Kliknij tutaj, żeby zobaczyć komentarze. Pamiętaj, że wczytywanie może potrwać dłużej.",
|
||||
"View YouTube comments": "Wyświetl komentarze z YouTube",
|
||||
"View more comments on Reddit": "Wyświetl więcej komentarzy na Reddicie",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Wyświetl `x` komentarzy",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Wyświetl `x` komentarz",
|
||||
"": "Wyświetl `x` komentarzy"
|
||||
},
|
||||
"View Reddit comments": "Wyświetl komentarze z Redditta",
|
||||
"Hide replies": "Ukryj odpowiedzi",
|
||||
"Show replies": "Pokaż odpowiedzi",
|
||||
"Incorrect password": "Niepoprawne hasło",
|
||||
"Quota exceeded, try again in a few hours": "Przekroczony limit zapytań, spróbuj ponownie za kilka godzin",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Nie udało się zalogować, upewnij się, że dwuetapowe uwierzytelnianie (Autentykator lub SMS) jest aktywne.",
|
||||
"Invalid TFA code": "Niepoprawny kod TFA",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Nie udało się zalogować. To może być spowodowane wyłączoną dwustopniową autoryzacją na twoim koncie.",
|
||||
"Wrong answer": "Niepoprawna odpowiedź",
|
||||
"Erroneous CAPTCHA": "CAPTCHA wykonane błędnie",
|
||||
"CAPTCHA is a required field": "CAPTCHA jest polem wymaganym",
|
||||
"User ID is a required field": "ID użytkownika jest polem wymaganym",
|
||||
"Password is a required field": "Hasło jest polem wymaganym",
|
||||
"Wrong username or password": "Niepoprawny login lub hasło",
|
||||
"Please sign in using 'Log in with Google'": "Zaloguj się używając \"Zaloguj się przez Google\"",
|
||||
"Password cannot be empty": "Hasło nie może być puste",
|
||||
"Password cannot be longer than 55 characters": "Hasło nie może być dłuższe niż 55 znaków",
|
||||
"Please log in": "Proszę się zalogować",
|
||||
@ -284,7 +275,7 @@
|
||||
"Somali": "somalijski",
|
||||
"Southern Sotho": "sotho południowy",
|
||||
"Spanish": "hiszpański",
|
||||
"Spanish (Latin America)": "hiszpański (ameryka łacińska)",
|
||||
"Spanish (Latin America)": "hiszpański (Ameryka Łacińska)",
|
||||
"Sundanese": "sundajski",
|
||||
"Swahili": "suahili",
|
||||
"Swedish": "szwedzki",
|
||||
@ -318,6 +309,7 @@
|
||||
"Movies": "Filmy",
|
||||
"Download": "Pobierz",
|
||||
"Download as: ": "Pobierz jako: ",
|
||||
"Download is disabled": "Pobieranie jest wyłączone",
|
||||
"%A %B %-d, %Y": "%A, %-d %B %Y",
|
||||
"(edited)": "(edytowany)",
|
||||
"YouTube comment permalink": "Odnośnik bezpośredni do komentarza na YouTube",
|
||||
@ -325,38 +317,37 @@
|
||||
"`x` marked it with a ❤": "`x` oznaczonych ❤",
|
||||
"Audio mode": "Tryb audio",
|
||||
"Video mode": "Tryb wideo",
|
||||
"Videos": "Filmy",
|
||||
"channel_tab_videos_label": "Wideo",
|
||||
"Playlists": "Playlisty",
|
||||
"Community": "Społeczność",
|
||||
"relevance": "Trafność",
|
||||
"rating": "Ocena",
|
||||
"date": "data",
|
||||
"views": "Liczba wyświetleń",
|
||||
"content_type": "Typ",
|
||||
"duration": "Długość",
|
||||
"features": "Funkcje",
|
||||
"sort": "sortuj",
|
||||
"hour": "godzina",
|
||||
"today": "dzisiaj",
|
||||
"week": "tydzień",
|
||||
"month": "miesiąc",
|
||||
"year": "rok",
|
||||
"video": "Film",
|
||||
"channel": "kanał",
|
||||
"playlist": "playlista",
|
||||
"movie": "film",
|
||||
"show": "pokaż",
|
||||
"hd": "hd",
|
||||
"subtitles": "napisy",
|
||||
"creative_commons": "creative_commons",
|
||||
"3d": "3d",
|
||||
"live": "Na żywo",
|
||||
"4k": "4k",
|
||||
"location": "Lokalizacja",
|
||||
"hdr": "hdr",
|
||||
"filter": "filtr",
|
||||
"channel_tab_community_label": "Społeczność",
|
||||
"search_filters_sort_option_relevance": "Trafność",
|
||||
"search_filters_sort_option_rating": "Ocena",
|
||||
"search_filters_sort_option_date": "Data przesłania",
|
||||
"search_filters_sort_option_views": "Liczba wyświetleń",
|
||||
"search_filters_type_label": "Typ",
|
||||
"search_filters_duration_label": "Długość",
|
||||
"search_filters_features_label": "Funkcje",
|
||||
"search_filters_sort_label": "Sortuj wg",
|
||||
"search_filters_date_option_hour": "Ostatnia godzina",
|
||||
"search_filters_date_option_today": "Dzisiaj",
|
||||
"search_filters_date_option_week": "W tym tygodniu",
|
||||
"search_filters_date_option_month": "W tym miesiącu",
|
||||
"search_filters_date_option_year": "W tym roku",
|
||||
"search_filters_type_option_video": "Wideo",
|
||||
"search_filters_type_option_channel": "Kanał",
|
||||
"search_filters_type_option_playlist": "Playlista",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Pokaż",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Napisy/CC",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Na żywo",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Lokalizacja",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Aktualna wersja: ",
|
||||
"next_steps_error_message": "Po czym powinien*ś spróbować: ",
|
||||
"next_steps_error_message": "Po czym należy spróbować: ",
|
||||
"next_steps_error_message_refresh": "Odśwież",
|
||||
"next_steps_error_message_go_to_youtube": "Przejdź do YouTube",
|
||||
"invidious": "Invidious",
|
||||
@ -399,11 +390,11 @@
|
||||
"generic_count_seconds_0": "{{count}} sekunda",
|
||||
"generic_count_seconds_1": "{{count}} sekundy",
|
||||
"generic_count_seconds_2": "{{count}} sekund",
|
||||
"crash_page_you_found_a_bug": "Wygląda na to że udało ci się znaleźć błąd w Invidious!",
|
||||
"crash_page_you_found_a_bug": "Wygląda na to, że udało ci się znaleźć błąd w Invidious!",
|
||||
"crash_page_refresh": "próbowano <a href=\"`x`\">odświeżyć stronę</a>",
|
||||
"crash_page_switch_instance": "spróbowano <a href=\"`x`\"> użyć innej instancji</a>",
|
||||
"crash_page_read_the_faq": "przeczytaj <a href=\"`x`\"> Często Zadawane Pytania (FAQ)</a>",
|
||||
"crash_page_search_issue": "próbowano poszukać <a href=\"`x`\"> istniejących zgłoszeń na GitHub'ie</a>",
|
||||
"crash_page_switch_instance": "próbowano <a href=\"`x`\">użyć innej instancji</a>",
|
||||
"crash_page_read_the_faq": "przeczytaj <a href=\"`x`\">Najczęściej zadawane pytania (FAQ)</a>",
|
||||
"crash_page_search_issue": "próbowano poszukać <a href=\"`x`\">istniejących zgłoszeń na GitHubie</a>",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
@ -420,20 +411,20 @@
|
||||
"generic_count_years_0": "{{count}} rok",
|
||||
"generic_count_years_1": "{{count}} lata",
|
||||
"generic_count_years_2": "{{count}} lat",
|
||||
"crash_page_before_reporting": "Przed zgłoszeniem błędu, upewnij się że masz:",
|
||||
"crash_page_report_issue": "Jeżeli nic z powyższych opcji nie pomogło, proszę <a href=\"`x`\"> otworzyć nowe zgłoszenie na GitHub'ie</a> (najlepiej po Angielsku) i dodać poniższy tekst w twojej wiadomości (NIE tłumacz tego tekstu):",
|
||||
"crash_page_before_reporting": "Przed zgłoszeniem błędu, upewnij się, że masz:",
|
||||
"crash_page_report_issue": "Jeżeli nic z powyższych opcji nie pomogło, proszę <a href=\"`x`\">otworzyć nowe zgłoszenie na GitHubie</a> (najlepiej po angielsku) i dodać poniższy tekst w twojej wiadomości (NIE tłumacz tego tekstu):",
|
||||
"preferences_quality_dash_option_auto": "Automatyczna",
|
||||
"preferences_quality_dash_option_best": "Najlepsza",
|
||||
"preferences_quality_dash_option_worst": "Najgorsza",
|
||||
"preferences_quality_option_dash": "DASH (jakość adaptywna)",
|
||||
"preferences_quality_option_dash": "DASH (jakość adaptacyjna)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Średnia",
|
||||
"preferences_quality_option_small": "Mała",
|
||||
"preferences_quality_dash_label": "Preferowana jakość filmu DASH: ",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"purchased": "Zakupione",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_purchased": "Zakupione",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"footer_donate_page": "Dotacja",
|
||||
"none": "żadne",
|
||||
"videoinfo_started_streaming_x_ago": "Transmisja rozpoczęta `x` temu",
|
||||
@ -445,21 +436,21 @@
|
||||
"user_saved_playlists": "`x` zapisanych playlist",
|
||||
"Video unavailable": "Film niedostępny",
|
||||
"preferences_save_player_pos_label": "Zapisz pozycję odtwarzania: ",
|
||||
"preferences_region_label": "Region zawartości: ",
|
||||
"Released under the AGPLv3 on Github.": "Wydany na licencji AGPLv3 na Github.",
|
||||
"short": "Krótkie (< 4 minutes)",
|
||||
"long": "Długie (> 20 minutes)",
|
||||
"preferences_region_label": "Kraj treści: ",
|
||||
"Released under the AGPLv3 on Github.": "Wydany na licencji AGPLv3 na GitHub.",
|
||||
"search_filters_duration_option_short": "Krótka (< 4 minut)",
|
||||
"search_filters_duration_option_long": "Długa (> 20 minut)",
|
||||
"footer_documentation": "Dokumentacja",
|
||||
"footer_source_code": "Kod źródłowy",
|
||||
"footer_modfied_source_code": "Zmodyfikowany Kod źródłowy",
|
||||
"footer_modfied_source_code": "Zmodyfikowany kod źródłowy",
|
||||
"footer_original_source_code": "Oryginalny kod źródłowy",
|
||||
"adminprefs_modified_source_code_url_label": "Adres URL do repozytorium z zmodyfikowanym kodem źródłowym",
|
||||
"adminprefs_modified_source_code_url_label": "Adres URL do repozytorium ze zmodyfikowanym kodem źródłowym",
|
||||
"English (United Kingdom)": "angielski (Wielka Brytania)",
|
||||
"English (United States)": "angielski (Stany Zjednoczone)",
|
||||
"Cantonese (Hong Kong)": "kantoński (Hong Kong)",
|
||||
"Cantonese (Hong Kong)": "kantoński (Hongkong)",
|
||||
"Chinese": "chiński",
|
||||
"Chinese (China)": "chiński (Chiny)",
|
||||
"Chinese (Hong Kong)": "chiński (Hong Kong)",
|
||||
"Chinese (Hong Kong)": "chiński (Hongkong)",
|
||||
"Chinese (Taiwan)": "chiński (Tajwan)",
|
||||
"Dutch (auto-generated)": "niderlandzki (wygenerowany automatycznie)",
|
||||
"French (auto-generated)": "francuski (wygenerowany automatycznie)",
|
||||
@ -476,5 +467,53 @@
|
||||
"Japanese (auto-generated)": "japoński (wygenerowany automatycznie)",
|
||||
"Russian (auto-generated)": "rosyjski (wygenerowany automatycznie)",
|
||||
"Portuguese (auto-generated)": "portugalski (wygenerowany automatycznie)",
|
||||
"Portuguese (Brazil)": "portugalski (Brazylia)"
|
||||
"Portuguese (Brazil)": "portugalski (Brazylia)",
|
||||
"search_filters_title": "Filtr",
|
||||
"error_video_not_in_playlist": "Żądany film nie istnieje na tej playliście. <a href=\"`x`\">Kliknij tutaj, aby przejść do strony głównej playlisty.</a>",
|
||||
"Popular enabled: ": "Popularne włączone: ",
|
||||
"search_message_no_results": "Nie znaleziono wyników.",
|
||||
"preferences_watch_history_label": "Włącz historię oglądania: ",
|
||||
"search_filters_apply_button": "Zastosuj wybrane filtry",
|
||||
"search_message_change_filters_or_query": "Spróbuj poszerzyć zapytanie wyszukiwania i/lub zmienić filtry.",
|
||||
"search_filters_date_label": "Data przesłania",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_date_option_none": "Dowolna data",
|
||||
"search_message_use_another_instance": "Możesz także <a href=\"`x`\">wyszukać w innej instancji</a>.",
|
||||
"search_filters_type_option_all": "Dowolny typ",
|
||||
"search_filters_duration_option_none": "Dowolna długość",
|
||||
"search_filters_duration_option_medium": "Średnia (4-20 minut)",
|
||||
"channel_tab_streams_label": "Na żywo",
|
||||
"channel_tab_channels_label": "Kanały",
|
||||
"channel_tab_playlists_label": "Playlisty",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"Music in this video": "Muzyka w tym filmie",
|
||||
"Artist: ": "Wykonawca: ",
|
||||
"Album: ": "Album: ",
|
||||
"Song: ": "Piosenka: ",
|
||||
"Channel Sponsor": "Sponsor kanału",
|
||||
"Standard YouTube license": "Standardowa licencja YouTube",
|
||||
"Import YouTube playlist (.csv)": "Importuj playlistę z YouTube (.csv)",
|
||||
"generic_button_edit": "Edytuj",
|
||||
"generic_button_cancel": "Anuluj",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_podcasts_label": "Podkasty",
|
||||
"channel_tab_releases_label": "Wydania",
|
||||
"generic_button_delete": "Usuń",
|
||||
"generic_button_save": "Zapisz",
|
||||
"playlist_button_add_items": "Dodaj filmy",
|
||||
"generic_channels_count_0": "{{count}} kanał",
|
||||
"generic_channels_count_1": "{{count}} kanały",
|
||||
"generic_channels_count_2": "{{count}} kanałów",
|
||||
"Import YouTube watch history (.json)": "Importuj historię oglądania z YouTube (.json)",
|
||||
"toggle_theme": "Przełącz motyw",
|
||||
"The Popular feed has been disabled by the administrator.": "Kanał Popularne został wyłączony przez administratora.",
|
||||
"Answer": "Odpowiedź",
|
||||
"Search for videos": "Wyszukaj filmy",
|
||||
"Add to playlist": "Dodaj do playlisty",
|
||||
"Add to playlist: ": "Dodaj do playlisty: ",
|
||||
"carousel_slide": "Slajd {{current}} z {{total}}",
|
||||
"carousel_skip": "Pomiń karuzelę",
|
||||
"carousel_go_to": "Przejdź do slajdu `x`",
|
||||
"preferences_preload_label": "Wstępne ładowanie danych wideo: ",
|
||||
"Filipino (auto-generated)": "filipiński (wygenerowany automatycznie)"
|
||||
}
|
||||
|
@ -1,83 +1,80 @@
|
||||
{
|
||||
"LIVE": "AO VIVO",
|
||||
"Shared `x` ago": "Compartilhado `x` atrás",
|
||||
"Shared `x` ago": "Publicado há `x`",
|
||||
"Unsubscribe": "Cancelar inscrição",
|
||||
"Subscribe": "Inscrever-se",
|
||||
"View channel on YouTube": "Ver canal no YouTube",
|
||||
"View playlist on YouTube": "Ver lista de reprodução no YouTube",
|
||||
"View playlist on YouTube": "Ver playlist no YouTube",
|
||||
"newest": "mais recentes",
|
||||
"oldest": "mais antigos",
|
||||
"popular": "populares",
|
||||
"last": "último",
|
||||
"last": "últimos",
|
||||
"Next page": "Próxima página",
|
||||
"Previous page": "Página anterior",
|
||||
"Clear watch history?": "Limpar histórico de reprodução?",
|
||||
"Clear watch history?": "Limpar histórico de exibição?",
|
||||
"New password": "Nova senha",
|
||||
"New passwords must match": "Nova senha deve ser igual",
|
||||
"Cannot change password for Google accounts": "Não é possível alterar sua senha de contas do Google",
|
||||
"Authorize token?": "Autorizar o token?",
|
||||
"Authorize token for `x`?": "Autorizar o token para `x`?",
|
||||
"New passwords must match": "As senhas devem ser iguais",
|
||||
"Authorize token?": "Autorizar token?",
|
||||
"Authorize token for `x`?": "Autorizar token para `x`?",
|
||||
"Yes": "Sim",
|
||||
"No": "Não",
|
||||
"Import and Export Data": "Importar e Exportar Dados",
|
||||
"Import and Export Data": "Importar/exportar dados",
|
||||
"Import": "Importar",
|
||||
"Import Invidious data": "Importar dados do Invidious",
|
||||
"Import YouTube subscriptions": "Importar inscrições do YouTube",
|
||||
"Import Invidious data": "Importar dados JSON do Invidious",
|
||||
"Import YouTube subscriptions": "Importar inscrições no formato CSV ou OPML do YouTube",
|
||||
"Import FreeTube subscriptions (.db)": "Importar inscrições do FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importar inscrições do NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importar dados do NewPipe (.zip)",
|
||||
"Export": "Exportar",
|
||||
"Export subscriptions as OPML": "Exportar inscrições como OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportar inscrições como OPML (para NewPipe e FreeTube)",
|
||||
"Export data as JSON": "Exportar dados como JSON",
|
||||
"Export data as JSON": "Exportar dados Invidious como JSON",
|
||||
"Delete account?": "Excluir conta?",
|
||||
"History": "Histórico",
|
||||
"An alternative front-end to YouTube": "Uma interface alternativa para o YouTube",
|
||||
"JavaScript license information": "Informação de licença do JavaScript",
|
||||
"source": "código-fonte",
|
||||
"Log in": "Entrar",
|
||||
"Log in/register": "Entrar/Registrar",
|
||||
"Log in with Google": "Entrar com conta Google",
|
||||
"JavaScript license information": "Informações sobre a licença do JavaScript",
|
||||
"source": "fonte",
|
||||
"Log in": "Fazer login",
|
||||
"Log in/register": "Fazer login/criar conta",
|
||||
"User ID": "Usuário",
|
||||
"Password": "Senha",
|
||||
"Time (h:mm:ss):": "Hora (h:mm:ss):",
|
||||
"Text CAPTCHA": "CAPTCHA em texto",
|
||||
"Image CAPTCHA": "CAPTCHA em imagem",
|
||||
"Sign In": "Entrar",
|
||||
"Register": "Registrar",
|
||||
"Text CAPTCHA": "Mudar para um desafio de texto",
|
||||
"Image CAPTCHA": "Mudar para um desafio visual",
|
||||
"Sign In": "Fazer login",
|
||||
"Register": "Criar conta",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Código de verificação do Google",
|
||||
"Preferences": "Preferências",
|
||||
"preferences_category_player": "Preferências do reprodutor",
|
||||
"preferences_category_player": "Preferências de reprodução",
|
||||
"preferences_video_loop_label": "Repetir sempre: ",
|
||||
"preferences_autoplay_label": "Reprodução automática: ",
|
||||
"preferences_continue_label": "Sempre reproduzir próximo: ",
|
||||
"preferences_continue_label": "Reproduzir a seguir, por padrão: ",
|
||||
"preferences_continue_autoplay_label": "Reproduzir próximo vídeo automaticamente: ",
|
||||
"preferences_listen_label": "Apenas áudio por padrão: ",
|
||||
"preferences_local_label": "Usar proxy nos vídeos: ",
|
||||
"preferences_speed_label": "Velocidade padrão: ",
|
||||
"preferences_quality_label": "Qualidade de vídeo preferida: ",
|
||||
"preferences_volume_label": "Volume de reprodução: ",
|
||||
"preferences_comments_label": "Preferência de comentários: ",
|
||||
"preferences_comments_label": "Comentários padrão: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Preferência de legendas: ",
|
||||
"preferences_captions_label": "Legendas padrão: ",
|
||||
"Fallback captions: ": "Legendas alternativas: ",
|
||||
"preferences_related_videos_label": "Mostrar vídeos relacionados: ",
|
||||
"preferences_annotations_label": "Sempre mostrar anotações: ",
|
||||
"preferences_extend_desc_label": "Estenda automaticamente a descrição do vídeo: ",
|
||||
"preferences_vr_mode_label": "Vídeos interativos de 360 graus: ",
|
||||
"preferences_extend_desc_label": "Expandir automaticamente a descrição do vídeo: ",
|
||||
"preferences_vr_mode_label": "Vídeos interativos de 360 graus (requer WebGL): ",
|
||||
"preferences_category_visual": "Preferências visuais",
|
||||
"preferences_player_style_label": "Estilo do tocador: ",
|
||||
"preferences_player_style_label": "Estilo de reprodução: ",
|
||||
"Dark mode: ": "Modo escuro: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"dark": "escuro",
|
||||
"light": "claro",
|
||||
"preferences_thin_mode_label": "Modo compacto: ",
|
||||
"preferences_category_misc": "Preferências diversas",
|
||||
"preferences_automatic_instance_redirect_label": "Redirecionamento de instância automática (fallback para redirect.invidious.io): ",
|
||||
"preferences_automatic_instance_redirect_label": "Redirecionamento automático de instâncias (alternativa para redirect.invidious.io): ",
|
||||
"preferences_category_subscription": "Preferências de inscrições",
|
||||
"preferences_annotations_subscribed_label": "Sempre mostrar anotações dos vídeos de canais inscritos: ",
|
||||
"preferences_annotations_subscribed_label": "Mostrar anotações por padrão para canais inscritos? ",
|
||||
"Redirect homepage to feed: ": "Redirecionar página inicial para o feed: ",
|
||||
"preferences_max_results_label": "Número de vídeos no feed: ",
|
||||
"preferences_sort_label": "Ordenar vídeos por: ",
|
||||
@ -87,54 +84,55 @@
|
||||
"alphabetically - reverse": "alfabética - ordem inversa",
|
||||
"channel name": "nome do canal",
|
||||
"channel name - reverse": "nome do canal - ordem inversa",
|
||||
"Only show latest video from channel: ": "Mostrar apenas o vídeo mais recente do canal: ",
|
||||
"Only show latest unwatched video from channel: ": "Mostrar apenas o vídeo mais recente não visualizado do canal: ",
|
||||
"preferences_unseen_only_label": "Mostrar apenas vídeos não visualizados: ",
|
||||
"preferences_notifications_only_label": "Mostrar apenas notificações (se existentes): ",
|
||||
"Enable web notifications": "Ativar notificações pela web",
|
||||
"`x` uploaded a video": "`x` publicou um novo vídeo",
|
||||
"Only show latest video from channel: ": "Mostrar apenas vídeos mais recentes do canal: ",
|
||||
"Only show latest unwatched video from channel: ": "Mostrar apenas vídeos mais recentes não assistido do canal: ",
|
||||
"preferences_unseen_only_label": "Mostrar apenas vídeos não assistido: ",
|
||||
"preferences_notifications_only_label": "Mostrar apenas notificações (se houver): ",
|
||||
"Enable web notifications": "Ativar notificações da Web",
|
||||
"`x` uploaded a video": "`x` publicou um vídeo",
|
||||
"`x` is live": "`x` está ao vivo",
|
||||
"preferences_category_data": "Preferências de dados",
|
||||
"Clear watch history": "Limpar histórico de reprodução",
|
||||
"Import/export data": "Importar/Exportar dados",
|
||||
"Clear watch history": "Limpar histórico de exibição",
|
||||
"Import/export data": "Importar/exportar dados",
|
||||
"Change password": "Alterar senha",
|
||||
"Manage subscriptions": "Gerenciar inscrições",
|
||||
"Manage tokens": "Gerenciar tokens",
|
||||
"Watch history": "Histórico de reprodução",
|
||||
"Delete account": "Apagar sua conta",
|
||||
"Watch history": "Histórico de exibição",
|
||||
"Delete account": "Excluir conta",
|
||||
"preferences_category_admin": "Preferências de administrador",
|
||||
"preferences_default_home_label": "Página de início padrão: ",
|
||||
"preferences_feed_menu_label": "Menu do feed: ",
|
||||
"preferences_show_nick_label": "Mostrar o nickname no topo: ",
|
||||
"Top enabled: ": "Habilitar destaques: ",
|
||||
"CAPTCHA enabled: ": "Habilitar CAPTCHA: ",
|
||||
"Login enabled: ": "Habilitar login: ",
|
||||
"Registration enabled: ": "Habilitar registro: ",
|
||||
"Report statistics: ": "Habilitar estatísticas: ",
|
||||
"preferences_default_home_label": "Página inicial padrão: ",
|
||||
"preferences_feed_menu_label": "Guias de feed preferidos: ",
|
||||
"preferences_show_nick_label": "Mostrar nome de usuário na parte superior: ",
|
||||
"Top enabled: ": "Destaques ativados: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA ativado: ",
|
||||
"Login enabled: ": "Fazer login ativado: ",
|
||||
"Registration enabled: ": "Criar conta ativado: ",
|
||||
"Report statistics: ": "Relatório de estatísticas: ",
|
||||
"Save preferences": "Salvar preferências",
|
||||
"Subscription manager": "Gerenciador de inscrições",
|
||||
"Token manager": "Gerenciador de tokens",
|
||||
"Token": "Token",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"Import/export": "Importar/Exportar",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"tokens_count_1": "{{count}} tokens",
|
||||
"tokens_count_2": "{{count}} tokens",
|
||||
"Import/export": "Importar/exportar",
|
||||
"unsubscribe": "cancelar inscrição",
|
||||
"revoke": "revogar",
|
||||
"Subscriptions": "Inscrições",
|
||||
"search": "Pesquisar",
|
||||
"search": "pesquisar",
|
||||
"Log out": "Sair",
|
||||
"Released under the AGPLv3 on Github.": "Lançado sob a AGPLv3 no Github.",
|
||||
"Released under the AGPLv3 on Github.": "Lançado sob a AGPLv3 no GitHub.",
|
||||
"Source available here.": "Código-fonte disponível aqui.",
|
||||
"View JavaScript license information.": "Ver informações da licença do JavaScript.",
|
||||
"View privacy policy.": "Ver a política de privacidade.",
|
||||
"Trending": "Tendências",
|
||||
"View JavaScript license information.": "Informações de licença JavaScript.",
|
||||
"View privacy policy.": "Política de privacidade.",
|
||||
"Trending": "Em alta",
|
||||
"Public": "Público",
|
||||
"Unlisted": "Não listado",
|
||||
"Private": "Privado",
|
||||
"View all playlists": "Mostrar todas listas de reprodução",
|
||||
"View all playlists": "Ver todas as playlists",
|
||||
"Updated `x` ago": "Atualizado `x` atrás",
|
||||
"Delete playlist `x`?": "Apagar a playlist `x`?",
|
||||
"Delete playlist": "Apagar playlist",
|
||||
"Delete playlist `x`?": "Excluir playlist `x`?",
|
||||
"Delete playlist": "Excluir playlist",
|
||||
"Create playlist": "Criar playlist",
|
||||
"Title": "Título",
|
||||
"Playlist privacy": "Privacidade da playlist",
|
||||
@ -142,58 +140,52 @@
|
||||
"Show more": "Mostrar mais",
|
||||
"Show less": "Mostrar menos",
|
||||
"Watch on YouTube": "Assistir no YouTube",
|
||||
"Switch Invidious Instance": "Mudar a instância do Invidious",
|
||||
"Broken? Try another Invidious Instance": "Quebrou? Tente outra Instância do Invidious",
|
||||
"Switch Invidious Instance": "Alterar instância Invidious",
|
||||
"Hide annotations": "Ocultar anotações",
|
||||
"Show annotations": "Mostrar anotações",
|
||||
"Genre: ": "Gênero: ",
|
||||
"License: ": "Licença: ",
|
||||
"Family friendly? ": "Filtrar conteúdo impróprio: ",
|
||||
"Wilson score: ": "Pontuação de Wilson: ",
|
||||
"Engagement: ": "Empenho: ",
|
||||
"Engagement: ": "Engajamento: ",
|
||||
"Whitelisted regions: ": "Regiões permitidas: ",
|
||||
"Blacklisted regions: ": "Regiões bloqueadas: ",
|
||||
"Shared `x`": "Compartilhado `x`",
|
||||
"Shared `x`": "Publicado em `x`",
|
||||
"Premieres in `x`": "Estreia em `x`",
|
||||
"Premieres `x`": "Estreia `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.": "Oi! Parece que seu JavaScript está desativado. Clique aqui para ver os comentários, entretanto eles podem levar um pouco mais de tempo para carregar.",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Olá! Parece que você está com o JavaScript desativado. Clique aqui para ver os comentários, mas lembre-se de que eles podem demorar um pouco mais para carregar.",
|
||||
"View YouTube comments": "Ver comentários no YouTube",
|
||||
"View more comments on Reddit": "Ver mais comentários no Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentários",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentário",
|
||||
"": "Ver `x` comentários"
|
||||
},
|
||||
"View Reddit comments": "Ver comentários no Reddit",
|
||||
"Hide replies": "Ocultar respostas",
|
||||
"Show replies": "Mostrar respostas",
|
||||
"Incorrect password": "Senha incorreta",
|
||||
"Quota exceeded, try again in a few hours": "Cota excedida, tente novamente em algumas horas",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Não foi possível fazer login, sua autenticação em dois passos (app autenticador ou sms) deve estar ativada.",
|
||||
"Invalid TFA code": "Código TFA inválido",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Falha no login. Isso pode acontecer porque a autenticação em dois passos está desativada para sua conta.",
|
||||
"Wrong answer": "Resposta incorreta",
|
||||
"Erroneous CAPTCHA": "CAPTCHA inválido",
|
||||
"CAPTCHA is a required field": "O CAPTCHA é um campo obrigatório",
|
||||
"CAPTCHA is a required field": "CAPTCHA é um campo obrigatório",
|
||||
"User ID is a required field": "O nome de usuário é um campo obrigatório",
|
||||
"Password is a required field": "A senha é um campo obrigatório",
|
||||
"Wrong username or password": "Nome de usuário ou senha inválidos",
|
||||
"Please sign in using 'Log in with Google'": "Por favor, entre usando 'Entrar com conta Google'",
|
||||
"Password cannot be empty": "A senha não pode ficar em branco",
|
||||
"Password cannot be longer than 55 characters": "A senha não pode ter mais que 55 caracteres",
|
||||
"Please log in": "Por favor, inicie sua sessão",
|
||||
"Invidious Private Feed for `x`": "Feed Privado do Invidious para `x`",
|
||||
"channel:`x`": "canal: `x`",
|
||||
"Deleted or invalid channel": "Este canal foi apagado ou é inválido",
|
||||
"Deleted or invalid channel": "Canal excluído ou inválido",
|
||||
"This channel does not exist.": "Este canal não existe.",
|
||||
"Could not get channel info.": "Não foi possível obter as informações do canal.",
|
||||
"Could not fetch comments": "Não foi possível obter os comentários",
|
||||
"`x` ago": "`x` atrás",
|
||||
"Load more": "Carregar mais",
|
||||
"Could not create mix.": "Não foi possível criar o mix.",
|
||||
"Empty playlist": "Lista de reprodução vazia",
|
||||
"Not a playlist.": "Não é uma lista de reprodução.",
|
||||
"Playlist does not exist.": "A lista de reprodução não existe.",
|
||||
"Could not pull trending pages.": "Não foi possível obter as páginas dos vídeos em alta.",
|
||||
"Empty playlist": "Playlist vazia",
|
||||
"Not a playlist.": "Não é uma playlist.",
|
||||
"Playlist does not exist.": "A playlist não existe.",
|
||||
"Could not pull trending pages.": "Não foi possível obter as páginas de vídeos em alta.",
|
||||
"Hidden field \"challenge\" is a required field": "O campo oculto \"desafio\" é obrigatório",
|
||||
"Hidden field \"token\" is a required field": "O campo oculto \"token\" é obrigatório",
|
||||
"Erroneous challenge": "Desafio inválido",
|
||||
@ -306,118 +298,132 @@
|
||||
"Yiddish": "Iídiche",
|
||||
"Yoruba": "Iorubá",
|
||||
"Zulu": "Zulu",
|
||||
"generic_count_years": "{{count}} ano",
|
||||
"generic_count_years_plural": "{{count}} anos",
|
||||
"generic_count_months": "{{count}} mês",
|
||||
"generic_count_months_plural": "{{count}} meses",
|
||||
"generic_count_weeks": "{{count}} semana",
|
||||
"generic_count_weeks_plural": "{{count}} semanas",
|
||||
"generic_count_days": "{{count}} dia",
|
||||
"generic_count_days_plural": "{{count}} dias",
|
||||
"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",
|
||||
"Fallback comments: ": "Comentários alternativos: ",
|
||||
"generic_count_years_0": "{{count}} ano",
|
||||
"generic_count_years_1": "{{count}} anos",
|
||||
"generic_count_years_2": "{{count}} anos",
|
||||
"generic_count_months_0": "{{count}} mês",
|
||||
"generic_count_months_1": "{{count}} meses",
|
||||
"generic_count_months_2": "{{count}} meses",
|
||||
"generic_count_weeks_0": "{{count}} semana",
|
||||
"generic_count_weeks_1": "{{count}} semanas",
|
||||
"generic_count_weeks_2": "{{count}} semanas",
|
||||
"generic_count_days_0": "{{count}} dia",
|
||||
"generic_count_days_1": "{{count}} dias",
|
||||
"generic_count_days_2": "{{count}} dias",
|
||||
"generic_count_hours_0": "{{count}} hora",
|
||||
"generic_count_hours_1": "{{count}} horas",
|
||||
"generic_count_hours_2": "{{count}} horas",
|
||||
"generic_count_minutes_0": "{{count}} minuto",
|
||||
"generic_count_minutes_1": "{{count}} minutos",
|
||||
"generic_count_minutes_2": "{{count}} minutos",
|
||||
"generic_count_seconds_0": "{{count}} segundo",
|
||||
"generic_count_seconds_1": "{{count}} segundos",
|
||||
"generic_count_seconds_2": "{{count}} segundos",
|
||||
"Fallback comments: ": "Alternativa para comentários: ",
|
||||
"Popular": "Populares",
|
||||
"Search": "Procurar",
|
||||
"Top": "No topo",
|
||||
"Search": "Pesquisar",
|
||||
"Top": "Destaques",
|
||||
"About": "Sobre",
|
||||
"Rating: ": "Avaliação: ",
|
||||
"preferences_locale_label": "Idioma: ",
|
||||
"View as playlist": "Ver como lista de reprodução",
|
||||
"View as playlist": "Ver como playlist",
|
||||
"Default": "Padrão",
|
||||
"Music": "Músicas",
|
||||
"Gaming": "Jogos",
|
||||
"News": "Notícias",
|
||||
"Movies": "Filmes",
|
||||
"Download": "Baixar",
|
||||
"Download": "Download",
|
||||
"Download as: ": "Baixar como: ",
|
||||
"%A %B %-d, %Y": "%A %-d %B %Y",
|
||||
"(edited)": "(editado)",
|
||||
"YouTube comment permalink": "Link permanente do comentário no YouTube",
|
||||
"permalink": "Link permanente",
|
||||
"`x` marked it with a ❤": "`x` foi marcado como ❤",
|
||||
"`x` marked it with a ❤": "`x` foi marcado com um ❤",
|
||||
"Audio mode": "Modo de áudio",
|
||||
"Video mode": "Modo de vídeo",
|
||||
"Videos": "Vídeos",
|
||||
"Playlists": "Listas de reprodução",
|
||||
"Community": "Comunidade",
|
||||
"relevance": "relevância",
|
||||
"rating": "avaliação",
|
||||
"date": "data",
|
||||
"views": "visualizações",
|
||||
"content_type": "content_type",
|
||||
"duration": "duração",
|
||||
"features": "recursos",
|
||||
"sort": "ordenar",
|
||||
"hour": "hora",
|
||||
"today": "hoje",
|
||||
"week": "semana",
|
||||
"month": "mês",
|
||||
"year": "ano",
|
||||
"video": "vídeo",
|
||||
"channel": "Canal",
|
||||
"playlist": "playlist",
|
||||
"movie": "filme",
|
||||
"show": "show",
|
||||
"hd": "hd",
|
||||
"subtitles": "legendas",
|
||||
"creative_commons": "creative_commons",
|
||||
"3d": "3d",
|
||||
"live": "ao vivo",
|
||||
"4k": "4k",
|
||||
"location": "localização",
|
||||
"hdr": "hdr",
|
||||
"filter": "filtro",
|
||||
"channel_tab_videos_label": "Vídeos",
|
||||
"Playlists": "Playlists",
|
||||
"channel_tab_community_label": "Comunidade",
|
||||
"search_filters_sort_option_relevance": "Relevância",
|
||||
"search_filters_sort_option_rating": "Avaliação",
|
||||
"search_filters_sort_option_date": "Data de publicação",
|
||||
"search_filters_sort_option_views": "Visualizações",
|
||||
"search_filters_type_label": "Tipo",
|
||||
"search_filters_duration_label": "Duração",
|
||||
"search_filters_features_label": "Características",
|
||||
"search_filters_sort_label": "Ordenar por",
|
||||
"search_filters_date_option_hour": "Últimas horas",
|
||||
"search_filters_date_option_today": "Hoje",
|
||||
"search_filters_date_option_week": "Esta semana",
|
||||
"search_filters_date_option_month": "Este mês",
|
||||
"search_filters_date_option_year": "Este ano",
|
||||
"search_filters_type_option_video": "Vídeo",
|
||||
"search_filters_type_option_channel": "Canal",
|
||||
"search_filters_type_option_playlist": "Playlist",
|
||||
"search_filters_type_option_movie": "Filme",
|
||||
"search_filters_type_option_show": "Séries",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Legendas",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "AO VIVO",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Localização",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Versão atual: ",
|
||||
"next_steps_error_message": "Depois disso, você deve tentar: ",
|
||||
"next_steps_error_message_refresh": "Atualizar",
|
||||
"next_steps_error_message_refresh": "Recarregar",
|
||||
"next_steps_error_message_go_to_youtube": "Ir para o YouTube",
|
||||
"footer_donate_page": "Doe",
|
||||
"adminprefs_modified_source_code_url_label": "URL para repositório de código fonte modificado",
|
||||
"long": "Longo (> 20 minutos)",
|
||||
"short": "Curto (< 4 minutos)",
|
||||
"footer_donate_page": "Doar",
|
||||
"adminprefs_modified_source_code_url_label": "URL para o repositório do código-fonte modificado",
|
||||
"search_filters_duration_option_long": "Longo (> 20 minutos)",
|
||||
"search_filters_duration_option_short": "Curto (< 4 minutos)",
|
||||
"footer_documentation": "Documentação",
|
||||
"footer_source_code": "Código fonte",
|
||||
"footer_original_source_code": "Código fonte original",
|
||||
"footer_modfied_source_code": "Código Fonte Modificado",
|
||||
"preferences_quality_dash_label": "Qualidade de vídeo do painel preferida: ",
|
||||
"footer_source_code": "Código-fonte",
|
||||
"footer_original_source_code": "Código-fonte original",
|
||||
"footer_modfied_source_code": "Código-fonte modificado",
|
||||
"preferences_quality_dash_label": "Qualidade de vídeo DASH preferida: ",
|
||||
"preferences_region_label": "País do conteúdo: ",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"generic_videos_count": "{{count}} vídeo",
|
||||
"generic_videos_count_plural": "{{count}} vídeos",
|
||||
"generic_playlists_count": "{{count}} lista de reprodução",
|
||||
"generic_playlists_count_plural": "{{count}} listas de reprodução",
|
||||
"generic_subscribers_count": "{{count}} inscrito",
|
||||
"generic_subscribers_count_plural": "{{count}} inscritos",
|
||||
"generic_subscriptions_count": "{{count}} inscrição",
|
||||
"generic_subscriptions_count_plural": "{{count}} inscrições",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notificação não vista",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notificações não vistas",
|
||||
"comments_view_x_replies": "Ver {{count}} resposta",
|
||||
"comments_view_x_replies_plural": "Ver {{count}} respostas",
|
||||
"comments_points_count": "{{count}} ponto",
|
||||
"comments_points_count_plural": "{{count}} pontos",
|
||||
"generic_videos_count_0": "{{count}} vídeo",
|
||||
"generic_videos_count_1": "{{count}} vídeos",
|
||||
"generic_videos_count_2": "{{count}} vídeos",
|
||||
"generic_playlists_count_0": "{{count}} playlist",
|
||||
"generic_playlists_count_1": "{{count}} playlists",
|
||||
"generic_playlists_count_2": "{{count}} playlists",
|
||||
"generic_subscribers_count_0": "{{count}} inscrito",
|
||||
"generic_subscribers_count_1": "{{count}} inscritos",
|
||||
"generic_subscribers_count_2": "{{count}} inscritos",
|
||||
"generic_subscriptions_count_0": "{{count}} inscrição",
|
||||
"generic_subscriptions_count_1": "{{count}} inscrições",
|
||||
"generic_subscriptions_count_2": "{{count}} inscrições",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} notificação não visualizada",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} notificações não visualizadas",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} notificações não visualizadas",
|
||||
"comments_view_x_replies_0": "Ver {{count}} resposta",
|
||||
"comments_view_x_replies_1": "Ver {{count}} respostas",
|
||||
"comments_view_x_replies_2": "Ver {{count}} respostas",
|
||||
"comments_points_count_0": "{{count}} ponto",
|
||||
"comments_points_count_1": "{{count}} pontos",
|
||||
"comments_points_count_2": "{{count}} pontos",
|
||||
"crash_page_you_found_a_bug": "Parece que você encontrou um erro no Invidious!",
|
||||
"crash_page_before_reporting": "Antes de reportar um erro, verifique se você:",
|
||||
"preferences_save_player_pos_label": "Salvar a posição de reprodução: ",
|
||||
"purchased": "Comprado",
|
||||
"crash_page_before_reporting": "Antes de informar um erro, verifique se você:",
|
||||
"preferences_save_player_pos_label": "Salvar posição de reprodução: ",
|
||||
"search_filters_features_option_purchased": "Comprado",
|
||||
"crash_page_refresh": "tentou <a href=\"`x`\">recarregar a página</a>",
|
||||
"crash_page_switch_instance": "tentou <a href=\"`x`\">usar outra instância</a>",
|
||||
"crash_page_search_issue": "procurou por um <a href=\"`x`\">erro existente no Github</a>",
|
||||
"crash_page_search_issue": "procurou por um <a href=\"`x`\">erro existente no GitHub</a>",
|
||||
"crash_page_report_issue": "Se nenhuma opção acima ajudou, por favor <a href=\"`x`\">abra um novo problema no Github</a> (preferencialmente em inglês) e inclua o seguinte texto (NÃO traduza):",
|
||||
"crash_page_read_the_faq": "leu as <a href=\"`x`\">Perguntas Frequentes (FAQ)</a>",
|
||||
"generic_views_count": "{{count}} visualização",
|
||||
"generic_views_count_plural": "{{count}} visualizações",
|
||||
"preferences_quality_option_dash": "DASH (qualidade adaptiva)",
|
||||
"crash_page_read_the_faq": "leu as <a href=\"`x`\">Perguntas frequentes (FAQ)</a>",
|
||||
"generic_views_count_0": "{{count}} visualização",
|
||||
"generic_views_count_1": "{{count}} visualizações",
|
||||
"generic_views_count_2": "{{count}} visualizações",
|
||||
"preferences_quality_option_dash": "DASH (qualidade adaptável)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_small": "Pequeno",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_best": "Melhor",
|
||||
"preferences_quality_dash_option_worst": "Pior",
|
||||
"preferences_quality_dash_option_best": "Melhor qualidade",
|
||||
"preferences_quality_dash_option_worst": "Pior qualidade",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
@ -428,14 +434,86 @@
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_option_medium": "Médio",
|
||||
"360": "360°",
|
||||
"none": "none",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"none": "nenhum",
|
||||
"videoinfo_watch_on_youTube": "Assistir no YouTube",
|
||||
"videoinfo_youTube_embed_link": "Embutir",
|
||||
"videoinfo_invidious_embed_link": "Link Embutido",
|
||||
"videoinfo_youTube_embed_link": "Embed",
|
||||
"videoinfo_invidious_embed_link": "Embed link",
|
||||
"download_subtitles": "Legendas - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` listas de reprodução criadas",
|
||||
"user_saved_playlists": "`x` listas de reprodução salvas",
|
||||
"user_created_playlists": "`x` playlists criadas",
|
||||
"user_saved_playlists": "`x` playlists salvas",
|
||||
"Video unavailable": "Vídeo indisponível",
|
||||
"videoinfo_started_streaming_x_ago": "Iniciou a transmissão a `x`"
|
||||
"videoinfo_started_streaming_x_ago": "Iniciou a transmissão a `x`",
|
||||
"search_filters_title": "Filtro",
|
||||
"preferences_watch_history_label": "Ativar histórico de exibição: ",
|
||||
"search_message_no_results": "Nenhum resultado encontrado.",
|
||||
"search_message_change_filters_or_query": "Tente ampliar sua consulta de pesquisa e/ou alterar os filtros.",
|
||||
"English (United Kingdom)": "Inglês (Reino Unido)",
|
||||
"English (United States)": "Inglês (Estados Unidos)",
|
||||
"German (auto-generated)": "Alemão (gerado automaticamente)",
|
||||
"Chinese": "Chinês",
|
||||
"Chinese (China)": "Chinês (China)",
|
||||
"Cantonese (Hong Kong)": "Cantonês (Hong Kong)",
|
||||
"Interlingue": "Interlíngua",
|
||||
"search_filters_type_option_all": "Qualquer tipo",
|
||||
"search_filters_apply_button": "Aplicar filtros selecionados",
|
||||
"Chinese (Hong Kong)": "Chinês (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Chinês (Taiwan)",
|
||||
"Japanese (auto-generated)": "Japonês (gerado automaticamente)",
|
||||
"Korean (auto-generated)": "Coreano (gerado automaticamente)",
|
||||
"Portuguese (auto-generated)": "Português (gerado automaticamente)",
|
||||
"Portuguese (Brazil)": "Português (Brasil)",
|
||||
"Russian (auto-generated)": "Russo (gerado automaticamente)",
|
||||
"Vietnamese (auto-generated)": "Vietnamita (gerado automaticamente)",
|
||||
"search_filters_date_label": "Data de publicação",
|
||||
"search_filters_date_option_none": "Qualquer data",
|
||||
"Dutch (auto-generated)": "Holandês (gerado automaticamente)",
|
||||
"French (auto-generated)": "Francês (gerado automaticamente)",
|
||||
"Indonesian (auto-generated)": "Indonésio (gerado automaticamente)",
|
||||
"Italian (auto-generated)": "Italiano (gerado automaticamente)",
|
||||
"Spanish (auto-generated)": "Espanhol (gerado automaticamente)",
|
||||
"Spanish (Mexico)": "Espanhol (México)",
|
||||
"search_filters_duration_option_none": "Qualquer duração",
|
||||
"search_message_use_another_instance": "Você também pode <a href=\"`x`\">pesquisar em outra instância</a>.",
|
||||
"Spanish (Spain)": "Espanhol (Espanha)",
|
||||
"Turkish (auto-generated)": "Turco (gerado automaticamente)",
|
||||
"search_filters_duration_option_medium": "Médio (4 - 20 minutos)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"Popular enabled: ": "Página \"Populares\" ativada: ",
|
||||
"error_video_not_in_playlist": "O vídeo solicitado não existe nesta playlist. <a href=\"`x`\">Clique aqui para acessar a página inicial da playlist.</a>",
|
||||
"channel_tab_channels_label": "Canais",
|
||||
"channel_tab_playlists_label": "Playlists",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"channel_tab_streams_label": "Transmissão ao vivo",
|
||||
"Music in this video": "Música neste vídeo",
|
||||
"Artist: ": "Artista: ",
|
||||
"Album: ": "Álbum: ",
|
||||
"Standard YouTube license": "Licença padrão do YouTube",
|
||||
"Song: ": "Música: ",
|
||||
"Channel Sponsor": "Patrocinador do canal",
|
||||
"Download is disabled": "Download indisponível",
|
||||
"Import YouTube playlist (.csv)": "Importar playlist do YouTube (.csv)",
|
||||
"generic_button_delete": "Excluir",
|
||||
"generic_button_save": "Salvar",
|
||||
"generic_button_edit": "Editar",
|
||||
"playlist_button_add_items": "Adicionar vídeos",
|
||||
"channel_tab_releases_label": "Lançamentos",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"generic_button_cancel": "Cancelar",
|
||||
"generic_button_rss": "RSS",
|
||||
"generic_channels_count_0": "{{count}} canal",
|
||||
"generic_channels_count_1": "{{count}} canais",
|
||||
"generic_channels_count_2": "{{count}} canais",
|
||||
"Import YouTube watch history (.json)": "Importar histórico de exibição do YouTube (.json)",
|
||||
"toggle_theme": "Alternar tema",
|
||||
"Add to playlist": "Adicionar à playlist",
|
||||
"Add to playlist: ": "Adicionar à playlist: ",
|
||||
"Search for videos": "Pesquisar vídeos",
|
||||
"The Popular feed has been disabled by the administrator.": "O feed \"Populares\" foi desativado pelo administrador.",
|
||||
"Answer": "Resposta",
|
||||
"carousel_slide": "Slide {{current}} de {{total}}",
|
||||
"carousel_skip": "Ignorar carrossel",
|
||||
"carousel_go_to": "Ir ao slide `x`",
|
||||
"preferences_preload_label": "Pré-carregar dados do vídeo: ",
|
||||
"Filipino (auto-generated)": "Filipino (gerado automaticamente)"
|
||||
}
|
||||
|
@ -14,22 +14,21 @@
|
||||
"Clear watch history?": "Limpar histórico de reprodução?",
|
||||
"New password": "Nova palavra-chave",
|
||||
"New passwords must match": "As novas palavra-chaves devem corresponder",
|
||||
"Cannot change password for Google accounts": "Não é possível alterar a palavra-chave para contas do Google",
|
||||
"Authorize token?": "Autorizar token?",
|
||||
"Authorize token for `x`?": "Autorizar token para `x`?",
|
||||
"Yes": "Sim",
|
||||
"No": "Não",
|
||||
"Import and Export Data": "Importar e exportar dados",
|
||||
"Import": "Importar",
|
||||
"Import Invidious data": "Importar dados do Invidious",
|
||||
"Import YouTube subscriptions": "Importar subscrições do YouTube",
|
||||
"Import Invidious data": "Importar dados JSON do Invidious",
|
||||
"Import YouTube subscriptions": "Importar subscrições do YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importar subscrições do FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importar subscrições do NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importar dados do NewPipe (.zip)",
|
||||
"Export": "Exportar",
|
||||
"Export subscriptions as OPML": "Exportar subscrições como OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportar subscrições como OPML (para NewPipe e FreeTube)",
|
||||
"Export data as JSON": "Exportar dados como JSON",
|
||||
"Export data as JSON": "Exportar dados Invidious como JSON",
|
||||
"Delete account?": "Eliminar conta?",
|
||||
"History": "Histórico",
|
||||
"An alternative front-end to YouTube": "Uma interface alternativa ao YouTube",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "código-fonte",
|
||||
"Log in": "Iniciar sessão",
|
||||
"Log in/register": "Iniciar sessão/registar",
|
||||
"Log in with Google": "Iniciar sessão com o Google",
|
||||
"User ID": "Utilizador",
|
||||
"Password": "Palavra-chave",
|
||||
"Time (h:mm:ss):": "Tempo (h:mm:ss):",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "Iniciar sessão",
|
||||
"Register": "Registar",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Código de verificação do Google",
|
||||
"Preferences": "Preferências",
|
||||
"preferences_category_player": "Preferências do reprodutor",
|
||||
"preferences_video_loop_label": "Repetir sempre: ",
|
||||
@ -60,13 +57,13 @@
|
||||
"preferences_volume_label": "Volume da reprodução: ",
|
||||
"preferences_comments_label": "Preferência dos comentários: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "reddit",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Legendas predefinidas: ",
|
||||
"Fallback captions: ": "Legendas alternativas: ",
|
||||
"preferences_related_videos_label": "Mostrar vídeos relacionados: ",
|
||||
"preferences_annotations_label": "Mostrar anotações sempre: ",
|
||||
"preferences_extend_desc_label": "Estender automaticamente a descrição do vídeo: ",
|
||||
"preferences_vr_mode_label": "Vídeos interativos de 360 graus: ",
|
||||
"preferences_vr_mode_label": "Vídeos interativos de 360 graus (necessita de WebGL): ",
|
||||
"preferences_category_visual": "Preferências visuais",
|
||||
"preferences_player_style_label": "Estilo do reprodutor: ",
|
||||
"Dark mode: ": "Modo escuro: ",
|
||||
@ -123,7 +120,7 @@
|
||||
"Subscriptions": "Subscrições",
|
||||
"search": "pesquisar",
|
||||
"Log out": "Terminar sessão",
|
||||
"Released under the AGPLv3 on Github.": "Lançado sob a AGPLv3 no Github.",
|
||||
"Released under the AGPLv3 on Github.": "Lançado sob a AGPLv3 no GitHub.",
|
||||
"Source available here.": "Código-fonte disponível aqui.",
|
||||
"View JavaScript license information.": "Ver informações da licença do JavaScript.",
|
||||
"View privacy policy.": "Ver a política de privacidade.",
|
||||
@ -133,17 +130,16 @@
|
||||
"Private": "Privado",
|
||||
"View all playlists": "Ver todas as listas de reprodução",
|
||||
"Updated `x` ago": "Atualizado `x` atrás",
|
||||
"Delete playlist `x`?": "Eliminar a lista de reprodução 'x'?",
|
||||
"Delete playlist `x`?": "Eliminar a lista de reprodução `x`?",
|
||||
"Delete playlist": "Eliminar lista de reprodução",
|
||||
"Create playlist": "Criar lista de reprodução",
|
||||
"Title": "Título",
|
||||
"Playlist privacy": "Privacidade da lista de reprodução",
|
||||
"Editing playlist `x`": "A editar lista de reprodução 'x'",
|
||||
"Editing playlist `x`": "A editar lista de reprodução `x`",
|
||||
"Show more": "Mostrar mais",
|
||||
"Show less": "Mostrar menos",
|
||||
"Watch on YouTube": "Ver no YouTube",
|
||||
"Switch Invidious Instance": "Mudar a instância do Invidious",
|
||||
"Broken? Try another Invidious Instance": "Falhou? Tente outra Instância do Invidious",
|
||||
"Hide annotations": "Ocultar anotações",
|
||||
"Show annotations": "Mostrar anotações",
|
||||
"Genre: ": "Género: ",
|
||||
@ -154,8 +150,8 @@
|
||||
"Whitelisted regions: ": "Regiões permitidas: ",
|
||||
"Blacklisted regions: ": "Regiões bloqueadas: ",
|
||||
"Shared `x`": "Partilhado `x`",
|
||||
"Premieres in `x`": "Estreias em 'x'",
|
||||
"Premieres `x`": "Estreias 'x'",
|
||||
"Premieres in `x`": "Estreias em `x`",
|
||||
"Premieres `x`": "Estreias `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.": "Olá! Parece que o JavaScript está desativado. Clique aqui para ver os comentários, entretanto eles podem levar mais tempo para carregar.",
|
||||
"View YouTube comments": "Ver comentários do YouTube",
|
||||
"View more comments on Reddit": "Ver mais comentários no Reddit",
|
||||
@ -167,22 +163,17 @@
|
||||
"Hide replies": "Ocultar respostas",
|
||||
"Show replies": "Mostrar respostas",
|
||||
"Incorrect password": "Palavra-chave incorreta",
|
||||
"Quota exceeded, try again in a few hours": "Cota excedida. Tente novamente dentro de algumas horas",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Não é possível iniciar a sessão, certifique-se que a autenticação de dois fatores (Autenticador ou SMS) está ativada.",
|
||||
"Invalid TFA code": "Código TFA inválido",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Falhou o início de sessão. Isto pode ser devido a não ter ativado na sua conta a autenticação de dois fatores (2FA).",
|
||||
"Wrong answer": "Resposta errada",
|
||||
"Erroneous CAPTCHA": "CAPTCHA inválido",
|
||||
"CAPTCHA is a required field": "CAPTCHA é um campo obrigatório",
|
||||
"User ID is a required field": "O nome de utilizador é um campo obrigatório",
|
||||
"Password is a required field": "Palavra-chave é um campo obrigatório",
|
||||
"Wrong username or password": "Nome de utilizador ou palavra-chave incorreto",
|
||||
"Please sign in using 'Log in with Google'": "Por favor, inicie sessão usando 'Iniciar sessão com o Google'",
|
||||
"Password cannot be empty": "A palavra-chave não pode estar vazia",
|
||||
"Password cannot be longer than 55 characters": "A palavra-chave não pode ser superior a 55 caracteres",
|
||||
"Please log in": "Por favor, inicie sessão",
|
||||
"Invidious Private Feed for `x`": "Feed Privado do Invidious para `x`",
|
||||
"channel:`x`": "canal:'x'",
|
||||
"channel:`x`": "canal:`x`",
|
||||
"Deleted or invalid channel": "Canal eliminado ou inválido",
|
||||
"This channel does not exist.": "Este canal não existe.",
|
||||
"Could not get channel info.": "Não foi possível obter as informações do canal.",
|
||||
@ -342,38 +333,143 @@
|
||||
"`x` marked it with a ❤": "`x` foi marcado como ❤",
|
||||
"Audio mode": "Modo de áudio",
|
||||
"Video mode": "Modo de vídeo",
|
||||
"Videos": "Vídeos",
|
||||
"channel_tab_videos_label": "Vídeos",
|
||||
"Playlists": "Listas de reprodução",
|
||||
"Community": "Comunidade",
|
||||
"relevance": "Relevância",
|
||||
"rating": "Avaliação",
|
||||
"date": "Data de envio",
|
||||
"views": "Visualizações",
|
||||
"content_type": "Tipo",
|
||||
"duration": "Duração",
|
||||
"features": "Funcionalidades",
|
||||
"sort": "Ordenar por",
|
||||
"hour": "Última hora",
|
||||
"today": "Hoje",
|
||||
"week": "Esta semana",
|
||||
"month": "Este mês",
|
||||
"year": "Este ano",
|
||||
"video": "Vídeo",
|
||||
"channel": "Canal",
|
||||
"playlist": "Lista de reprodução",
|
||||
"movie": "Filme",
|
||||
"show": "Espetáculo",
|
||||
"hd": "HD",
|
||||
"subtitles": "Legendas",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Em direto",
|
||||
"4k": "4K",
|
||||
"location": "Localização",
|
||||
"hdr": "HDR",
|
||||
"filter": "Filtro",
|
||||
"channel_tab_community_label": "Comunidade",
|
||||
"search_filters_sort_option_relevance": "Relevância",
|
||||
"search_filters_sort_option_rating": "Avaliação",
|
||||
"search_filters_sort_option_date": "Data de envio",
|
||||
"search_filters_sort_option_views": "Visualizações",
|
||||
"search_filters_type_label": "Tipo",
|
||||
"search_filters_duration_label": "Duração",
|
||||
"search_filters_features_label": "Funcionalidades",
|
||||
"search_filters_sort_label": "Ordenar por",
|
||||
"search_filters_date_option_hour": "Última hora",
|
||||
"search_filters_date_option_today": "Hoje",
|
||||
"search_filters_date_option_week": "Esta semana",
|
||||
"search_filters_date_option_month": "Este mês",
|
||||
"search_filters_date_option_year": "Este ano",
|
||||
"search_filters_type_option_video": "Vídeo",
|
||||
"search_filters_type_option_channel": "Canal",
|
||||
"search_filters_type_option_playlist": "Lista de reprodução",
|
||||
"search_filters_type_option_movie": "Filme",
|
||||
"search_filters_type_option_show": "Espetáculo",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Legendas",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Em direto",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Localização",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Versão atual: ",
|
||||
"next_steps_error_message": "Pode tentar as seguintes opções: ",
|
||||
"next_steps_error_message_refresh": "Atualizar",
|
||||
"next_steps_error_message_go_to_youtube": "Ir ao YouTube"
|
||||
"next_steps_error_message_go_to_youtube": "Ir ao YouTube",
|
||||
"search_filters_title": "Filtro",
|
||||
"generic_videos_count": "{{count}} vídeo",
|
||||
"generic_videos_count_plural": "{{count}} vídeos",
|
||||
"generic_playlists_count": "{{count}} lista de reprodução",
|
||||
"generic_playlists_count_plural": "{{count}} listas de reprodução",
|
||||
"generic_subscriptions_count": "{{count}} inscrição",
|
||||
"generic_subscriptions_count_plural": "{{count}} inscrições",
|
||||
"generic_views_count": "{{count}} visualização",
|
||||
"generic_views_count_plural": "{{count}} visualizações",
|
||||
"generic_subscribers_count": "{{count}} inscrito",
|
||||
"generic_subscribers_count_plural": "{{count}} inscritos",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_label": "Qualidade de vídeo DASH preferida: ",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notificação não vista",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notificações não vistas",
|
||||
"Popular enabled: ": "Página \"popular\" ativada: ",
|
||||
"search_message_no_results": "Nenhum resultado encontrado.",
|
||||
"preferences_quality_dash_option_auto": "Automático",
|
||||
"preferences_region_label": "País do conteúdo: ",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_watch_history_label": "Ativar histórico de reprodução: ",
|
||||
"preferences_quality_dash_option_best": "Melhor",
|
||||
"preferences_quality_dash_option_worst": "Pior",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_dash": "DASH (qualidade adaptativa)",
|
||||
"preferences_quality_option_medium": "Média",
|
||||
"preferences_quality_option_small": "Baixa",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"Video unavailable": "Vídeo não disponível",
|
||||
"Russian (auto-generated)": "Russo (gerado automaticamente)",
|
||||
"comments_view_x_replies": "Ver {{count}} resposta",
|
||||
"comments_view_x_replies_plural": "Ver {{count}} respostas",
|
||||
"comments_points_count": "{{count}} ponto",
|
||||
"comments_points_count_plural": "{{count}} pontos",
|
||||
"English (United Kingdom)": "Inglês (Reino Unido)",
|
||||
"Chinese (Hong Kong)": "Chinês (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Chinês (Taiwan)",
|
||||
"Dutch (auto-generated)": "Holandês (gerado automaticamente)",
|
||||
"French (auto-generated)": "Francês (gerado automaticamente)",
|
||||
"German (auto-generated)": "Alemão (gerado automaticamente)",
|
||||
"Indonesian (auto-generated)": "Indonésio (gerado automaticamente)",
|
||||
"Interlingue": "Interlíngua",
|
||||
"Italian (auto-generated)": "Italiano (gerado automaticamente)",
|
||||
"Japanese (auto-generated)": "Japonês (gerado automaticamente)",
|
||||
"Korean (auto-generated)": "Coreano (gerado automaticamente)",
|
||||
"Portuguese (auto-generated)": "Português (gerado automaticamente)",
|
||||
"Portuguese (Brazil)": "Português (Brasil)",
|
||||
"Spanish (Spain)": "Espanhol (Espanha)",
|
||||
"Vietnamese (auto-generated)": "Vietnamita (gerado automaticamente)",
|
||||
"search_filters_type_option_all": "Qualquer tipo",
|
||||
"search_filters_duration_option_none": "Qualquer duração",
|
||||
"search_filters_duration_option_short": "Curto (< 4 minutos)",
|
||||
"search_filters_duration_option_medium": "Médio (4 - 20 minutos)",
|
||||
"search_filters_duration_option_long": "Longo (> 20 minutos)",
|
||||
"search_filters_features_option_purchased": "Comprado",
|
||||
"search_filters_apply_button": "Aplicar filtros selecionados",
|
||||
"videoinfo_watch_on_youTube": "Ver no YouTube",
|
||||
"videoinfo_youTube_embed_link": "Incorporar",
|
||||
"adminprefs_modified_source_code_url_label": "URL do repositório do código-fonte alterado",
|
||||
"videoinfo_invidious_embed_link": "Incorporar hiperligação",
|
||||
"none": "nenhum",
|
||||
"videoinfo_started_streaming_x_ago": "Iniciou a transmissão há `x`",
|
||||
"download_subtitles": "Legendas - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` listas de reprodução criadas",
|
||||
"user_saved_playlists": "`x` listas de reprodução guardadas",
|
||||
"preferences_save_player_pos_label": "Guardar a posição de reprodução atual do vídeo: ",
|
||||
"Turkish (auto-generated)": "Turco (gerado automaticamente)",
|
||||
"Cantonese (Hong Kong)": "Cantonês (Hong Kong)",
|
||||
"Chinese (China)": "Chinês (China)",
|
||||
"Spanish (auto-generated)": "Espanhol (gerado automaticamente)",
|
||||
"Spanish (Mexico)": "Espanhol (México)",
|
||||
"English (United States)": "Inglês (Estados Unidos)",
|
||||
"footer_donate_page": "Doar",
|
||||
"footer_documentation": "Documentação",
|
||||
"footer_source_code": "Código-fonte",
|
||||
"footer_original_source_code": "Código-fonte original",
|
||||
"footer_modfied_source_code": "Código-fonte alterado",
|
||||
"Chinese": "Chinês",
|
||||
"search_filters_date_label": "Data de publicação",
|
||||
"search_filters_date_option_none": "Qualquer data",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_message_use_another_instance": " Também pode <a href=\"`x`\">pesquisar noutra instância</a>.",
|
||||
"crash_page_you_found_a_bug": "Parece que encontrou um erro no Invidious!",
|
||||
"crash_page_before_reporting": "Antes de reportar um erro, verifique se:",
|
||||
"crash_page_read_the_faq": "leia as <a href=\"`x`\">Perguntas frequentes (FAQ)</a>",
|
||||
"crash_page_search_issue": "procurou se <a href=\"`x`\">o erro já foi reportado no GitHub</a>",
|
||||
"crash_page_report_issue": "Se nenhuma opção acima ajudou, por favor <a href=\"`x`\">abra um novo problema no Github</a> (preferencialmente em inglês) e inclua o seguinte texto tal qual (NÃO o traduza):",
|
||||
"search_message_change_filters_or_query": "Tente alargar os termos genéricos da pesquisa e/ou alterar os filtros.",
|
||||
"crash_page_refresh": "tentou <a href=\"`x`\">recarregar a página</a>",
|
||||
"crash_page_switch_instance": "tentou <a href=\"`x`\">usar outra instância</a>",
|
||||
"error_video_not_in_playlist": "O vídeo pedido não existe nesta lista de reprodução. <a href=\"`x`\">Clique aqui para a página inicial da lista de reprodução.</a>",
|
||||
"Artist: ": "Artista: ",
|
||||
"Album: ": "Álbum: ",
|
||||
"channel_tab_streams_label": "Diretos",
|
||||
"channel_tab_playlists_label": "Listas de reprodução",
|
||||
"channel_tab_channels_label": "Canais",
|
||||
"Music in this video": "Música neste vídeo",
|
||||
"channel_tab_shorts_label": "Curtos"
|
||||
}
|
||||
|
368
locales/pt.json
368
locales/pt.json
@ -1,89 +1,91 @@
|
||||
{
|
||||
"show": "Espetáculo",
|
||||
"views": "Visualizações",
|
||||
"date": "Data de envio",
|
||||
"rating": "Avaliação",
|
||||
"relevance": "Relevância",
|
||||
"Broken? Try another Invidious Instance": "Falhou? Tente outra Instância do Invidious",
|
||||
"Switch Invidious Instance": "Mudar a instância do Invidious",
|
||||
"search_filters_type_option_show": "Séries",
|
||||
"search_filters_sort_option_views": "Visualizações",
|
||||
"search_filters_sort_option_date": "Data de carregamento",
|
||||
"search_filters_sort_option_rating": "Avaliação",
|
||||
"search_filters_sort_option_relevance": "Relevância",
|
||||
"Switch Invidious Instance": "Alterar instância Invidious",
|
||||
"Show less": "Mostrar menos",
|
||||
"Show more": "Mostrar mais",
|
||||
"Released under the AGPLv3 on Github.": "Lançado sob a AGPLv3 no Github.",
|
||||
"Released under the AGPLv3 on Github.": "Disponibilizada sob a AGPLv3 no GitHub.",
|
||||
"preferences_show_nick_label": "Mostrar nome de utilizador em cima: ",
|
||||
"preferences_automatic_instance_redirect_label": "Redirecionamento de instância automática (solução de último recurso para redirect.invidious.io): ",
|
||||
"preferences_category_misc": "Preferências diversas",
|
||||
"preferences_vr_mode_label": "Vídeos interativos de 360 graus: ",
|
||||
"preferences_extend_desc_label": "Estender automaticamente a descrição do vídeo: ",
|
||||
"next_steps_error_message_go_to_youtube": "Ir ao YouTube",
|
||||
"preferences_vr_mode_label": "Vídeos interativos de 360 graus (requer WebGL): ",
|
||||
"preferences_extend_desc_label": "Expandir automaticamente a descrição do vídeo: ",
|
||||
"next_steps_error_message_go_to_youtube": "Ir para o YouTube",
|
||||
"next_steps_error_message": "Pode tentar as seguintes opções: ",
|
||||
"next_steps_error_message_refresh": "Atualizar",
|
||||
"filter": "Filtro",
|
||||
"hdr": "HDR",
|
||||
"location": "Localização",
|
||||
"4k": "4K",
|
||||
"live": "Em direto",
|
||||
"3d": "3D",
|
||||
"creative_commons": "Creative Commons",
|
||||
"subtitles": "Legendas",
|
||||
"hd": "HD",
|
||||
"movie": "Filme",
|
||||
"playlist": "Lista de reprodução",
|
||||
"channel": "Canal",
|
||||
"video": "Vídeo",
|
||||
"year": "Este ano",
|
||||
"month": "Este mês",
|
||||
"week": "Esta semana",
|
||||
"today": "Hoje",
|
||||
"hour": "Última hora",
|
||||
"sort": "Ordenar por",
|
||||
"features": "Funcionalidades",
|
||||
"duration": "Duração",
|
||||
"content_type": "Tipo",
|
||||
"permalink": "hiperligação permanente",
|
||||
"YouTube comment permalink": "Hiperligação permanente do comentário no YouTube",
|
||||
"next_steps_error_message_refresh": "Recarregar",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_features_option_location": "Localização",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_live": "Direto",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_subtitles": "Legendas",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_type_option_movie": "Filme",
|
||||
"search_filters_type_option_playlist": "Lista de reprodução",
|
||||
"search_filters_type_option_channel": "Canal",
|
||||
"search_filters_type_option_video": "Vídeo",
|
||||
"search_filters_date_option_year": "Este ano",
|
||||
"search_filters_date_option_month": "Este mês",
|
||||
"search_filters_date_option_week": "Esta semana",
|
||||
"search_filters_date_option_today": "Hoje",
|
||||
"search_filters_date_option_hour": "Última hora",
|
||||
"search_filters_sort_label": "Ordenar por",
|
||||
"search_filters_features_label": "Funcionalidades",
|
||||
"search_filters_duration_label": "Duração",
|
||||
"search_filters_type_label": "Tipo",
|
||||
"permalink": "ligação permanente",
|
||||
"YouTube comment permalink": "Ligação permanente do comentário no YouTube",
|
||||
"Download as: ": "Descarregar como: ",
|
||||
"Download": "Descarregar",
|
||||
"Default": "Predefinido",
|
||||
"Default": "Padrão",
|
||||
"Top": "Destaques",
|
||||
"Search": "Pesquisar",
|
||||
"generic_count_years": "{{count}} segundo",
|
||||
"generic_count_years_plural": "{{count}} segundos",
|
||||
"generic_count_months": "{{count}} minuto",
|
||||
"generic_count_months_plural": "{{count}} minutos",
|
||||
"generic_count_weeks": "{{count}} hora",
|
||||
"generic_count_weeks_plural": "{{count}} horas",
|
||||
"generic_count_days": "{{count}} dia",
|
||||
"generic_count_days_plural": "{{count}} dias",
|
||||
"generic_count_hours": "{{count}} seman",
|
||||
"generic_count_hours_plural": "{{count}} semanas",
|
||||
"generic_count_minutes": "{{count}} mês",
|
||||
"generic_count_minutes_plural": "{{count}} meses",
|
||||
"generic_count_seconds": "{{count}} ano",
|
||||
"generic_count_seconds_plural": "{{count}} anos",
|
||||
"generic_count_years_0": "{{count}} ano",
|
||||
"generic_count_years_1": "{{count}} anos",
|
||||
"generic_count_years_2": "{{count}} anos",
|
||||
"generic_count_months_0": "{{count}} mês",
|
||||
"generic_count_months_1": "{{count}} meses",
|
||||
"generic_count_months_2": "{{count}} meses",
|
||||
"generic_count_weeks_0": "{{count}} semana",
|
||||
"generic_count_weeks_1": "{{count}} semanas",
|
||||
"generic_count_weeks_2": "{{count}} semanas",
|
||||
"generic_count_days_0": "{{count}} dia",
|
||||
"generic_count_days_1": "{{count}} dias",
|
||||
"generic_count_days_2": "{{count}} dias",
|
||||
"generic_count_hours_0": "{{count}} hora",
|
||||
"generic_count_hours_1": "{{count}} horas",
|
||||
"generic_count_hours_2": "{{count}} horas",
|
||||
"generic_count_minutes_0": "{{count}} minuto",
|
||||
"generic_count_minutes_1": "{{count}} minutos",
|
||||
"generic_count_minutes_2": "{{count}} minutos",
|
||||
"generic_count_seconds_0": "{{count}} segundo",
|
||||
"generic_count_seconds_1": "{{count}} segundos",
|
||||
"generic_count_seconds_2": "{{count}} segundos",
|
||||
"Chinese (Traditional)": "Chinês (tradicional)",
|
||||
"Chinese (Simplified)": "Chinês (simplificado)",
|
||||
"Could not pull trending pages.": "Não foi possível obter as páginas de tendências.",
|
||||
"Could not create mix.": "Não foi possível criar a mistura.",
|
||||
"Could not pull trending pages.": "Não foi possível obter a página de tendências.",
|
||||
"Could not create mix.": "Não foi possível criar o mix.",
|
||||
"Deleted or invalid channel": "Canal eliminado ou inválido",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Falhou o início de sessão. Isto pode ser devido a não ter ativado na sua conta a autenticação de dois fatores (2FA).",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Não é possível iniciar a sessão, certifique-se que a autenticação de dois fatores (Autenticador ou SMS) está ativada.",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Olá! Parece que o JavaScript está desativado. Clique aqui para ver os comentários, entretanto eles podem levar mais tempo para carregar.",
|
||||
"Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Olá! Parece que o JavaScript está desativado. Clique aqui para ver os comentários, mas tenha e conta que podem levar mais tempo para carregar.",
|
||||
"Delete playlist": "Eliminar lista de reprodução",
|
||||
"Delete playlist `x`?": "Eliminar a lista de reprodução 'x'?",
|
||||
"Delete playlist `x`?": "Eliminar lista de reprodução `x`?",
|
||||
"search": "pesquisar",
|
||||
"unsubscribe": "anular subscrição",
|
||||
"Import/export": "Importar / exportar",
|
||||
"Import/export": "Importar/exportar",
|
||||
"Save preferences": "Guardar preferências",
|
||||
"Top enabled: ": "Destaques ativados: ",
|
||||
"Delete account": "Eliminar conta",
|
||||
"Import/export data": "Importar / exportar dados",
|
||||
"Import/export data": "Importar/exportar dados",
|
||||
"preferences_annotations_label": "Mostrar anotações sempre: ",
|
||||
"preferences_continue_label": "Reproduzir sempre o próximo: ",
|
||||
"Sign In": "Iniciar sessão",
|
||||
"preferences_continue_label": "Reproduzir sempre o seguinte: ",
|
||||
"Sign In": "Entrar",
|
||||
"Log in/register": "Iniciar sessão/registar",
|
||||
"Delete account?": "Eliminar conta?",
|
||||
"Import and Export Data": "Importar e exportar dados",
|
||||
"Cannot change password for Google accounts": "Não é possível alterar a palavra-chave para contas do Google",
|
||||
"Filipino": "Filipino",
|
||||
"Estonian": "Estónio",
|
||||
"Esperanto": "Esperanto",
|
||||
@ -91,7 +93,7 @@
|
||||
"Danish": "Dinamarquês",
|
||||
"Czech": "Checo",
|
||||
"Croatian": "Croata",
|
||||
"Corsican": "Corso",
|
||||
"Corsican": "Córsego",
|
||||
"Cebuano": "Cebuano",
|
||||
"Catalan": "Catalão",
|
||||
"Burmese": "Birmanês",
|
||||
@ -105,10 +107,10 @@
|
||||
"Arabic": "Árabe",
|
||||
"Amharic": "Amárico",
|
||||
"Albanian": "Albanês",
|
||||
"Afrikaans": "Africano",
|
||||
"Afrikaans": "Africânder",
|
||||
"English (auto-generated)": "Inglês (auto-gerado)",
|
||||
"English": "Inglês",
|
||||
"Token is expired, please try again": "Token expirou, tente novamente",
|
||||
"Token is expired, please try again": "Token caducado, tente novamente",
|
||||
"No such user": "Utilizador inválido",
|
||||
"Erroneous token": "Token inválido",
|
||||
"Erroneous challenge": "Desafio inválido",
|
||||
@ -122,32 +124,29 @@
|
||||
"Could not fetch comments": "Não foi possível obter os comentários",
|
||||
"Could not get channel info.": "Não foi possível obter as informações do canal.",
|
||||
"This channel does not exist.": "Este canal não existe.",
|
||||
"channel:`x`": "canal:'x'",
|
||||
"channel:`x`": "canal:`x`",
|
||||
"Invidious Private Feed for `x`": "Feed Privado do Invidious para `x`",
|
||||
"Please log in": "Por favor, inicie sessão",
|
||||
"Password cannot be longer than 55 characters": "A palavra-chave não pode ser superior a 55 caracteres",
|
||||
"Password cannot be empty": "A palavra-chave não pode estar vazia",
|
||||
"Please sign in using 'Log in with Google'": "Por favor, inicie sessão usando 'Iniciar sessão com o Google'",
|
||||
"Wrong username or password": "Nome de utilizador ou palavra-chave incorreto",
|
||||
"Password is a required field": "Palavra-chave é um campo obrigatório",
|
||||
"Password cannot be longer than 55 characters": "A palavra-passe não pode ter mais do que 55 caracteres",
|
||||
"Password cannot be empty": "A palavra-passe não pode estar vazia",
|
||||
"Wrong username or password": "Nome de utilizador ou palavra-passe incorreta",
|
||||
"Password is a required field": "Palavra-passe é um campo obrigatório",
|
||||
"User ID is a required field": "O nome de utilizador é um campo obrigatório",
|
||||
"CAPTCHA is a required field": "CAPTCHA é um campo obrigatório",
|
||||
"Erroneous CAPTCHA": "CAPTCHA inválido",
|
||||
"Wrong answer": "Resposta errada",
|
||||
"Invalid TFA code": "Código TFA inválido",
|
||||
"Quota exceeded, try again in a few hours": "Cota excedida. Tente novamente dentro de algumas horas",
|
||||
"Incorrect password": "Palavra-chave incorreta",
|
||||
"Incorrect password": "Palavra-passe incorreta",
|
||||
"Show replies": "Mostrar respostas",
|
||||
"Hide replies": "Ocultar respostas",
|
||||
"View Reddit comments": "Ver comentários do Reddit",
|
||||
"View `x` comments": {
|
||||
"": "Ver `x` comentários",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentários"
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentário"
|
||||
},
|
||||
"View more comments on Reddit": "Ver mais comentários no Reddit",
|
||||
"View YouTube comments": "Ver comentários do YouTube",
|
||||
"Premieres `x`": "Estreias 'x'",
|
||||
"Premieres in `x`": "Estreias em 'x'",
|
||||
"Premieres `x`": "Estreia `x`",
|
||||
"Premieres in `x`": "Estreia a `x`",
|
||||
"Shared `x`": "Partilhado `x`",
|
||||
"Blacklisted regions: ": "Regiões bloqueadas: ",
|
||||
"Whitelisted regions: ": "Regiões permitidas: ",
|
||||
@ -159,43 +158,44 @@
|
||||
"Show annotations": "Mostrar anotações",
|
||||
"Hide annotations": "Ocultar anotações",
|
||||
"Watch on YouTube": "Ver no YouTube",
|
||||
"Editing playlist `x`": "A editar lista de reprodução 'x'",
|
||||
"Editing playlist `x`": "A editar lista de reprodução `x`",
|
||||
"Playlist privacy": "Privacidade da lista de reprodução",
|
||||
"Title": "Título",
|
||||
"Create playlist": "Criar lista de reprodução",
|
||||
"Updated `x` ago": "Atualizado `x` atrás",
|
||||
"Updated `x` ago": "Atualizado há `x`",
|
||||
"View all playlists": "Ver todas as listas de reprodução",
|
||||
"Private": "Privado",
|
||||
"Unlisted": "Não listado",
|
||||
"Public": "Público",
|
||||
"Trending": "Tendências",
|
||||
"View privacy policy.": "Ver a política de privacidade.",
|
||||
"View JavaScript license information.": "Ver informações da licença do JavaScript.",
|
||||
"View privacy policy.": "Ver política de privacidade.",
|
||||
"View JavaScript license information.": "Ver informações da licença JavaScript.",
|
||||
"Source available here.": "Código-fonte disponível aqui.",
|
||||
"Log out": "Terminar sessão",
|
||||
"Subscriptions": "Subscrições",
|
||||
"revoke": "revogar",
|
||||
"tokens_count": "{{count}} token",
|
||||
"tokens_count_plural": "{{count}} tokens",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"tokens_count_1": "{{count}} tokens",
|
||||
"tokens_count_2": "{{count}} tokens",
|
||||
"Token": "Token",
|
||||
"Token manager": "Gerir tokens",
|
||||
"Subscription manager": "Gerir subscrições",
|
||||
"Token manager": "Gestor de tokens",
|
||||
"Subscription manager": "Gestor de subscrições",
|
||||
"Report statistics: ": "Relatório de estatísticas: ",
|
||||
"Registration enabled: ": "Registar ativado: ",
|
||||
"Login enabled: ": "Iniciar sessão ativado: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA ativado: ",
|
||||
"preferences_feed_menu_label": "Menu de subscrições: ",
|
||||
"preferences_default_home_label": "Página inicial predefinida: ",
|
||||
"preferences_default_home_label": "Página inicial padrão: ",
|
||||
"preferences_category_admin": "Preferências de administrador",
|
||||
"Watch history": "Histórico de reprodução",
|
||||
"Manage tokens": "Gerir tokens",
|
||||
"Manage subscriptions": "Gerir as subscrições",
|
||||
"Change password": "Alterar palavra-chave",
|
||||
"Manage subscriptions": "Gerir subscrições",
|
||||
"Change password": "Alterar palavra-passe",
|
||||
"Clear watch history": "Limpar histórico de reprodução",
|
||||
"preferences_category_data": "Preferências de dados",
|
||||
"`x` is live": "`x` está em direto",
|
||||
"`x` uploaded a video": "`x` publicou um novo vídeo",
|
||||
"Enable web notifications": "Ativar notificações pela web",
|
||||
"`x` uploaded a video": "`x` publicou um vídeo",
|
||||
"Enable web notifications": "Ativar notificações web",
|
||||
"preferences_notifications_only_label": "Mostrar apenas notificações (se existirem): ",
|
||||
"preferences_unseen_only_label": "Mostrar apenas vídeos não visualizados: ",
|
||||
"Only show latest unwatched video from channel: ": "Mostrar apenas vídeos mais recentes não visualizados do canal: ",
|
||||
@ -207,9 +207,9 @@
|
||||
"published - reverse": "publicado - inverso",
|
||||
"published": "publicado",
|
||||
"preferences_sort_label": "Ordenar vídeos por: ",
|
||||
"preferences_max_results_label": "Quantidade de vídeos nas subscrições: ",
|
||||
"preferences_max_results_label": "Número de vídeos nas subscrições: ",
|
||||
"Redirect homepage to feed: ": "Redirecionar página inicial para subscrições: ",
|
||||
"preferences_annotations_subscribed_label": "Mostrar sempre anotações aos canais subscritos: ",
|
||||
"preferences_annotations_subscribed_label": "Mostrar sempre anotações nos canais subscritos: ",
|
||||
"preferences_category_subscription": "Preferências de subscrições",
|
||||
"preferences_thin_mode_label": "Modo compacto: ",
|
||||
"light": "claro",
|
||||
@ -220,11 +220,11 @@
|
||||
"preferences_category_visual": "Preferências visuais",
|
||||
"preferences_related_videos_label": "Mostrar vídeos relacionados: ",
|
||||
"Fallback captions: ": "Legendas alternativas: ",
|
||||
"preferences_captions_label": "Legendas predefinidas: ",
|
||||
"preferences_captions_label": "Legendas padrão: ",
|
||||
"reddit": "Reddit",
|
||||
"youtube": "YouTube",
|
||||
"preferences_comments_label": "Preferência dos comentários: ",
|
||||
"preferences_volume_label": "Volume da reprodução: ",
|
||||
"preferences_comments_label": "Comentários padrão: ",
|
||||
"preferences_volume_label": "Volume de reprodução: ",
|
||||
"preferences_quality_label": "Qualidade de vídeo preferida: ",
|
||||
"preferences_speed_label": "Velocidade preferida: ",
|
||||
"preferences_local_label": "Usar proxy nos vídeos: ",
|
||||
@ -234,59 +234,57 @@
|
||||
"preferences_video_loop_label": "Repetir sempre: ",
|
||||
"preferences_category_player": "Preferências do reprodutor",
|
||||
"Preferences": "Preferências",
|
||||
"Google verification code": "Código de verificação do Google",
|
||||
"E-mail": "E-mail",
|
||||
"Register": "Registar",
|
||||
"Image CAPTCHA": "Imagem CAPTCHA",
|
||||
"Text CAPTCHA": "Texto CAPTCHA",
|
||||
"Time (h:mm:ss):": "Tempo (h:mm:ss):",
|
||||
"Password": "Palavra-chave",
|
||||
"Password": "Palavra-passe",
|
||||
"User ID": "Utilizador",
|
||||
"Log in with Google": "Iniciar sessão com o Google",
|
||||
"Log in": "Iniciar sessão",
|
||||
"source": "código-fonte",
|
||||
"JavaScript license information": "Informação de licença do JavaScript",
|
||||
"source": "fonte",
|
||||
"JavaScript license information": "Informação da licença JavaScript",
|
||||
"An alternative front-end to YouTube": "Uma interface alternativa ao YouTube",
|
||||
"History": "Histórico",
|
||||
"Export data as JSON": "Exportar dados como JSON",
|
||||
"Export data as JSON": "Exportar dados Invidious como JSON",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportar subscrições como OPML (para NewPipe e FreeTube)",
|
||||
"Export subscriptions as OPML": "Exportar subscrições como OPML",
|
||||
"Export": "Exportar",
|
||||
"Import NewPipe data (.zip)": "Importar dados do NewPipe (.zip)",
|
||||
"Import NewPipe subscriptions (.json)": "Importar subscrições do NewPipe (.json)",
|
||||
"Import FreeTube subscriptions (.db)": "Importar subscrições do FreeTube (.db)",
|
||||
"Import YouTube subscriptions": "Importar subscrições do YouTube",
|
||||
"Import Invidious data": "Importar dados do Invidious",
|
||||
"Import YouTube subscriptions": "Importar via YouTube csv ou subscrição OPML",
|
||||
"Import Invidious data": "Importar dados JSON do Invidious",
|
||||
"Import": "Importar",
|
||||
"No": "Não",
|
||||
"Yes": "Sim",
|
||||
"Authorize token for `x`?": "Autorizar token para `x`?",
|
||||
"Authorize token?": "Autorizar token?",
|
||||
"New passwords must match": "As novas palavra-chaves devem corresponder",
|
||||
"New password": "Nova palavra-chave",
|
||||
"Authorize token for `x`?": "Autorizar 'token' para `x`?",
|
||||
"Authorize token?": "Autorizar 'token'?",
|
||||
"New passwords must match": "As novas palavras-passe devem ser iguais",
|
||||
"New password": "Nova palavra-passe",
|
||||
"Clear watch history?": "Limpar histórico de reprodução?",
|
||||
"Previous page": "Página anterior",
|
||||
"Next page": "Próxima página",
|
||||
"Next page": "Página seguinte",
|
||||
"last": "últimos",
|
||||
"Current version: ": "Versão atual: ",
|
||||
"Community": "Comunidade",
|
||||
"channel_tab_community_label": "Comunidade",
|
||||
"Playlists": "Listas de reprodução",
|
||||
"Videos": "Vídeos",
|
||||
"channel_tab_videos_label": "Vídeos",
|
||||
"Video mode": "Modo de vídeo",
|
||||
"Audio mode": "Modo de áudio",
|
||||
"`x` marked it with a ❤": "`x` foi marcado como ❤",
|
||||
"`x` marked it with a ❤": "`x` foi marcado com um ❤",
|
||||
"(edited)": "(editado)",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"Movies": "Filmes",
|
||||
"News": "Notícias",
|
||||
"Gaming": "Jogos",
|
||||
"Music": "Música",
|
||||
"Music": "Músicas",
|
||||
"View as playlist": "Ver como lista de reprodução",
|
||||
"preferences_locale_label": "Idioma: ",
|
||||
"Rating: ": "Avaliação: ",
|
||||
"About": "Sobre",
|
||||
"About": "Acerca",
|
||||
"Popular": "Popular",
|
||||
"Fallback comments: ": "Comentários alternativos: ",
|
||||
"Fallback comments: ": "Alternativa para comentários: ",
|
||||
"Zulu": "Zulu",
|
||||
"Yoruba": "Ioruba",
|
||||
"Yiddish": "Iídiche",
|
||||
@ -331,7 +329,7 @@
|
||||
"Marathi": "Marathi",
|
||||
"Maori": "Maori",
|
||||
"Maltese": "Maltês",
|
||||
"Malayalam": "Malaiala",
|
||||
"Malayalam": "Malaialaio",
|
||||
"Malay": "Malaio",
|
||||
"Malagasy": "Malgaxe",
|
||||
"Macedonian": "Macedónio",
|
||||
@ -367,17 +365,17 @@
|
||||
"Galician": "Galego",
|
||||
"French": "Francês",
|
||||
"Finnish": "Finlandês",
|
||||
"popular": "popular",
|
||||
"oldest": "mais antigos",
|
||||
"newest": "mais recentes",
|
||||
"popular": "populares",
|
||||
"oldest": "antigos",
|
||||
"newest": "recentes",
|
||||
"View playlist on YouTube": "Ver lista de reprodução no YouTube",
|
||||
"View channel on YouTube": "Ver canal no YouTube",
|
||||
"Subscribe": "Subscrever",
|
||||
"Unsubscribe": "Anular subscrição",
|
||||
"Shared `x` ago": "Partilhado `x` atrás",
|
||||
"LIVE": "Em direto",
|
||||
"short": "Curto (< 4 minutos)",
|
||||
"long": "Longo (> 20 minutos)",
|
||||
"LIVE": "Direto",
|
||||
"search_filters_duration_option_short": "Curto (< 4 minutos)",
|
||||
"search_filters_duration_option_long": "Longo (> 20 minutos)",
|
||||
"footer_source_code": "Código-fonte",
|
||||
"footer_original_source_code": "Código-fonte original",
|
||||
"adminprefs_modified_source_code_url_label": "URL do repositório do código-fonte alterado",
|
||||
@ -388,7 +386,7 @@
|
||||
"preferences_quality_dash_label": "Qualidade de vídeo DASH preferida: ",
|
||||
"preferences_quality_option_small": "Baixa",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_auto": "Automático",
|
||||
"preferences_quality_dash_option_auto": "Automática",
|
||||
"preferences_quality_dash_option_best": "Melhor",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
@ -397,9 +395,9 @@
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"purchased": "Comprado",
|
||||
"360": "360°",
|
||||
"videoinfo_invidious_embed_link": "Incorporar hiperligação",
|
||||
"search_filters_features_option_purchased": "Comprado",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"videoinfo_invidious_embed_link": "Incorporar ligação",
|
||||
"Video unavailable": "Vídeo não disponível",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_option_medium": "Média",
|
||||
@ -410,32 +408,112 @@
|
||||
"preferences_quality_dash_option_worst": "Pior",
|
||||
"none": "nenhum",
|
||||
"videoinfo_youTube_embed_link": "Incorporar",
|
||||
"preferences_save_player_pos_label": "Guardar a posição de reprodução atual do vídeo: ",
|
||||
"preferences_save_player_pos_label": "Guardar posição de reprodução: ",
|
||||
"download_subtitles": "Legendas - `x` (.vtt)",
|
||||
"generic_views_count": "{{count}} visualização",
|
||||
"generic_views_count_plural": "{{count}} visualizações",
|
||||
"generic_views_count_0": "{{count}} visualização",
|
||||
"generic_views_count_1": "{{count}} visualizações",
|
||||
"generic_views_count_2": "{{count}} visualizações",
|
||||
"videoinfo_started_streaming_x_ago": "Iniciou a transmissão há `x`",
|
||||
"user_saved_playlists": "`x` listas de reprodução guardadas",
|
||||
"generic_videos_count": "{{count}} vídeo",
|
||||
"generic_videos_count_plural": "{{count}} vídeos",
|
||||
"generic_playlists_count": "{{count}} lista de reprodução",
|
||||
"generic_playlists_count_plural": "{{count}} listas de reprodução",
|
||||
"subscriptions_unseen_notifs_count": "{{count}} notificação não vista",
|
||||
"subscriptions_unseen_notifs_count_plural": "{{count}} notificações não vistas",
|
||||
"comments_view_x_replies": "Ver {{count}} resposta",
|
||||
"comments_view_x_replies_plural": "Ver {{count}} respostas",
|
||||
"generic_subscribers_count": "{{count}} inscrito",
|
||||
"generic_subscribers_count_plural": "{{count}} inscritos",
|
||||
"generic_subscriptions_count": "{{count}} inscrição",
|
||||
"generic_subscriptions_count_plural": "{{count}} inscrições",
|
||||
"comments_points_count": "{{count}} ponto",
|
||||
"comments_points_count_plural": "{{count}} pontos",
|
||||
"generic_videos_count_0": "{{count}} vídeo",
|
||||
"generic_videos_count_1": "{{count}} vídeos",
|
||||
"generic_videos_count_2": "{{count}} vídeos",
|
||||
"generic_playlists_count_0": "{{count}} lista de reprodução",
|
||||
"generic_playlists_count_1": "{{count}} listas de reprodução",
|
||||
"generic_playlists_count_2": "{{count}} listas de reprodução",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} notificação não vista",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} notificações não vistas",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} notificações não vistas",
|
||||
"comments_view_x_replies_0": "Ver {{count}} resposta",
|
||||
"comments_view_x_replies_1": "Ver {{count}} respostas",
|
||||
"comments_view_x_replies_2": "Ver {{count}} respostas",
|
||||
"generic_subscribers_count_0": "{{count}} subscritor",
|
||||
"generic_subscribers_count_1": "{{count}} subscritores",
|
||||
"generic_subscribers_count_2": "{{count}} subscritores",
|
||||
"generic_subscriptions_count_0": "{{count}} subscrição",
|
||||
"generic_subscriptions_count_1": "{{count}} subscrições",
|
||||
"generic_subscriptions_count_2": "{{count}} subscrições",
|
||||
"comments_points_count_0": "{{count}} ponto",
|
||||
"comments_points_count_1": "{{count}} pontos",
|
||||
"comments_points_count_2": "{{count}} pontos",
|
||||
"crash_page_you_found_a_bug": "Parece que encontrou um erro no Invidious!",
|
||||
"crash_page_before_reporting": "Antes de reportar um erro, verifique se:",
|
||||
"crash_page_refresh": "tentou <a href=\"`x`\">recarregar a página</a>",
|
||||
"crash_page_switch_instance": "tentou <a href=\"`x`\">usar outra instância</a>",
|
||||
"crash_page_read_the_faq": "leu as <a href=\"`x`\">Perguntas frequentes (FAQ)</a>",
|
||||
"crash_page_search_issue": "procurou se <a href=\"`x`\">o erro já foi reportado no Github</a>",
|
||||
"crash_page_report_issue": "Se nenhuma opção acima ajudou, por favor <a href=\"`x`\">abra um novo problema no Github</a> (preferencialmente em inglês) e inclua o seguinte texto tal qual (NÃO o traduza):",
|
||||
"user_created_playlists": "`x` listas de reprodução criadas"
|
||||
"crash_page_search_issue": "procurou se <a href=\"`x`\">o erro já foi reportado no GitHub</a>",
|
||||
"crash_page_report_issue": "Se nenhuma opção acima ajudou, por favor <a href=\"`x`\">abra um novo problema no Github</a> (preferencialmente em inglês) e inclua o seguinte texto (NÃO o traduza):",
|
||||
"user_created_playlists": "`x` listas de reprodução criadas",
|
||||
"search_filters_title": "Filtro",
|
||||
"Chinese (Taiwan)": "Chinês (Taiwan)",
|
||||
"search_message_no_results": "Nenhum resultado encontrado.",
|
||||
"search_message_change_filters_or_query": "Tente alargar os termos genéricos da pesquisa e/ou alterar os filtros.",
|
||||
"search_message_use_another_instance": "Também pode <a href=\"`x`\">pesquisar noutra instância</a>.",
|
||||
"English (United Kingdom)": "Inglês (Reino Unido)",
|
||||
"English (United States)": "Inglês (Estados Unidos)",
|
||||
"Cantonese (Hong Kong)": "Cantonês (Hong Kong)",
|
||||
"Chinese": "Chinês",
|
||||
"Chinese (Hong Kong)": "Chinês (Hong Kong)",
|
||||
"Dutch (auto-generated)": "Holandês (gerado automaticamente)",
|
||||
"French (auto-generated)": "Francês (gerado automaticamente)",
|
||||
"German (auto-generated)": "Alemão (gerado automaticamente)",
|
||||
"Indonesian (auto-generated)": "Indonésio (gerado automaticamente)",
|
||||
"Interlingue": "Interlíngua",
|
||||
"Italian (auto-generated)": "Italiano (gerado automaticamente)",
|
||||
"Japanese (auto-generated)": "Japonês (gerado automaticamente)",
|
||||
"Korean (auto-generated)": "Coreano (gerado automaticamente)",
|
||||
"Portuguese (auto-generated)": "Português (gerado automaticamente)",
|
||||
"Portuguese (Brazil)": "Português (Brasil)",
|
||||
"Turkish (auto-generated)": "Turco (gerado automaticamente)",
|
||||
"Vietnamese (auto-generated)": "Vietnamita (gerado automaticamente)",
|
||||
"search_filters_duration_option_medium": "Médio (4 - 20 minutos)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_apply_button": "Aplicar filtros selecionados",
|
||||
"Spanish (auto-generated)": "Espanhol (gerado automaticamente)",
|
||||
"Spanish (Mexico)": "Espanhol (México)",
|
||||
"preferences_watch_history_label": "Ativar histórico de reprodução: ",
|
||||
"Chinese (China)": "Chinês (China)",
|
||||
"Russian (auto-generated)": "Russo (gerado automaticamente)",
|
||||
"Spanish (Spain)": "Espanhol (Espanha)",
|
||||
"search_filters_date_label": "Data de publicação",
|
||||
"search_filters_date_option_none": "Qualquer data",
|
||||
"search_filters_type_option_all": "Qualquer tipo",
|
||||
"search_filters_duration_option_none": "Qualquer duração",
|
||||
"Popular enabled: ": "Página \"popular\" ativada: ",
|
||||
"error_video_not_in_playlist": "O vídeo pedido não existe nesta lista de reprodução. <a href=\"`x`\">Clique aqui para voltar à página inicial da lista de reprodução.</a>",
|
||||
"channel_tab_playlists_label": "Listas de reprodução",
|
||||
"channel_tab_channels_label": "Canais",
|
||||
"channel_tab_shorts_label": "Curtos",
|
||||
"channel_tab_streams_label": "Emissões em direto",
|
||||
"Music in this video": "Música neste vídeo",
|
||||
"Artist: ": "Artista: ",
|
||||
"Album: ": "Álbum: ",
|
||||
"Song: ": "Canção: ",
|
||||
"Channel Sponsor": "Patrocinador do canal",
|
||||
"Standard YouTube license": "Licença padrão do YouTube",
|
||||
"Download is disabled": "A descarga está desativada",
|
||||
"Import YouTube playlist (.csv)": "Importar lista de reprodução do YouTube (.csv)",
|
||||
"generic_button_delete": "Eliminar",
|
||||
"generic_button_edit": "Editar",
|
||||
"generic_button_rss": "RSS",
|
||||
"channel_tab_podcasts_label": "Podcasts",
|
||||
"channel_tab_releases_label": "Lançamentos",
|
||||
"generic_button_save": "Guardar",
|
||||
"generic_button_cancel": "Cancelar",
|
||||
"playlist_button_add_items": "Adicionar vídeos",
|
||||
"generic_channels_count_0": "{{count}} canal",
|
||||
"generic_channels_count_1": "{{count}} canais",
|
||||
"generic_channels_count_2": "{{count}} canais",
|
||||
"Import YouTube watch history (.json)": "Importar histórico de reprodução do YouTube (.json)",
|
||||
"toggle_theme": "Trocar tema",
|
||||
"Add to playlist": "Adicionar à lista de reprodução",
|
||||
"Add to playlist: ": "Adicionar à lista de reprodução: ",
|
||||
"Answer": "Responder",
|
||||
"Search for videos": "Procurar vídeos",
|
||||
"carousel_slide": "Diapositivo {{current}} de{{total}}",
|
||||
"carousel_skip": "Ignorar carrossel",
|
||||
"carousel_go_to": "Ir para o diapositivo`x`",
|
||||
"The Popular feed has been disabled by the administrator.": "O feed Popular foi desativado por um administrador.",
|
||||
"preferences_preload_label": "Pré-carregamento dos dados: ",
|
||||
"Filipino (auto-generated)": "Filipino (gerado automaticamente)"
|
||||
}
|
||||
|
193
locales/ro.json
193
locales/ro.json
@ -14,14 +14,13 @@
|
||||
"Clear watch history?": "Doriți să ștergeți istoricul?",
|
||||
"New password": "Parola nouă",
|
||||
"New passwords must match": "Câmpurile \"Parolă nouă\" trebuie să fie identice",
|
||||
"Cannot change password for Google accounts": "Parola pentru un cont Google nu poate fi schimbată de pe Invidious",
|
||||
"Authorize token?": "Autorizați token-ul?",
|
||||
"Authorize token for `x`?": "Autorizați token-ul pentru `x` ?",
|
||||
"Yes": "Da",
|
||||
"No": "Nu",
|
||||
"Import and Export Data": "Importați și Exportați Datele",
|
||||
"Import": "Importați",
|
||||
"Import Invidious data": "Importați Datele de pe Invidious",
|
||||
"Import Invidious data": "Importați datele JSON de pe Invidious",
|
||||
"Import YouTube subscriptions": "Importați abonamentele de pe YouTube",
|
||||
"Import FreeTube subscriptions (.db)": "Importați abonamentele de pe FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importați abonamentele de pe NewPipe (.json)",
|
||||
@ -29,7 +28,7 @@
|
||||
"Export": "Exportați",
|
||||
"Export subscriptions as OPML": "Exportați abonamentele în format OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportați abonamentele în format OPML (pentru NewPipe și FreeTube)",
|
||||
"Export data as JSON": "Exportați datele în format JSON",
|
||||
"Export data as JSON": "Exportați datele Invidious în format JSON",
|
||||
"Delete account?": "Sunteți siguri că doriți să vă ștergeți contul?",
|
||||
"History": "Istoric",
|
||||
"An alternative front-end to YouTube": "O alternativă front-end pentru YouTube",
|
||||
@ -37,7 +36,6 @@
|
||||
"source": "sursă",
|
||||
"Log in": "Conectați-vă",
|
||||
"Log in/register": "Conectați-vă/Creați-vă un cont",
|
||||
"Log in with Google": "Conectați-vă cu Google",
|
||||
"User ID": "ID Utilizator",
|
||||
"Password": "Parolă",
|
||||
"Time (h:mm:ss):": "Ora (h:mm:ss) :",
|
||||
@ -46,7 +44,6 @@
|
||||
"Sign In": "Conectați-vă",
|
||||
"Register": "Înregistrați-vă",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Cod de verificare Google",
|
||||
"Preferences": "Preferințe",
|
||||
"preferences_category_player": "Setări de redare",
|
||||
"preferences_video_loop_label": "Reluați videoclipul la nesfârșit: ",
|
||||
@ -155,17 +152,12 @@
|
||||
"Hide replies": "Ascundeți replicile",
|
||||
"Show replies": "Afișați replicile",
|
||||
"Incorrect password": "Parolă incorectă",
|
||||
"Quota exceeded, try again in a few hours": "Numărul de tentative de conectare a fost depășit. Va rugăm să încercați din nou în câteva ore.",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Conectare eșuată. Dacă nu reușiți să vă conectați, verificați dacă ați activat autentificarea cu doi factori (Autentificator sau SMS).",
|
||||
"Invalid TFA code": "Codul de autentificare cu doi factori este invalid",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Conectare eșuată. Acest lucru ar putea fi cauzat de faptul că nu ați activat autentificarea cu doi factori.",
|
||||
"Wrong answer": "Răspuns invalid",
|
||||
"Erroneous CAPTCHA": "CAPTCHA invalid",
|
||||
"CAPTCHA is a required field": "Câmpul CAPTCHA este obligatoriu",
|
||||
"User ID is a required field": "Câmpul ID Utilizator este obligatoriu",
|
||||
"Password is a required field": "Câmpul Parolă este obligatoriu",
|
||||
"Wrong username or password": "Nume de utilizator sau parolă invalidă",
|
||||
"Please sign in using 'Log in with Google'": "Vă rog conectați-vă folosind \"Conectați-vă cu Google\"",
|
||||
"Password cannot be empty": "Parola nu poate fi goală",
|
||||
"Password cannot be longer than 55 characters": "Parola nu poate să conțină mai mult de 55 de caractere",
|
||||
"Please log in": "Vă rog conectați-vă",
|
||||
@ -174,7 +166,7 @@
|
||||
"Deleted or invalid channel": "Canal șters sau invalid",
|
||||
"This channel does not exist.": "Acest canal nu există.",
|
||||
"Could not get channel info.": "Nu am putut primi informații despre acest canal.",
|
||||
"Could not fetch comments": "Încărcarea comentariilor a eșuat.",
|
||||
"Could not fetch comments": "Încărcarea comentariilor a eșuat",
|
||||
"`x` ago": "acum `x`",
|
||||
"Load more": "Vedeți mai mult",
|
||||
"Could not create mix.": "Nu am putut crea această listă de redare.",
|
||||
@ -187,7 +179,7 @@
|
||||
"Erroneous challenge": "Challenge invalid",
|
||||
"Erroneous token": "Token invalid",
|
||||
"No such user": "Acest utilizator nu există",
|
||||
"Token is expired, please try again": "Token-ul este expirat, vă rugăm să reîncercați.",
|
||||
"Token is expired, please try again": "Jetonul a expirat, vă rugăm să încercați din nou",
|
||||
"English": "Engleză",
|
||||
"English (auto-generated)": "Engleză (generată automat)",
|
||||
"Afrikaans": "Afrikaans",
|
||||
@ -295,7 +287,7 @@
|
||||
"Yoruba": "Yoruba",
|
||||
"Zulu": "Zoulou",
|
||||
"Fallback comments: ": "Comentarii alternative: ",
|
||||
"Popular": "Popular",
|
||||
"Popular": "Populare",
|
||||
"Top": "Top",
|
||||
"About": "Despre",
|
||||
"Rating: ": "Evaluare: ",
|
||||
@ -315,8 +307,177 @@
|
||||
"`x` marked it with a ❤": "`x` l-a marcat cu o ❤",
|
||||
"Audio mode": "Mod audio",
|
||||
"Video mode": "Mod video",
|
||||
"Videos": "Videoclipuri",
|
||||
"channel_tab_videos_label": "Videoclipuri",
|
||||
"Playlists": "Liste de redare",
|
||||
"Community": "Comunitate",
|
||||
"Current version: ": "Versiunea actuală: "
|
||||
"channel_tab_community_label": "Comunitate",
|
||||
"Current version: ": "Versiunea actuală: ",
|
||||
"crash_page_read_the_faq": "citit lista <a href=\"`x`\">Întrebărilor Frecvente (FAQ)</a>",
|
||||
"generic_count_days_0": "{{count}} zi",
|
||||
"generic_count_days_1": "{{count}} zile",
|
||||
"generic_count_days_2": "{{count}} de zile",
|
||||
"generic_count_hours_0": "{{count}} oră",
|
||||
"generic_count_hours_1": "{{count}} ore",
|
||||
"generic_count_hours_2": "{{count}} de ore",
|
||||
"generic_count_minutes_0": "{{count}} minut",
|
||||
"generic_count_minutes_1": "{{count}} minute",
|
||||
"generic_count_minutes_2": "{{count}} de minute",
|
||||
"generic_views_count_0": "{{count}} vizionare",
|
||||
"generic_views_count_1": "{{count}} vizionări",
|
||||
"generic_views_count_2": "{{count}} de vizionări",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} notificare neverificată",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} notificări neverificate",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} de notificări neverificate",
|
||||
"crash_page_refresh": "încercat să <a href=\"`x`\">reîmprospătați pagina</a>",
|
||||
"crash_page_switch_instance": "am încercat să <a href=\"`x`\">folosim o altă instanță</a>",
|
||||
"preferences_watch_history_label": "Activează istoricul: ",
|
||||
"invidious": "Invidious",
|
||||
"preferences_vr_mode_label": "Videoclipuri interactive de 360 de grade (necesită WebGL): ",
|
||||
"English (United Kingdom)": "Engleză (Regatul Unit)",
|
||||
"English (United States)": "Engleză (Statele Unite ale Americii)",
|
||||
"Chinese": "Chineză",
|
||||
"Chinese (China)": "Chineză (China)",
|
||||
"Chinese (Hong Kong)": "Chineză (Hong Kong)",
|
||||
"Chinese (Taiwan)": "Chineză (Taiwan)",
|
||||
"Cantonese (Hong Kong)": "Cantoneză (Hong Kong)",
|
||||
"Portuguese (auto-generated)": "Portugheză (generată automat)",
|
||||
"Portuguese (Brazil)": "Portugheză (Brazilia)",
|
||||
"Russian (auto-generated)": "Rusă (generată automat)",
|
||||
"Turkish (auto-generated)": "Turcă (generată automat)",
|
||||
"Vietnamese (auto-generated)": "Vietnameză (generată automat)",
|
||||
"videoinfo_started_streaming_x_ago": "În direct de acum `x`",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"footer_modfied_source_code": "Codul sursă modificat",
|
||||
"preferences_quality_dash_label": "Calitatea video DASH preferată: ",
|
||||
"generic_videos_count_0": "{{count}} videoclip",
|
||||
"generic_videos_count_1": "{{count}} videoclipuri",
|
||||
"generic_videos_count_2": "{{count}} de videoclipuri",
|
||||
"generic_playlists_count_0": "{{count}} playlist",
|
||||
"generic_playlists_count_1": "{{count}} playlisturi",
|
||||
"generic_playlists_count_2": "{{count}} de playlisturi",
|
||||
"tokens_count_0": "{{count}} jeton",
|
||||
"tokens_count_1": "{{count}} jetoane",
|
||||
"tokens_count_2": "{{count}} de jetoane",
|
||||
"comments_points_count_0": "{{count}} punct",
|
||||
"comments_points_count_1": "{{count}} puncte",
|
||||
"comments_points_count_2": "{{count}} de puncte",
|
||||
"Spanish (Spain)": "Spaniolă (Spania)",
|
||||
"Video unavailable": "Videoclip indisponibil",
|
||||
"crash_page_search_issue": "căutat <a href=\"`x`\">sugestiile existente pe GitHub</a>",
|
||||
"Show more": "Afișați mai mult",
|
||||
"Released under the AGPLv3 on Github.": "Lansat sub licența AGPLv3 pe GitHub.",
|
||||
"preferences_quality_option_dash": "DASH (calitate adaptativă)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_small": "Mică",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_category_misc": "Setări diverse",
|
||||
"preferences_automatic_instance_redirect_label": "Redirecționare automată de instanță (trecere prin redirect.invidious.io): ",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_option_medium": "Medie",
|
||||
"Switch Invidious Instance": "Schimbă instanța Invidious",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_auto": "Automatică",
|
||||
"preferences_quality_dash_option_best": "Cea mai bună",
|
||||
"preferences_quality_dash_option_worst": "Cea mai redusă",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_region_label": "Țară de conținut: ",
|
||||
"preferences_extend_desc_label": "Extindeți automat descrierea: ",
|
||||
"preferences_show_nick_label": "Afișați numele de utilizator pe partea de sus: ",
|
||||
"generic_subscribers_count_0": "{{count}} abonat",
|
||||
"generic_subscribers_count_1": "{{count}} abonați",
|
||||
"generic_subscribers_count_2": "{{count}} de abonați",
|
||||
"generic_subscriptions_count_0": "{{count}} abonament",
|
||||
"generic_subscriptions_count_1": "{{count}} abonamente",
|
||||
"generic_subscriptions_count_2": "{{count}} de abonamente",
|
||||
"Search": "Căutați",
|
||||
"search_filters_title": "Filtre",
|
||||
"search_filters_date_label": "Data încărcării",
|
||||
"none": "niciunul",
|
||||
"search_message_use_another_instance": " Puteți <a href=\"`x`\">căuta într-o altă instanță</a>.",
|
||||
"comments_view_x_replies_0": "Afișați {{count}} răspuns",
|
||||
"comments_view_x_replies_1": "Afișați {{count}} răspunsuri",
|
||||
"comments_view_x_replies_2": "Afișați {{count}} de răspunsuri",
|
||||
"search_message_no_results": "Nu s-au găsit rezultate.",
|
||||
"Dutch (auto-generated)": "Olandeză (generată automat)",
|
||||
"Indonesian (auto-generated)": "Indoneziană (generată automat)",
|
||||
"German (auto-generated)": "Germană (generată automat)",
|
||||
"French (auto-generated)": "Franceză (generată automat)",
|
||||
"Interlingue": "Interlingue",
|
||||
"Italian (auto-generated)": "Italiană (generată automat)",
|
||||
"Japanese (auto-generated)": "Japoneză (generată automat)",
|
||||
"Korean (auto-generated)": "Coreeană (generată automat)",
|
||||
"Spanish (auto-generated)": "Spaniolă (generată automat)",
|
||||
"search_filters_date_option_none": "Oricând",
|
||||
"search_filters_date_option_year": "an",
|
||||
"search_filters_type_option_channel": "canal",
|
||||
"Spanish (Mexico)": "Spaniolă (Mexic)",
|
||||
"generic_count_weeks_0": "{{count}} săptămână",
|
||||
"generic_count_weeks_1": "{{count}} săptămâni",
|
||||
"generic_count_weeks_2": "{{count}} de săptămâni",
|
||||
"generic_count_seconds_0": "{{count}} secundă",
|
||||
"generic_count_seconds_1": "{{count}} secunde",
|
||||
"generic_count_seconds_2": "{{count}} de secunde",
|
||||
"search_filters_type_option_video": "videoclip",
|
||||
"generic_count_years_0": "{{count}} an",
|
||||
"generic_count_years_1": "{{count}} ani",
|
||||
"generic_count_years_2": "{{count}} de ani",
|
||||
"generic_count_months_0": "{{count}} lună",
|
||||
"generic_count_months_1": "{{count}} luni",
|
||||
"generic_count_months_2": "{{count}} de luni",
|
||||
"search_filters_duration_label": "durată",
|
||||
"search_filters_date_option_month": "lună",
|
||||
"search_filters_type_label": "Tip",
|
||||
"search_filters_date_option_today": "azi",
|
||||
"search_filters_date_option_week": "săptămână",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_type_option_playlist": "playlist",
|
||||
"search_filters_type_option_movie": "film",
|
||||
"search_filters_type_option_show": "emisiune",
|
||||
"search_filters_duration_option_short": "Scurt (< 4 minute)",
|
||||
"search_filters_duration_option_medium": "Medie (4 - 20 de minute)",
|
||||
"search_filters_duration_option_none": "Fără limită",
|
||||
"search_filters_duration_option_long": "Lungă (> 20 de minute)",
|
||||
"search_filters_features_label": "atribute",
|
||||
"search_filters_features_option_live": "în direct",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_subtitles": "subtitrări/CC",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_features_option_purchased": "Cumpărate",
|
||||
"next_steps_error_message": "După ce ar trebui să încercați să: ",
|
||||
"user_saved_playlists": "`x` playlisturi salvate",
|
||||
"search_filters_features_option_location": "locație",
|
||||
"search_filters_sort_label": "Sortați după",
|
||||
"search_filters_sort_option_relevance": "relevanță",
|
||||
"search_filters_sort_option_rating": "clasificare",
|
||||
"search_filters_sort_option_date": "Data încărcării",
|
||||
"search_filters_sort_option_views": "Numărul de vizionări",
|
||||
"footer_source_code": "Codul sursă",
|
||||
"search_filters_apply_button": "Aplicați filtrele selectate",
|
||||
"footer_original_source_code": "Codul sursă original",
|
||||
"next_steps_error_message_refresh": "Reîmprospătează",
|
||||
"next_steps_error_message_go_to_youtube": "Mergeți pe YouTube",
|
||||
"footer_donate_page": "Donați",
|
||||
"adminprefs_modified_source_code_url_label": "URL către depozitul de cod sursă modificat",
|
||||
"footer_documentation": "Documentație",
|
||||
"videoinfo_youTube_embed_link": "Încorporați",
|
||||
"videoinfo_watch_on_youTube": "Vizionați pe YouTube",
|
||||
"videoinfo_invidious_embed_link": "Link de încorporare",
|
||||
"download_subtitles": "Subtitrări - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` playlisturi create",
|
||||
"preferences_save_player_pos_label": "Salvați poziția de redare: ",
|
||||
"crash_page_you_found_a_bug": "Se pare că ați găsit un bug în aplicația Invidious!",
|
||||
"crash_page_before_reporting": "Înainte de a reporta bugul, asigurați-vă că ați:",
|
||||
"search_filters_date_option_hour": "oră",
|
||||
"search_message_change_filters_or_query": "Încercați să lărgiți căutarea sau să modificați filtrele.",
|
||||
"crash_page_report_issue": "Dacă niciuna dintre sugestiile de mai sus v-a ajutat, vă rugăm să <a href=\"`x`\">postați o nouă sugestie pe GitHub</a> (cel mai bine în engleză), și să includeți următorul text în post (să nu îl traduceți):",
|
||||
"search_filters_type_option_all": "orice tip",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Show less": "Afișați mai puțin",
|
||||
"Add to playlist": "Adaugă la playlist"
|
||||
}
|
||||
|
289
locales/ru.json
289
locales/ru.json
@ -5,24 +5,24 @@
|
||||
"Subscribe": "Подписаться",
|
||||
"View channel on YouTube": "Смотреть канал на YouTube",
|
||||
"View playlist on YouTube": "Посмотреть плейлист на YouTube",
|
||||
"newest": "самые свежие",
|
||||
"oldest": "самые старые",
|
||||
"newest": "сначала новые",
|
||||
"oldest": "сначала старые",
|
||||
"popular": "популярные",
|
||||
"last": "недавние",
|
||||
"last": "последние",
|
||||
"Next page": "Следующая страница",
|
||||
"Previous page": "Предыдущая страница",
|
||||
"First page": "Первая страница",
|
||||
"Clear watch history?": "Очистить историю просмотров?",
|
||||
"New password": "Новый пароль",
|
||||
"New passwords must match": "Новые пароли не совпадают",
|
||||
"Cannot change password for Google accounts": "Изменить пароль аккаунта Google невозможно",
|
||||
"Authorize token?": "Авторизовать токен?",
|
||||
"Authorize token for `x`?": "Авторизовать токен для `x`?",
|
||||
"Authorize token for `x`?": "Токен авторизации для `x`?",
|
||||
"Yes": "Да",
|
||||
"No": "Нет",
|
||||
"Import and Export Data": "Импорт и экспорт данных",
|
||||
"Import": "Импорт",
|
||||
"Import Invidious data": "Импортировать JSON с данными Invidious",
|
||||
"Import YouTube subscriptions": "Импортировать подписки из YouTube/OPML",
|
||||
"Import YouTube subscriptions": "Импортировать подписки из CSV или OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Импортировать подписки из FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Импортировать подписки из NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Импортировать данные из NewPipe (.zip)",
|
||||
@ -30,29 +30,27 @@
|
||||
"Export subscriptions as OPML": "Экспортировать подписки в формате OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Экспортировать подписки в формате OPML (для NewPipe и FreeTube)",
|
||||
"Export data as JSON": "Экспортировать данные Invidious в формате JSON",
|
||||
"Delete account?": "Удалить аккаунт?",
|
||||
"Delete account?": "Удалить учётную запись?",
|
||||
"History": "История",
|
||||
"An alternative front-end to YouTube": "Альтернативный фронтенд для YouTube",
|
||||
"JavaScript license information": "Информация о лицензиях JavaScript",
|
||||
"source": "источник",
|
||||
"Log in": "Войти",
|
||||
"Log in/register": "Войти или зарегистрироваться",
|
||||
"Log in with Google": "Войти через Google",
|
||||
"User ID": "ID пользователя",
|
||||
"User ID": "ИД пользователя",
|
||||
"Password": "Пароль",
|
||||
"Time (h:mm:ss):": "Время (ч:мм:сс):",
|
||||
"Text CAPTCHA": "Текст капчи",
|
||||
"Image CAPTCHA": "Изображение капчи",
|
||||
"Text CAPTCHA": "Текстовая капча (англ.)",
|
||||
"Image CAPTCHA": "Капча-картинка",
|
||||
"Sign In": "Войти",
|
||||
"Register": "Зарегистрироваться",
|
||||
"E-mail": "Электронная почта",
|
||||
"Google verification code": "Код подтверждения Google",
|
||||
"Register": "Регистрация",
|
||||
"E-mail": "Эл. почта",
|
||||
"Preferences": "Настройки",
|
||||
"preferences_category_player": "Настройки проигрывателя",
|
||||
"preferences_video_loop_label": "Всегда повторять: ",
|
||||
"preferences_autoplay_label": "Автовоспроизведение: ",
|
||||
"preferences_continue_label": "Всегда включать следующее видео? ",
|
||||
"preferences_continue_autoplay_label": "Автопроигрывание следующего видео: ",
|
||||
"preferences_continue_label": "Воспроизводить следующее видео: ",
|
||||
"preferences_continue_autoplay_label": "Автовоспроизведение следующего видео: ",
|
||||
"preferences_listen_label": "Режим «только аудио» по умолчанию: ",
|
||||
"preferences_local_label": "Проигрывать видео через прокси? ",
|
||||
"preferences_speed_label": "Скорость видео по умолчанию: ",
|
||||
@ -64,31 +62,31 @@
|
||||
"preferences_captions_label": "Основной язык субтитров: ",
|
||||
"Fallback captions: ": "Дополнительный язык субтитров: ",
|
||||
"preferences_related_videos_label": "Показывать похожие видео? ",
|
||||
"preferences_annotations_label": "Всегда показывать аннотации? ",
|
||||
"preferences_annotations_label": "Показывать аннотации по умолчанию: ",
|
||||
"preferences_extend_desc_label": "Автоматически раскрывать описание видео: ",
|
||||
"preferences_vr_mode_label": "Интерактивные 360-градусные видео (необходим WebGL): ",
|
||||
"preferences_category_visual": "Настройки сайта",
|
||||
"preferences_player_style_label": "Стиль проигрывателя: ",
|
||||
"Dark mode: ": "Тёмное оформление: ",
|
||||
"preferences_dark_mode_label": "Тема: ",
|
||||
"dark": "темная",
|
||||
"dark": "тёмная",
|
||||
"light": "светлая",
|
||||
"preferences_thin_mode_label": "Облегчённое оформление: ",
|
||||
"preferences_category_misc": "Прочие предпочтения",
|
||||
"preferences_automatic_instance_redirect_label": "Автоматическое перенаправление на зеркало сайта (резервный вариант redirect.invidious.io): ",
|
||||
"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": "по названию канала в обратном порядке",
|
||||
"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: ": "Показывать только непросмотренные видео с каналов: ",
|
||||
"Only show latest unwatched video from channel: ": "Показывать только последние непросмотренные видео с канала: ",
|
||||
"preferences_unseen_only_label": "Показывать только непросмотренные видео: ",
|
||||
"preferences_notifications_only_label": "Показывать только оповещения, если они есть: ",
|
||||
"Enable web notifications": "Включить уведомления в браузере",
|
||||
@ -96,24 +94,24 @@
|
||||
"`x` is live": "`x` в прямом эфире",
|
||||
"preferences_category_data": "Настройки данных",
|
||||
"Clear watch history": "Очистить историю просмотров",
|
||||
"Import/export data": "Импорт/Экспорт данных",
|
||||
"Import/export data": "Импорт и экспорт данных",
|
||||
"Change password": "Изменить пароль",
|
||||
"Manage subscriptions": "Управлять подписками",
|
||||
"Manage tokens": "Управлять токенами",
|
||||
"Manage subscriptions": "Управление подписками",
|
||||
"Manage tokens": "Управление токенами",
|
||||
"Watch history": "История просмотров",
|
||||
"Delete account": "Удалить аккаунт",
|
||||
"preferences_category_admin": "Администраторские настройки",
|
||||
"preferences_category_admin": "Настройки администратора",
|
||||
"preferences_default_home_label": "Главная страница по умолчанию: ",
|
||||
"preferences_feed_menu_label": "Меню ленты видео: ",
|
||||
"preferences_show_nick_label": "Показать ник вверху: ",
|
||||
"Top enabled: ": "Включить топ видео? ",
|
||||
"CAPTCHA enabled: ": "Включить капчу? ",
|
||||
"Login enabled: ": "Включить авторизацию? ",
|
||||
"Login enabled: ": "Включить авторизацию: ",
|
||||
"Registration enabled: ": "Включить регистрацию? ",
|
||||
"Report statistics: ": "Сообщать статистику? ",
|
||||
"Save preferences": "Сохранить настройки",
|
||||
"Subscription manager": "Менеджер подписок",
|
||||
"Token manager": "Менеджер токенов",
|
||||
"Subscription manager": "Управление подписками",
|
||||
"Token manager": "Управление токенами",
|
||||
"Token": "Токен",
|
||||
"Import/export": "Импорт и экспорт",
|
||||
"unsubscribe": "отписаться",
|
||||
@ -121,10 +119,10 @@
|
||||
"Subscriptions": "Подписки",
|
||||
"search": "поиск",
|
||||
"Log out": "Выйти",
|
||||
"Released under the AGPLv3 on Github.": "Выпущено под лицензией AGPLv3 на Github.",
|
||||
"Source available here.": "Исходный код доступен здесь.",
|
||||
"View JavaScript license information.": "Посмотреть информацию по лицензии JavaScript.",
|
||||
"View privacy policy.": "Посмотреть политику конфиденциальности.",
|
||||
"Released under the AGPLv3 on Github.": "Выпущено под лицензией AGPLv3 на GitHub.",
|
||||
"Source available here.": "Исходный код.",
|
||||
"View JavaScript license information.": "Информация о лицензиях JavaScript.",
|
||||
"View privacy policy.": "Политика конфиденциальности.",
|
||||
"Trending": "В тренде",
|
||||
"Public": "Публичный",
|
||||
"Unlisted": "Нет в списке",
|
||||
@ -135,47 +133,41 @@
|
||||
"Delete playlist": "Удалить плейлист",
|
||||
"Create playlist": "Создать плейлист",
|
||||
"Title": "Заголовок",
|
||||
"Playlist privacy": "Конфиденциальность плейлиста",
|
||||
"Playlist privacy": "Видимость плейлиста",
|
||||
"Editing playlist `x`": "Редактирование плейлиста `x`",
|
||||
"Show more": "Показать больше",
|
||||
"Show less": "Показать меньше",
|
||||
"Watch on YouTube": "Смотреть на YouTube",
|
||||
"Switch Invidious Instance": "Сменить экземпляр Invidious",
|
||||
"Broken? Try another Invidious Instance": "Сломался? Попробуйте другой экземпляр Invidious",
|
||||
"Switch Invidious Instance": "Сменить зеркало Invidious",
|
||||
"Hide annotations": "Скрыть аннотации",
|
||||
"Show annotations": "Показать аннотации",
|
||||
"Genre: ": "Жанр: ",
|
||||
"License: ": "Лицензия: ",
|
||||
"Family friendly? ": "Семейный просмотр: ",
|
||||
"Wilson score: ": "Рейтинг Уилсона: ",
|
||||
"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.": "Похоже, у вас отключён JavaScript. Чтобы увидить комментарии, нажмите сюда, но учтите: они могут загружаться немного медленнее.",
|
||||
"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. Нажмите сюда, чтобы увидеть комментарии. Но учтите: они могут загружаться немного медленнее.",
|
||||
"View YouTube comments": "Показать комментарии с YouTube",
|
||||
"View more comments on Reddit": "Посмотреть больше комментариев на Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Показать `x` комментариев",
|
||||
"": "Показать `x` комментариев"
|
||||
"([^.,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.": "Войти не удаётся. Проверьте, не включена ли двухфакторная аутентификация (по коду или смс).",
|
||||
"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": "Необходимо ввести ID пользователя",
|
||||
"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'": "Пожалуйста, нажмите «Войти через Google»",
|
||||
"Password cannot be empty": "Пароль не может быть пустым",
|
||||
"Password cannot be longer than 55 characters": "Пароль не может быть длиннее 55 символов",
|
||||
"Please log in": "Пожалуйста, войдите",
|
||||
@ -186,17 +178,17 @@
|
||||
"Could not get channel info.": "Не удаётся получить информацию об этом канале.",
|
||||
"Could not fetch comments": "Не удаётся загрузить комментарии",
|
||||
"`x` ago": "`x` назад",
|
||||
"Load more": "Загрузить больше",
|
||||
"Could not create mix.": "Не удаётся создать микс.",
|
||||
"Load more": "Загрузить ещё",
|
||||
"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": "Необходимо заполнить скрытое поле «challenge»",
|
||||
"Hidden field \"token\" is a required field": "Необходимо заполнить скрытое поле «токен»",
|
||||
"Erroneous challenge": "Неправильный ответ в «challenge»",
|
||||
"Erroneous token": "Неправильный токен",
|
||||
"No such user": "Недопустимое имя пользователя",
|
||||
"No such user": "Пользователь не найден",
|
||||
"Token is expired, please try again": "Срок действия токена истёк, попробуйте позже",
|
||||
"English": "Английский",
|
||||
"English (auto-generated)": "Английский (созданы автоматически)",
|
||||
@ -214,13 +206,13 @@
|
||||
"Burmese": "Бирманский",
|
||||
"Catalan": "Каталонский",
|
||||
"Cebuano": "Себуанский",
|
||||
"Chinese (Simplified)": "Китайский (упрощенный)",
|
||||
"Chinese (Simplified)": "Китайский (упрощённый)",
|
||||
"Chinese (Traditional)": "Китайский (традиционный)",
|
||||
"Corsican": "Корсиканский",
|
||||
"Croatian": "Хорватский",
|
||||
"Czech": "Чешский",
|
||||
"Danish": "Датский",
|
||||
"Dutch": "Нидерландский",
|
||||
"Dutch": "Голландский",
|
||||
"Esperanto": "Эсперанто",
|
||||
"Estonian": "Эстонский",
|
||||
"Filipino": "Филиппинский",
|
||||
@ -230,8 +222,8 @@
|
||||
"Georgian": "Грузинский",
|
||||
"German": "Немецкий",
|
||||
"Greek": "Греческий",
|
||||
"Gujarati": "Гуджаратский",
|
||||
"Haitian Creole": "Гаит. креольский",
|
||||
"Gujarati": "Гуджарати",
|
||||
"Haitian Creole": "Гаитянский креольский",
|
||||
"Hausa": "Хауса",
|
||||
"Hawaiian": "Гавайский",
|
||||
"Hebrew": "Иврит",
|
||||
@ -252,7 +244,7 @@
|
||||
"Kurdish": "Курдский",
|
||||
"Kyrgyz": "Киргизский",
|
||||
"Lao": "Лаосский",
|
||||
"Latin": "Латинский",
|
||||
"Latin": "Латынь",
|
||||
"Latvian": "Латышский",
|
||||
"Lithuanian": "Литовский",
|
||||
"Luxembourgish": "Люксембургский",
|
||||
@ -263,9 +255,9 @@
|
||||
"Maltese": "Мальтийский",
|
||||
"Maori": "Маори",
|
||||
"Marathi": "Маратхи",
|
||||
"Mongolian": "Монгольская",
|
||||
"Mongolian": "Монгольский",
|
||||
"Nepali": "Непальский",
|
||||
"Norwegian Bokmål": "Норвежский",
|
||||
"Norwegian Bokmål": "Норвежский букмол",
|
||||
"Nyanja": "Ньянджа",
|
||||
"Pashto": "Пушту",
|
||||
"Persian": "Персидский",
|
||||
@ -300,7 +292,7 @@
|
||||
"Vietnamese": "Вьетнамский",
|
||||
"Welsh": "Валлийский",
|
||||
"Western Frisian": "Западнофризский",
|
||||
"Xhosa": "Коса",
|
||||
"Xhosa": "Коса (кхоса)",
|
||||
"Yiddish": "Идиш",
|
||||
"Yoruba": "Йоруба",
|
||||
"Zulu": "Зулусский",
|
||||
@ -312,7 +304,7 @@
|
||||
"Rating: ": "Рейтинг: ",
|
||||
"preferences_locale_label": "Язык: ",
|
||||
"View as playlist": "Смотреть как плейлист",
|
||||
"Default": "По-умолчанию",
|
||||
"Default": "По умолчанию",
|
||||
"Music": "Музыка",
|
||||
"Gaming": "Игры",
|
||||
"News": "Новости",
|
||||
@ -326,42 +318,41 @@
|
||||
"`x` marked it with a ❤": "❤ от автора канала \"`x`\"",
|
||||
"Audio mode": "Аудио режим",
|
||||
"Video mode": "Видео режим",
|
||||
"Videos": "Видео",
|
||||
"channel_tab_videos_label": "Видео",
|
||||
"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": "Прямой эфир",
|
||||
"4k": "4K",
|
||||
"location": "Местоположение",
|
||||
"hdr": "HDR",
|
||||
"filter": "Фильтр",
|
||||
"channel_tab_community_label": "Сообщество",
|
||||
"search_filters_sort_option_relevance": "актуальности",
|
||||
"search_filters_sort_option_rating": "рейтингу",
|
||||
"search_filters_sort_option_date": "дате загрузки",
|
||||
"search_filters_sort_option_views": "просмотрам",
|
||||
"search_filters_type_label": "Тип",
|
||||
"search_filters_duration_label": "Длительность",
|
||||
"search_filters_features_label": "Дополнительно",
|
||||
"search_filters_sort_label": "Сортировать по",
|
||||
"search_filters_date_option_hour": "Последний час",
|
||||
"search_filters_date_option_today": "Сегодня",
|
||||
"search_filters_date_option_week": "Эта неделя",
|
||||
"search_filters_date_option_month": "Этот месяц",
|
||||
"search_filters_date_option_year": "Этот год",
|
||||
"search_filters_type_option_video": "Видео",
|
||||
"search_filters_type_option_channel": "Канал",
|
||||
"search_filters_type_option_playlist": "Плейлист",
|
||||
"search_filters_type_option_movie": "Фильм",
|
||||
"search_filters_type_option_show": "Сериал",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Субтитры",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Прямой эфир",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Местоположение",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"Current version: ": "Текущая версия: ",
|
||||
"next_steps_error_message": "После чего следует попробовать: ",
|
||||
"next_steps_error_message_refresh": "Обновить",
|
||||
"next_steps_error_message_go_to_youtube": "Перейти на YouTube",
|
||||
"short": "Короткие (< 4 минут)",
|
||||
"long": "Длинные (> 20 минут)",
|
||||
"search_filters_duration_option_short": "Короткие (< 4 минут)",
|
||||
"search_filters_duration_option_long": "Длинные (> 20 минут)",
|
||||
"preferences_quality_dash_option_best": "Наилучшее",
|
||||
"generic_count_weeks_0": "{{count}} неделя",
|
||||
"generic_count_weeks_1": "{{count}} недели",
|
||||
@ -370,28 +361,28 @@
|
||||
"English (United States)": "Английский (США)",
|
||||
"Cantonese (Hong Kong)": "Кантонский (Гонконг)",
|
||||
"Chinese (Taiwan)": "Китайский (Тайвань)",
|
||||
"Dutch (auto-generated)": "Голландский (автоматический)",
|
||||
"German (auto-generated)": "Немецкий (автоматический)",
|
||||
"Indonesian (auto-generated)": "Индонезийский (автоматический)",
|
||||
"Italian (auto-generated)": "Итальянский (автоматический)",
|
||||
"Dutch (auto-generated)": "Голландский (созданы автоматически)",
|
||||
"German (auto-generated)": "Немецкий (созданы автоматически)",
|
||||
"Indonesian (auto-generated)": "Индонезийский (созданы автоматически)",
|
||||
"Italian (auto-generated)": "Итальянский (созданы автоматически)",
|
||||
"Interlingue": "Окциденталь",
|
||||
"Russian (auto-generated)": "Русский (автоматический)",
|
||||
"Spanish (auto-generated)": "Испанский (автоматический)",
|
||||
"Russian (auto-generated)": "Русский (созданы автоматически)",
|
||||
"Spanish (auto-generated)": "Испанский (созданы автоматически)",
|
||||
"Spanish (Spain)": "Испанский (Испания)",
|
||||
"Turkish (auto-generated)": "Турецкий (автоматический)",
|
||||
"Vietnamese (auto-generated)": "Вьетнамский (автоматический)",
|
||||
"Turkish (auto-generated)": "Турецкий (созданы автоматически)",
|
||||
"Vietnamese (auto-generated)": "Вьетнамский (созданы автоматически)",
|
||||
"footer_documentation": "Документация",
|
||||
"adminprefs_modified_source_code_url_label": "Ссылка на нашу ветку репозитория",
|
||||
"adminprefs_modified_source_code_url_label": "Ссылка на репозиторий с измененными исходными кодами",
|
||||
"none": "ничего",
|
||||
"videoinfo_watch_on_youTube": "Смотреть на YouTube",
|
||||
"videoinfo_youTube_embed_link": "Встраиваемый элемент",
|
||||
"videoinfo_invidious_embed_link": "Встраиваемая ссылка",
|
||||
"videoinfo_youTube_embed_link": "Версия для встраивания",
|
||||
"videoinfo_invidious_embed_link": "Ссылка для встраивания",
|
||||
"download_subtitles": "Субтитры - `x` (.vtt)",
|
||||
"user_created_playlists": "`x` созданных плейлистов",
|
||||
"crash_page_you_found_a_bug": "Похоже вы нашли баг в Invidious!",
|
||||
"crash_page_you_found_a_bug": "Похоже, вы нашли ошибку в Invidious!",
|
||||
"crash_page_before_reporting": "Прежде чем сообщать об ошибке, убедитесь, что вы:",
|
||||
"crash_page_refresh": "пробовали <a href=\"`x`\"> перезагрузить страницу</a>",
|
||||
"crash_page_report_issue": "Если ни один вариант не помог, пожалуйста <a href=\"`x`\">откройте новую проблему на GitHub</a> (желательно на английском) и приложите следующий текст к вашему сообщению (НЕ переводите его):",
|
||||
"crash_page_report_issue": "Если ни один вариант не помог, пожалуйста <a href=\"`x`\">откройте новую проблему на GitHub</a> (на английском, пжлста) и приложите следующий текст к вашему сообщению (НЕ переводите его):",
|
||||
"generic_videos_count_0": "{{count}} видео",
|
||||
"generic_videos_count_1": "{{count}} видео",
|
||||
"generic_videos_count_2": "{{count}} видео",
|
||||
@ -419,12 +410,12 @@
|
||||
"generic_views_count_0": "{{count}} просмотр",
|
||||
"generic_views_count_1": "{{count}} просмотра",
|
||||
"generic_views_count_2": "{{count}} просмотров",
|
||||
"French (auto-generated)": "Французский (автоматический)",
|
||||
"Portuguese (auto-generated)": "Португальский (автоматический)",
|
||||
"French (auto-generated)": "Французский (созданы автоматически)",
|
||||
"Portuguese (auto-generated)": "Португальский (созданы автоматически)",
|
||||
"generic_count_days_0": "{{count}} день",
|
||||
"generic_count_days_1": "{{count}} дня",
|
||||
"generic_count_days_2": "{{count}} дней",
|
||||
"preferences_quality_dash_option_auto": "Автоматическое",
|
||||
"preferences_quality_dash_option_auto": "Авто",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"generic_subscriptions_count_0": "{{count}} подписка",
|
||||
@ -437,15 +428,15 @@
|
||||
"generic_count_seconds_0": "{{count}} секунда",
|
||||
"generic_count_seconds_1": "{{count}} секунды",
|
||||
"generic_count_seconds_2": "{{count}} секунд",
|
||||
"purchased": "Приобретено",
|
||||
"search_filters_features_option_purchased": "Приобретено",
|
||||
"videoinfo_started_streaming_x_ago": "Трансляция началась `x` назад",
|
||||
"crash_page_switch_instance": "пробовали <a href=\"`x`\">использовать другое зеркало</a>",
|
||||
"crash_page_read_the_faq": "прочли <a href=\"`x`\">Частые Вопросы (ЧаВо)</a>",
|
||||
"crash_page_read_the_faq": "прочли ответы на <a href=\"`x`\">Частые Вопросы (ЧаВо)</a>",
|
||||
"Chinese": "Китайский",
|
||||
"Chinese (Hong Kong)": "Китайский (Гонконг)",
|
||||
"Japanese (auto-generated)": "Японский (автоматический)",
|
||||
"Japanese (auto-generated)": "Японский (созданы автоматически)",
|
||||
"Chinese (China)": "Китайский (Китай)",
|
||||
"Korean (auto-generated)": "Корейский (автоматический)",
|
||||
"Korean (auto-generated)": "Корейский (созданы автоматически)",
|
||||
"generic_count_months_0": "{{count}} месяц",
|
||||
"generic_count_months_1": "{{count}} месяца",
|
||||
"generic_count_months_2": "{{count}} месяцев",
|
||||
@ -457,7 +448,7 @@
|
||||
"footer_original_source_code": "Оригинальный исходный код",
|
||||
"footer_modfied_source_code": "Изменённый исходный код",
|
||||
"user_saved_playlists": "`x` сохранённых плейлистов",
|
||||
"crash_page_search_issue": "искали <a href=\"`x`\">похожую проблему на Github</a>",
|
||||
"crash_page_search_issue": "поискали <a href=\"`x`\">похожую проблему на GitHub</a>",
|
||||
"comments_points_count_0": "{{count}} плюс",
|
||||
"comments_points_count_1": "{{count}} плюса",
|
||||
"comments_points_count_2": "{{count}} плюсов",
|
||||
@ -466,15 +457,63 @@
|
||||
"preferences_quality_option_dash": "DASH (автоматическое качество)",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_option_medium": "Среднее",
|
||||
"preferences_quality_dash_label": "Предпочтительное автоматическое качество видео: ",
|
||||
"preferences_quality_dash_label": "Предпочтительное качество для DASH: ",
|
||||
"preferences_quality_dash_option_worst": "Очень низкое",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"invidious": "Invidious",
|
||||
"360": "360°",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"Video unavailable": "Видео недоступно",
|
||||
"preferences_save_player_pos_label": "Запоминать позицию: ",
|
||||
"preferences_region_label": "Страна: "
|
||||
"preferences_region_label": "Страна источник ",
|
||||
"preferences_watch_history_label": "Включить историю просмотров: ",
|
||||
"search_filters_title": "Фильтр",
|
||||
"search_filters_duration_option_none": "Любой длины",
|
||||
"search_filters_type_option_all": "Любого типа",
|
||||
"search_filters_date_option_none": "Любая дата",
|
||||
"search_filters_date_label": "Дата загрузки",
|
||||
"search_message_no_results": "Ничего не найдено.",
|
||||
"search_message_use_another_instance": " Дополнительно вы можете <a href=\"`x`\">поискать на других зеркалах</a>.",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_message_change_filters_or_query": "Попробуйте расширить поисковый запрос и/или изменить фильтры.",
|
||||
"search_filters_duration_option_medium": "Средние (4 - 20 минут)",
|
||||
"search_filters_apply_button": "Применить фильтры",
|
||||
"Popular enabled: ": "Популярное включено: ",
|
||||
"error_video_not_in_playlist": "Запрошенного видео нет в этом плейлисте. <a href=\"`x`\">Нажмите тут, чтобы вернуться к странице плейлиста.</a>",
|
||||
"channel_tab_playlists_label": "Плейлисты",
|
||||
"channel_tab_channels_label": "Каналы",
|
||||
"channel_tab_streams_label": "Стримы",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"Music in this video": "Музыка в этом видео",
|
||||
"Artist: ": "Исполнитель: ",
|
||||
"Album: ": "Альбом: ",
|
||||
"Song: ": "Композиция: ",
|
||||
"Standard YouTube license": "Стандартная лицензия YouTube",
|
||||
"Channel Sponsor": "Спонсор канала",
|
||||
"Download is disabled": "Загрузка отключена",
|
||||
"Import YouTube playlist (.csv)": "Импорт плейлиста YouTube (.csv)",
|
||||
"channel_tab_releases_label": "Релизы",
|
||||
"generic_button_delete": "Удалить",
|
||||
"generic_button_edit": "Редактировать",
|
||||
"generic_button_save": "Сохранить",
|
||||
"generic_button_cancel": "Отменить",
|
||||
"generic_button_rss": "RSS",
|
||||
"playlist_button_add_items": "Добавить видео",
|
||||
"channel_tab_podcasts_label": "Подкасты",
|
||||
"generic_channels_count_0": "{{count}} канал",
|
||||
"generic_channels_count_1": "{{count}} канала",
|
||||
"generic_channels_count_2": "{{count}} каналов",
|
||||
"Import YouTube watch history (.json)": "Импортировать историю просмотра из YouTube (.json)",
|
||||
"Add to playlist": "Добавить в плейлист",
|
||||
"Add to playlist: ": "Добавить в плейлист: ",
|
||||
"Answer": "Ответить",
|
||||
"Search for videos": "Поиск видео",
|
||||
"The Popular feed has been disabled by the administrator.": "Лента популярного была отключена администратором.",
|
||||
"toggle_theme": "Переключатель тем",
|
||||
"carousel_slide": "Пролистано {{current}} из {{total}}",
|
||||
"carousel_skip": "Пропустить всё",
|
||||
"carousel_go_to": "Перейти к странице `x`",
|
||||
"preferences_preload_label": "Предзагрузка видеоданных: "
|
||||
}
|
||||
|
127
locales/si.json
Normal file
127
locales/si.json
Normal file
@ -0,0 +1,127 @@
|
||||
{
|
||||
"generic_views_count": "බැලීම් {{count}}",
|
||||
"generic_views_count_plural": "බැලීම් {{count}}",
|
||||
"generic_videos_count": "{{count}} වීඩියෝව",
|
||||
"generic_videos_count_plural": "වීඩියෝ {{count}}",
|
||||
"generic_subscribers_count": "ග්රාහකයන් {{count}}",
|
||||
"generic_subscribers_count_plural": "ග්රාහකයන් {{count}}",
|
||||
"generic_subscriptions_count": "දායකත්ව {{count}}",
|
||||
"generic_subscriptions_count_plural": "දායකත්ව {{count}}",
|
||||
"Shared `x` ago": "`x` පෙර බෙදා ගන්නා ලදී",
|
||||
"Unsubscribe": "දායක නොවන්න",
|
||||
"View playlist on YouTube": "YouTube හි ධාවන ලැයිස්තුව බලන්න",
|
||||
"newest": "අලුත්ම",
|
||||
"oldest": "පැරණිතම",
|
||||
"popular": "ජනප්රිය",
|
||||
"last": "අවසන්",
|
||||
"Authorize token?": "ටෝකනය අනුමත කරනවා ද?",
|
||||
"Authorize token for `x`?": "`x` සඳහා ටෝකනය අනුමත කරනවා ද?",
|
||||
"Yes": "ඔව්",
|
||||
"Import and Export Data": "දත්ත ආනයනය සහ අපනයනය කිරීම",
|
||||
"Import": "ආනයන",
|
||||
"Import Invidious data": "Invidious JSON දත්ත ආයාත කරන්න",
|
||||
"Import FreeTube subscriptions (.db)": "FreeTube දායකත්වයන් (.db) ආයාත කරන්න",
|
||||
"Import NewPipe subscriptions (.json)": "NewPipe දායකත්වයන් (.json) ආයාත කරන්න",
|
||||
"Import NewPipe data (.zip)": "NewPipe දත්ත (.zip) ආයාත කරන්න",
|
||||
"Export": "අපනයන",
|
||||
"Export data as JSON": "Invidious දත්ත JSON ලෙස අපනයනය කරන්න",
|
||||
"Delete account?": "ගිණුම මකාදමනවා ද?",
|
||||
"History": "ඉතිහාසය",
|
||||
"An alternative front-end to YouTube": "YouTube සඳහා විකල්ප ඉදිරිපස අන්තයක්",
|
||||
"source": "මූලාශ්රය",
|
||||
"Log in/register": "පුරන්න/ලියාපදිංචිවන්න",
|
||||
"Password": "මුරපදය",
|
||||
"Time (h:mm:ss):": "වේලාව (h:mm:ss):",
|
||||
"Sign In": "පුරන්න",
|
||||
"Preferences": "මනාපයන්",
|
||||
"preferences_category_player": "වීඩියෝ ධාවක මනාපයන්",
|
||||
"preferences_video_loop_label": "නැවත නැවතත්: ",
|
||||
"preferences_autoplay_label": "ස්වයංක්රීය වාදනය: ",
|
||||
"preferences_continue_label": "මීලඟට වාදනය කරන්න: ",
|
||||
"preferences_continue_autoplay_label": "මීළඟ වීඩියෝව ස්වයංක්රීයව ධාවනය කරන්න: ",
|
||||
"preferences_local_label": "Proxy වීඩියෝ: ",
|
||||
"preferences_watch_history_label": "නැරඹුම් ඉතිහාසය සබල කරන්න: ",
|
||||
"preferences_speed_label": "පෙරනිමි වේගය: ",
|
||||
"preferences_quality_option_dash": "DASH (අනුවර්තිත ගුණත්වය)",
|
||||
"preferences_quality_option_medium": "මධ්යස්ථ",
|
||||
"preferences_quality_dash_label": "කැමති DASH වීඩියෝ ගුණත්වය: ",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_volume_label": "ධාවකයේ හඬ: ",
|
||||
"preferences_comments_label": "පෙරනිමි අදහස්: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"invidious": "Invidious",
|
||||
"preferences_captions_label": "පෙරනිමි උපසිරැසි: ",
|
||||
"preferences_related_videos_label": "අදාළ වීඩියෝ පෙන්වන්න: ",
|
||||
"preferences_annotations_label": "අනුසටහන් පෙන්වන්න: ",
|
||||
"preferences_vr_mode_label": "අන්තර්ක්රියාකාරී අංශක 360 වීඩියෝ (WebGL අවශ්යයි): ",
|
||||
"preferences_region_label": "අන්තර්ගත රට: ",
|
||||
"preferences_player_style_label": "වීඩියෝ ධාවක විලාසය: ",
|
||||
"Dark mode: ": "අඳුරු මාදිලිය: ",
|
||||
"preferences_dark_mode_label": "තේමාව: ",
|
||||
"light": "ආලෝකමත්",
|
||||
"generic_playlists_count": "{{count}} ධාවන ලැයිස්තුව",
|
||||
"generic_playlists_count_plural": "ධාවන ලැයිස්තු {{count}}",
|
||||
"LIVE": "සජීව",
|
||||
"Subscribe": "දායක වන්න",
|
||||
"View channel on YouTube": "YouTube හි නාලිකාව බලන්න",
|
||||
"Next page": "ඊළඟ පිටුව",
|
||||
"Previous page": "පෙර පිටුව",
|
||||
"Clear watch history?": "නැරඹුම් ඉතිහාසය මකාදමනවා ද?",
|
||||
"No": "නැත",
|
||||
"Log in": "පුරන්න",
|
||||
"New password": "නව මුරපදය",
|
||||
"Import YouTube subscriptions": "YouTube/OPML දායකත්වයන් ආයාත කරන්න",
|
||||
"Register": "ලියාපදිංචිවන්න",
|
||||
"New passwords must match": "නව මුරපද ගැලපිය යුතුය",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "OPML ලෙස දායකත්වයන් අපනයනය කරන්න (NewPipe සහ FreeTube සඳහා)",
|
||||
"Export subscriptions as OPML": "දායකත්වයන් OPML ලෙස අපනයනය කරන්න",
|
||||
"JavaScript license information": "JavaScript බලපත්ර තොරතුරු",
|
||||
"User ID": "පරිශීලක කේතය",
|
||||
"Text CAPTCHA": "CAPTCHA පෙල",
|
||||
"Image CAPTCHA": "CAPTCHA රූපය",
|
||||
"E-mail": "විද්යුත් තැපෑල",
|
||||
"preferences_quality_label": "කැමති වීඩියෝ ගුණත්වය: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_auto": "ස්වයංක්රීය",
|
||||
"preferences_quality_option_small": "කුඩා",
|
||||
"preferences_quality_dash_option_best": "හොඳම",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_extend_desc_label": "වීඩියෝ විස්තරය ස්වයංක්රීයව දිගහරින්න: ",
|
||||
"preferences_category_visual": "දෘශ්ය මනාපයන්",
|
||||
"dark": "අඳුරු",
|
||||
"preferences_category_misc": "විවිධ මනාප",
|
||||
"preferences_category_subscription": "දායකත්ව මනාප",
|
||||
"Redirect homepage to feed: ": "මුල් පිටුව පෝෂණය වෙත හරවා යවන්න: ",
|
||||
"preferences_max_results_label": "සංග්රහයේ පෙන්වන වීඩියෝ ගණන: ",
|
||||
"preferences_sort_label": "වීඩියෝ වර්ග කරන්න: ",
|
||||
"alphabetically": "අකාරාදී ලෙස",
|
||||
"alphabetically - reverse": "අකාරාදී - ආපසු",
|
||||
"channel name": "නාලිකාවේ නම",
|
||||
"Only show latest video from channel: ": "නාලිකාවේ නවතම වීඩියෝව පමණක් පෙන්වන්න: ",
|
||||
"preferences_unseen_only_label": "නොබැලූ පමණක් පෙන්වන්න: ",
|
||||
"Enable web notifications": "වෙබ් දැනුම්දීම් සබල කරන්න",
|
||||
"Import/export data": "දත්ත ආනයනය / අපනයනය",
|
||||
"Change password": "මුරපදය වෙනස් කරන්න",
|
||||
"Manage subscriptions": "දායකත්ව කළමනාකරණය",
|
||||
"Manage tokens": "ටෝකන කළමනාකරණය",
|
||||
"Watch history": "නැරඹුම් ඉතිහාසය",
|
||||
"Save preferences": "මනාප සුරකින්න",
|
||||
"Token": "ටෝකනය",
|
||||
"View privacy policy.": "රහස්යතා ප්රතිපත්තිය බලන්න.",
|
||||
"Only show latest unwatched video from channel: ": "නාලිකාවේ නවතම නැරඹන නොලද වීඩියෝව පමණක් පෙන්වන්න: ",
|
||||
"preferences_category_data": "දත්ත මනාප",
|
||||
"Clear watch history": "නැරඹුම් ඉතිහාසය මකාදැමීම",
|
||||
"Subscriptions": "දායකත්ව",
|
||||
"generic_button_rss": "RSS",
|
||||
"generic_button_save": "සුරකින්න",
|
||||
"generic_button_cancel": "අවලංගු කරන්න",
|
||||
"preferences_quality_dash_option_worst": "නරකම"
|
||||
}
|
@ -9,24 +9,23 @@
|
||||
"last": "posledné",
|
||||
"Next page": "Ďalšia strana",
|
||||
"Previous page": "Predchádzajúca strana",
|
||||
"Clear watch history?": "Vymazať históriu sledovania?",
|
||||
"Clear watch history?": "Vymazať históriu pozerania?",
|
||||
"New password": "Nové heslo",
|
||||
"New passwords must match": "Nové heslá sa musia zhodovať",
|
||||
"Cannot change password for Google accounts": "Heslo pre účty Google sa nedá zmeniť",
|
||||
"Authorize token?": "Autorizovať token?",
|
||||
"Yes": "Áno",
|
||||
"No": "Nie",
|
||||
"Import and Export Data": "Import a Export údajov",
|
||||
"Import": "Import",
|
||||
"Import Invidious data": "Importovať údaje Invidious",
|
||||
"Import YouTube subscriptions": "Importovať odbery YouTube",
|
||||
"Import Invidious data": "Importovať JSON údaje Invidious",
|
||||
"Import YouTube subscriptions": "Importovať odbery YouTube/OPML",
|
||||
"Import FreeTube subscriptions (.db)": "Importovať odbery FreeTube (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Importovať odbery NewPipe (.json)",
|
||||
"Import NewPipe data (.zip)": "Importovať údaje NewPipe (.zip)",
|
||||
"Export": "Export",
|
||||
"Export subscriptions as OPML": "Exportovať odbery ako OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Exportovať odbery ako OPML (pre NewPipe a FreeTube)",
|
||||
"Export data as JSON": "Export údajov ako JSON",
|
||||
"Export data as JSON": "Exportovať údaje Invidious ako JSON",
|
||||
"Delete account?": "Zrušiť účet?",
|
||||
"History": "História",
|
||||
"An alternative front-end to YouTube": "Alternatívny front-end pre YouTube",
|
||||
@ -34,7 +33,6 @@
|
||||
"source": "zdroj",
|
||||
"Log in": "Prihlásiť sa",
|
||||
"Log in/register": "Prihlásiť sa/Registrovať",
|
||||
"Log in with Google": "Prihlásiť sa pomocou účtu Google",
|
||||
"User ID": "ID používateľa",
|
||||
"Password": "Heslo",
|
||||
"Time (h:mm:ss):": "Čas (h:mm:ss):",
|
||||
@ -43,7 +41,6 @@
|
||||
"Sign In": "Prihlásiť sa",
|
||||
"Register": "Registrovať",
|
||||
"E-mail": "E-mail",
|
||||
"Google verification code": "Overovací kód Google",
|
||||
"Preferences": "Nastavenia",
|
||||
"preferences_category_player": "Nastavenia prehrávača",
|
||||
"preferences_video_loop_label": "Vždy opakovať: ",
|
||||
@ -84,5 +81,41 @@
|
||||
"preferences_unseen_only_label": "Zobraziť iba neprehrané: ",
|
||||
"preferences_notifications_only_label": "Zobraziť iba upozornenia (ak existujú): ",
|
||||
"Enable web notifications": "Povoliť webové upozornenia",
|
||||
"`x` uploaded a video": "`x` nahral(a) video"
|
||||
"`x` uploaded a video": "`x` nahral(a) video",
|
||||
"generic_views_count_0": "{{count}} zhliadnutie",
|
||||
"generic_views_count_1": "{{count}} zhliadnutia",
|
||||
"generic_views_count_2": "{{count}} zhliadnutí",
|
||||
"generic_subscribers_count_0": "{{count}} odberateľ",
|
||||
"generic_subscribers_count_1": "{{count}} odberatelia",
|
||||
"generic_subscribers_count_2": "{{count}} odberateľov",
|
||||
"Shared `x` ago": "Zverejnené pred `x`",
|
||||
"generic_playlists_count_0": "{{count}} playlist",
|
||||
"generic_playlists_count_1": "{{count}} playlisty",
|
||||
"generic_playlists_count_2": "{{count}} playlistov",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} videá",
|
||||
"generic_videos_count_2": "{{count}} videí",
|
||||
"generic_subscriptions_count_0": "{{count}} odber",
|
||||
"generic_subscriptions_count_1": "{{count}} odbery",
|
||||
"generic_subscriptions_count_2": "{{count}} odberov",
|
||||
"Authorize token for `x`?": "Autorizovať token pre `x`?",
|
||||
"View playlist on YouTube": "Zobraziť playlist na YouTube",
|
||||
"preferences_quality_dash_option_best": "Najlepšia",
|
||||
"preferences_quality_dash_option_worst": "Najhoršia",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_label": "Preferovaná video kvalita DASH: ",
|
||||
"preferences_quality_option_dash": "DASH (adaptívna kvalita)",
|
||||
"preferences_quality_option_small": "Malá",
|
||||
"preferences_watch_history_label": "Zapnúť históriu pozerania: ",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"preferences_quality_dash_option_auto": "Auto",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"invidious": "Invidious",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"preferences_quality_dash_option_360p": "360p"
|
||||
}
|
||||
|
536
locales/sl.json
Normal file
536
locales/sl.json
Normal file
@ -0,0 +1,536 @@
|
||||
{
|
||||
"No": "Ne",
|
||||
"Subscribe": "Naroči se",
|
||||
"View playlist on YouTube": "Ogled seznama predvajanja v YouTubu",
|
||||
"last": "zadnji",
|
||||
"Next page": "Naslednja stran",
|
||||
"Previous page": "Prejšnja stran",
|
||||
"Clear watch history?": "Izbrisati zgodovino ogledov?",
|
||||
"New password": "Novo geslo",
|
||||
"New passwords must match": "Nova gesla se morajo ujemati",
|
||||
"Authorize token?": "Naj odobrim žeton?",
|
||||
"Yes": "Da",
|
||||
"Import and Export Data": "Uvoz in izvoz podatkov",
|
||||
"Import": "Uvozi",
|
||||
"Import Invidious data": "Uvozi Invidious JSON podatke",
|
||||
"Import YouTube subscriptions": "Uvozi YouTube CSV ali OPML naročnine",
|
||||
"Import FreeTube subscriptions (.db)": "Uvozi FreeTube (.db) naročnine",
|
||||
"Import NewPipe data (.zip)": "Uvozi NewPipe (.zip) podatke",
|
||||
"Export": "Izvozi",
|
||||
"Export subscriptions as OPML": "Izvozi naročnine kot OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Izvozi naročnine kot OPML (za NewPipe in FreeTube)",
|
||||
"Log in": "Prijava",
|
||||
"Log in/register": "Prijava/registracija",
|
||||
"User ID": "ID uporabnika",
|
||||
"Password": "Geslo",
|
||||
"Time (h:mm:ss):": "Čas (h:mm:ss):",
|
||||
"Text CAPTCHA": "Besedilo CAPTCHA",
|
||||
"source": "izvorna koda",
|
||||
"Image CAPTCHA": "Slika CAPTCHA",
|
||||
"Sign In": "Prijavi se",
|
||||
"Register": "Registriraj se",
|
||||
"E-mail": "E-pošta",
|
||||
"Preferences": "Nastavitve",
|
||||
"preferences_video_loop_label": "Vedno v zanki: ",
|
||||
"preferences_autoplay_label": "Samodejno predvajanje: ",
|
||||
"preferences_continue_autoplay_label": "Samodejno predvajanje naslednjega videoposnetka: ",
|
||||
"preferences_listen_label": "Privzeto poslušaj: ",
|
||||
"preferences_local_label": "Proxy za videoposnetke: ",
|
||||
"preferences_speed_label": "Privzeta hitrost: ",
|
||||
"preferences_quality_label": "Prednostna kakovost videoposnetka: ",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"preferences_quality_dash_option_best": "najboljša",
|
||||
"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_volume_label": "Glasnost predvajalnika: ",
|
||||
"reddit": "Reddit",
|
||||
"preferences_player_style_label": "Slog predvajalnika: ",
|
||||
"dark": "temna",
|
||||
"light": "svetla",
|
||||
"preferences_thin_mode_label": "Tanki način: ",
|
||||
"preferences_automatic_instance_redirect_label": "Samodejna preusmeritev (na redirect.invidious.io): ",
|
||||
"preferences_annotations_subscribed_label": "Privzeto prikazati opombe za naročene kanale? ",
|
||||
"Redirect homepage to feed: ": "Preusmeri domačo stran na vir: ",
|
||||
"preferences_max_results_label": "Število videoposnetkov, prikazanih v viru: ",
|
||||
"preferences_sort_label": "Razvrsti videoposnetke po: ",
|
||||
"published": "datumu objave",
|
||||
"published - reverse": "datumu objave - obratno",
|
||||
"alphabetically": "abecednem vrstnem redu",
|
||||
"alphabetically - reverse": "po abecednem vrstnem redu - obratno",
|
||||
"channel name": "imenu kanala",
|
||||
"channel name - reverse": "imenu kanala - obratno",
|
||||
"Only show latest video from channel: ": "Pokaži samo najnovejši videoposnetek iz kanala: ",
|
||||
"Only show latest unwatched video from channel: ": "Pokaži samo najnovejši še neogledani videoposnetek iz kanala: ",
|
||||
"preferences_unseen_only_label": "Pokaži samo neogledane: ",
|
||||
"preferences_notifications_only_label": "Pokaži samo obvestila (če obstajajo): ",
|
||||
"preferences_category_data": "Nastavitve podatkov",
|
||||
"Clear watch history": "Počisti zgodovino ogledov",
|
||||
"Import/export data": "Uvoz/izvoz podatkov",
|
||||
"Change password": "Spremeni geslo",
|
||||
"Watch history": "Oglej si zgodovino",
|
||||
"Delete account": "Izbriši račun",
|
||||
"preferences_category_admin": "Skrbniške nastavitve",
|
||||
"preferences_default_home_label": "Privzeta domača stran: ",
|
||||
"preferences_feed_menu_label": "Meni vira: ",
|
||||
"Top enabled: ": "Vrh omogočen: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA omogočeni: ",
|
||||
"Login enabled: ": "Prijava je omogočena: ",
|
||||
"Registration enabled: ": "Registracija je omogočena: ",
|
||||
"Token manager": "Upravitelj žetonov",
|
||||
"Token": "Žeton",
|
||||
"tokens_count_0": "{{count}} žeton",
|
||||
"tokens_count_1": "{{count}} žetona",
|
||||
"tokens_count_2": "{{count}} žetoni",
|
||||
"tokens_count_3": "{{count}} žetonov",
|
||||
"Import/export": "Uvoz/izvoz",
|
||||
"unsubscribe": "odjava",
|
||||
"revoke": "prekliči",
|
||||
"search": "iskanje",
|
||||
"Log out": "Odjava",
|
||||
"Released under the AGPLv3 on Github.": "Objavljeno pod licenco AGPLv3 na GitHubu.",
|
||||
"Trending": "Trendi",
|
||||
"Private": "Zasebno",
|
||||
"View all playlists": "Oglej si vse sezname predvajanja",
|
||||
"Updated `x` ago": "Posodobljeno pred `x`",
|
||||
"Delete playlist `x`?": "Brisanje seznama predvajanja `x`?",
|
||||
"Delete playlist": "Izbriši seznam predvajanja",
|
||||
"Title": "Naslov",
|
||||
"Playlist privacy": "Zasebnost seznama predvajanja",
|
||||
"Editing playlist `x`": "Urejanje seznama predvajanja `x`",
|
||||
"Show more": "Pokaži več",
|
||||
"Switch Invidious Instance": "Preklopi Invidious instanco",
|
||||
"search_message_change_filters_or_query": "Poskusi razširiti iskalno poizvedbo in/ali spremeniti filtre.",
|
||||
"search_message_use_another_instance": "Lahko tudi <a href=\"`x`\">iščeš v drugi istanci</a>.",
|
||||
"Wilson score: ": "Wilsonov rezultat: ",
|
||||
"Engagement: ": "Sodelovanje: ",
|
||||
"Blacklisted regions: ": "Regije na seznamu nedovoljenih: ",
|
||||
"Shared `x`": "V skupni rabi od: `x`",
|
||||
"Premieres `x`": "Premiere `x`",
|
||||
"View YouTube comments": "Oglej si YouTube komentarje",
|
||||
"View more comments on Reddit": "Prikaži več komentarjev na Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Poglej `x` komentar",
|
||||
"": "Poglej `x` komentarjev"
|
||||
},
|
||||
"Password cannot be empty": "Geslo ne sme biti prazno",
|
||||
"`x` ago": "`x` nazaj",
|
||||
"Load more": "Naloži več",
|
||||
"comments_points_count_0": "{{count}} točka",
|
||||
"comments_points_count_1": "{{count}} točki",
|
||||
"comments_points_count_2": "{{count}} točke",
|
||||
"comments_points_count_3": "{{count}} točk",
|
||||
"Hidden field \"token\" is a required field": "Skrito polje »žeton« je zahtevano polje",
|
||||
"Erroneous challenge": "Napačen izziv",
|
||||
"English": "angleščina",
|
||||
"English (United States)": "angleščina (Združene države)",
|
||||
"Albanian": "albanščina",
|
||||
"Amharic": "amharščina",
|
||||
"Azerbaijani": "azerbajdžanščina",
|
||||
"Bangla": "bengalščina",
|
||||
"Belarusian": "beloruščina",
|
||||
"Burmese": "birmanščina",
|
||||
"Cebuano": "cebuanščina",
|
||||
"Chinese (Hong Kong)": "kitajščina (Hongkong)",
|
||||
"Chinese (Simplified)": "kitajščina (poenostavljena)",
|
||||
"Chinese (Taiwan)": "kitajščina (Tajvan)",
|
||||
"Corsican": "korzijščina",
|
||||
"Croatian": "hrvaščina",
|
||||
"Danish": "danščina",
|
||||
"Dutch": "nizozemščina",
|
||||
"Estonian": "estonščina",
|
||||
"Filipino": "filipinščina",
|
||||
"Finnish": "finščina",
|
||||
"French": "francoščina",
|
||||
"French (auto-generated)": "francoščina (samodejno ustvarjeno)",
|
||||
"Georgian": "gruzinščina",
|
||||
"German": "nemščina",
|
||||
"Greek": "grščina",
|
||||
"Gujarati": "gudžaratščina",
|
||||
"Haitian Creole": "haitijska kreolščina",
|
||||
"Hausa": "havščina",
|
||||
"Hawaiian": "havajščina",
|
||||
"Hmong": "hmonščina",
|
||||
"Hungarian": "madžarščina",
|
||||
"Icelandic": "islandščina",
|
||||
"Igbo": "igbo",
|
||||
"Interlingue": "interlingua",
|
||||
"Italian (auto-generated)": "italijanščina (samodejno ustvarjeno)",
|
||||
"Japanese": "japonščina",
|
||||
"Japanese (auto-generated)": "japonščina (samodejno ustvarjeno)",
|
||||
"Khmer": "kmerščina",
|
||||
"Korean": "korejščina",
|
||||
"Korean (auto-generated)": "korejščina (samodejno ustvarjeno)",
|
||||
"Kurdish": "kurdščina",
|
||||
"Kannada": "kanadejščina",
|
||||
"Latvian": "latvijščina",
|
||||
"Lithuanian": "litovščina",
|
||||
"Luxembourgish": "luksemburščina",
|
||||
"Macedonian": "makedonščina",
|
||||
"Malagasy": "malgaščina",
|
||||
"Malay": "malajščina",
|
||||
"Nepali": "nepalščina",
|
||||
"Norwegian Bokmål": "norveščina bokmal",
|
||||
"Nyanja": "njanščina",
|
||||
"Punjabi": "pandžabščina",
|
||||
"Romanian": "romunščina",
|
||||
"Russian": "ruščina",
|
||||
"Samoan": "samoanščina",
|
||||
"Scottish Gaelic": "škotska galščina",
|
||||
"Shona": "šonaščina",
|
||||
"Sundanese": "sudanščina",
|
||||
"Thai": "tajščina",
|
||||
"Turkish": "turščina",
|
||||
"Turkish (auto-generated)": "turščina (samodejno ustvarjeno)",
|
||||
"Ukrainian": "ukrajinščina",
|
||||
"Urdu": "urdujščina",
|
||||
"Telugu": "telugu",
|
||||
"Vietnamese": "vietnamščina",
|
||||
"Welsh": "valižanščina",
|
||||
"Western Frisian": "zahodnofrizijščina",
|
||||
"Yiddish": "jidiš",
|
||||
"Yoruba": "joruba",
|
||||
"Xhosa": "xhosa",
|
||||
"generic_count_years_0": "{{count}} letom",
|
||||
"generic_count_years_1": "{{count}} leti",
|
||||
"generic_count_years_2": "{{count}} leti",
|
||||
"generic_count_years_3": "{{count}} leti",
|
||||
"generic_count_days_0": "{{count}} dnevom",
|
||||
"generic_count_days_1": "{{count}} dnevoma",
|
||||
"generic_count_days_2": "{{count}} dnevi",
|
||||
"generic_count_days_3": "{{count}} dnevi",
|
||||
"generic_count_hours_0": "{{count}} uro",
|
||||
"generic_count_hours_1": "{{count}} urami",
|
||||
"generic_count_hours_2": "{{count}} urami",
|
||||
"generic_count_hours_3": "{{count}} urami",
|
||||
"generic_count_minutes_0": "{{count}} minuto",
|
||||
"generic_count_minutes_1": "{{count}} minutami",
|
||||
"generic_count_minutes_2": "{{count}} minutami",
|
||||
"generic_count_minutes_3": "{{count}} minutami",
|
||||
"Search": "Iskanje",
|
||||
"Top": "Vrh",
|
||||
"About": "O aplikaciji",
|
||||
"%A %B %-d, %Y": "%A %-d %B %Y",
|
||||
"Audio mode": "Avdio način",
|
||||
"channel_tab_videos_label": "Videoposnetki",
|
||||
"search_filters_date_label": "Datum nalaganja",
|
||||
"search_filters_date_option_today": "Danes",
|
||||
"search_filters_date_option_week": "Ta teden",
|
||||
"search_filters_type_label": "Vrsta",
|
||||
"search_filters_type_option_all": "Katerakoli vrsta",
|
||||
"search_filters_type_option_playlist": "Seznam predvajanja",
|
||||
"search_filters_features_option_subtitles": "Podnapisi/CC",
|
||||
"search_filters_features_option_location": "Lokacija",
|
||||
"footer_donate_page": "Prispevaj",
|
||||
"footer_documentation": "Dokumentacija",
|
||||
"footer_original_source_code": "Izvirna izvorna koda",
|
||||
"none": "ni",
|
||||
"videoinfo_started_streaming_x_ago": "Začetek pretakanja `x` nazaj",
|
||||
"videoinfo_watch_on_youTube": "Oglej si v YouTubu",
|
||||
"user_saved_playlists": "`x` shranjenih seznamov predvajanja",
|
||||
"Video unavailable": "Video ni na voljo",
|
||||
"preferences_save_player_pos_label": "Shrani položaj predvajanja: ",
|
||||
"crash_page_you_found_a_bug": "Videti je, da si v Invidiousu našel hrošča!",
|
||||
"crash_page_read_the_faq": "prebral/a <a href=\"`x`\">Pogosto zastavljena vprašanja (FAQ)</a>",
|
||||
"generic_videos_count_0": "{{count}} video",
|
||||
"generic_videos_count_1": "{{count}} videa",
|
||||
"generic_videos_count_2": "{{count}} videi",
|
||||
"generic_videos_count_3": "{{count}} videov",
|
||||
"generic_views_count_0": "Ogledov: {{count}}",
|
||||
"generic_views_count_1": "Ogledov: {{count}}",
|
||||
"generic_views_count_2": "Ogledov: {{count}}",
|
||||
"generic_views_count_3": "Ogledov: {{count}}",
|
||||
"generic_playlists_count_0": "{{count}} seznam predvajanja",
|
||||
"generic_playlists_count_1": "{{count}} seznama predvajanja",
|
||||
"generic_playlists_count_2": "{{count}} seznami predvajanja",
|
||||
"generic_playlists_count_3": "{{count}} seznamov predvajanja",
|
||||
"generic_subscribers_count_0": "{{count}} naročnik",
|
||||
"generic_subscribers_count_1": "{{count}} naročnika",
|
||||
"generic_subscribers_count_2": "{{count}} naročniki",
|
||||
"generic_subscribers_count_3": "{{count}} naročnikov",
|
||||
"generic_subscriptions_count_0": "{{count}} naročnina",
|
||||
"generic_subscriptions_count_1": "{{count}} naročnini",
|
||||
"generic_subscriptions_count_2": "{{count}} naročnine",
|
||||
"generic_subscriptions_count_3": "{{count}} naročnin",
|
||||
"LIVE": "V ŽIVO",
|
||||
"Shared `x` ago": "Deljeno pred `x`",
|
||||
"View channel on YouTube": "Ogled kanala v YouTubu",
|
||||
"newest": "najnovejši",
|
||||
"Unsubscribe": "Odjavi se",
|
||||
"Authorize token for `x`?": "Odobriti žeton za `x`?",
|
||||
"Import NewPipe subscriptions (.json)": "Uvozi NewPipe (.json) naročnine",
|
||||
"History": "Zgodovina",
|
||||
"JavaScript license information": "Podatki o licenci JavaScript",
|
||||
"oldest": "najstarejši",
|
||||
"popular": "priljubljen",
|
||||
"Export data as JSON": "Izvozi Invidious podatke kot JSON",
|
||||
"Delete account?": "Izbrisati račun?",
|
||||
"An alternative front-end to YouTube": "Alternativni vmesnik za YouTube",
|
||||
"preferences_category_player": "Nastavitve predvajalnika",
|
||||
"preferences_continue_label": "Privzeto predvajaj naslednjega: ",
|
||||
"preferences_watch_history_label": "Omogoči zgodovino ogledov: ",
|
||||
"preferences_quality_option_medium": "srednja",
|
||||
"preferences_quality_option_dash": "DASH (prilagodljiva kakovost)",
|
||||
"preferences_quality_option_small": "majhna",
|
||||
"preferences_quality_dash_option_worst": "najslabša",
|
||||
"preferences_quality_dash_label": "Prednostna kakovost videoposnetkov DASH: ",
|
||||
"preferences_comments_label": "Privzeti komentarji: ",
|
||||
"preferences_quality_dash_option_auto": "samodejna",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"youtube": "YouTube",
|
||||
"invidious": "Invidious",
|
||||
"preferences_vr_mode_label": "Interaktivni videoposnetki na 360 stopinj (zahteva WebGL): ",
|
||||
"preferences_captions_label": "Privzeti napisi: ",
|
||||
"Fallback captions: ": "Pomožni napisi: ",
|
||||
"preferences_extend_desc_label": "Samodejno razširi opis videoposnetka: ",
|
||||
"preferences_related_videos_label": "Prikaži povezane videoposnetke: ",
|
||||
"preferences_annotations_label": "Privzeto prikaži opombe: ",
|
||||
"preferences_category_visual": "Vizualne nastavitve",
|
||||
"preferences_region_label": "Država vsebine: ",
|
||||
"Dark mode: ": "Temni način: ",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"preferences_category_misc": "Različne nastavitve",
|
||||
"preferences_category_subscription": "Nastavitve naročnine",
|
||||
"Unlisted": "Nerazporejeno",
|
||||
"Enable web notifications": "Omogoči spletna obvestila",
|
||||
"`x` is live": "`x` je v živo",
|
||||
"Manage subscriptions": "Upravljaj naročnine",
|
||||
"Manage tokens": "Upravljaj žetone",
|
||||
"Subscription manager": "Upravitelj naročnin",
|
||||
"`x` uploaded a video": "`x` je naložil/a videoposnetek",
|
||||
"preferences_show_nick_label": "Prikaži vzdevek na vrhu: ",
|
||||
"search_message_no_results": "Ni zadetkov.",
|
||||
"Save preferences": "Shrani nastavitve",
|
||||
"Subscriptions": "Naročnine",
|
||||
"Report statistics: ": "Poročilo o statistiki: ",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} neogledano obvestilo",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} neogledani obvestili",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} neogledana obvestila",
|
||||
"subscriptions_unseen_notifs_count_3": "{{count}} neogledanih obvestil",
|
||||
"View JavaScript license information.": "Oglej si informacije o licenci za JavaScript.",
|
||||
"Show less": "Pokaži manj",
|
||||
"Watch on YouTube": "Oglej si v YouTubu",
|
||||
"Source available here.": "Izvorna koda na voljo tukaj.",
|
||||
"License: ": "Licenca: ",
|
||||
"View privacy policy.": "Oglej si pravilnik o zasebnosti.",
|
||||
"Public": "Javno",
|
||||
"Create playlist": "Ustvari seznam predvajanja",
|
||||
"Hide annotations": "Skrij opombe",
|
||||
"Show annotations": "Pokaži opombe",
|
||||
"Genre: ": "Žanr: ",
|
||||
"Family friendly? ": "Družinam prijazno? ",
|
||||
"Whitelisted regions: ": "Regije na seznamu dovoljenih: ",
|
||||
"Premieres in `x`": "Premiere v `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.": "Živjo! Izgleda, da imaš izklopljene JavaScripte . Klikni tukaj, če si želiš ogledati komentarje, vendar vedi, da bo lahko nalaganje trajajo nekoliko dlje.",
|
||||
"Show replies": "Pokaži odgovore",
|
||||
"Erroneous CAPTCHA": "Napačna CAPTCHA",
|
||||
"User ID is a required field": "ID uporabnika je obvezno polje",
|
||||
"Password is a required field": "Geslo je obvezno polje",
|
||||
"Wrong username or password": "Napačno uporabniško ime ali geslo",
|
||||
"Password cannot be longer than 55 characters": "Geslo ne sme biti daljše od 55 znakov",
|
||||
"channel:`x`": "kanal: `x`",
|
||||
"Could not fetch comments": "Ni bilo mogoče pridobiti komentarjev",
|
||||
"Could not pull trending pages.": "Ni bilo mogoče povleči trendovskih strani.",
|
||||
"Please log in": "Prosim, prijavi se",
|
||||
"Playlist does not exist.": "Seznam predvajanja ne obstaja.",
|
||||
"Incorrect password": "Napačno geslo",
|
||||
"View Reddit comments": "Oglej si komentarje na Redditu",
|
||||
"This channel does not exist.": "Ta kanal ne obstaja.",
|
||||
"Hide replies": "Skrij odgovore",
|
||||
"Invidious Private Feed for `x`": "Invidious zasebni vir za `x`",
|
||||
"Deleted or invalid channel": "Izbrisan ali neveljaven kanal",
|
||||
"Empty playlist": "Prazen seznam predvajanja",
|
||||
"No such user": "Ni tega uporabnika",
|
||||
"Token is expired, please try again": "Žeton je potekel, poskusi znova",
|
||||
"English (United Kingdom)": "angleščina (Združeno kraljestvo)",
|
||||
"Wrong answer": "Napačen odgovor",
|
||||
"CAPTCHA is a required field": "CAPTCHA je obvezno polje",
|
||||
"Could not get channel info.": "Ni bilo mogoče dobiti informacij o kanalu.",
|
||||
"comments_view_x_replies_0": "Poglej {{count}} odgovor",
|
||||
"comments_view_x_replies_1": "Poglej {{count}} odgovora",
|
||||
"comments_view_x_replies_2": "Poglej {{count}} odgovore",
|
||||
"comments_view_x_replies_3": "Poglej {{count}} odgovorov",
|
||||
"Could not create mix.": "Ni bilo mogoče ustvariti mixa.",
|
||||
"Not a playlist.": "Ni seznam predvajanja.",
|
||||
"Hidden field \"challenge\" is a required field": "Skrito polje »izziv« je obvezno polje",
|
||||
"Erroneous token": "Napačen žeton",
|
||||
"Afrikaans": "afrikanščina",
|
||||
"Arabic": "arabščina",
|
||||
"Armenian": "armenščina",
|
||||
"English (auto-generated)": "angleščina (samodejno ustvarjeno)",
|
||||
"Bulgarian": "bolgarščina",
|
||||
"Catalan": "katalonščina",
|
||||
"Cantonese (Hong Kong)": "kantonščina (Hongkong)",
|
||||
"Chinese (Traditional)": "kitajščina (tradicionalna)",
|
||||
"Basque": "baskovščina",
|
||||
"Czech": "češčina",
|
||||
"Bosnian": "bosanščina",
|
||||
"Chinese": "kitajščina",
|
||||
"Chinese (China)": "kitajščina (Kitajska)",
|
||||
"Dutch (auto-generated)": "nizozemščina (samodejno ustvarjeno)",
|
||||
"Esperanto": "esperanto",
|
||||
"Galician": "galicijščina",
|
||||
"German (auto-generated)": "nemščina (samodejno ustvarjeno)",
|
||||
"Hebrew": "hebrejščina",
|
||||
"Malayalam": "malajalamščina",
|
||||
"Hindi": "hindijščina",
|
||||
"Indonesian": "indonezijščina",
|
||||
"Kazakh": "kazahstanščina",
|
||||
"Indonesian (auto-generated)": "indonezijščina (samodejno generirano)",
|
||||
"Irish": "irščina",
|
||||
"Persian": "perzijščina",
|
||||
"Slovak": "slovaščina",
|
||||
"Italian": "italijanščina",
|
||||
"Maori": "maorščina",
|
||||
"Portuguese": "portugalščina",
|
||||
"Javanese": "javanščina",
|
||||
"Kyrgyz": "kirgiščina",
|
||||
"Lao": "laoščina",
|
||||
"Latin": "latinščina",
|
||||
"Mongolian": "mongolščina",
|
||||
"Portuguese (auto-generated)": "portugalščina (samodejno ustvarjeno)",
|
||||
"Sindhi": "sindščina",
|
||||
"Maltese": "malteščina",
|
||||
"Marathi": "maratščina",
|
||||
"Pashto": "paštu",
|
||||
"Polish": "poljščina",
|
||||
"Portuguese (Brazil)": "portugalščina (Brazilija)",
|
||||
"Fallback comments: ": "Nadomestni komentarji: ",
|
||||
"Gaming": "Igralništvo",
|
||||
"Russian (auto-generated)": "ruščina (samodejno ustvarjeno)",
|
||||
"Serbian": "srbščina",
|
||||
"Sinhala": "singalščina",
|
||||
"Slovenian": "slovenščina",
|
||||
"Somali": "somalijščina",
|
||||
"Spanish": "španščina",
|
||||
"Southern Sotho": "južni sotho",
|
||||
"Spanish (auto-generated)": "španščina (samodejno ustvarjeno)",
|
||||
"Spanish (Mexico)": "španščina (Mehika)",
|
||||
"Spanish (Latin America)": "španščina (Latinska Amerika)",
|
||||
"Spanish (Spain)": "španščina (Španija)",
|
||||
"Tajik": "tadžiščina",
|
||||
"Tamil": "tamilščina",
|
||||
"generic_count_weeks_0": "{{count}} tednom",
|
||||
"generic_count_weeks_1": "{{count}} tedni",
|
||||
"generic_count_weeks_2": "{{count}} tedni",
|
||||
"generic_count_weeks_3": "{{count}} tedni",
|
||||
"Swahili": "svahilščina",
|
||||
"Swedish": "švedščina",
|
||||
"Vietnamese (auto-generated)": "vietnamščina (samodejno ustvarjeno)",
|
||||
"generic_count_months_0": "{{count}} mesecem",
|
||||
"generic_count_months_1": "{{count}} meseci",
|
||||
"generic_count_months_2": "{{count}} meseci",
|
||||
"generic_count_months_3": "{{count}} meseci",
|
||||
"Uzbek": "uzbeščina",
|
||||
"Zulu": "zulujščina",
|
||||
"generic_count_seconds_0": "{{count}} sekundo",
|
||||
"generic_count_seconds_1": "{{count}} sekundami",
|
||||
"generic_count_seconds_2": "{{count}} sekundami",
|
||||
"generic_count_seconds_3": "{{count}} sekundami",
|
||||
"Popular": "Priljubljeni",
|
||||
"Music": "Glasba",
|
||||
"Movies": "Filmi",
|
||||
"YouTube comment permalink": "Stalna povezava za komentar na YouTubu",
|
||||
"search_filters_title": "Filtri",
|
||||
"preferences_locale_label": "Jezik: ",
|
||||
"Rating: ": "Ocena: ",
|
||||
"Default": "Privzeto",
|
||||
"News": "Novice",
|
||||
"Download as: ": "Prenesi kot: ",
|
||||
"(edited)": "(urejeno)",
|
||||
"View as playlist": "Poglej kot seznam predvajanja",
|
||||
"Download": "Prenesi",
|
||||
"permalink": "stalna povezava",
|
||||
"`x` marked it with a ❤": "`x` ga je označil/a z ❤",
|
||||
"channel_tab_community_label": "Skupnost",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"Video mode": "Video način",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"Playlists": "Seznami predvajanja",
|
||||
"search_filters_date_option_none": "Katerikoli datum",
|
||||
"search_filters_date_option_month": "Ta mesec",
|
||||
"search_filters_date_option_year": "Letos",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_duration_option_long": "Dolg (> 20 minut)",
|
||||
"search_filters_features_label": "Lastnosti",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"next_steps_error_message_refresh": "Osveži",
|
||||
"search_filters_date_option_hour": "V zadnji uri",
|
||||
"search_filters_features_option_purchased": "Kupljeno",
|
||||
"search_filters_sort_label": "Razvrsti po",
|
||||
"search_filters_sort_option_views": "številu ogledov",
|
||||
"Current version: ": "Trenutna različica: ",
|
||||
"search_filters_features_option_live": "V živo",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_type_option_show": "Pokaži",
|
||||
"search_filters_duration_label": "Trajanje",
|
||||
"search_filters_duration_option_none": "Poljubno trajanje",
|
||||
"search_filters_duration_option_short": "Kratek (< 4 minute)",
|
||||
"search_filters_duration_option_medium": "Srednji (4 - 20 minut)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_sort_option_date": "datumu nalaganja",
|
||||
"search_filters_type_option_video": "Videoposnetek",
|
||||
"search_filters_sort_option_relevance": "ustreznosti",
|
||||
"search_filters_sort_option_rating": "oceni",
|
||||
"search_filters_apply_button": "Uporabi izbrane filtre",
|
||||
"next_steps_error_message": "Po tem moraš poskusiti: ",
|
||||
"next_steps_error_message_go_to_youtube": "Pojdi na YouTube",
|
||||
"footer_source_code": "Izvorna koda",
|
||||
"footer_modfied_source_code": "Spremenjena izvorna koda",
|
||||
"user_created_playlists": "`x` ustvarjenih seznamov predvajanja",
|
||||
"adminprefs_modified_source_code_url_label": "URL do shrambe spremenjene izvorne kode",
|
||||
"videoinfo_youTube_embed_link": "Vdelaj",
|
||||
"videoinfo_invidious_embed_link": "Povezava za vdelavo",
|
||||
"crash_page_switch_instance": "poskušal/a <a href=\"`x`\">uporabiti drugo instanco</a>",
|
||||
"download_subtitles": "Podnapisi - `x` (.vtt)",
|
||||
"crash_page_refresh": "poskušal/a <a href=\"`x`\">osvežiti stran</a>",
|
||||
"crash_page_before_reporting": "Preden prijaviš napako, se prepričaj, da si:",
|
||||
"crash_page_search_issue": "preiskal/a <a href=\"`x`\">obstoječe težave na GitHubu</a>",
|
||||
"crash_page_report_issue": "Če nič od navedenega ni pomagalo, prosim <a href=\"`x`\">odpri novo težavo v GitHubu</a> (po možnosti v angleščini) in v svoje sporočilo vključi naslednje besedilo (tega besedila NE prevajaj):",
|
||||
"Popular enabled: ": "Priljubljeni omogočeni: ",
|
||||
"error_video_not_in_playlist": "Zahtevani videoposnetek ne obstaja na tem seznamu predvajanja. <a href=\"`x`\">Klikni tukaj za domačo stran seznama predvajanja.</a>",
|
||||
"channel_tab_playlists_label": "Seznami predvajanja",
|
||||
"channel_tab_shorts_label": "Kratki videoposnetki",
|
||||
"channel_tab_channels_label": "Kanali",
|
||||
"channel_tab_streams_label": "Prenosi v živo",
|
||||
"Artist: ": "Umetnik/ca: ",
|
||||
"Music in this video": "Glasba v tem videoposnetku",
|
||||
"Album: ": "Album: ",
|
||||
"Song: ": "Pesem: ",
|
||||
"Standard YouTube license": "Standardna licenca YouTube",
|
||||
"Channel Sponsor": "Sponzor kanala",
|
||||
"Download is disabled": "Prenos je onemogočen",
|
||||
"Import YouTube playlist (.csv)": "Uvoz seznama predvajanja YouTube (.csv)",
|
||||
"generic_button_delete": "Izbriši",
|
||||
"generic_button_edit": "Uredi",
|
||||
"generic_button_save": "Shrani",
|
||||
"generic_button_cancel": "Prekliči",
|
||||
"generic_button_rss": "RSS",
|
||||
"playlist_button_add_items": "Dodaj videoposnetke",
|
||||
"channel_tab_podcasts_label": "Poddaje",
|
||||
"channel_tab_releases_label": "Izdaje",
|
||||
"generic_channels_count_0": "{{count}} kanal",
|
||||
"generic_channels_count_1": "{{count}} kanala",
|
||||
"generic_channels_count_2": "{{count}} kanali",
|
||||
"generic_channels_count_3": "{{count}} kanalov",
|
||||
"Import YouTube watch history (.json)": "Uvozi zgodovino gledanja YouTube (.json)",
|
||||
"Add to playlist": "Dodaj na seznam predvajanja",
|
||||
"Add to playlist: ": "Dodaj na seznam predvajanja: ",
|
||||
"Search for videos": "Iskanje videoposnetkov",
|
||||
"The Popular feed has been disabled by the administrator.": "Administrator je onemogočil priljubljeni vir.",
|
||||
"Answer": "Odgovor",
|
||||
"Filipino (auto-generated)": "filipinščina (samodejno ustvarjeno)",
|
||||
"toggle_theme": "Preklopi temo",
|
||||
"carousel_slide": "Diapozitiv {{current}} od {{total}}",
|
||||
"carousel_skip": "Preskoči galerijo",
|
||||
"carousel_go_to": "Pojdi na diapozitiv `x`",
|
||||
"preferences_preload_label": "Predhodno naloži video podatke: "
|
||||
}
|
144
locales/sq.json
144
locales/sq.json
@ -26,21 +26,19 @@
|
||||
"Tamil": "Tamilisht",
|
||||
"Telugu": "Telugu",
|
||||
"Vietnamese": "Vietnamisht",
|
||||
"creative_commons": "Creative Commons",
|
||||
"3d": "3D",
|
||||
"live": "Drejtpërsëdrejti",
|
||||
"4k": "4K",
|
||||
"location": "Vendndodhja",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_live": "Drejtpërsëdrejti",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"search_filters_features_option_location": "Vendndodhja",
|
||||
"videoinfo_watch_on_youTube": "Shiheni në YouTube",
|
||||
"videoinfo_youTube_embed_link": "Trupëzojeni",
|
||||
"videoinfo_invidious_embed_link": "Lidhje Trupëzimi",
|
||||
"oldest": "më të vjetrat",
|
||||
"Cannot change password for Google accounts": "S’mund të ndryshojë fjalëkalimin për llogari Google",
|
||||
"New passwords must match": "Fjalëkalimet e rinj duhet të përputhen me njëri-tjetrin",
|
||||
"Authorize token?": "Të autorizohet token-i?",
|
||||
"Authorize token for `x`?": "Të autorizohet token-i për `x`?",
|
||||
"Log in/register": "Hyni/regjistrohuni",
|
||||
"Log in with Google": "Hyni me Google",
|
||||
"User ID": "ID Përdoruesi",
|
||||
"Password": "Fjalëkalim",
|
||||
"Time (h:mm:ss):": "Kohë (h:mm:ss):",
|
||||
@ -81,7 +79,7 @@
|
||||
"invidious": "Invidious",
|
||||
"preferences_captions_label": "Titra parazgjedhje: ",
|
||||
"preferences_extend_desc_label": "Zgjero automatikisht përshkrimin e videos: ",
|
||||
"preferences_player_style_label": "Silt lojtësi: ",
|
||||
"preferences_player_style_label": "Stil lojtësi: ",
|
||||
"Dark mode: ": "Mënyra e errët: ",
|
||||
"preferences_dark_mode_label": "Temë: ",
|
||||
"dark": "e errët",
|
||||
@ -127,7 +125,7 @@
|
||||
"Subscriptions": "Pajtime",
|
||||
"search": "kërko",
|
||||
"Log out": "Dilni",
|
||||
"Released under the AGPLv3 on Github.": "Hedhur në qarkullim në Github sipas licencës AGPLv3.",
|
||||
"Released under the AGPLv3 on Github.": "Hedhur në qarkullim në GitHub sipas licencës AGPLv3.",
|
||||
"Source available here.": "Burimi i passhëm që këtu.",
|
||||
"View JavaScript license information.": "Shihni hollësi licence JavaScript.",
|
||||
"View privacy policy.": "Shihni rregulla privatësie.",
|
||||
@ -147,7 +145,6 @@
|
||||
"Show less": "Shfaq më pak",
|
||||
"Watch on YouTube": "Shiheni në YouTube",
|
||||
"Switch Invidious Instance": "Ndërroni Instancë Invidious",
|
||||
"Broken? Try another Invidious Instance": "E prishur? Provoni një tjetër Instancë Invidious",
|
||||
"Hide annotations": "Fshihi shënimet",
|
||||
"Show annotations": "Shfaq shënime",
|
||||
"License: ": "Licencë: ",
|
||||
@ -157,19 +154,14 @@
|
||||
"Whitelisted regions: ": "Rajone të lejuara: ",
|
||||
"Premieres `x`": "Premiera `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.": "Njatjeta! Duket sikur keni JavaScript-in të çaktivizuar. Klikoni këtu që të shihni komentet, mbani parasysh se mund të duhet pak më tepër kohë që të ngarkohen.",
|
||||
"Quota exceeded, try again in a few hours": "Janë tejkaluar kuotat, riprovoni pas pak orësh",
|
||||
"Blacklisted regions: ": "Rajone të palejuara: ",
|
||||
"Premieres in `x`": "Premiera në `x`",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "S’arrihet të bëhet hyrja, sigurohuni se mirëfilltësimi dyfaktorësh (me Mirëfilltësues apo SMS) është i aktivizuar.",
|
||||
"Wrong answer": "Përgjigje e gabuar",
|
||||
"Invalid TFA code": "Kod MDF i pavlefshëm",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Dështoi hyrja. Kjo mund të vijë ngaqë për llogarinë tuaj s’është aktivizuar mirëfilltësimi dyfaktorësh.",
|
||||
"Erroneous CAPTCHA": "CAPTCHA e gabuar",
|
||||
"CAPTCHA is a required field": "CAPTCHA është fushë e domosdoshme",
|
||||
"User ID is a required field": "ID-ja e përdoruesit është fushë e domosdoshme",
|
||||
"Password is a required field": "Fusha e fjalëkalimit është e domosdoshme",
|
||||
"Wrong username or password": "Emër përdoruesi ose fjalëkalim i gabuar",
|
||||
"Please sign in using 'Log in with Google'": "Ju lutemi, bëni hyrjen duke përdorur “Bëni hyrjen me Google”",
|
||||
"Password cannot be empty": "Fjalëkalimi s’mund të jetë i zbrazët",
|
||||
"Password cannot be longer than 55 characters": "Fjalëkalimi s’mund të jetë më i gjatë se 55 shenja",
|
||||
"Please log in": "Ju lutemi, bëni hyrjen",
|
||||
@ -260,34 +252,34 @@
|
||||
"YouTube comment permalink": "Permalidhje komenti YouTube",
|
||||
"Audio mode": "Mënyrë për audion",
|
||||
"Playlists": "Luajlista",
|
||||
"Community": "Bashkësi",
|
||||
"relevance": "Rëndësi",
|
||||
"channel_tab_community_label": "Bashkësi",
|
||||
"search_filters_sort_option_relevance": "Rëndësi",
|
||||
"Video mode": "Mënyrë video",
|
||||
"Videos": "Video",
|
||||
"rating": "Vlerësim",
|
||||
"date": "Datë ngarkimi",
|
||||
"views": "Numër parjesh",
|
||||
"content_type": "Lloj",
|
||||
"duration": "Kohëzgjatje",
|
||||
"features": "Veçori",
|
||||
"sort": "Renditi Sipas",
|
||||
"hour": "Orën e Fundit",
|
||||
"today": "Sot",
|
||||
"long": "E gjatë (> 20 minuta)",
|
||||
"hd": "HD",
|
||||
"subtitles": "Titra/CC",
|
||||
"hdr": "HDR",
|
||||
"week": "Këtë javë",
|
||||
"month": "Këtë muaj",
|
||||
"year": "Këtë vit",
|
||||
"video": "Video",
|
||||
"channel": "Kanal",
|
||||
"playlist": "Luajlistë",
|
||||
"movie": "Film",
|
||||
"show": "Shfaqe",
|
||||
"short": "E shkurtër (< 4 minuta)",
|
||||
"purchased": "Të blera",
|
||||
"footer_modfied_source_code": "Kod Burim i ndryshuar",
|
||||
"channel_tab_videos_label": "Video",
|
||||
"search_filters_sort_option_rating": "Vlerësim",
|
||||
"search_filters_sort_option_date": "Datë ngarkimi",
|
||||
"search_filters_sort_option_views": "Numër parjesh",
|
||||
"search_filters_type_label": "Lloj",
|
||||
"search_filters_duration_label": "Kohëzgjatje",
|
||||
"search_filters_features_label": "Veçori",
|
||||
"search_filters_sort_label": "Renditi Sipas",
|
||||
"search_filters_date_option_hour": "Orën e fundit",
|
||||
"search_filters_date_option_today": "Sot",
|
||||
"search_filters_duration_option_long": "E gjatë (> 20 minuta)",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_subtitles": "Titra/CC",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"search_filters_date_option_week": "Këtë javë",
|
||||
"search_filters_date_option_month": "Këtë muaj",
|
||||
"search_filters_date_option_year": "Këtë vit",
|
||||
"search_filters_type_option_video": "Video",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"search_filters_type_option_playlist": "Luajlistë",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_type_option_show": "Shfaqe",
|
||||
"search_filters_duration_option_short": "E shkurtër (< 4 minuta)",
|
||||
"search_filters_features_option_purchased": "Të blera",
|
||||
"footer_modfied_source_code": "Kod burim i ndryshuar",
|
||||
"adminprefs_modified_source_code_url_label": "URL e depos së ndryshuar të kodit burim",
|
||||
"none": "asnjë",
|
||||
"videoinfo_started_streaming_x_ago": "Filloi transmetimin `x` më parë",
|
||||
@ -304,7 +296,6 @@
|
||||
"Previous page": "Faqja e mëparshme",
|
||||
"Clear watch history?": "Të spastrohet historiku i parjeve?",
|
||||
"New password": "Fjalëkalim i ri",
|
||||
"Google verification code": "Kod verifikimi Google",
|
||||
"preferences_related_videos_label": "Shfaq video të afërta: ",
|
||||
"preferences_annotations_label": "Si parazgjedhje, shfaqi shënimet: ",
|
||||
"preferences_show_nick_label": "Shfaqe nofkën në krye: ",
|
||||
@ -354,7 +345,7 @@
|
||||
"View YouTube comments": "Shihni komente Youtube",
|
||||
"View more comments on Reddit": "Shihni më tepër komente në Reddit",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Shihni `x` komente",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Shihni `x` koment",
|
||||
"": "Shihni `x` komente"
|
||||
},
|
||||
"View Reddit comments": "Shihni komente Reddit",
|
||||
@ -370,8 +361,7 @@
|
||||
"Mongolian": "Mongolisht",
|
||||
"Nepali": "Nepaleze",
|
||||
"Norwegian Bokmål": "Norvegjishte Bokmål",
|
||||
"360": "360°",
|
||||
"filter": "Filtroji",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"Current version: ": "Versioni i tanishëm: ",
|
||||
"next_steps_error_message": "Pas të cilës duhet të provoni të: ",
|
||||
"next_steps_error_message_refresh": "Rifreskoje",
|
||||
@ -437,7 +427,7 @@
|
||||
"Spanish (Spain)": "Spanjisht (Spanjë)",
|
||||
"Turkish (auto-generated)": "Turqisht (të prodhuara automatikisht)",
|
||||
"Vietnamese (auto-generated)": "Vietnamisht (të prodhuara automatikisht)",
|
||||
"crash_page_search_issue": "kërkuar për <a href=\"`x`\">çështje ekzistuese në Github</a>",
|
||||
"crash_page_search_issue": "kërkuar për <a href=\"`x`\">çështje ekzistuese në GitHub</a>",
|
||||
"crash_page_report_issue": "Nëse asnjë nga sa më sipër s’ndihmoi, ju lutemi, <a href=\"`x`\">hapni një çështje në GitHub</a> (mundësisht në anglisht) dhe përfshini në mesazhin tuaj tekstin vijues (MOS e përktheni këtë tekst):",
|
||||
"generic_subscriptions_count": "{{count}} pajtim",
|
||||
"generic_subscriptions_count_plural": "{{count}} pajtime",
|
||||
@ -445,8 +435,64 @@
|
||||
"tokens_count_plural": "{{count}} tokenë",
|
||||
"preferences_save_player_pos_label": "Mba mend pozicionin e luajtjes: ",
|
||||
"Import Invidious data": "Importoni të dhëna JSON Invidious",
|
||||
"Import YouTube subscriptions": "Importoni pajtime YouTube/OPML",
|
||||
"Import YouTube subscriptions": "Importoni pajtime YouTube CSV ose OPML",
|
||||
"Export data as JSON": "Eksportoji të dhënat Invidious si JSON",
|
||||
"preferences_vr_mode_label": "Video me ndërveprim 360 gradë (lyp WebGL): ",
|
||||
"Shared `x`": "Ndau me të tjerë `x`"
|
||||
"Shared `x`": "Ndarë me të tjerë më `x`",
|
||||
"search_filters_title": "Filtra",
|
||||
"Popular enabled: ": "Me populloret të aktivizuara: ",
|
||||
"error_video_not_in_playlist": "Videoja e kërkuar s’ekziston në këtë luajlistë. <a href=\"`x`\">Klikoni këtu për faqen hyrëse të luajlistës.</a>",
|
||||
"search_message_use_another_instance": "Mundeni edhe të <a href=\"`x`\">kërkoni në një instancë tjetër</a>.",
|
||||
"search_filters_date_label": "Datë ngarkimi",
|
||||
"preferences_watch_history_label": "Aktivizo historik parjesh: ",
|
||||
"Top enabled: ": "Me kryesueset të aktivizuara: ",
|
||||
"preferences_video_loop_label": "Përsërite gjithmonë: ",
|
||||
"search_message_no_results": "S’u gjetën përfundime.",
|
||||
"Could not pull trending pages.": "S’u morën dot faqet në modë.",
|
||||
"search_filters_date_option_none": "Çfarëdo date",
|
||||
"search_message_change_filters_or_query": "Provoni të zgjeroni kërkesën tuaj të kërkimit dhe/ose të ndryshoni filtrat.",
|
||||
"search_filters_type_option_all": "Çfarëdo lloji",
|
||||
"search_filters_duration_option_none": "Çfarëdo kohëzgjatjeje",
|
||||
"search_filters_duration_option_medium": "Mesatare (4 - 20 minuta)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"search_filters_apply_button": "Apliko filtrat e përzgjedhur",
|
||||
"channel_tab_playlists_label": "Luajlista",
|
||||
"Artist: ": "Artist: ",
|
||||
"Album: ": "Album: ",
|
||||
"channel_tab_channels_label": "Kanale",
|
||||
"Music in this video": "Muzikë në këtë video",
|
||||
"channel_tab_shorts_label": "Të shkurtra",
|
||||
"channel_tab_streams_label": "Transmetime të drejtpërdrejta",
|
||||
"generic_button_cancel": "Anuloje",
|
||||
"generic_channels_count": "{{count}} kanal",
|
||||
"generic_channels_count_plural": "{{count}} kanale",
|
||||
"generic_button_rss": "RSS",
|
||||
"generic_button_delete": "Fshije",
|
||||
"generic_button_save": "Ruaje",
|
||||
"generic_button_edit": "Përpunoni",
|
||||
"playlist_button_add_items": "Shtoni video",
|
||||
"Report statistics: ": "Statistika raportimesh: ",
|
||||
"Download is disabled": "Shkarkimi është i çaktivizuar",
|
||||
"Channel Sponsor": "Sponsor Kanali",
|
||||
"channel_tab_releases_label": "Hedhje në qarkullim",
|
||||
"Song: ": "Pjesë: ",
|
||||
"Import YouTube playlist (.csv)": "Importoni luajlistë YouTube (.csv)",
|
||||
"Standard YouTube license": "Licencë YouTube standarde",
|
||||
"published - reverse": "publikuar më - së prapthi",
|
||||
"channel_tab_podcasts_label": "Podcast-e",
|
||||
"channel name - reverse": "emër kanali - së prapthi",
|
||||
"Import YouTube watch history (.json)": "Importo historik parjesh YouTube (.json)",
|
||||
"preferences_local_label": "Video përmes ndërmjetësi: ",
|
||||
"Fallback captions: ": "Titra nga halli: ",
|
||||
"Erroneous challenge": "Zgjidhje e gabuar",
|
||||
"Add to playlist: ": "Shtoje te luajlistë: ",
|
||||
"Add to playlist": "Shtoje te luajlistë",
|
||||
"Answer": "Përgjigje",
|
||||
"Search for videos": "Kërko për video",
|
||||
"The Popular feed has been disabled by the administrator.": "Prurja Popullore është çaktivizuar nga përgjegjësi.",
|
||||
"carousel_skip": "Anashkaloje Rrotullamen",
|
||||
"carousel_slide": "Diapozitiv {{current}} nga {{total}}",
|
||||
"carousel_go_to": "Kalo te diapozitivi `x`",
|
||||
"Filipino (auto-generated)": "Filipineze (të prodhuara automatikisht)",
|
||||
"preferences_preload_label": "Parangarko të dhëna videoje: "
|
||||
}
|
||||
|
524
locales/sr.json
524
locales/sr.json
@ -1,95 +1,90 @@
|
||||
{
|
||||
"LIVE": "UŽIVO",
|
||||
"Shared `x` ago": "Podeljeno pre `x`",
|
||||
"Shared `x` ago": "Deljeno pre `x`",
|
||||
"Unsubscribe": "Prekini praćenje",
|
||||
"Subscribe": "Prati",
|
||||
"Subscribe": "Zaprati",
|
||||
"View channel on YouTube": "Pogledaj kanal na YouTube-u",
|
||||
"View playlist on YouTube": "Pogledaj spisak izvođenja na YouTube-u",
|
||||
"View playlist on YouTube": "Pogledaj plejlistu na YouTube-u",
|
||||
"newest": "najnovije",
|
||||
"oldest": "najstarije",
|
||||
"popular": "popularno",
|
||||
"last": "poslednje",
|
||||
"Next page": "Sledeća stranica",
|
||||
"Previous page": "Prethodna stranica",
|
||||
"Clear watch history?": "Izbrisati povest pregledanja?",
|
||||
"Clear watch history?": "Očistiti istoriju gledanja?",
|
||||
"New password": "Nova lozinka",
|
||||
"New passwords must match": "Nove lozinke moraju biti istovetne",
|
||||
"Cannot change password for Google accounts": "Nije moguće promeniti lozinku za Google naloge",
|
||||
"Authorize token?": "Ovlasti žeton?",
|
||||
"Authorize token for `x`?": "Ovlasti žeton za `x`?",
|
||||
"New passwords must match": "Nove lozinke moraju da se podudaraju",
|
||||
"Authorize token?": "Autorizovati token?",
|
||||
"Authorize token for `x`?": "Autorizovati token za `x`?",
|
||||
"Yes": "Da",
|
||||
"No": "Ne",
|
||||
"Import and Export Data": "Uvoz i Izvoz Podataka",
|
||||
"Import and Export Data": "Uvoz i izvoz podataka",
|
||||
"Import": "Uvezi",
|
||||
"Import Invidious data": "Uvezi podatke sa Invidious-a",
|
||||
"Import YouTube subscriptions": "Uvezi praćenja sa YouTube-a",
|
||||
"Import FreeTube subscriptions (.db)": "Uvezi praćenja sa FreeTube-a (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Uvezi praćenja sa NewPipe-a (.json)",
|
||||
"Import NewPipe data (.zip)": "Uvezi podatke sa NewPipe-a (.zip)",
|
||||
"Import Invidious data": "Uvezi Invidious JSON podatke",
|
||||
"Import YouTube subscriptions": "Uvezi YouTube CSV ili OPML praćenja",
|
||||
"Import FreeTube subscriptions (.db)": "Uvezi FreeTube praćenja (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Uvezi NewPipe praćenja (.json)",
|
||||
"Import NewPipe data (.zip)": "Uvezi NewPipe podatke (.zip)",
|
||||
"Export": "Izvezi",
|
||||
"Export subscriptions as OPML": "Izvezi praćenja kao OPML datoteku",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Izvezi praćenja kao OPML datoteku (za NewPipe i FreeTube)",
|
||||
"Export data as JSON": "Izvezi podatke kao JSON datoteku",
|
||||
"Delete account?": "Izbrišite nalog?",
|
||||
"Export subscriptions as OPML": "Izvezi praćenja kao OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Izvezi praćenja kao OPML (za NewPipe i FreeTube)",
|
||||
"Export data as JSON": "Izvezi Invidious podatke kao JSON",
|
||||
"Delete account?": "Izbrisati nalog?",
|
||||
"History": "Istorija",
|
||||
"An alternative front-end to YouTube": "Zamenski korisnički sloj za YouTube",
|
||||
"JavaScript license information": "Izveštaj o JavaScript odobrenju",
|
||||
"An alternative front-end to YouTube": "Alternativni front-end za YouTube",
|
||||
"JavaScript license information": "Informacije o JavaScript licenci",
|
||||
"source": "izvor",
|
||||
"Log in": "Prijavi se",
|
||||
"Log in/register": "Prijavi se/Otvori nalog",
|
||||
"Log in with Google": "Prijavi se pomoću Google-a",
|
||||
"User ID": "Korisnički ID",
|
||||
"Log in": "Prijava",
|
||||
"Log in/register": "Prijava/registracija",
|
||||
"User ID": "ID korisnika",
|
||||
"Password": "Lozinka",
|
||||
"Time (h:mm:ss):": "Vreme (č:mm:ss):",
|
||||
"Text CAPTCHA": "Znakovni CAPTCHA",
|
||||
"Image CAPTCHA": "Slikovni CAPTCHA",
|
||||
"Text CAPTCHA": "Tekst CAPTCHA",
|
||||
"Image CAPTCHA": "Slika CAPTCHA",
|
||||
"Sign In": "Prijava",
|
||||
"Register": "Otvori nalog",
|
||||
"E-mail": "E-pošta",
|
||||
"Google verification code": "Google-ova overna koda",
|
||||
"Register": "Registracija",
|
||||
"E-mail": "Imejl",
|
||||
"Preferences": "Podešavanja",
|
||||
"preferences_category_player": "Podešavanja reproduktora",
|
||||
"preferences_category_player": "Podešavanja plejera",
|
||||
"preferences_video_loop_label": "Uvek ponavljaj: ",
|
||||
"preferences_autoplay_label": "Samopuštanje: ",
|
||||
"preferences_continue_label": "Uvek podrazumevano puštaj sledeće: ",
|
||||
"preferences_continue_autoplay_label": "Samopuštanje sledećeg video zapisa: ",
|
||||
"preferences_listen_label": "Uvek podrazumevano uključen samo zvuk: ",
|
||||
"preferences_local_label": "Prikaz video zapisa preko posrednika: ",
|
||||
"Playlist privacy": "Podešavanja privatnosti plej liste",
|
||||
"Editing playlist `x`": "Izmena plej liste `x`",
|
||||
"Please sign in using 'Log in with Google'": "Molimo Vas da se prijavite pomoću 'Log in with Google'",
|
||||
"Playlist does not exist.": "Nepostojeća plej lista.",
|
||||
"preferences_autoplay_label": "Automatski pusti: ",
|
||||
"preferences_continue_label": "Podrazumevano pusti sledeće: ",
|
||||
"preferences_continue_autoplay_label": "Automatski pusti sledeći video snimak: ",
|
||||
"preferences_listen_label": "Podrazumevano uključi samo zvuk: ",
|
||||
"preferences_local_label": "Proksi video snimci: ",
|
||||
"Playlist privacy": "Privatnost plejliste",
|
||||
"Editing playlist `x`": "Izmenjivanje plejliste `x`",
|
||||
"Playlist does not exist.": "Plejlista ne postoji.",
|
||||
"Erroneous challenge": "Pogrešan izazov",
|
||||
"Maltese": "Malteški",
|
||||
"Download": "Preuzmi",
|
||||
"Download as: ": "Preuzmi kao: ",
|
||||
"Quota exceeded, try again in a few hours": "Kvota je premašena, molimo vas da pokušate ponovo za par sati",
|
||||
"Bangla": "Bangla/Bengalski",
|
||||
"preferences_quality_dash_label": "Preferirani kvalitet DASH video formata: ",
|
||||
"Token manager": "Upravljanje žetonima",
|
||||
"Token": "Žeton",
|
||||
"Import/export": "Uvezi/Izvezi",
|
||||
"Download as: ": "Preuzeti kao: ",
|
||||
"Bangla": "Bengalski",
|
||||
"preferences_quality_dash_label": "Preferirani DASH kvalitet video snimka: ",
|
||||
"Token manager": "Upravljanje tokenima",
|
||||
"Token": "Token",
|
||||
"Import/export": "Uvoz/izvoz",
|
||||
"revoke": "opozovi",
|
||||
"search": "pretraga",
|
||||
"Log out": "Odjava",
|
||||
"Source available here.": "Izvorna koda je ovde dostupna.",
|
||||
"Source available here.": "Izvorni kôd je dostupan ovde.",
|
||||
"Trending": "U trendu",
|
||||
"Updated `x` ago": "Ažurirano pre `x`",
|
||||
"Delete playlist `x`?": "Obriši plej listu `x`?",
|
||||
"Create playlist": "Napravi plej listu",
|
||||
"Delete playlist `x`?": "Izbrisati plejlistu `x`?",
|
||||
"Create playlist": "Napravi plejlistu",
|
||||
"Show less": "Prikaži manje",
|
||||
"Switch Invidious Instance": "Promeni Invidious instancu",
|
||||
"Hide annotations": "Sakrij napomene",
|
||||
"User ID is a required field": "Korisnički ID je obavezno polje",
|
||||
"User ID is a required field": "ID korisnika je obavezno polje",
|
||||
"Wrong username or password": "Pogrešno korisničko ime ili lozinka",
|
||||
"Please log in": "Molimo vas da se prijavite",
|
||||
"Please log in": "Molimo, prijavite se",
|
||||
"channel:`x`": "kanal:`x`",
|
||||
"Could not fetch comments": "Uzimanje komentara nije uspelo",
|
||||
"Could not create mix.": "Pravljenje miksa nije uspelo.",
|
||||
"Empty playlist": "Prazna plej lista",
|
||||
"Not a playlist.": "Nije plej lista.",
|
||||
"Could not pull trending pages.": "Učitavanje 'U toku' stranica nije uspelo.",
|
||||
"Token is expired, please try again": "Žeton je istekao, molimo vas da pokušate ponovo",
|
||||
"Could not fetch comments": "Nije moguće prikupiti komentare",
|
||||
"Could not create mix.": "Nije moguće napraviti miks.",
|
||||
"Empty playlist": "Prazna plejlista",
|
||||
"Not a playlist.": "Nije plejlista.",
|
||||
"Could not pull trending pages.": "Nije moguće povući stranice „U trendu“.",
|
||||
"Token is expired, please try again": "Token je istekao, pokušajte ponovo",
|
||||
"English (auto-generated)": "Engleski (automatski generisano)",
|
||||
"Afrikaans": "Afrikans",
|
||||
"Albanian": "Albanski",
|
||||
@ -100,19 +95,19 @@
|
||||
"Bulgarian": "Bugarski",
|
||||
"Burmese": "Burmanski",
|
||||
"Catalan": "Katalonski",
|
||||
"Cebuano": "Sebuano",
|
||||
"Cebuano": "Cebuanski",
|
||||
"Chinese (Traditional)": "Kineski (Tradicionalni)",
|
||||
"Corsican": "Korzikanski",
|
||||
"Danish": "Danski",
|
||||
"Kannada": "Kanada (Jezik)",
|
||||
"Kannada": "Kanada",
|
||||
"Kazakh": "Kazaški",
|
||||
"Russian": "Ruski",
|
||||
"Scottish Gaelic": "Škotski Gelski",
|
||||
"Sinhala": "Sinhaleški",
|
||||
"Sinhala": "Sinhalski",
|
||||
"Slovak": "Slovački",
|
||||
"Spanish": "Španski",
|
||||
"Spanish (Latin America)": "Španski (Južna Amerika)",
|
||||
"Sundanese": "Sundski",
|
||||
"Spanish (Latin America)": "Španski (Latinska Amerika)",
|
||||
"Sundanese": "Sundanski",
|
||||
"Swedish": "Švedski",
|
||||
"Tajik": "Tadžički",
|
||||
"Telugu": "Telugu",
|
||||
@ -121,79 +116,77 @@
|
||||
"Urdu": "Urdu",
|
||||
"Uzbek": "Uzbečki",
|
||||
"Vietnamese": "Vijetnamski",
|
||||
"Rating: ": "Ocena/e: ",
|
||||
"View as playlist": "Pogledaj kao plej listu",
|
||||
"Default": "Podrazumevan/o",
|
||||
"Gaming": "Igrice",
|
||||
"Rating: ": "Ocena: ",
|
||||
"View as playlist": "Pogledaj kao plejlistu",
|
||||
"Default": "Podrazumevano",
|
||||
"Gaming": "Video igre",
|
||||
"Movies": "Filmovi",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"(edited)": "(izmenjeno)",
|
||||
"YouTube comment permalink": "YouTube komentar trajna veza",
|
||||
"Audio mode": "Audio mod",
|
||||
"Playlists": "Plej liste",
|
||||
"relevance": "Relevantnost",
|
||||
"rating": "Ocene",
|
||||
"date": "Datum otpremanja",
|
||||
"views": "Broj pregleda",
|
||||
"`x` marked it with a ❤": "`x` je označio/la ovo sa ❤",
|
||||
"duration": "Trajanje",
|
||||
"features": "Karakteristike",
|
||||
"hour": "Poslednji sat",
|
||||
"week": "Ove sedmice",
|
||||
"month": "Ovaj mesec",
|
||||
"year": "Ove godine",
|
||||
"video": "Video",
|
||||
"playlist": "Plej lista",
|
||||
"movie": "Film",
|
||||
"long": "Dugo (> 20 minuta)",
|
||||
"hd": "HD",
|
||||
"creative_commons": "Creative Commons (Licenca)",
|
||||
"3d": "3D",
|
||||
"hdr": "Video Visoke Rezolucije",
|
||||
"filter": "Filter",
|
||||
"next_steps_error_message": "Nakon čega bi trebali probati: ",
|
||||
"next_steps_error_message_go_to_youtube": "Idi na YouTube",
|
||||
"YouTube comment permalink": "Trajni link YouTube komentara",
|
||||
"Audio mode": "Režim audio snimka",
|
||||
"Playlists": "Plejliste",
|
||||
"search_filters_sort_option_relevance": "Relevantnost",
|
||||
"search_filters_sort_option_rating": "Ocena",
|
||||
"search_filters_sort_option_date": "Datum otpremanja",
|
||||
"search_filters_sort_option_views": "Broj pregleda",
|
||||
"`x` marked it with a ❤": "`x` je označio/la sa ❤",
|
||||
"search_filters_duration_label": "Trajanje",
|
||||
"search_filters_features_label": "Karakteristike",
|
||||
"search_filters_date_option_hour": "Poslednji sat",
|
||||
"search_filters_date_option_week": "Ove nedelje",
|
||||
"search_filters_date_option_month": "Ovog meseca",
|
||||
"search_filters_date_option_year": "Ove godine",
|
||||
"search_filters_type_option_video": "Video snimak",
|
||||
"search_filters_type_option_playlist": "Plejlista",
|
||||
"search_filters_type_option_movie": "Film",
|
||||
"search_filters_duration_option_long": "Dugo (> 20 minuta)",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"next_steps_error_message": "Nakon toga treba da pokušate da: ",
|
||||
"next_steps_error_message_go_to_youtube": "Odete na YouTube",
|
||||
"footer_documentation": "Dokumentacija",
|
||||
"preferences_region_label": "Država porekla sadržaja: ",
|
||||
"preferences_region_label": "Država sadržaja: ",
|
||||
"preferences_player_style_label": "Stil plejera: ",
|
||||
"preferences_dark_mode_label": "Izgled/Tema: ",
|
||||
"light": "svetlo",
|
||||
"preferences_dark_mode_label": "Tema: ",
|
||||
"light": "svetla",
|
||||
"preferences_thin_mode_label": "Kompaktni režim: ",
|
||||
"preferences_category_misc": "Ostala podešavanja",
|
||||
"preferences_automatic_instance_redirect_label": "Automatsko prebacivanje na drugu instancu u slučaju otkazivanja (preči će nazad na redirect.invidious.io): ",
|
||||
"alphabetically - reverse": "po alfabetu - obrnuto",
|
||||
"Enable web notifications": "Omogući obaveštenja u veb pretraživaču",
|
||||
"`x` is live": "`x` prenosi uživo",
|
||||
"Manage tokens": "Upravljaj žetonima",
|
||||
"preferences_automatic_instance_redirect_label": "Automatsko preusmeravanje instance (povratak na redirect.invidious.io): ",
|
||||
"alphabetically - reverse": "abecedno - obrnuto",
|
||||
"Enable web notifications": "Omogući veb obaveštenja",
|
||||
"`x` is live": "`x` je uživo",
|
||||
"Manage tokens": "Upravljaj tokenima",
|
||||
"Watch history": "Istorija gledanja",
|
||||
"preferences_feed_menu_label": "Dovodna stranica: ",
|
||||
"preferences_feed_menu_label": "Fid meni: ",
|
||||
"preferences_show_nick_label": "Prikaži nadimke na vrhu: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA omogućena: ",
|
||||
"Registration enabled: ": "Registracija omogućena: ",
|
||||
"Subscription manager": "Upravljanje praćenjima",
|
||||
"Wilson score: ": "Wilsonova ocena: ",
|
||||
"Wilson score: ": "Vilsonova ocena: ",
|
||||
"Engagement: ": "Angažovanje: ",
|
||||
"Whitelisted regions: ": "Dozvoljene oblasti: ",
|
||||
"Shared `x`": "Podeljeno `x`",
|
||||
"Premieres in `x`": "Premera u `x`",
|
||||
"Premieres `x`": "Premere u `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! Izgleda da ste onemogućili JavaScript. Kliknite ovde da vidite komentare, čuvajte na umu da ovo može da potraje duže dok se ne učitaju.",
|
||||
"Whitelisted regions: ": "Dostupni regioni: ",
|
||||
"Shared `x`": "Deljeno `x`",
|
||||
"Premieres in `x`": "Premijera u `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.": "Hej! Izgleda da ste isključili JavaScript. Kliknite ovde da biste videli komentare, imajte na umu da će možda potrajati malo duže da se učitaju.",
|
||||
"View `x` comments": {
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Prikaži `x` komentar",
|
||||
"": "Prikaži `x` komentara"
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Pogledaj `x` komentar",
|
||||
"": "Pogledaj`x` komentara"
|
||||
},
|
||||
"View Reddit comments": "Prikaži Reddit komentare",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Neuspešna prijava, proverite da li ste upalili dvofaktornu autentikaciju (Autentikator ili SMS).",
|
||||
"View Reddit comments": "Pogledaj Reddit komentare",
|
||||
"CAPTCHA is a required field": "CAPTCHA je obavezno polje",
|
||||
"Croatian": "Hrvatski",
|
||||
"Estonian": "Estonski",
|
||||
"Filipino": "Filipino",
|
||||
"Filipino": "Filipinski",
|
||||
"French": "Francuski",
|
||||
"Galician": "Galicijski",
|
||||
"German": "Nemački",
|
||||
"Greek": "Grčki",
|
||||
"Hausa": "Hausa",
|
||||
"Italian": "Talijanski",
|
||||
"Italian": "Italijanski",
|
||||
"Khmer": "Kmerski",
|
||||
"Kurdish": "Kurdski",
|
||||
"Kyrgyz": "Kirgiski",
|
||||
@ -202,103 +195,100 @@
|
||||
"Macedonian": "Makedonski",
|
||||
"Malagasy": "Malgaški",
|
||||
"Malay": "Malajski",
|
||||
"Marathi": "Marathi",
|
||||
"Marathi": "Maratski",
|
||||
"Mongolian": "Mongolski",
|
||||
"Norwegian Bokmål": "Norveški Bokmal",
|
||||
"Nyanja": "Čeva",
|
||||
"Nyanja": "Nijandža",
|
||||
"Pashto": "Paštunski",
|
||||
"Persian": "Persijski",
|
||||
"Punjabi": "Pundžabi",
|
||||
"Punjabi": "Pandžapski",
|
||||
"Romanian": "Rumunski",
|
||||
"Welsh": "Velški",
|
||||
"Western Frisian": "Zapadnofrizijski",
|
||||
"Fallback comments: ": "Komentari u slučaju otkazivanja: ",
|
||||
"Fallback comments: ": "Rezervni komentari: ",
|
||||
"Popular": "Popularno",
|
||||
"Search": "Pretraga",
|
||||
"About": "O programu",
|
||||
"footer_source_code": "Izvorna Koda",
|
||||
"footer_original_source_code": "Originalna Izvorna Koda",
|
||||
"preferences_related_videos_label": "Prikaži slične video klipove: ",
|
||||
"preferences_annotations_label": "Prikaži napomene podrazumevano: ",
|
||||
"preferences_extend_desc_label": "Automatski prikaži ceo opis videa: ",
|
||||
"preferences_vr_mode_label": "Interaktivni video klipovi u 360 stepeni: ",
|
||||
"preferences_category_visual": "Vizuelne preference",
|
||||
"preferences_captions_label": "Podrazumevani titl: ",
|
||||
"About": "O sajtu",
|
||||
"footer_source_code": "Izvorni kôd",
|
||||
"footer_original_source_code": "Originalni izvorni kôd",
|
||||
"preferences_related_videos_label": "Prikaži srodne video snimke: ",
|
||||
"preferences_annotations_label": "Podrazumevano prikaži napomene: ",
|
||||
"preferences_extend_desc_label": "Automatski proširi opis video snimka: ",
|
||||
"preferences_vr_mode_label": "Interaktivni video snimci od 360 stepeni (zahteva WebGl): ",
|
||||
"preferences_category_visual": "Vizuelna podešavanja",
|
||||
"preferences_captions_label": "Podrazumevani titlovi: ",
|
||||
"Music": "Muzika",
|
||||
"content_type": "Tip",
|
||||
"Broken? Try another Invidious Instance": "Ne funkcioniše ispravno? Probajte drugu Invidious instancu",
|
||||
"search_filters_type_label": "Vrsta",
|
||||
"Tamil": "Tamilski",
|
||||
"Save preferences": "Sačuvaj podešavanja",
|
||||
"Only show latest unwatched video from channel: ": "Prikaži samo poslednje video klipove koji nisu pogledani sa kanala: ",
|
||||
"Xhosa": "Kosa (Jezik)",
|
||||
"channel": "Kanal",
|
||||
"Only show latest unwatched video from channel: ": "Prikaži samo najnoviji neodgledani video snimak sa kanala: ",
|
||||
"Xhosa": "Kosa (Khosa)",
|
||||
"search_filters_type_option_channel": "Kanal",
|
||||
"Hungarian": "Mađarski",
|
||||
"Maori": "Maori (Jezik)",
|
||||
"Manage subscriptions": "Upravljaj zapisima",
|
||||
"Maori": "Maorski",
|
||||
"Manage subscriptions": "Upravljaj praćenjima",
|
||||
"Hindi": "Hindi",
|
||||
"`x` ago": "pre `x`",
|
||||
"Import/export data": "Uvezi/Izvezi podatke",
|
||||
"`x` uploaded a video": "`x` je otpremio/la video klip",
|
||||
"Delete account": "Obriši nalog",
|
||||
"`x` uploaded a video": "`x` je otpremio/la video snimak",
|
||||
"Delete account": "Izbriši nalog",
|
||||
"preferences_default_home_label": "Podrazumevana početna stranica: ",
|
||||
"Serbian": "Srpski",
|
||||
"License: ": "Licenca: ",
|
||||
"live": "Uživo",
|
||||
"Report statistics: ": "Izveštavaj o statistici: ",
|
||||
"Only show latest video from channel: ": "Prikazuj poslednje video klipove samo sa kanala: ",
|
||||
"search_filters_features_option_live": "Uživo",
|
||||
"Report statistics: ": "Izveštavaj statistike: ",
|
||||
"Only show latest video from channel: ": "Prikaži samo najnoviji video snimak sa kanala: ",
|
||||
"channel name - reverse": "ime kanala - obrnuto",
|
||||
"Could not get channel info.": "Uzimanje podataka o kanalu nije uspelo.",
|
||||
"View privacy policy.": "Pogledaj izveštaj o privatnosti.",
|
||||
"Could not get channel info.": "Nije moguće prikupiti informacije o kanalu.",
|
||||
"View privacy policy.": "Pogledaj politiku privatnosti.",
|
||||
"Change password": "Promeni lozinku",
|
||||
"Malayalam": "Malajalam",
|
||||
"View more comments on Reddit": "Prikaži više komentara na Reddit-u",
|
||||
"Malayalam": "Malajalamski",
|
||||
"View more comments on Reddit": "Pogledaj više komentara na Reddit-u",
|
||||
"Portuguese": "Portugalski",
|
||||
"View YouTube comments": "Prikaži YouTube komentare",
|
||||
"View YouTube comments": "Pogledaj YouTube komentare",
|
||||
"published - reverse": "objavljeno - obrnuto",
|
||||
"Dutch": "Holandski",
|
||||
"preferences_volume_label": "Jačina zvuka: ",
|
||||
"preferences_volume_label": "Jačina zvuka plejera: ",
|
||||
"preferences_locale_label": "Jezik: ",
|
||||
"adminprefs_modified_source_code_url_label": "URL veza do skladišta sa Izmenjenom Izvornom Kodom",
|
||||
"Community": "Zajednica",
|
||||
"Video mode": "Video mod",
|
||||
"Fallback captions: ": "Titl u slučaju da glavni nije dostupan: ",
|
||||
"adminprefs_modified_source_code_url_label": "URL adresa do repozitorijuma izmenjenog izvornog koda",
|
||||
"channel_tab_community_label": "Zajednica",
|
||||
"Video mode": "Režim video snimka",
|
||||
"Fallback captions: ": "Rezervni titlovi: ",
|
||||
"Private": "Privatno",
|
||||
"alphabetically": "po alfabetu",
|
||||
"No such user": "Nepostojeći korisnik",
|
||||
"alphabetically": "abecedno",
|
||||
"No such user": "Ne postoji korisnik",
|
||||
"Subscriptions": "Praćenja",
|
||||
"today": "Danas",
|
||||
"search_filters_date_option_today": "Danas",
|
||||
"Finnish": "Finski",
|
||||
"Lao": "Laoski",
|
||||
"Login enabled: ": "Prijava omogućena: ",
|
||||
"Shona": "Šona",
|
||||
"location": "Lokacija",
|
||||
"search_filters_features_option_location": "Lokacija",
|
||||
"Load more": "Učitaj više",
|
||||
"Released under the AGPLv3 on Github.": "Izbačeno pod licencom AGPLv3 na Github-u.",
|
||||
"Released under the AGPLv3 on Github.": "Objavljeno pod licencom AGPLv3 na GitHub-u.",
|
||||
"Slovenian": "Slovenački",
|
||||
"View JavaScript license information.": "Pogledaj informacije licence vezane za JavaScript.",
|
||||
"View JavaScript license information.": "Pogledaj informacije o JavaScript licenci.",
|
||||
"Chinese (Simplified)": "Kineski (Pojednostavljeni)",
|
||||
"preferences_comments_label": "Podrazumevani komentari: ",
|
||||
"Incorrect password": "Netačna lozinka",
|
||||
"Show replies": "Prikaži odgovore",
|
||||
"Invidious Private Feed for `x`": "Invidious Privatni Dovod za `x`",
|
||||
"Invidious Private Feed for `x`": "Invidious privatni fid za `x`",
|
||||
"Watch on YouTube": "Gledaj na YouTube-u",
|
||||
"Wrong answer": "Pogrešan odgovor",
|
||||
"preferences_quality_label": "Preferirani video kvalitet: ",
|
||||
"preferences_quality_label": "Preferirani kvalitet video snimka: ",
|
||||
"Hide replies": "Sakrij odgovore",
|
||||
"Invalid TFA code": "Nevažeća TFA koda",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Neuspešna prijava! Ovo se možda dešava jer dvofaktorna autentikacija nije omogućena na vašem nalogu.",
|
||||
"Erroneous CAPTCHA": "Pogrešna CAPTCHA",
|
||||
"Erroneous token": "Pogrešan žeton",
|
||||
"Erroneous token": "Pogrešan token",
|
||||
"Czech": "Češki",
|
||||
"Latin": "Latinski",
|
||||
"Videos": "Video klipovi",
|
||||
"4k": "4К",
|
||||
"channel_tab_videos_label": "Video snimci",
|
||||
"search_filters_features_option_four_k": "4К",
|
||||
"footer_donate_page": "Doniraj",
|
||||
"English": "Engleski",
|
||||
"Arabic": "Arapski",
|
||||
"Unlisted": "Nenavedeno",
|
||||
"Hidden field \"challenge\" is a required field": "Sakriveno \"challenge\" polje je obavezno",
|
||||
"Hidden field \"token\" is a required field": "Sakriveno \"token\" polje je obavezno",
|
||||
"Unlisted": "Po pozivu",
|
||||
"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",
|
||||
"Georgian": "Gruzijski",
|
||||
"Hawaiian": "Havajski",
|
||||
"Hebrew": "Hebrejski",
|
||||
@ -307,67 +297,223 @@
|
||||
"Japanese": "Japanski",
|
||||
"Javanese": "Javanski",
|
||||
"Sindhi": "Sindi",
|
||||
"Swahili": "Svahili",
|
||||
"Swahili": "Suvali",
|
||||
"Yiddish": "Jidiš",
|
||||
"Zulu": "Zulu",
|
||||
"subtitles": "Titl/Prevod",
|
||||
"Password cannot be longer than 55 characters": "Lozinka ne može biti duža od 55 karaktera",
|
||||
"search_filters_features_option_subtitles": "Titlovi/Skriveni titlovi",
|
||||
"Password cannot be longer than 55 characters": "Lozinka ne može biti duža od 55 znakova",
|
||||
"This channel does not exist.": "Ovaj kanal ne postoji.",
|
||||
"Belarusian": "Beloruski",
|
||||
"Gujarati": "Gudžarati",
|
||||
"Haitian Creole": "Haićanski Kreolski",
|
||||
"Somali": "Somalijski",
|
||||
"Top": "Vrh",
|
||||
"footer_modfied_source_code": "Izmenjena Izvorna Koda",
|
||||
"Top": "Top",
|
||||
"footer_modfied_source_code": "Izmenjeni izvorni kôd",
|
||||
"preferences_category_subscription": "Podešavanja praćenja",
|
||||
"preferences_annotations_subscribed_label": "Podrazumevano prikazati napomene za kanale koje pratite? ",
|
||||
"preferences_max_results_label": "Broj video klipova prikazanih u dovodnoj listi: ",
|
||||
"preferences_sort_label": "Sortiraj video klipove po: ",
|
||||
"preferences_unseen_only_label": "Prikaži samo video klipove koji nisu pogledani: ",
|
||||
"preferences_notifications_only_label": "Prikaži samo obaveštenja (ako ih uopšte ima): ",
|
||||
"preferences_max_results_label": "Broj video snimaka prikazanih u fidu: ",
|
||||
"preferences_sort_label": "Sortiraj video snimke po: ",
|
||||
"preferences_unseen_only_label": "Prikaži samo neodgledano: ",
|
||||
"preferences_notifications_only_label": "Prikaži samo obaveštenja (ako ih ima): ",
|
||||
"preferences_category_data": "Podešavanja podataka",
|
||||
"Clear watch history": "Obriši istoriju gledanja",
|
||||
"preferences_category_admin": "Administratorska podešavanja",
|
||||
"Clear watch history": "Očisti istoriju gledanja",
|
||||
"preferences_category_admin": "Podešavanja administratora",
|
||||
"published": "objavljeno",
|
||||
"sort": "Poredaj prema",
|
||||
"show": "Emisija",
|
||||
"short": "Kratko (< 4 minute)",
|
||||
"search_filters_sort_label": "Sortiranje po",
|
||||
"search_filters_type_option_show": "Emisija",
|
||||
"search_filters_duration_option_short": "Kratko (< 4 minuta)",
|
||||
"Current version: ": "Trenutna verzija: ",
|
||||
"Top enabled: ": "Vrh omogućen: ",
|
||||
"Top enabled: ": "Top omogućeno: ",
|
||||
"Public": "Javno",
|
||||
"Delete playlist": "Obriši plej listu",
|
||||
"Delete playlist": "Izbriši plejlistu",
|
||||
"Title": "Naslov",
|
||||
"Show annotations": "Prikaži napomene",
|
||||
"Password cannot be empty": "Lozinka ne može biti prazna",
|
||||
"Deleted or invalid channel": "Obrisan ili nepostojeći kanal",
|
||||
"Deleted or invalid channel": "Izbrisan ili nevažeći kanal",
|
||||
"Esperanto": "Esperanto",
|
||||
"Hmong": "Hmong",
|
||||
"Luxembourgish": "Luksemburški",
|
||||
"Nepali": "Nepalski",
|
||||
"Samoan": "Samoanski",
|
||||
"News": "Vesti",
|
||||
"permalink": "trajna veza",
|
||||
"permalink": "trajni link",
|
||||
"Password is a required field": "Lozinka je obavezno polje",
|
||||
"Amharic": "Amharski",
|
||||
"Indonesian": "Indonežanski",
|
||||
"Indonesian": "Indonezijski",
|
||||
"Irish": "Irski",
|
||||
"Korean": "Korejski",
|
||||
"Southern Sotho": "Južni Soto",
|
||||
"Thai": "Tajski",
|
||||
"preferences_speed_label": "Podrazumevana brzina: ",
|
||||
"Dark mode: ": "Tamni režim: ",
|
||||
"dark": "tamno",
|
||||
"Redirect homepage to feed: ": "Prebaci sa početne stranice na dovodnu listu: ",
|
||||
"dark": "tamna",
|
||||
"Redirect homepage to feed: ": "Preusmeri početnu stranicu na fid: ",
|
||||
"channel name": "ime kanala",
|
||||
"View all playlists": "Pregledaj sve plej liste",
|
||||
"View all playlists": "Pogledaj sve plejliste",
|
||||
"Show more": "Prikaži više",
|
||||
"Genre: ": "Žanr: ",
|
||||
"Family friendly? ": "Pogodno za porodicu? ",
|
||||
"next_steps_error_message_refresh": "Osveži stranicu",
|
||||
"next_steps_error_message_refresh": "Osvežite",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"unsubscribe": "prekini sa praćenjem",
|
||||
"Blacklisted regions: ": "Zabranjene oblasti: ",
|
||||
"unsubscribe": "prekini praćenje",
|
||||
"Blacklisted regions: ": "Nedostupni regioni: ",
|
||||
"Polish": "Poljski",
|
||||
"Yoruba": "Joruba"
|
||||
"Yoruba": "Joruba",
|
||||
"search_filters_title": "Filteri",
|
||||
"Korean (auto-generated)": "Korejski (automatski generisano)",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"preferences_quality_dash_option_worst": "Najgore",
|
||||
"channel_tab_podcasts_label": "Podkasti",
|
||||
"preferences_save_player_pos_label": "Sačuvaj poziciju reprodukcije: ",
|
||||
"Spanish (Mexico)": "Španski (Meksiko)",
|
||||
"generic_subscriptions_count_0": "{{count}} praćenje",
|
||||
"generic_subscriptions_count_1": "{{count}} praćenja",
|
||||
"generic_subscriptions_count_2": "{{count}} praćenja",
|
||||
"search_filters_apply_button": "Primeni izabrane filtere",
|
||||
"Download is disabled": "Preuzimanje je onemogućeno",
|
||||
"comments_points_count_0": "{{count}} poen",
|
||||
"comments_points_count_1": "{{count}} poena",
|
||||
"comments_points_count_2": "{{count}} poena",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"German (auto-generated)": "Nemački (automatski generisano)",
|
||||
"Japanese (auto-generated)": "Japanski (automatski generisano)",
|
||||
"preferences_quality_option_medium": "Srednje",
|
||||
"search_message_change_filters_or_query": "Pokušajte da proširite upit za pretragu i/ili promenite filtere.",
|
||||
"crash_page_before_reporting": "Pre nego što prijavite grešku, uverite se da ste:",
|
||||
"preferences_quality_dash_option_best": "Najbolje",
|
||||
"Channel Sponsor": "Sponzor kanala",
|
||||
"generic_videos_count_0": "{{count}} video snimak",
|
||||
"generic_videos_count_1": "{{count}} video snimka",
|
||||
"generic_videos_count_2": "{{count}} video snimaka",
|
||||
"videoinfo_started_streaming_x_ago": "Započeto strimovanje pre `x`",
|
||||
"videoinfo_youTube_embed_link": "Ugrađeno",
|
||||
"channel_tab_streams_label": "Strimovi uživo",
|
||||
"playlist_button_add_items": "Dodaj video snimke",
|
||||
"generic_count_minutes_0": "{{count}} minut",
|
||||
"generic_count_minutes_1": "{{count}} minuta",
|
||||
"generic_count_minutes_2": "{{count}} minuta",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_watch_history_label": "Omogući istoriju gledanja: ",
|
||||
"user_saved_playlists": "Sačuvanih plejlista: `x`",
|
||||
"Spanish (Spain)": "Španski (Španija)",
|
||||
"invidious": "Invidious",
|
||||
"crash_page_refresh": "pokušali da <a href=\"`x`\">osvežite stranicu</a>",
|
||||
"Chinese (Hong Kong)": "Kineski (Hong Kong)",
|
||||
"Artist: ": "Izvođač: ",
|
||||
"generic_count_months_0": "{{count}} mesec",
|
||||
"generic_count_months_1": "{{count}} meseca",
|
||||
"generic_count_months_2": "{{count}} meseci",
|
||||
"search_message_use_another_instance": "Takođe, možete <a href=\"`x`\">pretraživati na drugoj instanci</a>.",
|
||||
"generic_subscribers_count_0": "{{count}} pratilac",
|
||||
"generic_subscribers_count_1": "{{count}} pratioca",
|
||||
"generic_subscribers_count_2": "{{count}} pratilaca",
|
||||
"download_subtitles": "Titlovi - `x` (.vtt)",
|
||||
"generic_button_save": "Sačuvaj",
|
||||
"crash_page_search_issue": "pretražili <a href=\"`x`\">postojeće izveštaje o problemima na GitHub-u</a>",
|
||||
"generic_button_cancel": "Otkaži",
|
||||
"none": "nijedno",
|
||||
"English (United States)": "Engleski (Sjedinjene Američke Države)",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} neviđeno obaveštenje",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} neviđena obaveštenja",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} neviđenih obaveštenja",
|
||||
"Album: ": "Album: ",
|
||||
"preferences_quality_option_dash": "DASH (adaptivni kvalitet)",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"Video unavailable": "Video snimak nedostupan",
|
||||
"tokens_count_0": "{{count}} token",
|
||||
"tokens_count_1": "{{count}} tokena",
|
||||
"tokens_count_2": "{{count}} tokena",
|
||||
"Chinese (China)": "Kineski (Kina)",
|
||||
"Italian (auto-generated)": "Italijanski (automatski generisano)",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"search_message_no_results": "Nisu pronađeni rezultati.",
|
||||
"channel_tab_releases_label": "Izdanja",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Interlingue": "Interlingva",
|
||||
"Song: ": "Pesma: ",
|
||||
"generic_channels_count_0": "{{count}} kanal",
|
||||
"generic_channels_count_1": "{{count}} kanala",
|
||||
"generic_channels_count_2": "{{count}} kanala",
|
||||
"Chinese (Taiwan)": "Kineski (Tajvan)",
|
||||
"Turkish (auto-generated)": "Turski (automatski generisano)",
|
||||
"Indonesian (auto-generated)": "Indonezijski (automatski generisano)",
|
||||
"Portuguese (auto-generated)": "Portugalski (automatski generisano)",
|
||||
"generic_count_years_0": "{{count}} godina",
|
||||
"generic_count_years_1": "{{count}} godine",
|
||||
"generic_count_years_2": "{{count}} godina",
|
||||
"videoinfo_invidious_embed_link": "Ugrađeni link",
|
||||
"Popular enabled: ": "Popularno omogućeno: ",
|
||||
"Spanish (auto-generated)": "Španski (automatski generisano)",
|
||||
"preferences_quality_option_small": "Malo",
|
||||
"English (United Kingdom)": "Engleski (Ujedinjeno Kraljevstvo)",
|
||||
"channel_tab_playlists_label": "Plejliste",
|
||||
"generic_button_edit": "Izmeni",
|
||||
"generic_playlists_count_0": "{{count}} plejlista",
|
||||
"generic_playlists_count_1": "{{count}} plejliste",
|
||||
"generic_playlists_count_2": "{{count}} plejlista",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"search_filters_features_option_purchased": "Kupljeno",
|
||||
"search_filters_date_option_none": "Bilo koji datum",
|
||||
"preferences_quality_dash_option_auto": "Automatski",
|
||||
"Cantonese (Hong Kong)": "Kantonski (Hong Kong)",
|
||||
"crash_page_report_issue": "Ako ništa od gorenavedenog nije pomoglo, <a href=\"`x`\">otvorite novi izveštaj o problemu na GitHub-u</a> (po mogućnosti na engleskom) i uključite sledeći tekst u svoju poruku (NE prevodite taj tekst):",
|
||||
"crash_page_switch_instance": "pokušali da <a href=\"`x`\">koristite drugu instancu</a>",
|
||||
"generic_count_weeks_0": "{{count}} nedelja",
|
||||
"generic_count_weeks_1": "{{count}} nedelje",
|
||||
"generic_count_weeks_2": "{{count}} nedelja",
|
||||
"videoinfo_watch_on_youTube": "Gledaj na YouTube-u",
|
||||
"Music in this video": "Muzika u ovom video snimku",
|
||||
"generic_button_rss": "RSS",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"generic_count_hours_0": "{{count}} sat",
|
||||
"generic_count_hours_1": "{{count}} sata",
|
||||
"generic_count_hours_2": "{{count}} sati",
|
||||
"French (auto-generated)": "Francuski (automatski generisano)",
|
||||
"crash_page_read_the_faq": "pročitali <a href=\"`x`\">Često Postavljana Pitanja (ČPP)</a>",
|
||||
"user_created_playlists": "Napravljenih plejlista: `x`",
|
||||
"channel_tab_channels_label": "Kanali",
|
||||
"search_filters_type_option_all": "Bilo koja vrsta",
|
||||
"Russian (auto-generated)": "Ruski (automatski generisano)",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"comments_view_x_replies_0": "Pogledaj {{count}} odgovor",
|
||||
"comments_view_x_replies_1": "Pogledaj {{count}} odgovora",
|
||||
"comments_view_x_replies_2": "Pogledaj {{count}} odgovora",
|
||||
"Portuguese (Brazil)": "Portugalski (Brazil)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"error_video_not_in_playlist": "Traženi video snimak ne postoji na ovoj plejlisti. <a href=\"`x`\">Kliknite ovde za početnu stranicu plejliste.</a>",
|
||||
"Dutch (auto-generated)": "Holandski (automatski generisano)",
|
||||
"generic_count_days_0": "{{count}} dan",
|
||||
"generic_count_days_1": "{{count}} dana",
|
||||
"generic_count_days_2": "{{count}} dana",
|
||||
"Vietnamese (auto-generated)": "Vijetnamski (automatski generisano)",
|
||||
"search_filters_duration_option_none": "Bilo koje trajanje",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"Chinese": "Kineski",
|
||||
"generic_button_delete": "Izbriši",
|
||||
"Import YouTube playlist (.csv)": "Uvezi YouTube plejlistu (.csv)",
|
||||
"Standard YouTube license": "Standardna YouTube licenca",
|
||||
"search_filters_duration_option_medium": "Srednje (4 - 20 minuta)",
|
||||
"generic_count_seconds_0": "{{count}} sekunda",
|
||||
"generic_count_seconds_1": "{{count}} sekunde",
|
||||
"generic_count_seconds_2": "{{count}} sekundi",
|
||||
"search_filters_date_label": "Datum otpremanja",
|
||||
"crash_page_you_found_a_bug": "Izgleda da ste pronašli grešku u Invidious-u!",
|
||||
"generic_views_count_0": "{{count}} pregled",
|
||||
"generic_views_count_1": "{{count}} pregleda",
|
||||
"generic_views_count_2": "{{count}} pregleda",
|
||||
"Import YouTube watch history (.json)": "Uvezi YouTube istoriju gledanja (.json)",
|
||||
"The Popular feed has been disabled by the administrator.": "Administrator je onemogućio fid „Popularno“.",
|
||||
"Add to playlist: ": "Dodajte na plejlistu: ",
|
||||
"Add to playlist": "Dodaj na plejlistu",
|
||||
"carousel_slide": "Slajd {{current}} od {{total}}",
|
||||
"carousel_go_to": "Idi na slajd `x`",
|
||||
"Answer": "Odgovor",
|
||||
"Search for videos": "Pretražite video snimke",
|
||||
"carousel_skip": "Preskoči karusel",
|
||||
"toggle_theme": "Подеси тему",
|
||||
"preferences_preload_label": "Unapred učitaj podatke o video snimku: ",
|
||||
"Filipino (auto-generated)": "Filipinski (automatski generisano)"
|
||||
}
|
||||
|
@ -1,172 +1,166 @@
|
||||
{
|
||||
"LIVE": "УЖИВО",
|
||||
"Shared `x` ago": "Подељено пре `x`",
|
||||
"Shared `x` ago": "Дељено пре `x`",
|
||||
"Unsubscribe": "Прекини праћење",
|
||||
"Subscribe": "Прати",
|
||||
"Subscribe": "Запрати",
|
||||
"View channel on YouTube": "Погледај канал на YouTube-у",
|
||||
"View playlist on YouTube": "Погледај списак извођења на YоуТубе-у",
|
||||
"View playlist on YouTube": "Погледај плејлисту на YouTube-у",
|
||||
"newest": "најновије",
|
||||
"oldest": "најстарије",
|
||||
"popular": "популарно",
|
||||
"last": "последње",
|
||||
"Next page": "Следећа страна",
|
||||
"Previous page": "Претходна страна",
|
||||
"Clear watch history?": "Избрисати повест прегледања?",
|
||||
"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`?",
|
||||
"New passwords must match": "Нове лозинке морају да се подударају",
|
||||
"Authorize token?": "Ауторизовати токен?",
|
||||
"Authorize token for `x`?": "Ауторизовати токен за `x`?",
|
||||
"Yes": "Да",
|
||||
"No": "Не",
|
||||
"Import and Export Data": "Увоз и извоз података",
|
||||
"Import": "Увези",
|
||||
"Import Invidious data": "Увези податке са Individious-а",
|
||||
"Import YouTube subscriptions": "Увези праћења са YouTube-а",
|
||||
"Import FreeTube subscriptions (.db)": "Увези праћења са FreeTube-а (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Увези праћења са NewPipe-а (.json)",
|
||||
"Import NewPipe data (.zip)": "Увези податке са NewPipe-a (.zip)",
|
||||
"Import Invidious data": "Увези Invidious JSON податке",
|
||||
"Import YouTube subscriptions": "Увези YouTube CSV или OPML праћења",
|
||||
"Import FreeTube subscriptions (.db)": "Увези FreeTube праћења (.db)",
|
||||
"Import NewPipe subscriptions (.json)": "Увези NewPipe праћења (.json)",
|
||||
"Import NewPipe data (.zip)": "Увези NewPipe податке (.zip)",
|
||||
"Export": "Извези",
|
||||
"Export subscriptions as OPML": "Извези праћења као ОПМЛ датотеку",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Извези праћења као ОПМЛ датотеку (за NewPipe и FreeTube)",
|
||||
"Export data as JSON": "Извези податке као JSON датотеку",
|
||||
"Delete account?": "Избришите налог?",
|
||||
"Export subscriptions as OPML": "Извези праћења као OPML",
|
||||
"Export subscriptions as OPML (for NewPipe & FreeTube)": "Извези праћења као OPML (за NewPipe и FreeTube)",
|
||||
"Export data as JSON": "Извези Invidious податке као JSON",
|
||||
"Delete account?": "Избрисати налог?",
|
||||
"History": "Историја",
|
||||
"An alternative front-end to YouTube": "Заменски кориснички слој за YouTube",
|
||||
"JavaScript license information": "Извештај о JavaScript одобрењу",
|
||||
"An alternative front-end to YouTube": "Алтернативни фронт-енд за YouTube",
|
||||
"JavaScript license information": "Информације о JavaScript лиценци",
|
||||
"source": "извор",
|
||||
"Log in": "Пријави се",
|
||||
"Log in/register": "Пријави се/Отворите налог",
|
||||
"Log in with Google": "Пријави се помоћу Google-а",
|
||||
"User ID": "Кориснички ИД",
|
||||
"Log in": "Пријава",
|
||||
"Log in/register": "Пријава/регистрација",
|
||||
"User ID": "ID корисника",
|
||||
"Password": "Лозинка",
|
||||
"Time (h:mm:ss):": "Време (ч:мм:сс):",
|
||||
"Text CAPTCHA": "Знаковни ЦАПТЧА",
|
||||
"Image CAPTCHA": "Сликовни CAPTCHA",
|
||||
"Text CAPTCHA": "Текст CAPTCHA",
|
||||
"Image CAPTCHA": "Слика CAPTCHA",
|
||||
"Sign In": "Пријава",
|
||||
"Register": "Отвори налог",
|
||||
"E-mail": "Е-пошта",
|
||||
"Google verification code": "Google-ова оверна кода",
|
||||
"Register": "Регистрација",
|
||||
"E-mail": "Имејл",
|
||||
"Preferences": "Подешавања",
|
||||
"preferences_category_player": "Подешавања репродуктора",
|
||||
"preferences_category_player": "Подешавања плејера",
|
||||
"preferences_video_loop_label": "Увек понављај: ",
|
||||
"preferences_autoplay_label": "Самопуштање: ",
|
||||
"preferences_continue_label": "Увек подразумевано пуштај следеће: ",
|
||||
"preferences_continue_autoplay_label": "Самопуштање следећег видео записа: ",
|
||||
"preferences_listen_label": "Увек подразумевано укључен само звук: ",
|
||||
"preferences_local_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_quality_label": "Преферирани квалитет видео снимка: ",
|
||||
"preferences_volume_label": "Јачина звука плејера: ",
|
||||
"preferences_comments_label": "Подразумевани коментари: ",
|
||||
"youtube": "YouTube",
|
||||
"reddit": "Reddit",
|
||||
"preferences_captions_label": "Подразумевани титл: ",
|
||||
"Fallback captions: ": "Титл у случају да главни није доступан: ",
|
||||
"preferences_related_videos_label": "Прикажи сличне видео клипове: ",
|
||||
"preferences_annotations_label": "Прикажи напомене подразумевано: ",
|
||||
"preferences_category_visual": "Визуелне преференце",
|
||||
"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_dark_mode_label": "Тема: ",
|
||||
"dark": "тамна",
|
||||
"light": "светла",
|
||||
"preferences_thin_mode_label": "Компактни режим: ",
|
||||
"preferences_category_subscription": "Подешавања праћења",
|
||||
"preferences_annotations_subscribed_label": "Подразумевано приказати напомене за канале које пратите? ",
|
||||
"Redirect homepage to feed: ": "Пребаци са почетне странице на доводну листу: ",
|
||||
"preferences_max_results_label": "Број видео клипова приказаних у доводној листи: ",
|
||||
"preferences_sort_label": "Сортирај видео клипове по: ",
|
||||
"Redirect homepage to feed: ": "Преусмери почетну страницу на фид: ",
|
||||
"preferences_max_results_label": "Број видео снимака приказаних у фиду: ",
|
||||
"preferences_sort_label": "Сортирај видео снимке по: ",
|
||||
"published": "објављено",
|
||||
"published - reverse": "објављено - обрнуто",
|
||||
"alphabetically": "по алфабету",
|
||||
"alphabetically - 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` преноси уживо",
|
||||
"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": "Обриши историју гледања",
|
||||
"Clear watch history": "Очисти историју гледања",
|
||||
"Import/export data": "Увези/Извези податке",
|
||||
"Change password": "Промени лозинку",
|
||||
"Manage subscriptions": "Управљај записима",
|
||||
"Manage tokens": "Управљај жетонима",
|
||||
"Manage subscriptions": "Управљај праћењима",
|
||||
"Manage tokens": "Управљај токенима",
|
||||
"Watch history": "Историја гледања",
|
||||
"Delete account": "Обриши налог",
|
||||
"preferences_category_admin": "Администраторска подешавања",
|
||||
"Delete account": "Избриши налог",
|
||||
"preferences_category_admin": "Подешавања администратора",
|
||||
"preferences_default_home_label": "Подразумевана почетна страница: ",
|
||||
"preferences_feed_menu_label": "Доводна страница: ",
|
||||
"preferences_feed_menu_label": "Фид мени: ",
|
||||
"CAPTCHA enabled: ": "CAPTCHA омогућена: ",
|
||||
"Login enabled: ": "Пријава омогућена: ",
|
||||
"Registration enabled: ": "Регистрација омогућена: ",
|
||||
"Save preferences": "Сачувај подешавања",
|
||||
"Subscription manager": "Управљање праћењима",
|
||||
"Token manager": "Управљање жетонима",
|
||||
"Token": "Жетон",
|
||||
"Import/export": "Увези/Извези",
|
||||
"unsubscribe": "прекини са праћењем",
|
||||
"Token manager": "Управљање токенима",
|
||||
"Token": "Токен",
|
||||
"Import/export": "Увоз/извоз",
|
||||
"unsubscribe": "прекини праћење",
|
||||
"revoke": "опозови",
|
||||
"Subscriptions": "Праћења",
|
||||
"search": "претрага",
|
||||
"Log out": "Одјава",
|
||||
"Source available here.": "Изворна кода је овде доступна.",
|
||||
"View JavaScript license information.": "Погледај информације лиценце везане за JavaScript.",
|
||||
"View privacy policy.": "Погледај извештај о приватности.",
|
||||
"Source available here.": "Изворни кôд је доступан овде.",
|
||||
"View JavaScript license information.": "Погледај информације о JavaScript лиценци.",
|
||||
"View privacy policy.": "Погледај политику приватности.",
|
||||
"Trending": "У тренду",
|
||||
"Public": "Јавно",
|
||||
"Unlisted": "Ненаведено",
|
||||
"Unlisted": "По позиву",
|
||||
"Private": "Приватно",
|
||||
"View all playlists": "Прегледај све плеј листе",
|
||||
"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`",
|
||||
"Watch on YouTube": "Гледај на YouTube-у",
|
||||
"Hide annotations": "Сакриј напомене",
|
||||
"Show annotations": "Прикажи напомене",
|
||||
"Genre: ": "Жанр: ",
|
||||
"License: ": "Лиценца: ",
|
||||
"Engagement: ": "Ангажовање: ",
|
||||
"Whitelisted regions: ": "Дозвољене области: ",
|
||||
"Blacklisted regions: ": "Забрањене области: ",
|
||||
"Premieres in `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 Reddit comments": "Прикажи Reddit коментаре",
|
||||
"Whitelisted regions: ": "Доступни региони: ",
|
||||
"Blacklisted regions: ": "Недоступни региони: ",
|
||||
"Premieres in `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 Reddit comments": "Погледај Reddit коментаре",
|
||||
"Hide replies": "Сакриј одговоре",
|
||||
"Show replies": "Прикажи одговоре",
|
||||
"Incorrect password": "Нетачна лозинка",
|
||||
"Current version: ": "Тренутна верзија: ",
|
||||
"Wilson score: ": "Wилсонова оцена: ",
|
||||
"Wilson score: ": "Вилсонова оцена: ",
|
||||
"Burmese": "Бурмански",
|
||||
"preferences_quality_dash_label": "Преферирани квалитет DASH видео формата: ",
|
||||
"Erroneous token": "Погрешан жетон",
|
||||
"Quota exceeded, try again in a few hours": "Квота је премашена, молимо вас да покушате поново за пар сати",
|
||||
"Unable to log in, make sure two-factor authentication (Authenticator or SMS) is turned on.": "Неуспешна пријава, проверите да ли сте упалили двофакторну аутентикацију (Аутентикатор или СМС).",
|
||||
"preferences_quality_dash_label": "Преферирани DASH квалитет видео снимка: ",
|
||||
"Erroneous token": "Погрешан токен",
|
||||
"CAPTCHA is a required field": "CAPTCHA је обавезно поље",
|
||||
"No such user": "Непостојећи корисник",
|
||||
"No such user": "Не постоји корисник",
|
||||
"Chinese (Traditional)": "Кинески (Традиционални)",
|
||||
"adminprefs_modified_source_code_url_label": "УРЛ веза до складишта са Измењеном Изворном Кодом",
|
||||
"adminprefs_modified_source_code_url_label": "URL адреса до репозиторијума измењеног изворног кода",
|
||||
"Lao": "Лаоски",
|
||||
"Czech": "Чешки",
|
||||
"Kannada": "Канада (Језик)",
|
||||
"Kannada": "Канада",
|
||||
"Polish": "Пољски",
|
||||
"Cebuano": "Себуано",
|
||||
"Cebuano": "Цебуански",
|
||||
"preferences_show_nick_label": "Прикажи надимке на врху: ",
|
||||
"Report statistics: ": "Извештавај о статистици: ",
|
||||
"Report statistics: ": "Извештавај статистике: ",
|
||||
"Show more": "Прикажи више",
|
||||
"Login failed. This may be because two-factor authentication is not turned on for your account.": "Неуспешна пријава! Ово се можда дешава јер двофакторна аутентикација није омогућена на vашем налогу.",
|
||||
"Wrong answer": "Погрешан одговор",
|
||||
"Hidden field \"token\" is a required field": "Сакривено \"token\" поље је обавезно",
|
||||
"Hidden field \"token\" is a required field": "Скривено поље „токен“ је обавезно поље",
|
||||
"English": "Енглески",
|
||||
"Albanian": "Албански",
|
||||
"Amharic": "Амхарски",
|
||||
@ -182,40 +176,38 @@
|
||||
"Georgian": "Грузијски",
|
||||
"Greek": "Грчки",
|
||||
"Hausa": "Хауса",
|
||||
"video": "Видео",
|
||||
"playlist": "Плеј листа",
|
||||
"movie": "Филм",
|
||||
"long": "Дуго (> 20 минута)",
|
||||
"creative_commons": "Creative Commons (Лиценца)",
|
||||
"live": "Уживо",
|
||||
"location": "Локација",
|
||||
"filter": "Филтер",
|
||||
"next_steps_error_message": "Након чега би требали пробати: ",
|
||||
"search_filters_type_option_video": "Видео снимак",
|
||||
"search_filters_type_option_playlist": "Плејлиста",
|
||||
"search_filters_type_option_movie": "Филм",
|
||||
"search_filters_duration_option_long": "Дуго (> 20 минута)",
|
||||
"search_filters_features_option_c_commons": "Creative Commons",
|
||||
"search_filters_features_option_live": "Уживо",
|
||||
"search_filters_features_option_location": "Локација",
|
||||
"next_steps_error_message": "Након тога би требало да покушате да: ",
|
||||
"footer_donate_page": "Донирај",
|
||||
"footer_documentation": "Документација",
|
||||
"footer_modfied_source_code": "Измењена Изворна Кода",
|
||||
"preferences_region_label": "Држава порекла садржаја: ",
|
||||
"footer_modfied_source_code": "Измењени изворни кôд",
|
||||
"preferences_region_label": "Држава садржаја: ",
|
||||
"preferences_category_misc": "Остала подешавања",
|
||||
"User ID is a required field": "Кориснички ИД је обавезно поље",
|
||||
"User ID is a required field": "ID корисника је обавезно поље",
|
||||
"Password is a required field": "Лозинка је обавезно поље",
|
||||
"Wrong username or password": "Погрешно корисничко име или лозинка",
|
||||
"Please sign in using 'Log in with Google'": "Молимо Вас да се пријавите помоћу 'Log in with Google'",
|
||||
"Password cannot be empty": "Лозинка не може бити празна",
|
||||
"Password cannot be longer than 55 characters": "Лозинка не може бити дужа од 55 карактера",
|
||||
"Invidious Private Feed for `x`": "Инвидиоус Приватни Довод за `x`",
|
||||
"Deleted or invalid channel": "Обрисан или непостојећи канал",
|
||||
"Password cannot be longer than 55 characters": "Лозинка не може бити дужа од 55 знакова",
|
||||
"Invidious Private Feed for `x`": "Invidious приватни фид за `x`",
|
||||
"Deleted or invalid channel": "Избрисан или неважећи канал",
|
||||
"This channel does not exist.": "Овај канал не постоји.",
|
||||
"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": "Сакривено \"challenge\" поље је обавезно",
|
||||
"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": "Скривено поље „изазов“ је обавезно поље",
|
||||
"Telugu": "Телугу",
|
||||
"Turkish": "Турски",
|
||||
"Urdu": "Урду",
|
||||
"Western Frisian": "Западнофрисијски",
|
||||
"Xhosa": "Коса (Језик)",
|
||||
"Western Frisian": "Западнофризијски",
|
||||
"Xhosa": "Коса (Кхоса)",
|
||||
"Yiddish": "Јидиш",
|
||||
"Hawaiian": "Хавајски",
|
||||
"Hmong": "Хмонг",
|
||||
@ -225,113 +217,112 @@
|
||||
"Khmer": "Кмерски",
|
||||
"Kyrgyz": "Киргиски",
|
||||
"Macedonian": "Македонски",
|
||||
"Maori": "Маори (Језик)",
|
||||
"Marathi": "Маратхи",
|
||||
"Maori": "Маорски",
|
||||
"Marathi": "Маратски",
|
||||
"Nepali": "Непалски",
|
||||
"Norwegian Bokmål": "Норвешки Бокмал",
|
||||
"Nyanja": "Чева",
|
||||
"Nyanja": "Нијанџа",
|
||||
"Russian": "Руски",
|
||||
"Scottish Gaelic": "Шкотски Гелски",
|
||||
"Shona": "Шона",
|
||||
"Slovak": "Словачки",
|
||||
"Spanish (Latin America)": "Шпански (Јужна Америка)",
|
||||
"Sundanese": "Сундски",
|
||||
"Swahili": "Свахили",
|
||||
"Spanish (Latin America)": "Шпански (Латинска Америка)",
|
||||
"Sundanese": "Сундански",
|
||||
"Swahili": "Сували",
|
||||
"Tajik": "Таџички",
|
||||
"Search": "Претрага",
|
||||
"Rating: ": "Ocena/e: ",
|
||||
"Default": "Подразумеван/о",
|
||||
"Rating: ": "Оцена: ",
|
||||
"Default": "Подразумевано",
|
||||
"News": "Вести",
|
||||
"Download": "Преузми",
|
||||
"(edited)": "(измењено)",
|
||||
"`x` marked it with a ❤": "`x` је означио/ла ово са ❤",
|
||||
"Audio mode": "Аудио мод",
|
||||
"Videos": "Видео клипови",
|
||||
"views": "Број прегледа",
|
||||
"features": "Карактеристике",
|
||||
"today": "Данас",
|
||||
"`x` marked it with a ❤": "`x` је означио/ла са ❤",
|
||||
"Audio mode": "Режим аудио снимка",
|
||||
"channel_tab_videos_label": "Видео снимци",
|
||||
"search_filters_sort_option_views": "Број прегледа",
|
||||
"search_filters_features_label": "Карактеристике",
|
||||
"search_filters_date_option_today": "Данас",
|
||||
"%A %B %-d, %Y": "%A %B %-d, %Y",
|
||||
"preferences_locale_label": "Језик: ",
|
||||
"Persian": "Перзијски",
|
||||
"Persian": "Персијски",
|
||||
"View `x` comments": {
|
||||
"": "Прикажи `x` коментара",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Прикажи `x` коментар"
|
||||
"": "Погледај `x` коментара",
|
||||
"([^.,0-9]|^)1([^.,0-9]|$)": "Погледај `x` коментар"
|
||||
},
|
||||
"channel": "Канал",
|
||||
"search_filters_type_option_channel": "Канал",
|
||||
"Haitian Creole": "Хаићански Креолски",
|
||||
"Armenian": "Јерменски",
|
||||
"next_steps_error_message_go_to_youtube": "Иди на YouTube",
|
||||
"Indonesian": "Индонежански",
|
||||
"preferences_vr_mode_label": "Интерактивни видео клипови у 360 степени: ",
|
||||
"next_steps_error_message_go_to_youtube": "Одете на YouTube",
|
||||
"Indonesian": "Индонезијски",
|
||||
"preferences_vr_mode_label": "Интерактивни видео снимци од 360 степени (захтева WebGL): ",
|
||||
"Switch Invidious Instance": "Промени Invidious инстанцу",
|
||||
"Portuguese": "Португалски",
|
||||
"week": "Ове седмице",
|
||||
"show": "Емисија",
|
||||
"Fallback comments: ": "Коментари у случају отказивања: ",
|
||||
"hdr": "Видео Високе Резолуције",
|
||||
"About": "О програму",
|
||||
"search_filters_date_option_week": "Ове недеље",
|
||||
"search_filters_type_option_show": "Емисија",
|
||||
"Fallback comments: ": "Резервни коментари: ",
|
||||
"search_filters_features_option_hdr": "HDR",
|
||||
"About": "О сајту",
|
||||
"Kazakh": "Казашки",
|
||||
"Shared `x`": "Подељено `x`",
|
||||
"Playlists": "Плеј листе",
|
||||
"Shared `x`": "Дељено `x`",
|
||||
"Playlists": "Плејлисте",
|
||||
"Yoruba": "Јоруба",
|
||||
"Erroneous challenge": "Погрешан изазов",
|
||||
"Danish": "Дански",
|
||||
"Could not get channel info.": "Узимање података о каналу није успело.",
|
||||
"hd": "HD",
|
||||
"Could not get channel info.": "Није могуће прикупити информације о каналу.",
|
||||
"search_filters_features_option_hd": "HD",
|
||||
"Slovenian": "Словеначки",
|
||||
"Load more": "Учитај више",
|
||||
"German": "Немачки",
|
||||
"Luxembourgish": "Луксембуршки",
|
||||
"Mongolian": "Монголски",
|
||||
"Latvian": "Летонски",
|
||||
"channel:`x`": "kanal:`x`",
|
||||
"channel:`x`": "канал:`x`",
|
||||
"Southern Sotho": "Јужни Сото",
|
||||
"Popular": "Популарно",
|
||||
"Gujarati": "Гуџарати",
|
||||
"year": "Ове године",
|
||||
"search_filters_date_option_year": "Ове године",
|
||||
"Irish": "Ирски",
|
||||
"YouTube comment permalink": "YouTube коментар трајна веза",
|
||||
"YouTube comment permalink": "Трајни линк YouTube коментара",
|
||||
"Malagasy": "Малгашки",
|
||||
"Token is expired, please try again": "Жетон је истекао, молимо вас да покушате поново",
|
||||
"short": "Кратко (< 4 минуте)",
|
||||
"Token is expired, please try again": "Токен је истекао, покушајте поново",
|
||||
"search_filters_duration_option_short": "Кратко (< 4 минута)",
|
||||
"Samoan": "Самоански",
|
||||
"Tamil": "Тамилски",
|
||||
"Ukrainian": "Украјински",
|
||||
"permalink": "трајна веза",
|
||||
"permalink": "трајни линк",
|
||||
"Pashto": "Паштунски",
|
||||
"Community": "Заједница",
|
||||
"channel_tab_community_label": "Заједница",
|
||||
"Sindhi": "Синди",
|
||||
"Could not fetch comments": "Узимање коментара није успело",
|
||||
"Bangla": "Бангла/Бенгалски",
|
||||
"Could not fetch comments": "Није могуће прикупити коментаре",
|
||||
"Bangla": "Бенгалски",
|
||||
"Uzbek": "Узбечки",
|
||||
"Lithuanian": "Литвански",
|
||||
"Icelandic": "Исландски",
|
||||
"Thai": "Тајски",
|
||||
"month": "Овај месец",
|
||||
"content_type": "Тип",
|
||||
"hour": "Последњи сат",
|
||||
"search_filters_date_option_month": "Овог месеца",
|
||||
"search_filters_type_label": "Врста",
|
||||
"search_filters_date_option_hour": "Последњи сат",
|
||||
"Spanish": "Шпански",
|
||||
"date": "Датум отпремања",
|
||||
"View as playlist": "Погледај као плеј листу",
|
||||
"relevance": "Релевантност",
|
||||
"search_filters_sort_option_date": "Датум отпремања",
|
||||
"View as playlist": "Погледај као плејлисту",
|
||||
"search_filters_sort_option_relevance": "Релевантност",
|
||||
"Estonian": "Естонски",
|
||||
"Sinhala": "Синхалешки",
|
||||
"Sinhala": "Синхалски",
|
||||
"Corsican": "Корзикански",
|
||||
"Filipino": "Филипино",
|
||||
"Gaming": "Игрице",
|
||||
"Filipino": "Филипински",
|
||||
"Gaming": "Видео игре",
|
||||
"Movies": "Филмови",
|
||||
"rating": "Оцене",
|
||||
"Top enabled: ": "Врх омогућен: ",
|
||||
"Released under the AGPLv3 on Github.": "Избачено под лиценцом AGPLv3 на Github-у.",
|
||||
"search_filters_sort_option_rating": "Оцена",
|
||||
"Top enabled: ": "Топ омогућено: ",
|
||||
"Released under the AGPLv3 on Github.": "Објављено под лиценцом AGPLv3 на GitHub-у.",
|
||||
"Afrikaans": "Африканс",
|
||||
"preferences_automatic_instance_redirect_label": "Аутоматско пребацивање на другу инстанцу у случају отказивања (пречи ће назад на редирецт.инвидиоус.ио): ",
|
||||
"Invalid TFA code": "Неважећа TFA кода",
|
||||
"Please log in": "Молимо вас да се пријавите",
|
||||
"preferences_automatic_instance_redirect_label": "Аутоматско преусмеравање инстанце (повратак на redirect.invidious.io): ",
|
||||
"Please log in": "Молимо, пријавите се",
|
||||
"English (auto-generated)": "Енглески (аутоматски генерисано)",
|
||||
"Hindi": "Хинди",
|
||||
"Italian": "Талијански",
|
||||
"Malayalam": "Малајалам",
|
||||
"Punjabi": "Пунџаби",
|
||||
"Italian": "Италијански",
|
||||
"Malayalam": "Малајаламски",
|
||||
"Punjabi": "Панџапски",
|
||||
"Somali": "Сомалијски",
|
||||
"Vietnamese": "Вијетнамски",
|
||||
"Welsh": "Велшки",
|
||||
@ -339,28 +330,27 @@
|
||||
"Maltese": "Малтешки",
|
||||
"Swedish": "Шведски",
|
||||
"Music": "Музика",
|
||||
"Download as: ": "Преузми као: ",
|
||||
"duration": "Трајање",
|
||||
"sort": "Поредај према",
|
||||
"subtitles": "Титл/Превод",
|
||||
"preferences_extend_desc_label": "Аутоматски прикажи цео опис видеа: ",
|
||||
"Download as: ": "Преузети као: ",
|
||||
"search_filters_duration_label": "Трајање",
|
||||
"search_filters_sort_label": "Сортирање по",
|
||||
"search_filters_features_option_subtitles": "Титлови/Скривени титлови",
|
||||
"preferences_extend_desc_label": "Аутоматски прошири опис видео снимка: ",
|
||||
"Show less": "Прикажи мање",
|
||||
"Broken? Try another Invidious Instance": "Не функционише исправно? Пробајте другу Invidious инстанцу",
|
||||
"Family friendly? ": "Погодно за породицу? ",
|
||||
"Premieres `x`": "Премерe у `x`",
|
||||
"Premieres `x`": "Премијера `x`",
|
||||
"Bosnian": "Босански",
|
||||
"Catalan": "Каталонски",
|
||||
"Japanese": "Јапански",
|
||||
"Latin": "Латински",
|
||||
"next_steps_error_message_refresh": "Освежи страницу",
|
||||
"footer_original_source_code": "Оригинална Изворна Кода",
|
||||
"next_steps_error_message_refresh": "Освежите",
|
||||
"footer_original_source_code": "Оригинални изворни кôд",
|
||||
"Romanian": "Румунски",
|
||||
"Serbian": "Српски",
|
||||
"Top": "Врх",
|
||||
"Video mode": "Видео мод",
|
||||
"footer_source_code": "Изворна Кода",
|
||||
"3d": "3D",
|
||||
"4k": "4K",
|
||||
"Top": "Топ",
|
||||
"Video mode": "Режим видео снимка",
|
||||
"footer_source_code": "Изворни кôд",
|
||||
"search_filters_features_option_three_d": "3D",
|
||||
"search_filters_features_option_four_k": "4K",
|
||||
"Erroneous CAPTCHA": "Погрешна CAPTCHA",
|
||||
"`x` ago": "пре `x`",
|
||||
"Arabic": "Арапски",
|
||||
@ -369,5 +359,161 @@
|
||||
"Hebrew": "Хебрејски",
|
||||
"Korean": "Корејски",
|
||||
"Kurdish": "Курдски",
|
||||
"Malay": "Малајски"
|
||||
"Malay": "Малајски",
|
||||
"search_filters_title": "Филтери",
|
||||
"Korean (auto-generated)": "Корејски (аутоматски генерисано)",
|
||||
"search_filters_features_option_three_sixty": "360°",
|
||||
"preferences_quality_dash_option_worst": "Најгоре",
|
||||
"channel_tab_podcasts_label": "Подкасти",
|
||||
"preferences_save_player_pos_label": "Сачувај позицију репродукције: ",
|
||||
"Spanish (Mexico)": "Шпански (Мексико)",
|
||||
"generic_subscriptions_count_0": "{{count}} праћење",
|
||||
"generic_subscriptions_count_1": "{{count}} праћења",
|
||||
"generic_subscriptions_count_2": "{{count}} праћења",
|
||||
"search_filters_apply_button": "Примени изабране филтере",
|
||||
"Download is disabled": "Преузимање је онемогућено",
|
||||
"comments_points_count_0": "{{count}} поен",
|
||||
"comments_points_count_1": "{{count}} поена",
|
||||
"comments_points_count_2": "{{count}} поена",
|
||||
"preferences_quality_dash_option_2160p": "2160p",
|
||||
"German (auto-generated)": "Немачки (аутоматски генерисано)",
|
||||
"Japanese (auto-generated)": "Јапански (аутоматски генерисано)",
|
||||
"preferences_quality_option_medium": "Средње",
|
||||
"search_message_change_filters_or_query": "Покушајте да проширите упит за претрагу и/или промените филтере.",
|
||||
"crash_page_before_reporting": "Пре него што пријавите грешку, уверите се да сте:",
|
||||
"preferences_quality_dash_option_best": "Најбоље",
|
||||
"Channel Sponsor": "Спонзор канала",
|
||||
"generic_videos_count_0": "{{count}} видео снимак",
|
||||
"generic_videos_count_1": "{{count}} видео снимка",
|
||||
"generic_videos_count_2": "{{count}} видео снимака",
|
||||
"videoinfo_started_streaming_x_ago": "Започето стримовање пре `x`",
|
||||
"videoinfo_youTube_embed_link": "Уграђено",
|
||||
"channel_tab_streams_label": "Стримови уживо",
|
||||
"playlist_button_add_items": "Додај видео снимке",
|
||||
"generic_count_minutes_0": "{{count}} минут",
|
||||
"generic_count_minutes_1": "{{count}} минута",
|
||||
"generic_count_minutes_2": "{{count}} минута",
|
||||
"preferences_quality_dash_option_720p": "720p",
|
||||
"preferences_watch_history_label": "Омогући историју гледања: ",
|
||||
"user_saved_playlists": "Сачуваних плејлиста: `x`",
|
||||
"Spanish (Spain)": "Шпански (Шпанија)",
|
||||
"invidious": "Invidious",
|
||||
"crash_page_refresh": "покушали да <a href=\"`x`\">освежите страницу</a>",
|
||||
"Chinese (Hong Kong)": "Кинески (Хонг Конг)",
|
||||
"Artist: ": "Извођач: ",
|
||||
"generic_count_months_0": "{{count}} месец",
|
||||
"generic_count_months_1": "{{count}} месеца",
|
||||
"generic_count_months_2": "{{count}} месеци",
|
||||
"search_message_use_another_instance": "Такође, можете <a href=\"`x`\">претраживати на другој инстанци</a>.",
|
||||
"generic_subscribers_count_0": "{{count}} пратилац",
|
||||
"generic_subscribers_count_1": "{{count}} пратиоца",
|
||||
"generic_subscribers_count_2": "{{count}} пратилаца",
|
||||
"download_subtitles": "Титлови - `x` (.vtt)",
|
||||
"generic_button_save": "Сачувај",
|
||||
"crash_page_search_issue": "претражили <a href=\"`x`\">постојеће извештаје о проблемима на GitHub-у</a>",
|
||||
"generic_button_cancel": "Откажи",
|
||||
"none": "ниједно",
|
||||
"English (United States)": "Енглески (Сједињене Америчке Државе)",
|
||||
"subscriptions_unseen_notifs_count_0": "{{count}} невиђено обавештење",
|
||||
"subscriptions_unseen_notifs_count_1": "{{count}} невиђена обавештења",
|
||||
"subscriptions_unseen_notifs_count_2": "{{count}} невиђених обавештења",
|
||||
"Album: ": "Албум: ",
|
||||
"preferences_quality_option_dash": "DASH (адаптивни квалитет)",
|
||||
"preferences_quality_dash_option_1080p": "1080p",
|
||||
"Video unavailable": "Видео снимак недоступан",
|
||||
"tokens_count_0": "{{count}} токен",
|
||||
"tokens_count_1": "{{count}} токена",
|
||||
"tokens_count_2": "{{count}} токена",
|
||||
"Chinese (China)": "Кинески (Кина)",
|
||||
"Italian (auto-generated)": "Италијански (аутоматски генерисано)",
|
||||
"channel_tab_shorts_label": "Shorts",
|
||||
"preferences_quality_dash_option_1440p": "1440p",
|
||||
"preferences_quality_dash_option_360p": "360p",
|
||||
"search_message_no_results": "Нису пронађени резултати.",
|
||||
"channel_tab_releases_label": "Издања",
|
||||
"preferences_quality_dash_option_144p": "144p",
|
||||
"Interlingue": "Интерлингва",
|
||||
"Song: ": "Песма: ",
|
||||
"generic_channels_count_0": "{{count}} канал",
|
||||
"generic_channels_count_1": "{{count}} канала",
|
||||
"generic_channels_count_2": "{{count}} канала",
|
||||
"Chinese (Taiwan)": "Кинески (Тајван)",
|
||||
"Turkish (auto-generated)": "Турски (аутоматски генерисано)",
|
||||
"Indonesian (auto-generated)": "Индонезијски (аутоматски генерисано)",
|
||||
"Portuguese (auto-generated)": "Португалски (аутоматски генерисано)",
|
||||
"generic_count_years_0": "{{count}} година",
|
||||
"generic_count_years_1": "{{count}} године",
|
||||
"generic_count_years_2": "{{count}} година",
|
||||
"videoinfo_invidious_embed_link": "Уграђени линк",
|
||||
"Popular enabled: ": "Популарно омогућено: ",
|
||||
"Spanish (auto-generated)": "Шпански (аутоматски генерисано)",
|
||||
"preferences_quality_option_small": "Мало",
|
||||
"English (United Kingdom)": "Енглески (Уједињено Краљевство)",
|
||||
"channel_tab_playlists_label": "Плејлисте",
|
||||
"generic_button_edit": "Измени",
|
||||
"generic_playlists_count_0": "{{count}} плејлиста",
|
||||
"generic_playlists_count_1": "{{count}} плејлисте",
|
||||
"generic_playlists_count_2": "{{count}} плејлиста",
|
||||
"preferences_quality_option_hd720": "HD720",
|
||||
"search_filters_features_option_purchased": "Купљено",
|
||||
"search_filters_date_option_none": "Било који датум",
|
||||
"preferences_quality_dash_option_auto": "Аутоматски",
|
||||
"Cantonese (Hong Kong)": "Кантонски (Хонг Конг)",
|
||||
"crash_page_report_issue": "Ако ништа од горенаведеног није помогло, <a href=\"`x`\">отворите нови извештај о проблему на GitHub-у</a> (по могућности на енглеском) и укључите следећи текст у своју поруку (НЕ преводите тај текст):",
|
||||
"crash_page_switch_instance": "покушали да <a href=\"`x`\">користите другу инстанцу</a>",
|
||||
"generic_count_weeks_0": "{{count}} недеља",
|
||||
"generic_count_weeks_1": "{{count}} недеље",
|
||||
"generic_count_weeks_2": "{{count}} недеља",
|
||||
"videoinfo_watch_on_youTube": "Гледај на YouTube-у",
|
||||
"Music in this video": "Музика у овом видео снимку",
|
||||
"generic_button_rss": "RSS",
|
||||
"preferences_quality_dash_option_4320p": "4320p",
|
||||
"generic_count_hours_0": "{{count}} сат",
|
||||
"generic_count_hours_1": "{{count}} сата",
|
||||
"generic_count_hours_2": "{{count}} сати",
|
||||
"French (auto-generated)": "Француски (аутоматски генерисано)",
|
||||
"crash_page_read_the_faq": "прочитали <a href=\"`x`\">Често Постављана Питања (ЧПП)</a>",
|
||||
"user_created_playlists": "Направљених плејлиста: `x`",
|
||||
"channel_tab_channels_label": "Канали",
|
||||
"search_filters_type_option_all": "Било која врста",
|
||||
"Russian (auto-generated)": "Руски (аутоматски генерисано)",
|
||||
"preferences_quality_dash_option_480p": "480p",
|
||||
"comments_view_x_replies_0": "Погледај {{count}} одговор",
|
||||
"comments_view_x_replies_1": "Погледај {{count}} одговора",
|
||||
"comments_view_x_replies_2": "Погледај {{count}} одговора",
|
||||
"Portuguese (Brazil)": "Португалски (Бразил)",
|
||||
"search_filters_features_option_vr180": "VR180",
|
||||
"error_video_not_in_playlist": "Тражени видео снимак не постоји на овој плејлисти. <a href=\"`x`\">Кликните овде за почетну страницу плејлисте.</a>",
|
||||
"Dutch (auto-generated)": "Холандски (аутоматски генерисано)",
|
||||
"generic_count_days_0": "{{count}} дан",
|
||||
"generic_count_days_1": "{{count}} дана",
|
||||
"generic_count_days_2": "{{count}} дана",
|
||||
"Vietnamese (auto-generated)": "Вијетнамски (аутоматски генерисано)",
|
||||
"search_filters_duration_option_none": "Било које трајање",
|
||||
"preferences_quality_dash_option_240p": "240p",
|
||||
"Chinese": "Кинески",
|
||||
"generic_button_delete": "Избриши",
|
||||
"Import YouTube playlist (.csv)": "Увези YouTube плејлисту (.csv)",
|
||||
"Standard YouTube license": "Стандардна YouTube лиценца",
|
||||
"search_filters_duration_option_medium": "Средње (4 - 20 минута)",
|
||||
"generic_count_seconds_0": "{{count}} секунда",
|
||||
"generic_count_seconds_1": "{{count}} секунде",
|
||||
"generic_count_seconds_2": "{{count}} секунди",
|
||||
"search_filters_date_label": "Датум отпремања",
|
||||
"crash_page_you_found_a_bug": "Изгледа да сте пронашли грешку у Invidious-у!",
|
||||
"generic_views_count_0": "{{count}} преглед",
|
||||
"generic_views_count_1": "{{count}} прегледа",
|
||||
"generic_views_count_2": "{{count}} прегледа",
|
||||
"Import YouTube watch history (.json)": "Увези YouTube историју гледањa (.json)",
|
||||
"toggle_theme": "Укључи тему",
|
||||
"Add to playlist": "Додај на плејлисту",
|
||||
"Answer": "Одговор",
|
||||
"Search for videos": "Претражите видео снимке",
|
||||
"carousel_go_to": "Иди на слајд `x`",
|
||||
"Add to playlist: ": "Додајте на плејлисту: ",
|
||||
"carousel_skip": "Прескочи карусел",
|
||||
"The Popular feed has been disabled by the administrator.": "Администратор је онемогућио фид „Популарно“.",
|
||||
"carousel_slide": "Слајд {{current}} од {{total}}",
|
||||
"preferences_preload_label": "Унапред учитај податке о видео снимку: ",
|
||||
"Filipino (auto-generated)": "Филипински (аутоматски генерисано)"
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user