Compare commits
43
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f9948bf3c3 | ||
|
|
94c3e653f7 | ||
|
|
56ffb52ce5 | ||
|
|
f0a2d2e79a | ||
|
|
182e77a68d | ||
|
|
98ccbfe99d | ||
|
|
53bfc641b4 | ||
|
|
1aabf2eefc | ||
|
|
0d54dfb660 | ||
|
|
8093f16f16 | ||
|
|
bac6ac3362 | ||
|
|
2f914d9f60 | ||
|
|
d3293d22ab | ||
|
|
4de3fdae81 | ||
|
|
9518c73415 | ||
|
|
05be539411 | ||
|
|
f12c4e3109 | ||
|
|
004ef28a15 | ||
|
|
afa9b25aff | ||
|
|
303ce7c816 | ||
|
|
e7cbd07b80 | ||
|
|
923ae5fc96 | ||
|
|
51a3b3c68e | ||
|
|
ef1582c67c | ||
|
|
2091e39b90 | ||
|
|
ab02e72f1f | ||
|
|
d498d6a407 | ||
|
|
6dc6e9538c | ||
|
|
3b0cbefe85 | ||
|
|
38e152fc52 | ||
|
|
0f111b43be | ||
|
|
ffbeab0b14 | ||
|
|
8860b62eec | ||
|
|
93433d8714 | ||
|
|
211a0c6f93 | ||
|
|
aadfc71200 | ||
|
|
1532adedb1 | ||
|
|
16ce656201 | ||
|
|
a398723bdb | ||
|
|
f7a4788e73 | ||
|
|
15425c7b01 | ||
|
|
96c2a505a7 | ||
|
|
b58e3fc2d4 |
No files matched your search
+2
-2
@@ -8,7 +8,7 @@ project(audiotube)
|
||||
|
||||
include(FeatureSummary)
|
||||
|
||||
set(PROJECT_VERSION "22.04")
|
||||
set(PROJECT_VERSION "22.06")
|
||||
set(QT5_MIN_VERSION 5.15)
|
||||
set(KF5_MIN_VERSION 5.81)
|
||||
|
||||
@@ -33,7 +33,7 @@ ecm_setup_version(${PROJECT_VERSION}
|
||||
|
||||
kde_enable_exceptions()
|
||||
|
||||
find_package(Qt5 ${QT5_MIN_VERSION} REQUIRED COMPONENTS Core Gui Qml QuickControls2 Svg Sql)
|
||||
find_package(Qt5 ${QT5_MIN_VERSION} REQUIRED COMPONENTS Core Gui Qml QuickControls2 Svg Sql DBus)
|
||||
find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS Kirigami2 I18n CoreAddons Crash)
|
||||
find_package(pybind11 REQUIRED)
|
||||
find_package(Ytdlp REQUIRED RUNTIME)
|
||||
|
||||
+12
-12
@@ -5,16 +5,6 @@
|
||||
"pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"yt-dlp\" --no-build-isolation"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/9a/bf/1bc7e3096ddc2c398b3d04176530a9c02efe08546d9730c9eef0b07a0a43/yt_dlp-2022.5.18-py2.py3-none-any.whl",
|
||||
"sha256": "deec1009442312c1e2ee5298966842194d0e950b433f0d4fc844ef464b9c32a7"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/11/dd/e015f3780f42dd9af62cf0107b44ea1298926627ecd70c17b0e484e95bcd/certifi-2022.5.18.1-py3-none-any.whl",
|
||||
"sha256": "f1d53542ee8cbedbe2118b5686372fb33c297fcd6379b050cca0ef13a597382a"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/f8/a3/622d9acbfb9a71144b5d7609906bc648c62e3ca5fdbb1c8cca222949d82c/websockets-10.3.tar.gz",
|
||||
@@ -32,8 +22,18 @@
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/24/40/e249ac3845a2333ce50f1bb02299ffb766babdfe80ca9d31e0158ad06afd/pycryptodomex-3.14.1.tar.gz",
|
||||
"sha256": "2ce76ed0081fd6ac8c74edc75b9d14eca2064173af79843c24fa62573263c1f2"
|
||||
"url": "https://files.pythonhosted.org/packages/e9/06/d3d367b7af6305b16f0d28ae2aaeb86154fa91f144f036c2d5002a5a202b/certifi-2022.6.15-py3-none-any.whl",
|
||||
"sha256": "fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/1f/13/b1f7b4e44b11584a5f077af87895961b57911217a629efb8d3a9efd2a491/yt_dlp-2022.7.18-py2.py3-none-any.whl",
|
||||
"sha256": "d7d1f81d230756f094b4d9ee59b37b2c13b2e63ff5fb72cda53625edb072cdae"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/52/0d/6cc95a83f6961a1ca041798d222240890af79b381e97eda3b9b538dba16f/pycryptodomex-3.15.0.tar.gz",
|
||||
"sha256": "7341f1bb2dadb0d1a0047f34c3a58208a92423cdbd3244d998e4b28df5eac0ed"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -7,23 +7,18 @@
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/ec/03/062e6444ce4baf1eac17a6a0ebfe36bb1ad05e1df0e20b110de59c278498/urllib3-1.26.9-py2.py3-none-any.whl",
|
||||
"sha256": "44ece4d53fb1706f667c9bd1c648f5469a2ec925fcf3a776667042d645472c14"
|
||||
"url": "https://files.pythonhosted.org/packages/94/69/64b11e8c2fb21f08634468caef885112e682b0ebe2908e74d3616eb1c113/charset_normalizer-2.1.0-py3-none-any.whl",
|
||||
"sha256": "5189b6f22b01957427f35b6a08d9a0bc45b46d3788ef5a92e978433c7a35f8a5"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/11/dd/e015f3780f42dd9af62cf0107b44ea1298926627ecd70c17b0e484e95bcd/certifi-2022.5.18.1-py3-none-any.whl",
|
||||
"sha256": "f1d53542ee8cbedbe2118b5686372fb33c297fcd6379b050cca0ef13a597382a"
|
||||
"url": "https://files.pythonhosted.org/packages/68/47/93d3d28e97c7577f563903907912f4b3804054e4877a5ba6651f7182c53b/urllib3-1.26.10-py2.py3-none-any.whl",
|
||||
"sha256": "8298d6d56d39be0e3bc13c1c97d133f9b45d797169a0e11cdd0e0489d786f7ec"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/06/b3/24afc8868eba069a7f03650ac750a778862dc34941a4bebeb58706715726/charset_normalizer-2.0.12-py3-none-any.whl",
|
||||
"sha256": "6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/2d/61/08076519c80041bc0ffa1a8af0cbd3bf3e2b62af10435d269a9d0f40564d/requests-2.27.1-py2.py3-none-any.whl",
|
||||
"sha256": "f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d"
|
||||
"url": "https://files.pythonhosted.org/packages/ca/91/6d9b8ccacd0412c08820f72cebaa4f0c0441b5cda699c90f618b6f8a1b42/requests-2.28.1-py3-none-any.whl",
|
||||
"sha256": "8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
@@ -34,6 +29,11 @@
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/04/a2/d918dcd22354d8958fe113e1a3630137e0fc8b44859ade3063982eacd2a4/idna-3.3-py3-none-any.whl",
|
||||
"sha256": "84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/e9/06/d3d367b7af6305b16f0d28ae2aaeb86154fa91f144f036c2d5002a5a202b/certifi-2022.6.15-py3-none-any.whl",
|
||||
"sha256": "fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -92,6 +92,16 @@ SPDX-License-Identifier: CC0-1.0
|
||||
<content_rating type="oars-1.0"/>
|
||||
<url type="homepage">https://apps.kde.org/en/audiotube</url>
|
||||
<releases>
|
||||
<release version="22.06" date="2022-06-24">
|
||||
<url>https://www.plasma-mobile.org/2022/06/28/plasma-mobile-gear-22-06/</url>
|
||||
<description>
|
||||
<ul>
|
||||
<li>Add library page which shows favourites and most played songs</li>
|
||||
<li>Improve layout of the search popup</li>
|
||||
<li>General performance improvements including startup</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="22.04" date="2022-04-26">
|
||||
<url>https://www.plasma-mobile.org/2022/04/26/plasma-mobile-gear-22-04/</url>
|
||||
<description>
|
||||
@@ -119,11 +129,14 @@ SPDX-License-Identifier: CC0-1.0
|
||||
<launchable type="desktop-id">org.kde.audiotube.desktop</launchable>
|
||||
<screenshots>
|
||||
<screenshot>
|
||||
<image>https://cdn.kde.org/screenshots/audiotube/desktop.png</image>
|
||||
<image>https://cdn.kde.org/screenshots/audiotube/library.png</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<image>https://cdn.kde.org/screenshots/audiotube/mobile_playlist.png</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<image>https://cdn.kde.org/screenshots/audiotube/desktop.png</image>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
<recommends>
|
||||
<control>pointing</control>
|
||||
|
||||
+58
-28
@@ -6,10 +6,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-01-21 22:52+0400\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-28 23:09+0400\n"
|
||||
"Last-Translator: Zayed Al-Saidi <[email protected]>\n"
|
||||
"Language-Team: ar\n"
|
||||
"Language-Team: Arabic <[email protected]>\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -33,14 +33,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "شغّل"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "اخلط"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "شغل التالي"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "أضف إلى قائمة التّشغيل"
|
||||
@@ -82,47 +88,76 @@ msgstr "حسنًا"
|
||||
msgid "Cancel"
|
||||
msgstr "ألغِ"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "المفضلة"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "أظهر الكلّ"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "الأغاني المفضّلة"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "الأكثر تشغيلا"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "الأغاني المشغلة"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "عُد"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "ابحث"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "تيوب الصوتي"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "لا يوجد وسائط تعمل"
|
||||
msgstr "المشغل الآن"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "صُفّ"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "أزل المسار"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "لا يوجد وسائط تعمل"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "اخلط"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "قائمة غير معروفة من الأغاني"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "لا يوجد أي أغنية بعد"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -154,11 +189,6 @@ msgstr "راديو"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "اعثر على موسيقى على موسيقى يوتيوب"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "ابحث"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "امسح"
|
||||
|
||||
|
||||
+59
-29
@@ -6,16 +6,16 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-04-22 18:44+0400\n"
|
||||
"Last-Translator: Kheyyam Gojayev <[email protected]>\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-06-19 12:16+0400\n"
|
||||
"Last-Translator: Kheyyam <[email protected]>\n"
|
||||
"Language-Team: Azerbaijani <[email protected]>\n"
|
||||
"Language: az\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 21.12.3\n"
|
||||
"X-Generator: Lokalize 22.04.2\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Başladın"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Qarışıq"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Sonrakını oxudun"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Mahnı siyahısına əlavə edin"
|
||||
@@ -83,47 +89,76 @@ msgstr "OLDU"
|
||||
msgid "Cancel"
|
||||
msgstr "İmtina"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Süçilmişlər"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Hamısı göstərilsin"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Seçilmiş mahnılar"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Daha çox dinlənilən"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Oxudulan mahnılar"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Geriyə"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Axtarın"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Media faylı oynadılmır"
|
||||
msgstr "İndi səslənir"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Növbə"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Mahnını silin"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Media faylı oynadılmır"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Qarışıq"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Naməlum mahnı siyahısı"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Hələlik burada mahnılar yoxdur"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -155,11 +190,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Musiqini YouTube Musiqi-də tapın"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Axtarın"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Təmizləyin"
|
||||
|
||||
|
||||
+52
-21
@@ -9,8 +9,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-24 08:45+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 09:09+0200\n"
|
||||
"Last-Translator: Josep M. Ferrer <[email protected]>\n"
|
||||
"Language-Team: Catalan <[email protected]>\n"
|
||||
"Language: ca\n"
|
||||
@@ -35,14 +35,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Reprodueix"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Barreja"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Reprodueix el següent"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Afegeix a la llista de reproducció"
|
||||
@@ -86,46 +92,76 @@ msgstr "D'acord"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancel·la"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Preferides"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Mostra-ho tot"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Cançons preferides"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Les més reproduïdes"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Cançons reproduïdes"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Enrere"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Ara s'està reproduint"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "Cua"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Elimina la pista"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "No s'està reproduint cap suport"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Barreja"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Llista desconeguda de cançons"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Encara no hi ha cap cançó"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -156,8 +192,3 @@ msgstr "Ràdio"
|
||||
#, kde-format
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Cerca a la Música de Youtube"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
+64
-42
@@ -1,23 +1,24 @@
|
||||
# Translation of audiotube.po to Catalan (Valencian)
|
||||
# Copyright (C) 2021 This_file_is_part_of_KDE
|
||||
# Copyright (C) 2021-2022 This_file_is_part_of_KDE
|
||||
# This file is distributed under the license LGPL version 2.1 or
|
||||
# version 3 or later versions approved by the membership of KDE e.V.
|
||||
#
|
||||
# Antoni Bella Pérez <[email protected]>, 2021.
|
||||
# Josep M. Ferrer <[email protected]>, 2022.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2021-12-05 16:03+0100\n"
|
||||
"Last-Translator: Antoni Bella Pérez <antonibella5@yahoo.com>\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 09:09+0200\n"
|
||||
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
|
||||
"Language-Team: Catalan <[email protected]>\n"
|
||||
"Language: ca@valencia\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 21.11.90\n"
|
||||
"X-Generator: Lokalize 20.12.0\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -32,16 +33,22 @@ msgstr "[email protected]"
|
||||
#: contents/ui/AlbumPage.qml:19 contents/ui/PlaylistPage.qml:19
|
||||
#, kde-format
|
||||
msgid "Play"
|
||||
msgstr "Reprodueix"
|
||||
msgstr "Reproduïx"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Barreja"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Reprodueix el següent"
|
||||
msgstr "Reproduïx el següent"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Afig a la llista de reproducció"
|
||||
@@ -85,47 +92,76 @@ msgstr "D'acord"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancel·la"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Preferides"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Mostra-ho tot"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Cançons preferides"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Les més reproduïdes"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Cançons reproduïdes"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Enrere"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Busca"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "No s'està reproduint cap suport"
|
||||
msgstr "Ara s'està reproduint"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Cua"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Elimina la pista"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "No s'està reproduint cap suport"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Barreja"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Llista desconeguda de cançons"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Encara no hi ha cap cançó"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -145,7 +181,7 @@ msgstr "Desconeguda"
|
||||
#: contents/ui/SearchPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Play next"
|
||||
msgstr "Reprodueix el següent"
|
||||
msgstr "Reproduïx el següent"
|
||||
|
||||
#: contents/ui/SearchPage.qml:129
|
||||
#, kde-format
|
||||
@@ -156,17 +192,3 @@ msgstr "Ràdio"
|
||||
#, kde-format
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Busca a la Música de Youtube"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Busca"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Neteja"
|
||||
|
||||
#~ msgid "Pause"
|
||||
#~ msgstr "Pausa"
|
||||
|
||||
#~ msgid "Expand"
|
||||
#~ msgstr "Expandeix"
|
||||
+58
-37
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-01-11 17:36+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-06-28 13:58+0200\n"
|
||||
"Last-Translator: Vit Pelcak <[email protected]>\n"
|
||||
"Language-Team: Czech <[email protected]>\n"
|
||||
"Language: cs\n"
|
||||
@@ -15,7 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||
"X-Generator: Lokalize 21.12.0\n"
|
||||
"X-Generator: Lokalize 22.04.2\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Přehrát"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Zamíchat"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Přehrát následující"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Přidat do seznamu skladeb"
|
||||
@@ -83,47 +89,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Zrušit"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Oblíbené"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Zobrazit vše"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Oblíbené skladby"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Nejčastěji hrané"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Přehrané skladby"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Zpět"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Hledat"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Nepřehrává se žádné médium"
|
||||
msgstr "Nyní přehrávám"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Fronta"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Odstranit skladbu"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Nepřehrává se žádné médium"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Zamíchat"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Neznámý seznam skladeb"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Zatím zde nejsou žádné skladby"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -154,17 +189,3 @@ msgstr "Rádio"
|
||||
#, kde-format
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Najít hudbu na Hudba YouTube"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Hledat"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Vyprázdnit"
|
||||
|
||||
#~ msgid "Pause"
|
||||
#~ msgstr "Pozastavit"
|
||||
|
||||
#~ msgid "Expand"
|
||||
#~ msgstr "Rozvinout"
|
||||
+59
-29
@@ -7,16 +7,16 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-02-20 10:37+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-07-02 12:04+0200\n"
|
||||
"Last-Translator: Frederik Schwarzer <[email protected]>\n"
|
||||
"Language-Team: German <kde-i18n-doc@kde.org>\n"
|
||||
"Language-Team: German <kde-i18n-de@kde.org>\n"
|
||||
"Language: de\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Lokalize 21.08.0\n"
|
||||
"X-Generator: Lokalize 22.04.1\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -33,14 +33,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Wiedergabe"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Zufällig"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Nächste Wiedergabe"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Zur Wiedergabeliste hinzufügen"
|
||||
@@ -84,47 +90,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Abbrechen"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Favoriten"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Alle anzeigen"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Lieblingsstücke"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Am meisten abgespielt"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Abgespielte Stücke"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Zurück"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Suchen"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Es werden keine Medien wiedergegeben"
|
||||
msgstr "Aktueller Titel"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Warteschlange"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Stück entfernen"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Es werden keine Medien wiedergegeben"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Zufällig"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Unbekannte Liste von Liedern"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Bisher keine Lieder hier"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -156,11 +191,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Musik auf YouTube suchen"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Suchen"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Löschen"
|
||||
|
||||
|
||||
+51
-20
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-01-01 15:21+0000\n"
|
||||
"Last-Translator: Steve Allewell <[email protected]>\n"
|
||||
"Language-Team: British English <[email protected]>\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Play"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Shuffle"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Play Next"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Add to Playlist"
|
||||
@@ -83,47 +89,77 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancel"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Search"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
msgid "Now Playing"
|
||||
msgstr "No media playing"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Remove Track"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "No media playing"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Shuffle"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -155,11 +191,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Find music on YouTube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Search"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Clear"
|
||||
|
||||
|
||||
+54
-23
@@ -8,8 +8,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-25 00:18+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-27 12:34+0200\n"
|
||||
"Last-Translator: Eloy Cuadra <[email protected]>\n"
|
||||
"Language-Team: Spanish <[email protected]>\n"
|
||||
"Language: es\n"
|
||||
@@ -34,14 +34,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Reproducir"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Desordenar"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Reproducir siguiente"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Añadir a la lista de reproducción"
|
||||
@@ -85,46 +91,76 @@ msgstr "Aceptar"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Favoritos"
|
||||
msgstr "Favoritas"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Mostrar todas"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Canciones favoritas"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Más reproducidos"
|
||||
msgstr "Más reproducidas"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Canciones reproducidas"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Volver"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Buscar"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Reproduciendo"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "Cola"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Eliminar pista"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Ningún medio en reproducción"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Desordenar"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Lista de canciones desconocida"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Todavía no contiene canciones"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -156,11 +192,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Encuentre música en YouTube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Buscar"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Borrar todo"
|
||||
|
||||
|
||||
+58
-28
@@ -9,8 +9,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-02-21 18:58+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-07-18 22:37+0200\n"
|
||||
"Last-Translator: Iñigo Salvador Azurmendi <[email protected]>\n"
|
||||
"Language-Team: Basque <[email protected]>\n"
|
||||
"Language: eu\n"
|
||||
@@ -18,7 +18,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 21.12.2\n"
|
||||
"X-Generator: Lokalize 22.04.3\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -35,14 +35,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Jo"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Nahastu"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Jo hurrengoa"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Gehitu jotze-zerrendara"
|
||||
@@ -86,47 +92,76 @@ msgstr "Ados"
|
||||
msgid "Cancel"
|
||||
msgstr "Utzi"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Gogokoak"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Erakutsi denak"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Gogoko abestiak"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Gehien jotakoa"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Jotako abestiak"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Atzera"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Bilatu"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Ez da euskarririk jotzen ari"
|
||||
msgstr "Orain jotzen"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Ilara"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Kendu pista"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Ez da euskarririk jotzen ari"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Nahastu"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Abesti zerrenda ezezaguna"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Hemen oraindik ez dago abestirik"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -158,11 +193,6 @@ msgstr "Irratia"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Aurkitu musika «Youtube Music»en"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Bilatu"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Garbitu"
|
||||
|
||||
|
||||
+58
-28
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-01-11 22:47+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-06-13 19:11+0300\n"
|
||||
"Last-Translator: Tommi Nieminen <[email protected]>\n"
|
||||
"Language-Team: Finnish <[email protected]>\n"
|
||||
"Language: fi\n"
|
||||
@@ -15,7 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 20.04.2\n"
|
||||
"X-Generator: Lokalize 21.12.3\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Toista"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Sekoita"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Toista seuraava"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Lisää soittolistaan"
|
||||
@@ -82,47 +88,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Peru"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Suosikit"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Näytä kaikki"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Suosikkikappaleet"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Soitetuimmat"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Soitetut kappaleet"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Takaisin"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Etsi"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Mitään ei toisteta"
|
||||
msgstr "Nyt soi"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Jono"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Poista raita"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Mitään ei toisteta"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Sekoita"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Tuntematon kappaleluettelo"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Ei vielä kappaleita"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -154,11 +189,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Etsi musiikkia Youtube Musicista"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Etsi"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Tyhjennä"
|
||||
|
||||
|
||||
+55
-25
@@ -3,8 +3,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-23 20:05+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-06-05 18:56+0200\n"
|
||||
"Last-Translator: Xavier Besnard <[email protected]>\n"
|
||||
"Language-Team: French <[email protected]>\n"
|
||||
"Language: fr\n"
|
||||
@@ -29,14 +29,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Lire"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Mélanger"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Lire le suivant"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Ajouter à la liste de lecture"
|
||||
@@ -80,47 +86,76 @@ msgstr "Ok"
|
||||
msgid "Cancel"
|
||||
msgstr "Annuler"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Favoris"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Tout afficher"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Titres favoris"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Les plus lus"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Titres lus"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "En arrière"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Rechercher"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Aucun média en lecture"
|
||||
msgstr "En cours de lecture"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Mettre en file d'attente"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Supprimer une piste"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Aucun média en lecture"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Mélanger"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Liste inconnue de titres"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Aucun titre ici encore"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -152,11 +187,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Rechercher de la musique sur « YouTube Music »"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Rechercher"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Effacer"
|
||||
|
||||
|
||||
+51
-20
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2021-09-17 20:09+0530\n"
|
||||
"Last-Translator: Raghavendra Kamath <[email protected]>\n"
|
||||
"Language-Team: kde-hindi\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "बजाएँ"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "फेंटें"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "अगला बजाएँ"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "गीत-सूची में जोड़ें"
|
||||
@@ -82,47 +88,77 @@ msgstr ""
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "खोजें"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "ओडियो-ट्यूब"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
msgid "Now Playing"
|
||||
msgstr "कोई मीडिया नहीं बजा रहा है"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "गाना हटाएँ"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "कोई मीडिया नहीं बजा रहा है"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "फेंटें"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -154,11 +190,6 @@ msgstr "रेडियो"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "यूट्यूब संगीत पर संगीत ढूंढें"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "खोजें"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "साफ करें"
|
||||
|
||||
|
||||
+59
-29
@@ -1,13 +1,13 @@
|
||||
# Copyright (C) YEAR This file is copyright:
|
||||
# This file is distributed under the same license as the audiotube package.
|
||||
# Vincenzo Reale <[email protected]>, 2021.
|
||||
# Vincenzo Reale <[email protected]>, 2021, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2021-12-06 02:46+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 14:13+0200\n"
|
||||
"Last-Translator: Vincenzo Reale <[email protected]>\n"
|
||||
"Language-Team: Italian <[email protected]>\n"
|
||||
"Language: it\n"
|
||||
@@ -15,7 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 21.08.3\n"
|
||||
"X-Generator: Lokalize 22.04.1\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Riproduci"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Mescola"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Riproduci successivo"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Aggiungi alla scaletta"
|
||||
@@ -83,47 +89,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Annulla"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Preferiti"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Mostra tutto"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Brani preferiti"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Più riprodotti"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Brani riprodotti"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Indietro"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Nessun supporto in riproduzione"
|
||||
msgstr "In riproduzione"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Coda"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Rimuovi traccia"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Nessun supporto in riproduzione"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Mescola"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Elenco di brani sconosciuto"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Non c'è ancora alcun brano"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -155,11 +190,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Trova musica su Youtube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Pulisci"
|
||||
|
||||
|
||||
+59
-29
@@ -1,13 +1,13 @@
|
||||
# Copyright (C) YEAR This file is copyright:
|
||||
# This file is distributed under the same license as the audiotube package.
|
||||
# Shinjo Park <[email protected]>, 2021.
|
||||
# Shinjo Park <[email protected]>, 2021, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2021-12-08 00:45+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-07-13 15:34+0200\n"
|
||||
"Last-Translator: Shinjo Park <[email protected]>\n"
|
||||
"Language-Team: Korean <[email protected]>\n"
|
||||
"Language: ko\n"
|
||||
@@ -15,7 +15,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Lokalize 21.08.1\n"
|
||||
"X-Generator: Lokalize 21.12.3\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "재생"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "무순서 재생"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "다음 재생"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "재생 목록에 추가"
|
||||
@@ -81,47 +87,76 @@ msgstr "확인"
|
||||
msgid "Cancel"
|
||||
msgstr "취소"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "책갈피"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "모두 표시"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "책갈피에 등록된 노래"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "가장 많이 재생됨"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "재생한 노래"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "뒤로"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "검색"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "재생 중인 미디어 없음"
|
||||
msgstr "지금 재생 중"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "대기열에 추가"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "트랙 삭제"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "재생 중인 미디어 없음"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "무순서 재생"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "알 수 없는 노래 목록"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "목록에 등록된 곡 없음"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -153,11 +188,6 @@ msgstr "라디오"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "YouTube Music에서 음악 찾기"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "검색"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "지우기"
|
||||
|
||||
|
||||
+52
-21
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-24 10:48+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 13:17+0200\n"
|
||||
"Last-Translator: Freek de Kruijf <[email protected]>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: nl\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Afspelen"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Willekeurig afspelen"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Volgende afspelen"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Aan afspeellijst toevoegen"
|
||||
@@ -83,46 +89,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Annuleren"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Favorieten"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Alles tonen"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Favoriete songs"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Meest afgespeeld"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Afgespeelde songs"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Terug"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Zoeken"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Speelt nu"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "Wachtrij"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Track verwijderen"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Er speelt geen medium"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Willekeurig afspelen"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Onbekende lijst met songs"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Er zijn hier nog geen songs"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -154,11 +190,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Muziek zoeken op YouTube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Zoeken"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Wissen"
|
||||
|
||||
|
||||
+51
-20
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-01-01 09:11-0800\n"
|
||||
"Last-Translator: A S Alam <[email protected]>\n"
|
||||
"Language-Team: Punjabi <[email protected]>\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "alam yellow @ gmail.com"
|
||||
msgid "Play"
|
||||
msgstr "ਚਲਾਓ"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "ਰਲਵੇਂ"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "ਅਗਲਾ ਚਲਾਓ"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "ਪਲੇਅਲਿਸਟ ਵਿੱਚ ਜੋੜੋ"
|
||||
@@ -81,47 +87,77 @@ msgstr "ਠੀਕ ਹੈ"
|
||||
msgid "Cancel"
|
||||
msgstr "ਰੱਦ ਕਰੋ"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "ਖੋਜੋ"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "ਆਡੀਓ-ਟਿਊਬ"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
msgid "Now Playing"
|
||||
msgstr "ਕੋਈ ਮੀਡੀਆ ਨਹੀਂ ਚੱਲਦਾ"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "ਟਰੈਕ ਨੂੰ ਹਟਾਓ"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "ਕੋਈ ਮੀਡੀਆ ਨਹੀਂ ਚੱਲਦਾ"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "ਰਲਵੇਂ"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -153,11 +189,6 @@ msgstr "ਰੇਡੀਓ"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "ਯੂਟਿਊਬ ਸੰਗੀਤ ਉੱਤੇ ਸੰਗੀਤ ਲੱਭੋ"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "ਖੋਜੋ"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "ਮਿਟਾਓ"
|
||||
|
||||
|
||||
+58
-28
@@ -1,14 +1,14 @@
|
||||
# Copyright (C) YEAR This file is copyright:
|
||||
# This file is distributed under the same license as the audiotube package.
|
||||
#
|
||||
# Łukasz Wojniłowicz <[email protected]>, 2021.
|
||||
# Łukasz Wojniłowicz <[email protected]>, 2021, 2022.
|
||||
# Ignacy Kajdan <[email protected]>, 2021.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2021-12-30 12:38+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-06-26 20:24+0200\n"
|
||||
"Last-Translator: Łukasz Wojniłowicz <[email protected]>\n"
|
||||
"Language-Team: Polish <[email protected]>\n"
|
||||
"Language: pl\n"
|
||||
@@ -34,14 +34,20 @@ msgstr "[email protected], [email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Odtwórz"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Wymieszaj"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Odtwórz następny"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Dodaj do listy odtwarzania"
|
||||
@@ -85,47 +91,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Anuluj"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Ulubione"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Pokaż wszystkie"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Ulubione utwory"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Najczęściej odtwarzane"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Odtwarzane utwory"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Wstecz"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Szukaj"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Nic nie jest odtwarzane"
|
||||
msgstr "Teraz odtwarzany"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Kolejka"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Usuń utwór"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Nic nie jest odtwarzane"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Wymieszaj"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Nieznana lista utworów"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Jeszcze nie ma tutaj utworów"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -157,11 +192,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Znajdź muzykę w serwisie YouTube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Szukaj"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Wyczyść"
|
||||
|
||||
|
||||
+57
-39
@@ -7,8 +7,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2021-09-04 18:29+0100\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-06-03 17:36+0100\n"
|
||||
"Last-Translator: José Nuno Coelho Pires <[email protected]>\n"
|
||||
"Language-Team: Portuguese <[email protected]>\n"
|
||||
"Language: pt\n"
|
||||
@@ -34,14 +34,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Reproduzir"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Baralhar"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Reproduzir o Seguinte"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Adicionar à Lista de Reprodução"
|
||||
@@ -85,47 +91,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Favoritos"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Mostrar Tudo"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Músicas Favoritas"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Mais Tocadas"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Músicas Tocadas"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Recuar"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Procurar"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Nada em reprodução"
|
||||
msgstr "Agora a Ouvir"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Fila"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Remover a Faixa"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Nada em reprodução"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Baralhar"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Lista de músicas desconhecida"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Ainda sem músicas aqui"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -156,20 +191,3 @@ msgstr "Rádio"
|
||||
#, kde-format
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Procurar música no YouTube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Procurar"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Limpar"
|
||||
|
||||
#~ msgid "Pause"
|
||||
#~ msgstr "Pausa"
|
||||
|
||||
#~ msgid "Expand"
|
||||
#~ msgstr "Expandir"
|
||||
|
||||
#~ msgid "Play only Audio"
|
||||
#~ msgstr "Reproduzir só o Áudio"
|
||||
+59
-29
@@ -1,14 +1,14 @@
|
||||
# Copyright (C) YEAR This file is copyright:
|
||||
# This file is distributed under the same license as the audiotube package.
|
||||
#
|
||||
# Luiz Fernando Ranghetti <[email protected]>, 2021.
|
||||
# Luiz Fernando Ranghetti <[email protected]>, 2021, 2022.
|
||||
# Thiago Masato Costa Sueto <[email protected]>, 2021.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2021-12-09 10:13-0300\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-07-13 14:59-0300\n"
|
||||
"Last-Translator: Luiz Fernando Ranghetti <[email protected]>\n"
|
||||
"Language-Team: Portuguese <[email protected]>\n"
|
||||
"Language: pt_BR\n"
|
||||
@@ -16,7 +16,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Generator: Lokalize 20.04.2\n"
|
||||
"X-Generator: Lokalize 21.12.3\n"
|
||||
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
@@ -33,14 +33,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Reproduzir"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Embaralhar"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Reproduzir próxima"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Adicionar à lista de reprodução"
|
||||
@@ -84,47 +90,76 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
msgstr "Favoritos"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Mostrar tudo"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Músicas favoritas"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
msgstr "Mais reproduzidas"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Músicas reproduzidas"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Voltar"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Pesquisar"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Nenhuma mídia em reprodução"
|
||||
msgstr "Reproduzindo agora"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Fila"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Remover faixa"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Nenhuma mídia em reprodução"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Embaralhar"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Lista de músicas desconhecida"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Nenhuma música ainda"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -156,11 +191,6 @@ msgstr "Rádio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Encontre músicas no YouTube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Pesquisar"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Limpar"
|
||||
|
||||
|
||||
+51
-20
@@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-10 21:39+0300\n"
|
||||
"Last-Translator: Alexander Yavorsky <[email protected]>\n"
|
||||
"Language-Team: Russian <[email protected]>\n"
|
||||
@@ -33,14 +33,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Воспроизвести"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Перемешать"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Воспроизвести следующий"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr ""
|
||||
@@ -82,46 +88,76 @@ msgstr "ОК"
|
||||
msgid "Cancel"
|
||||
msgstr "Отмена"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Поиск"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Удалить дорожку"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Перемешать"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -153,11 +189,6 @@ msgstr "Радио"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Поиск"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Очистить"
|
||||
|
||||
|
||||
+51
-20
@@ -4,7 +4,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-04-07 18:01+0200\n"
|
||||
"Last-Translator: Roman Paholik <[email protected]>\n"
|
||||
"Language-Team: Slovak <[email protected]>\n"
|
||||
@@ -30,15 +30,21 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Prehrať"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Zamiešať"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "Play"
|
||||
msgid "Play Next"
|
||||
msgstr "Prehrať"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Pridať do zoznamu skladieb"
|
||||
@@ -80,47 +86,77 @@ msgstr "OK"
|
||||
msgid "Cancel"
|
||||
msgstr "Zrušiť"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Hľadať"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
msgid "Now Playing"
|
||||
msgstr "Neprehráva sa žiadne médium"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Neprehráva sa žiadne médium"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Zamiešať"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -152,11 +188,6 @@ msgstr "Rádio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Hľadať"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Vyčistiť"
|
||||
|
||||
|
||||
+54
-23
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-24 07:26+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-27 07:50+0200\n"
|
||||
"Last-Translator: Matjaž Jeran <[email protected]>\n"
|
||||
"Language-Team: Slovenian <[email protected]>\n"
|
||||
"Language: sl\n"
|
||||
@@ -33,14 +33,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Predvajaj"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Premešaj"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Predvajaj naslednjo"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Dodaj v seznam predvajanja"
|
||||
@@ -82,46 +88,76 @@ msgstr "V redu"
|
||||
msgid "Cancel"
|
||||
msgstr "Prekliči"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Priljubljeni"
|
||||
msgstr "Priljubljene"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Prikaži vse"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Priljubljene pesmi"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Največkrat predvajani"
|
||||
msgstr "Največkrat predvajane"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Predvajane pesmi"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Nazaj"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Išči"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Pravkar predvajano"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "Čakalna vrsta"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Odstrani sled"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Niče se ne predvaja"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Premešaj"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Neznan seznam pesmi"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Tu še ni nobene pesmi"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -153,11 +189,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Najdi glasbo na Youtube Music"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Išči"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Očisti"
|
||||
|
||||
|
||||
+55
-25
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-23 17:51+0200\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 10:40+0200\n"
|
||||
"Last-Translator: Stefan Asserhäll <[email protected]>\n"
|
||||
"Language-Team: Swedish <[email protected]>\n"
|
||||
"Language: sv\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Spela"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Blanda"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Spela nästa"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Lägg till i spellista"
|
||||
@@ -81,47 +87,76 @@ msgstr "Ok"
|
||||
msgid "Cancel"
|
||||
msgstr "Avbryt"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Favoriter"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Visa alla"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Favoritlåtar"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Mest spelade"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Spelade låtar"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Bakåt"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Sök"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Inga media spelar"
|
||||
msgstr "Spelar nu"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
msgstr "Köa"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Ta bort spår"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Inga media spelar"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Blanda"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Okänd låtlista"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Inga låtar här ännu"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -153,11 +188,6 @@ msgstr "Radio"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Sök efter musik på YouTube musik"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Sök"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Rensa"
|
||||
|
||||
|
||||
+52
-21
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-24 11:59+0300\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 10:29+0300\n"
|
||||
"Last-Translator: Emir SARI <[email protected]>\n"
|
||||
"Language-Team: Turkish <[email protected]>\n"
|
||||
"Language: tr\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Çal"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Karıştır"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Sonrakini Çal"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Çalma Listesine Ekle"
|
||||
@@ -83,46 +89,76 @@ msgstr "Tamam"
|
||||
msgid "Cancel"
|
||||
msgstr "İptal"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Beğeniler"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Tümünü Göster"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Beğenilen Şarkılar"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "En Çok Çalınanlar"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Çalınan Şarkılar"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Geri"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Ara"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Şimdi Çalınıyor"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "Kuyruk"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Parçayı Kaldır"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Ortam çalmıyor"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Karıştır"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Bilinmeyen şarkılar listesi"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Burada henüz şarkı yok"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -154,11 +190,6 @@ msgstr "Radyo"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "YouTube Müzik'te müzik bul"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Ara"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Temizle"
|
||||
|
||||
|
||||
+52
-21
@@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-24 08:21+0300\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-26 08:15+0300\n"
|
||||
"Last-Translator: Yuri Chornoivan <[email protected]>\n"
|
||||
"Language-Team: Ukrainian <[email protected]>\n"
|
||||
"Language: uk\n"
|
||||
@@ -33,14 +33,20 @@ msgstr "[email protected]"
|
||||
msgid "Play"
|
||||
msgstr "Відтворити"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Перемішати"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "Відтворити наступну"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "Додати до списку відтворення"
|
||||
@@ -84,46 +90,76 @@ msgstr "Гаразд"
|
||||
msgid "Cancel"
|
||||
msgstr "Скасувати"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "Улюблені"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr "Показати всі"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr "Улюблені композиції"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "Часто слухали"
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr "Відтворені композиції"
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr "Назад"
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Пошук"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "Зараз відтворюємо"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "Додати до черги"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "Вилучити композицію"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "Відтворення не відбувається"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "Перемішати"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr "Невідомий список композицій"
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr "Тут ще немає композицій"
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -155,11 +191,6 @@ msgstr "Радіо"
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "Шукати музику на сайті «Музика Youtube»"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "Пошук"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "Спорожнити"
|
||||
|
||||
|
||||
+54
-33
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: kdeorg\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-15 15:46\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-07-16 05:20\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Chinese Simplified\n"
|
||||
"Language: zh_CN\n"
|
||||
@@ -32,14 +32,20 @@ msgstr "[email protected], [email protected]"
|
||||
msgid "Play"
|
||||
msgstr "播放"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "随机播放"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "播放下一首"
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "添加到播放列表"
|
||||
@@ -81,47 +87,76 @@ msgstr "确定"
|
||||
msgid "Cancel"
|
||||
msgstr "取消"
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "搜索"
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "AudioTube"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#, fuzzy, kde-format
|
||||
#| msgid "No media playing"
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "没有正在播放的媒体"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "移除曲目"
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "没有正在播放的媒体"
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "随机播放"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
@@ -152,17 +187,3 @@ msgstr "电台"
|
||||
#, kde-format
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "查找 YouTube Music 中的音乐"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "搜索"
|
||||
|
||||
#~ msgid "Clear"
|
||||
#~ msgstr "清除"
|
||||
|
||||
#~ msgid "Pause"
|
||||
#~ msgstr "暂停"
|
||||
|
||||
#~ msgid "Expand"
|
||||
#~ msgstr "展开"
|
||||
@@ -1,17 +1,18 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR This file is copyright:
|
||||
# Chinese translations for audiotube package
|
||||
# audiotube 套件的正體中文翻譯.
|
||||
# Copyright (C) 2022 This file is copyright:
|
||||
# This file is distributed under the same license as the audiotube package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: audiotube\n"
|
||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||
"POT-Creation-Date: 2022-05-25 00:46+0000\n"
|
||||
"PO-Revision-Date: 2022-05-24 01:49+0000\n"
|
||||
"Last-Translator: transxx.py program <[email protected]>\n"
|
||||
"Language-Team: KDE Test Language <[email protected]>\n"
|
||||
"Language: x-test\n"
|
||||
"POT-Creation-Date: 2022-07-12 00:48+0000\n"
|
||||
"PO-Revision-Date: 2022-05-30 00:47+0000\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: zh_TW\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -20,29 +21,35 @@ msgstr ""
|
||||
#, kde-format
|
||||
msgctxt "NAME OF TRANSLATORS"
|
||||
msgid "Your names"
|
||||
msgstr "xxYour namesxx"
|
||||
msgstr ""
|
||||
|
||||
#, kde-format
|
||||
msgctxt "EMAIL OF TRANSLATORS"
|
||||
msgid "Your emails"
|
||||
msgstr "xxYour emailsxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/AlbumPage.qml:19 contents/ui/PlaylistPage.qml:19
|
||||
#, kde-format
|
||||
msgid "Play"
|
||||
msgstr "xxPlayxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/AlbumPage.qml:61 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaylistPage.qml:67
|
||||
#: contents/ui/AlbumPage.qml:26 contents/ui/PlaylistPage.qml:26
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/AlbumPage.qml:68 contents/ui/ArtistPage.qml:101
|
||||
#: contents/ui/PlaybackHistory.qml:74 contents/ui/PlaylistPage.qml:67
|
||||
#, kde-format
|
||||
msgid "Play Next"
|
||||
msgstr "xxPlay Nextxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/AlbumPage.qml:66 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaylistPage.qml:72 contents/ui/SearchPage.qml:123
|
||||
#: contents/ui/AlbumPage.qml:73 contents/ui/ArtistPage.qml:107
|
||||
#: contents/ui/PlaybackHistory.qml:79 contents/ui/PlaylistPage.qml:72
|
||||
#: contents/ui/SearchPage.qml:123
|
||||
#, kde-format
|
||||
msgid "Add to Playlist"
|
||||
msgstr "xxAdd to Playlistxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/ArtistPage.qml:39 contents/ui/SearchPage.qml:67
|
||||
#, kde-format
|
||||
@@ -50,111 +57,134 @@ msgid ""
|
||||
"Video playback is not supported yet. Do you want to play only the audio of "
|
||||
"\"%1\"?"
|
||||
msgstr ""
|
||||
"xxVideo playback is not supported yet. Do you want to play only the audio of "
|
||||
"\"%1\"?xx"
|
||||
|
||||
#: contents/ui/ArtistPage.qml:55 contents/ui/SearchPage.qml:25
|
||||
#, kde-format
|
||||
msgid "Albums"
|
||||
msgstr "xxAlbumsxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/ArtistPage.qml:57
|
||||
#, kde-format
|
||||
msgid "Singles"
|
||||
msgstr "xxSinglesxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/ArtistPage.qml:59 contents/ui/SearchPage.qml:31
|
||||
#, kde-format
|
||||
msgid "Songs"
|
||||
msgstr "xxSongsxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/ArtistPage.qml:61 contents/ui/SearchPage.qml:33
|
||||
#, kde-format
|
||||
msgid "Videos"
|
||||
msgstr "xxVideosxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/ConfirmationMessage.qml:16
|
||||
#, kde-format
|
||||
msgid "OK"
|
||||
msgstr "xxOKxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/ConfirmationMessage.qml:21
|
||||
#, kde-format
|
||||
msgid "Cancel"
|
||||
msgstr "xxCancelxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:15
|
||||
#: contents/ui/LibraryPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Favourites"
|
||||
msgstr "xxFavouritesxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:67
|
||||
#: contents/ui/LibraryPage.qml:37 contents/ui/LibraryPage.qml:108
|
||||
#, kde-format
|
||||
msgid "Show All"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:42
|
||||
#, kde-format
|
||||
msgid "Favourite Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/LibraryPage.qml:98
|
||||
#, kde-format
|
||||
msgid "Most played"
|
||||
msgstr "xxMost playedxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:93
|
||||
#: contents/ui/LibraryPage.qml:113
|
||||
#, kde-format
|
||||
msgid "Played Songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:39
|
||||
#, kde-format
|
||||
msgid "Back"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:73 contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/main.qml:85
|
||||
#, kde-format
|
||||
msgid "AudioTube"
|
||||
msgstr "xxAudioTubexx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:86
|
||||
#: contents/ui/MaximizedPlayerPage.qml:92
|
||||
#, kde-format
|
||||
msgid "Now Playing"
|
||||
msgstr "xxNow Playingxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:112
|
||||
#: contents/ui/MaximizedPlayerPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Queue"
|
||||
msgstr "xxQueuexx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:224
|
||||
#: contents/ui/MaximizedPlayerPage.qml:222
|
||||
#, kde-format
|
||||
msgid "Remove Track"
|
||||
msgstr "xxRemove Trackxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/MaximizedPlayerPage.qml:244
|
||||
#: contents/ui/MaximizedPlayerPage.qml:242
|
||||
#: contents/ui/MinimizedPlayerControls.qml:96
|
||||
#, kde-format
|
||||
msgid "No media playing"
|
||||
msgstr "xxNo media playingxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaylistPage.qml:26
|
||||
#: contents/ui/PlaybackHistory.qml:15
|
||||
#, kde-format
|
||||
msgid "Shuffle"
|
||||
msgstr "xxShufflexx"
|
||||
msgid "Unknown list of songs"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/PlaybackHistory.qml:25
|
||||
#, kde-format
|
||||
msgid "No songs here yet"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:27
|
||||
#, kde-format
|
||||
msgid "Artists"
|
||||
msgstr "xxArtistsxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:29
|
||||
#, kde-format
|
||||
msgid "Playlists"
|
||||
msgstr "xxPlaylistsxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:36
|
||||
#, kde-format
|
||||
msgid "Unknown"
|
||||
msgstr "xxUnknownxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:117
|
||||
#, kde-format
|
||||
msgid "Play next"
|
||||
msgstr "xxPlay nextxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:129
|
||||
#, kde-format
|
||||
msgid "Radio"
|
||||
msgstr "xxRadioxx"
|
||||
msgstr ""
|
||||
|
||||
#: contents/ui/SearchPage.qml:147
|
||||
#, kde-format
|
||||
msgid "Find music on YouTube Music"
|
||||
msgstr "xxFind music on YouTube Musicxx"
|
||||
|
||||
#: contents/ui/SearchPage.qml:150
|
||||
#, kde-format
|
||||
msgid "Search"
|
||||
msgstr "xxSearchxx"
|
||||
msgstr ""
|
||||
+3
-1
@@ -19,6 +19,7 @@ target_include_directories(asyncdatabase PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
target_link_libraries(asyncdatabase PUBLIC Qt5::Sql)
|
||||
|
||||
add_subdirectory(example)
|
||||
add_subdirectory(mpris2)
|
||||
|
||||
add_executable(audiotube
|
||||
main.cpp
|
||||
@@ -50,8 +51,9 @@ target_link_libraries(audiotube
|
||||
KF5::Crash
|
||||
ytm
|
||||
asyncdatabase
|
||||
mpris2
|
||||
)
|
||||
|
||||
target_compile_definitions(audiotube PRIVATE -DQT_NO_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING -DQT_QML_DEBUG)
|
||||
target_compile_definitions(audiotube PRIVATE -DQT_NO_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING)
|
||||
|
||||
install(TARGETS audiotube ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
|
||||
@@ -120,7 +120,7 @@ struct AsyncSqlDatabasePrivate {
|
||||
// Internal asynchronous database class
|
||||
QFuture<void> AsyncSqlDatabase::establishConnection(const DatabaseConfiguration &configuration)
|
||||
{
|
||||
return runAsync<void>([=, this] {
|
||||
return runAsync([=, this] {
|
||||
d->database = QSqlDatabase::addDatabase(configuration.type());
|
||||
if (configuration.databaseName()) {
|
||||
d->database.setDatabaseName(*configuration.databaseName());
|
||||
|
||||
@@ -98,7 +98,7 @@ public:
|
||||
|
||||
template <typename T, typename ...Args>
|
||||
auto getResults(const QString &sqlQuery, Args... args) -> QFuture<std::vector<T>> {
|
||||
return runAsync<std::vector<T>>([=, this] {
|
||||
return runAsync([=, this] {
|
||||
auto query = executeQuery(sqlQuery, args...);
|
||||
const auto rows = parseRows<typename T::ColumnTypes>(retrieveRows(query));
|
||||
|
||||
@@ -110,7 +110,7 @@ public:
|
||||
|
||||
template <typename T, typename ...Args>
|
||||
auto getResult(const QString &sqlQuery, Args... args) -> QFuture<std::optional<T>> {
|
||||
return runAsync<std::optional<T>>([=, this]() -> std::optional<T> {
|
||||
return runAsync([=, this]() -> std::optional<T> {
|
||||
auto query = executeQuery(sqlQuery, args...);
|
||||
if (const auto row = retrieveOptionalRow(query)) {
|
||||
return T::fromSql(parseRow<typename T::ColumnTypes>(*row));
|
||||
@@ -122,13 +122,13 @@ public:
|
||||
|
||||
template <typename ...Args>
|
||||
auto execute(const QString &sqlQuery, Args... args) -> QFuture<void> {
|
||||
return runAsync<void>([=, this] {
|
||||
return runAsync([=, this] {
|
||||
executeQuery(sqlQuery, args...);
|
||||
});
|
||||
}
|
||||
|
||||
auto runMigrations(const QString &migrationDirectory) -> QFuture<void> {
|
||||
return runAsync<void>([=, this] {
|
||||
return runAsync([=, this] {
|
||||
runDatabaseMigrations(db(), migrationDirectory);
|
||||
});
|
||||
}
|
||||
@@ -149,11 +149,12 @@ private:
|
||||
return runQuery(query);
|
||||
}
|
||||
|
||||
template <typename T, typename Functor>
|
||||
QFuture<T> runAsync(Functor func) {
|
||||
auto interface = std::make_shared<QFutureInterface<T>>();
|
||||
template <typename Functor>
|
||||
QFuture<std::invoke_result_t<Functor>> runAsync(Functor func) {
|
||||
using ReturnType = std::invoke_result_t<Functor>;
|
||||
auto interface = std::make_shared<QFutureInterface<ReturnType>>();
|
||||
QMetaObject::invokeMethod(this, [interface, func] {
|
||||
if constexpr (!std::is_same_v<T, void>) {
|
||||
if constexpr (!std::is_same_v<ReturnType, void>) {
|
||||
auto result = func();
|
||||
interface->reportResult(result);
|
||||
} else {
|
||||
|
||||
+18
-15
@@ -9,6 +9,7 @@
|
||||
#include <QJsonObject>
|
||||
#include <QJsonArray>
|
||||
#include <QFutureInterface>
|
||||
#include <QCoreApplication>
|
||||
|
||||
#include <pybind11/embed.h>
|
||||
|
||||
@@ -23,8 +24,8 @@ namespace py = pybind11;
|
||||
#include <type_traits>
|
||||
#include <memory>
|
||||
|
||||
template <typename R, typename T, typename OP>
|
||||
std::optional<R> map_optional(const std::optional<T> &optional, OP op) {
|
||||
template <typename T, typename OP>
|
||||
std::optional<std::invoke_result_t<OP, T>> mapOptional(const std::optional<T> &optional, OP op) {
|
||||
if (optional.has_value()) {
|
||||
if constexpr (std::is_member_function_pointer<OP>::value) {
|
||||
return (&optional.value()->*op)();
|
||||
@@ -61,7 +62,7 @@ AsyncYTMusic::AsyncYTMusic(QObject *parent)
|
||||
//
|
||||
QFuture<std::vector<search::SearchResultItem>> AsyncYTMusic::search(const QString &query)
|
||||
{
|
||||
return invokeAndCatchOnThread<std::vector<search::SearchResultItem>>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->search(query.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -71,7 +72,7 @@ QFuture<std::vector<search::SearchResultItem>> AsyncYTMusic::search(const QStrin
|
||||
//
|
||||
QFuture<artist::Artist> AsyncYTMusic::fetchArtist(const QString &channelId)
|
||||
{
|
||||
return invokeAndCatchOnThread<artist::Artist>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->get_artist(channelId.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -81,7 +82,7 @@ QFuture<artist::Artist> AsyncYTMusic::fetchArtist(const QString &channelId)
|
||||
//
|
||||
QFuture<album::Album> AsyncYTMusic::fetchAlbum(const QString &browseId)
|
||||
{
|
||||
return invokeAndCatchOnThread<album::Album>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->get_album(browseId.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -91,7 +92,7 @@ QFuture<album::Album> AsyncYTMusic::fetchAlbum(const QString &browseId)
|
||||
//
|
||||
QFuture<std::optional<song::Song>> AsyncYTMusic::fetchSong(const QString &videoId)
|
||||
{
|
||||
return invokeAndCatchOnThread<std::optional<song::Song>>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->get_song(videoId.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -100,7 +101,7 @@ QFuture<std::optional<song::Song>> AsyncYTMusic::fetchSong(const QString &videoI
|
||||
// fetchPlaylist
|
||||
//
|
||||
QFuture<playlist::Playlist> AsyncYTMusic::fetchPlaylist(const QString &playlistId) {
|
||||
return invokeAndCatchOnThread<playlist::Playlist>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->get_playlist(playlistId.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -110,7 +111,7 @@ QFuture<playlist::Playlist> AsyncYTMusic::fetchPlaylist(const QString &playlistI
|
||||
//
|
||||
QFuture<std::vector<artist::Artist::Album>> AsyncYTMusic::fetchArtistAlbums(const QString &channelId, const QString ¶ms)
|
||||
{
|
||||
return invokeAndCatchOnThread<std::vector<artist::Artist::Album>>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->get_artist_albums(channelId.toStdString(), params.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -120,7 +121,7 @@ QFuture<std::vector<artist::Artist::Album>> AsyncYTMusic::fetchArtistAlbums(cons
|
||||
//
|
||||
QFuture<video_info::VideoInfo> AsyncYTMusic::extractVideoInfo(const QString &videoId)
|
||||
{
|
||||
return invokeAndCatchOnThread<video_info::VideoInfo>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->extract_video_info(videoId.toStdString());
|
||||
});
|
||||
}
|
||||
@@ -130,10 +131,10 @@ QFuture<video_info::VideoInfo> AsyncYTMusic::extractVideoInfo(const QString &vid
|
||||
//
|
||||
QFuture<watch::Playlist> AsyncYTMusic::fetchWatchPlaylist(const std::optional<QString> &videoId, const std::optional<QString> &playlistId)
|
||||
{
|
||||
return invokeAndCatchOnThread<watch::Playlist>([=, this]() {
|
||||
return invokeAndCatchOnThread([=, this]() {
|
||||
return m_ytm->get_watch_playlist(
|
||||
map_optional<std::string>(videoId, &QString::toStdString),
|
||||
map_optional<std::string>(playlistId, &QString::toStdString)
|
||||
mapOptional(videoId, &QString::toStdString),
|
||||
mapOptional(playlistId, &QString::toStdString)
|
||||
);
|
||||
});
|
||||
}
|
||||
@@ -152,17 +153,19 @@ YTMusicThread::~YTMusicThread()
|
||||
|
||||
AsyncYTMusic *YTMusicThread::operator->()
|
||||
{
|
||||
return &m_ytm;
|
||||
return m_ytm;
|
||||
}
|
||||
|
||||
AsyncYTMusic &YTMusicThread::get()
|
||||
{
|
||||
return m_ytm;
|
||||
return *m_ytm;
|
||||
}
|
||||
|
||||
YTMusicThread::YTMusicThread()
|
||||
: m_ytm(new AsyncYTMusic())
|
||||
{
|
||||
connect(QCoreApplication::instance(), &QCoreApplication::aboutToQuit, m_ytm, &QObject::deleteLater);
|
||||
setObjectName(QStringLiteral("YTMusicAPI"));
|
||||
m_ytm.moveToThread(this);
|
||||
m_ytm->moveToThread(this);
|
||||
start();
|
||||
}
|
||||
+8
-6
@@ -75,12 +75,13 @@ void connectFuture(const QFuture<T> &future, QObjectDerivedType *self, const Fun
|
||||
/// Applies a function to a the contained value of a QFuture once it finishes.
|
||||
/// @returns a QFuture that finishes once the future given as first argument finished
|
||||
///
|
||||
template <typename T, typename U, typename Func>
|
||||
QFuture<U> mapFuture(const QFuture<T> &future, Func mapFunction) {
|
||||
template <typename T, typename Func>
|
||||
QFuture<std::invoke_result_t<Func, T>> mapFuture(const QFuture<T> &future, Func mapFunction) {
|
||||
using ReturnType = std::invoke_result_t<Func, T>;
|
||||
auto watcher = std::make_shared<QFutureWatcher<T>>();
|
||||
watcher->setFuture(future);
|
||||
|
||||
auto interface = std::make_shared<QFutureInterface<U>>();
|
||||
auto interface = std::make_shared<QFutureInterface<ReturnType>>();
|
||||
QObject::connect(watcher.get(), &QFutureWatcherBase::finished, watcher.get(), [interface, watcher, mapFunction] {
|
||||
auto result = watcher->result();
|
||||
auto mapped = mapFunction(std::move(result));
|
||||
@@ -123,8 +124,9 @@ protected:
|
||||
|
||||
private:
|
||||
/// Invokes the given function on the thread of the YTMusic object, and handles exceptions that occur while invoking it.
|
||||
template <typename ReturnType>
|
||||
QFuture<ReturnType> invokeAndCatchOnThread(const std::function<ReturnType()> &fun) {
|
||||
template <typename Func>
|
||||
QFuture<std::invoke_result_t<Func>> invokeAndCatchOnThread(Func fun) {
|
||||
using ReturnType = std::invoke_result_t<Func>;
|
||||
auto interface = std::make_shared<QFutureInterface<ReturnType>>();
|
||||
QMetaObject::invokeMethod(this, [=, this]() {
|
||||
try {
|
||||
@@ -154,5 +156,5 @@ public:
|
||||
private:
|
||||
YTMusicThread();
|
||||
|
||||
AsyncYTMusic m_ytm;
|
||||
AsyncYTMusic *m_ytm;
|
||||
};
|
||||
@@ -21,6 +21,13 @@ Kirigami.ScrollablePage {
|
||||
applicationWindow().playPlaylist(albumModel.playlistId)
|
||||
}
|
||||
}
|
||||
right: Kirigami.Action {
|
||||
icon.name: "media-playlist-shuffle"
|
||||
text: i18n("Shuffle")
|
||||
onTriggered: {
|
||||
applicationWindow().playShufflePlaylist(albumModel.playlistId)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ListView {
|
||||
|
||||
@@ -21,8 +21,27 @@ Kirigami.ScrollablePage {
|
||||
}
|
||||
|
||||
ColumnLayout {
|
||||
Kirigami.Heading {
|
||||
text: i18n("Favourites")
|
||||
RowLayout {
|
||||
Layout.fillWidth: true
|
||||
Kirigami.Heading {
|
||||
text: i18n("Favourites")
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
}
|
||||
|
||||
// Spacer
|
||||
Item {
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
Controls.ToolButton {
|
||||
text: i18n("Show All")
|
||||
Layout.alignment: Qt.AlignRight
|
||||
icon.name: "arrow-right"
|
||||
onClicked: pageStack.layers.push("qrc:/PlaybackHistory.qml", {
|
||||
"dataModel": Library.favourites,
|
||||
"title": i18n("Favourite Songs")
|
||||
})
|
||||
}
|
||||
}
|
||||
Controls.ScrollView {
|
||||
Layout.fillWidth: true
|
||||
@@ -33,7 +52,7 @@ Kirigami.ScrollablePage {
|
||||
delegate: ColumnLayout {
|
||||
id: delegateItem
|
||||
required property string title
|
||||
required property string artist
|
||||
required property string artists
|
||||
required property string videoId
|
||||
|
||||
Layout.fillWidth: false
|
||||
@@ -73,8 +92,27 @@ Kirigami.ScrollablePage {
|
||||
}
|
||||
}
|
||||
}
|
||||
Kirigami.Heading {
|
||||
text: i18n("Most played")
|
||||
RowLayout {
|
||||
Layout.fillWidth: true
|
||||
Kirigami.Heading {
|
||||
text: i18n("Most played")
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
}
|
||||
|
||||
// Spacer
|
||||
Item {
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
Controls.ToolButton {
|
||||
text: i18n("Show All")
|
||||
Layout.alignment: Qt.AlignRight
|
||||
icon.name: "arrow-right"
|
||||
onClicked: pageStack.layers.push("qrc:/PlaybackHistory.qml", {
|
||||
"dataModel": Library.playbackHistory,
|
||||
"title": i18n("Played Songs")
|
||||
})
|
||||
}
|
||||
}
|
||||
Controls.ScrollView {
|
||||
Layout.fillWidth: true
|
||||
@@ -85,7 +123,7 @@ Kirigami.ScrollablePage {
|
||||
delegate: ColumnLayout {
|
||||
id: mpdelegateItem
|
||||
required property string title
|
||||
required property string artist
|
||||
required property string artists
|
||||
required property string videoId
|
||||
|
||||
Layout.fillWidth: false
|
||||
|
||||
@@ -83,14 +83,13 @@ Item {
|
||||
|
||||
ToolButton {
|
||||
id: nowPlayingTab
|
||||
text: i18n("Now Playing")
|
||||
padding: Kirigami.Units.largeSpacing
|
||||
onClicked: swipeView.setCurrentIndex(0)
|
||||
Layout.preferredHeight: Kirigami.Units.gridUnit * 2
|
||||
Layout.preferredWidth: Kirigami.Units.gridUnit * 9
|
||||
|
||||
|
||||
contentItem: Label {
|
||||
text: nowPlayingTab.text
|
||||
text: i18n("Now Playing")
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
elide: Text.ElideRight
|
||||
@@ -109,14 +108,13 @@ Item {
|
||||
}
|
||||
ToolButton {
|
||||
id: queueTab
|
||||
text: i18n("Queue")
|
||||
padding: Kirigami.Units.largeSpacing
|
||||
onClicked: swipeView.setCurrentIndex(1)
|
||||
Layout.preferredHeight: Kirigami.Units.gridUnit * 2
|
||||
Layout.preferredWidth: Kirigami.Units.gridUnit * 9
|
||||
|
||||
contentItem: Label {
|
||||
text: queueTab.text
|
||||
text: i18n("Queue")
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
elide: Text.ElideRight
|
||||
@@ -155,7 +153,7 @@ Item {
|
||||
Item {
|
||||
height: swipeView.width
|
||||
width: swipeView.height
|
||||
|
||||
|
||||
Image {
|
||||
anchors.centerIn: parent
|
||||
width: swipeView.specWidth
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
// SPDX-FileCopyrightText: 2022 Jonah Brüchert <[email protected]>
|
||||
//
|
||||
// SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
|
||||
|
||||
import QtQuick 2.15
|
||||
import QtQuick.Layouts 1.15
|
||||
import QtQuick.Controls 2.15 as Controls
|
||||
|
||||
import org.kde.kirigami 2.15 as Kirigami
|
||||
|
||||
import org.kde.ytmusic 1.0
|
||||
|
||||
Kirigami.ScrollablePage {
|
||||
id: playbackHistoryPage
|
||||
title: i18n("Unknown list of songs")
|
||||
|
||||
property QtObject dataModel
|
||||
|
||||
ListView {
|
||||
id: listView
|
||||
reuseItems: true
|
||||
|
||||
Kirigami.PlaceholderMessage {
|
||||
visible: listView.count < 1
|
||||
text: i18n("No songs here yet")
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
|
||||
model: playbackHistoryPage.dataModel
|
||||
|
||||
delegate: Kirigami.SwipeListItem {
|
||||
id: delegateItem
|
||||
required property string title
|
||||
required property string videoId
|
||||
required property string artists
|
||||
|
||||
onClicked: {
|
||||
play(videoId)
|
||||
}
|
||||
|
||||
RowLayout {
|
||||
ThumbnailSource {
|
||||
id: thumbnailSource
|
||||
|
||||
videoId: delegateItem.videoId
|
||||
}
|
||||
|
||||
Item {
|
||||
width: Kirigami.Units.gridUnit * 3
|
||||
height: Kirigami.Units.gridUnit * 3
|
||||
|
||||
Image {
|
||||
sourceSize: "200x200"
|
||||
source: thumbnailSource.cachedPath
|
||||
fillMode: Image.PreserveAspectCrop
|
||||
asynchronous: true
|
||||
|
||||
width: Kirigami.Units.gridUnit * 3
|
||||
height: Kirigami.Units.gridUnit * 3
|
||||
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
}
|
||||
}
|
||||
|
||||
Controls.Label {
|
||||
text: delegateItem.title
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
}
|
||||
|
||||
actions: [
|
||||
Kirigami.Action {
|
||||
icon.name: "go-next"
|
||||
text: i18n("Play Next")
|
||||
onTriggered: UserPlaylistModel.playNext(delegateItem.videoId, delegateItem.title, [])
|
||||
},
|
||||
Kirigami.Action {
|
||||
icon.name: "media-playlist-append"
|
||||
text: i18n("Add to Playlist")
|
||||
onTriggered: UserPlaylistModel.append(delegateItem.videoId, delegateItem.title, [])
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -98,7 +98,17 @@ Flickable {
|
||||
videoId: UserPlaylistModel.currentVideoId
|
||||
onTitleChanged: Library.addPlaybackHistoryItem(info.videoId, info.title)
|
||||
}
|
||||
|
||||
|
||||
MprisPlayer {
|
||||
id: mpris
|
||||
|
||||
trackTitle: info.title
|
||||
album: "Test Album"
|
||||
playbackState: MprisPlayer.PlaybackRunning
|
||||
playerName: "AudioTube"
|
||||
trackDuration: audio.duration
|
||||
}
|
||||
|
||||
property var audioPlayer: Audio {
|
||||
id: audio
|
||||
|
||||
|
||||
@@ -31,12 +31,18 @@ Kirigami.ApplicationWindow {
|
||||
|
||||
contentItem: RowLayout {
|
||||
Controls.ToolButton {
|
||||
id: searchBack
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
visible: !root.wideScreen && root.showSearch && root.searchField.text === ""
|
||||
visible:
|
||||
(!root.wideScreen && root.showSearch && root.searchField.text === "")
|
||||
|| pageStack.layers.depth > 1
|
||||
text: i18n("Back")
|
||||
icon.name: "go-previous-view"
|
||||
display: Controls.ToolButton.IconOnly
|
||||
onClicked: root.showSearch = false
|
||||
onClicked: if (root.showSearch)
|
||||
root.showSearch = false
|
||||
else
|
||||
pageStack.layers.pop()
|
||||
}
|
||||
|
||||
Kirigami.Heading {
|
||||
@@ -47,6 +53,10 @@ Kirigami.ApplicationWindow {
|
||||
visible: !root.wideScreen && !root.showSearch
|
||||
}
|
||||
|
||||
// spacer
|
||||
Item {
|
||||
Layout.fillWidth: !root.wideScreen
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: searchLoader
|
||||
@@ -147,6 +157,7 @@ Kirigami.ApplicationWindow {
|
||||
|
||||
onAccepted: {
|
||||
pageStack.clear()
|
||||
pageStack.layers.clear()
|
||||
|
||||
if (text) {
|
||||
Library.addSearch(text)
|
||||
|
||||
+4
-4
@@ -148,7 +148,7 @@ QHash<int, QByteArray> PlaybackHistoryModel::roleNames() const {
|
||||
return {
|
||||
{Roles::VideoId, "videoId"},
|
||||
{Roles::Title, "title"},
|
||||
{Roles::Artist, "artist"},
|
||||
{Roles::Artist, "artists"},
|
||||
{Roles::Plays, "plays"}
|
||||
};
|
||||
}
|
||||
@@ -186,7 +186,7 @@ QHash<int, QByteArray> FavouritesModel::roleNames() const {
|
||||
return {
|
||||
{Roles::VideoId, "videoId"},
|
||||
{Roles::Title, "title"},
|
||||
{Roles::Artist, "artist"}
|
||||
{Roles::Artist, "artists"}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -211,9 +211,9 @@ FavouriteWatcher::FavouriteWatcher(Library *library, const QString &videoId)
|
||||
: QObject(library), m_videoId(videoId), m_library(library)
|
||||
{
|
||||
auto update = [this] {
|
||||
connectFuture(m_library->database().getResult<SingleValue<int>>("select count(*) from favourites where video_id = ?", m_videoId), this, [this](auto count) {
|
||||
connectFuture(m_library->database().getResult<SingleValue<bool>>("select count(*) > 0 from favourites where video_id = ?", m_videoId), this, [this](auto count) {
|
||||
if (count) {
|
||||
m_isFavourite = count->value > 0;
|
||||
m_isFavourite = count->value;
|
||||
Q_EMIT isFavouriteChanged();
|
||||
}
|
||||
});
|
||||
|
||||
+4
-1
@@ -11,6 +11,8 @@
|
||||
#include <KCrash>
|
||||
#include <KAboutData>
|
||||
|
||||
#include "declarativemprisplayer.h"
|
||||
#include "mpris2.h"
|
||||
#include "searchmodel.h"
|
||||
#include "albummodel.h"
|
||||
#include "videoinfoextractor.h"
|
||||
@@ -21,7 +23,7 @@
|
||||
#include "playerutils.h"
|
||||
#include "library.h"
|
||||
|
||||
#include "asyncdatabase.h"
|
||||
#include <mediaplayer2.h>
|
||||
|
||||
constexpr auto URI = "org.kde.ytmusic";
|
||||
|
||||
@@ -45,6 +47,7 @@ Q_DECL_EXPORT int main(int argc, char *argv[])
|
||||
qmlRegisterType<VideoInfoExtractor>(URI, 1, 0, "VideoInfoExtractor");
|
||||
qmlRegisterType<ArtistModel>(URI, 1, 0, "ArtistModel");
|
||||
qmlRegisterType<PlaylistModel>(URI, 1, 0, "PlaylistModel");
|
||||
qmlRegisterType<DeclarativeMprisPlayer>(URI, 1, 0, "MprisPlayer");
|
||||
qmlRegisterSingletonType<UserPlaylistModel>(URI, 1, 0, "UserPlaylistModel", [](QQmlEngine *, QJSEngine *) {
|
||||
return new UserPlaylistModel();
|
||||
});
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
# SPDX-FileCopyrightText: 2021 Jonah Brüchert <[email protected]>
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
|
||||
add_library(mpris2 STATIC
|
||||
mediaplayer2.cpp
|
||||
mediaplayer2.h
|
||||
mediaplayer2player.cpp
|
||||
mediaplayer2player.h
|
||||
mpris2.cpp
|
||||
mpris2.h
|
||||
declarativemprisplayer.cpp
|
||||
declarativemprisplayer.h
|
||||
)
|
||||
|
||||
target_link_libraries(mpris2 PUBLIC Qt::Core Qt::Gui Qt::DBus KF5::CoreAddons)
|
||||
@@ -0,0 +1,61 @@
|
||||
#include "declarativemprisplayer.h"
|
||||
|
||||
#include <QTimer>
|
||||
|
||||
DeclarativeMprisPlayer::DeclarativeMprisPlayer()
|
||||
{
|
||||
QTimer::singleShot(0, [this]() {
|
||||
connect(m_mpris.player(), &MediaPlayer2Player::play, this, &DeclarativeMprisPlayer::play);
|
||||
connect(m_mpris.player(), &MediaPlayer2Player::playPause, this, &DeclarativeMprisPlayer::playPause);
|
||||
connect(m_mpris.player(), &MediaPlayer2Player::Stop, this, &DeclarativeMprisPlayer::stop);
|
||||
});
|
||||
}
|
||||
|
||||
QString DeclarativeMprisPlayer::playerName() const {
|
||||
return m_mpris.playerName();
|
||||
}
|
||||
|
||||
void DeclarativeMprisPlayer::setPlayerName(const QString &name) {
|
||||
m_mpris.setPlayerName(name);
|
||||
Q_EMIT playerNameChanged();
|
||||
}
|
||||
|
||||
DeclarativeMprisPlayer::PlaybackState DeclarativeMprisPlayer::playbackState() {
|
||||
return PlaybackState(m_mpris.player()->playbackState());
|
||||
}
|
||||
|
||||
void DeclarativeMprisPlayer::setPlaybackState(PlaybackState state) {
|
||||
m_mpris.player()->setPlaybackState(MediaPlayer2Player::PlaybackState(state));
|
||||
}
|
||||
|
||||
void DeclarativeMprisPlayer::setAlbum(const QString &album) {
|
||||
m_mpris.player()->setCurrentTrackAlbum(album);
|
||||
}
|
||||
|
||||
QString DeclarativeMprisPlayer::album() const {
|
||||
return m_mpris.player()->currentTrackAlbum();
|
||||
}
|
||||
|
||||
QUrl DeclarativeMprisPlayer::albumArt() const {
|
||||
return m_mpris.player()->currentTrackCoverArt();
|
||||
}
|
||||
|
||||
void DeclarativeMprisPlayer::setAlbumArt(const QUrl &url) {
|
||||
m_mpris.player()->setCurrentTrackCoverArt(url);
|
||||
}
|
||||
|
||||
QString DeclarativeMprisPlayer::trackTitle() const
|
||||
{
|
||||
return m_mpris.player()->currentTrackTitle();
|
||||
}
|
||||
|
||||
void DeclarativeMprisPlayer::setTrackTitle(const QString &title)
|
||||
{
|
||||
m_mpris.player()->setCurrentTrackTitle(title);
|
||||
}
|
||||
|
||||
void DeclarativeMprisPlayer::setTrackDuration(qlonglong trackDuration)
|
||||
{
|
||||
return m_mpris.player()->setDuration(trackDuration);
|
||||
}
|
||||
qlonglong DeclarativeMprisPlayer::trackDuration() const { return 0; }
|
||||
@@ -0,0 +1,66 @@
|
||||
#pragma once
|
||||
|
||||
#include <QObject>
|
||||
|
||||
#include "mediaplayer2player.h"
|
||||
#include "mpris2.h"
|
||||
|
||||
|
||||
class DeclarativeMprisPlayer : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
Q_PROPERTY(QString playerName READ playerName WRITE setPlayerName NOTIFY playerNameChanged)
|
||||
Q_PROPERTY(PlaybackState playbackState READ playbackState WRITE setPlaybackState NOTIFY playbackStateChanged)
|
||||
Q_PROPERTY(QString album READ album WRITE setAlbum NOTIFY albumChanged)
|
||||
Q_PROPERTY(QUrl albumArt READ albumArt WRITE setAlbumArt NOTIFY albumArtChanged)
|
||||
Q_PROPERTY(QString trackTitle READ trackTitle WRITE setTrackTitle NOTIFY trackTitleChanged);
|
||||
Q_PROPERTY(qlonglong trackDuration READ trackDuration WRITE setTrackDuration NOTIFY trackDurationChanged);
|
||||
|
||||
|
||||
public:
|
||||
|
||||
enum PlaybackState {
|
||||
PlaybackStopped = MediaPlayer2Player::PlaybackStopped,
|
||||
PlaybackRunning = MediaPlayer2Player::PlaybackRunning,
|
||||
PlaybackPaused = MediaPlayer2Player::PlaybackPaused
|
||||
};
|
||||
Q_ENUM(PlaybackState)
|
||||
|
||||
DeclarativeMprisPlayer();
|
||||
|
||||
QString playerName() const;
|
||||
void setPlayerName(const QString &name);
|
||||
Q_SIGNAL void playerNameChanged();
|
||||
|
||||
PlaybackState playbackState();
|
||||
void setPlaybackState(PlaybackState state);
|
||||
Q_SIGNAL void playbackStateChanged();
|
||||
|
||||
void setAlbum(const QString &album);
|
||||
QString album() const;
|
||||
Q_SIGNAL void albumChanged();
|
||||
|
||||
QUrl albumArt() const;
|
||||
void setAlbumArt(const QUrl &url);
|
||||
Q_SIGNAL void albumArtChanged();
|
||||
|
||||
QString trackTitle() const;
|
||||
void setTrackTitle(const QString &title);
|
||||
Q_SIGNAL void trackTitleChanged();
|
||||
|
||||
qlonglong trackDuration() const;
|
||||
void setTrackDuration(qlonglong trackDuration);
|
||||
Q_SIGNAL void trackDurationChanged();
|
||||
|
||||
Q_SIGNAL void changeVolume();
|
||||
Q_SIGNAL void play();
|
||||
Q_SIGNAL void playPause();
|
||||
Q_SIGNAL void stop();
|
||||
Q_SIGNAL void goPrevious();
|
||||
Q_SIGNAL void goNext();
|
||||
|
||||
private:
|
||||
Mpris2 m_mpris;
|
||||
};
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
// SPDX-FileCopyrightText: 2014 (c) Sujith Haridasan <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2014 (c) Ashish Madeti <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <[email protected]>
|
||||
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "mediaplayer2.h"
|
||||
|
||||
#include <QCoreApplication>
|
||||
|
||||
#include <KAboutData>
|
||||
|
||||
MediaPlayer2::MediaPlayer2(QObject* parent)
|
||||
: QDBusAbstractAdaptor(parent)
|
||||
{
|
||||
}
|
||||
|
||||
MediaPlayer2::~MediaPlayer2()
|
||||
= default;
|
||||
|
||||
bool MediaPlayer2::CanQuit() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
bool MediaPlayer2::CanRaise() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
bool MediaPlayer2::HasTrackList() const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
void MediaPlayer2::Quit()
|
||||
{
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
void MediaPlayer2::Raise()
|
||||
{
|
||||
Q_EMIT raisePlayer();
|
||||
}
|
||||
|
||||
QString MediaPlayer2::Identity() const
|
||||
{
|
||||
return KAboutData::applicationData().displayName();
|
||||
}
|
||||
|
||||
QString MediaPlayer2::DesktopEntry() const
|
||||
{
|
||||
return KAboutData::applicationData().desktopFileName();
|
||||
}
|
||||
|
||||
QStringList MediaPlayer2::SupportedUriSchemes() const
|
||||
{
|
||||
return QStringList() << QStringLiteral("file");
|
||||
}
|
||||
|
||||
QStringList MediaPlayer2::SupportedMimeTypes() const
|
||||
{
|
||||
// KService::Ptr app = KService::serviceByDesktopName(KCmdLineArgs::aboutData()->appName());
|
||||
|
||||
// if (app) {
|
||||
// return app->mimeTypes();
|
||||
// }
|
||||
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
#include "moc_mediaplayer2.cpp"
|
||||
@@ -0,0 +1,51 @@
|
||||
/***************************************************************************
|
||||
SPDX-FileCopyrightText: 2014 (c) Sujith Haridasan <[email protected]>
|
||||
SPDX-FileCopyrightText: 2014 (c) Ashish Madeti <[email protected]>
|
||||
SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <[email protected]>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
***************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QDBusAbstractAdaptor>
|
||||
#include <QStringList>
|
||||
|
||||
|
||||
class MediaPlayer2 : public QDBusAbstractAdaptor
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_CLASSINFO("D-Bus Interface", "org.mpris.MediaPlayer2") // Docs: https://specifications.freedesktop.org/mpris-spec/latest/Media_Player.html
|
||||
|
||||
Q_PROPERTY(bool CanQuit READ CanQuit CONSTANT)
|
||||
Q_PROPERTY(bool CanRaise READ CanRaise CONSTANT)
|
||||
Q_PROPERTY(bool HasTrackList READ HasTrackList CONSTANT)
|
||||
|
||||
Q_PROPERTY(QString Identity READ Identity CONSTANT)
|
||||
Q_PROPERTY(QString DesktopEntry READ DesktopEntry CONSTANT)
|
||||
|
||||
Q_PROPERTY(QStringList SupportedUriSchemes READ SupportedUriSchemes CONSTANT)
|
||||
Q_PROPERTY(QStringList SupportedMimeTypes READ SupportedMimeTypes CONSTANT)
|
||||
|
||||
public:
|
||||
explicit MediaPlayer2(QObject* parent = nullptr);
|
||||
~MediaPlayer2() override;
|
||||
|
||||
[[nodiscard]] bool CanQuit() const;
|
||||
[[nodiscard]] bool CanRaise() const;
|
||||
[[nodiscard]] bool HasTrackList() const;
|
||||
|
||||
[[nodiscard]] QString Identity() const;
|
||||
[[nodiscard]] QString DesktopEntry() const;
|
||||
|
||||
[[nodiscard]] QStringList SupportedUriSchemes() const;
|
||||
[[nodiscard]] QStringList SupportedMimeTypes() const;
|
||||
|
||||
public Q_SLOTS:
|
||||
void Quit();
|
||||
void Raise();
|
||||
|
||||
Q_SIGNALS:
|
||||
void raisePlayer();
|
||||
|
||||
};
|
||||
@@ -0,0 +1,383 @@
|
||||
// SPDX-FileCopyrightText: 2014 (c) Sujith Haridasan <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2014 (c) Ashish Madeti <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2022 (c) Jonah Brüchert <[email protected]>
|
||||
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#include "mediaplayer2player.h"
|
||||
|
||||
#include <QStringList>
|
||||
#include <QStringBuilder>
|
||||
#include <QDBusConnection>
|
||||
#include <QMetaClassInfo>
|
||||
|
||||
#include <QImage>
|
||||
#include <QBuffer>
|
||||
|
||||
|
||||
constexpr double MAX_RATE = 1.0;
|
||||
constexpr const double MIN_RATE = 1.0;
|
||||
|
||||
MediaPlayer2Player::MediaPlayer2Player(QObject* parent)
|
||||
: QDBusAbstractAdaptor(parent)
|
||||
{
|
||||
m_volume = 0; // TODO
|
||||
m_canPlay = true; // TODO
|
||||
signalPropertiesChange(QStringLiteral("Volume"), Volume());
|
||||
|
||||
m_mediaPlayerPresent = 1;
|
||||
}
|
||||
|
||||
MediaPlayer2Player::~MediaPlayer2Player() = default;
|
||||
|
||||
QString MediaPlayer2Player::PlaybackStatus() const
|
||||
{
|
||||
switch (m_playbackState) {
|
||||
case PlaybackStopped:
|
||||
return QStringLiteral("Stopped");
|
||||
case PlaybackRunning:
|
||||
return QStringLiteral("Playing");
|
||||
case PlaybackPaused:
|
||||
return QStringLiteral("Paused");
|
||||
}
|
||||
|
||||
Q_UNREACHABLE();
|
||||
}
|
||||
|
||||
bool MediaPlayer2Player::CanGoNext() const
|
||||
{
|
||||
return m_canGoNext;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::Next()
|
||||
{
|
||||
Q_EMIT next();
|
||||
}
|
||||
|
||||
bool MediaPlayer2Player::CanGoPrevious() const
|
||||
{
|
||||
return m_canGoPrevious;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::Previous()
|
||||
{
|
||||
Q_EMIT previous();
|
||||
}
|
||||
|
||||
bool MediaPlayer2Player::CanPause() const
|
||||
{
|
||||
return m_canPlay;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::Pause()
|
||||
{
|
||||
Q_EMIT pause();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::PlayPause()
|
||||
{
|
||||
Q_EMIT playPause();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::Stop()
|
||||
{
|
||||
Q_EMIT stop();
|
||||
}
|
||||
|
||||
bool MediaPlayer2Player::CanPlay() const
|
||||
{
|
||||
return m_canPlay;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::Play()
|
||||
{
|
||||
Q_EMIT play();
|
||||
}
|
||||
|
||||
double MediaPlayer2Player::Volume() const
|
||||
{
|
||||
return m_volume;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setVolume(double volume)
|
||||
{
|
||||
m_volume = qBound(0.0, volume, 1.0);
|
||||
Q_EMIT volumeChanged(m_volume);
|
||||
|
||||
signalPropertiesChange(QStringLiteral("Volume"), Volume());
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setPropertyPosition(int newPositionInMs)
|
||||
{
|
||||
// TODO
|
||||
}
|
||||
|
||||
QVariantMap MediaPlayer2Player::Metadata() const
|
||||
{
|
||||
return m_metadata;
|
||||
}
|
||||
|
||||
qlonglong MediaPlayer2Player::Position() const
|
||||
{
|
||||
return m_position;
|
||||
}
|
||||
|
||||
double MediaPlayer2Player::Rate() const
|
||||
{
|
||||
return m_rate;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setRate(double newRate)
|
||||
{
|
||||
if (newRate <= 0.0001 && newRate >= -0.0001) {
|
||||
Pause();
|
||||
} else {
|
||||
m_rate = qBound(MinimumRate(), newRate, MaximumRate());
|
||||
Q_EMIT rateChanged(m_rate);
|
||||
|
||||
signalPropertiesChange(QStringLiteral("Rate"), Rate());
|
||||
}
|
||||
}
|
||||
|
||||
double MediaPlayer2Player::MinimumRate() const
|
||||
{
|
||||
return MIN_RATE;
|
||||
}
|
||||
|
||||
double MediaPlayer2Player::MaximumRate() const
|
||||
{
|
||||
return MAX_RATE;
|
||||
}
|
||||
|
||||
bool MediaPlayer2Player::CanSeek() const
|
||||
{
|
||||
return m_playerIsSeekableChanged;
|
||||
}
|
||||
|
||||
bool MediaPlayer2Player::CanControl() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::Seek(qlonglong Offset)
|
||||
{
|
||||
Q_EMIT seek(Offset);
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::SetPosition(const QDBusObjectPath &trackId, qlonglong pos)
|
||||
{
|
||||
Q_EMIT positionRequested(pos);
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::OpenUri(const QString &uri)
|
||||
{
|
||||
Q_UNUSED(uri);
|
||||
}
|
||||
|
||||
//void MediaPlayer2Player::playerSourceChanged()
|
||||
//{
|
||||
// setCurrentTrack(m_manageAudioPlayer->playListPosition());
|
||||
//}
|
||||
|
||||
void MediaPlayer2Player::playControlEnabledChanged()
|
||||
{
|
||||
signalPropertiesChange(QStringLiteral("CanPause"), CanPause());
|
||||
signalPropertiesChange(QStringLiteral("CanPlay"), CanPlay());
|
||||
|
||||
Q_EMIT canPauseChanged();
|
||||
Q_EMIT canPlayChanged();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::skipBackwardControlEnabledChanged()
|
||||
{
|
||||
signalPropertiesChange(QStringLiteral("CanGoPrevious"), CanGoPrevious());
|
||||
Q_EMIT canGoPreviousChanged();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::skipForwardControlEnabledChanged()
|
||||
{
|
||||
signalPropertiesChange(QStringLiteral("CanGoNext"), CanGoNext());
|
||||
Q_EMIT canGoNextChanged();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::playerPlaybackStateChanged()
|
||||
{
|
||||
signalPropertiesChange(QStringLiteral("PlaybackStatus"), PlaybackStatus());
|
||||
Q_EMIT playbackStatusChanged();
|
||||
|
||||
playerIsSeekableChanged();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::playerIsSeekableChanged()
|
||||
{
|
||||
signalPropertiesChange(QStringLiteral("CanSeek"), CanSeek());
|
||||
Q_EMIT canSeekChanged();
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::audioPositionChanged()
|
||||
{
|
||||
setPropertyPosition(m_position);
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::playerSeeked(qint64 position)
|
||||
{
|
||||
Q_EMIT Seeked(position * 1000);
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::audioDurationChanged()
|
||||
{
|
||||
m_metadata = getMetadataOfCurrentTrack();
|
||||
signalPropertiesChange(QStringLiteral("Metadata"), Metadata());
|
||||
|
||||
skipBackwardControlEnabledChanged();
|
||||
skipForwardControlEnabledChanged();
|
||||
playerPlaybackStateChanged();
|
||||
playerIsSeekableChanged();
|
||||
setPropertyPosition(m_position);
|
||||
}
|
||||
|
||||
QVariantMap MediaPlayer2Player::getMetadataOfCurrentTrack()
|
||||
{
|
||||
auto result = QVariantMap();
|
||||
|
||||
if (m_currentTrackId.isEmpty()) {
|
||||
return {};
|
||||
}
|
||||
|
||||
result[QStringLiteral("mpris:trackid")] = QVariant::fromValue<QDBusObjectPath>(QDBusObjectPath(m_currentTrackId));
|
||||
result[QStringLiteral("mpris:length")] = m_duration * 1000;
|
||||
//convert milli-seconds into micro-seconds
|
||||
result[QStringLiteral("xesam:title")] = m_currentTrackTitle;
|
||||
result[QStringLiteral("xesam:url")] = m_currentTrackUrl;
|
||||
result[QStringLiteral("xesam:album")] = m_currentTrackAlbum;
|
||||
result[QStringLiteral("xesam:artist")] = m_currentTrackArtist;
|
||||
result[QStringLiteral("mpris:artUrl")] = m_coverArtUrl;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
int MediaPlayer2Player::mediaPlayerPresent() const
|
||||
{
|
||||
return m_mediaPlayerPresent;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setDuration(qlonglong duration) {
|
||||
m_duration = duration;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setPlaybackState(PlaybackState newState)
|
||||
{
|
||||
m_playbackState = newState;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCurrentTrackTitle(const QString &title)
|
||||
{
|
||||
m_currentTrackTitle = title;
|
||||
}
|
||||
|
||||
QString MediaPlayer2Player::currentTrackTitle() const
|
||||
{
|
||||
return m_currentTrackTitle;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCurrentTrackUrl(const QUrl &url)
|
||||
{
|
||||
m_currentTrackUrl = url;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCurrentTrackAlbum(const QString &album)
|
||||
{
|
||||
m_currentTrackAlbum = album;
|
||||
}
|
||||
|
||||
QString MediaPlayer2Player::currentTrackAlbum() const
|
||||
{
|
||||
return m_currentTrackAlbum;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCurrentTrackArtist(const QString &artist)
|
||||
{
|
||||
m_currentTrackArtist = artist;
|
||||
}
|
||||
|
||||
QString MediaPlayer2Player::currentTrackArtist() const
|
||||
{
|
||||
return m_currentTrackArtist;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCurrentTrackCoverArt(const QUrl &url)
|
||||
{
|
||||
m_coverArtUrl = url;
|
||||
}
|
||||
|
||||
QUrl MediaPlayer2Player::currentTrackCoverArt() const
|
||||
{
|
||||
return m_coverArtUrl;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCurrentTrackCoverArt(const QImage &image)
|
||||
{
|
||||
QByteArray data;
|
||||
QBuffer buffer(&data);
|
||||
image.save(&buffer);
|
||||
m_coverArtUrl = QUrl(QString("data:image/png;base64," % data));
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setCanGoPrevious(bool value)
|
||||
{
|
||||
m_canGoPrevious = value;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::canGoForward(bool value)
|
||||
{
|
||||
m_canGoNext = value;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::canPause(bool value)
|
||||
{
|
||||
m_canPause = value;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::canPlay(bool value)
|
||||
{
|
||||
m_canPlay = value;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setPosition(qlonglong position) {
|
||||
m_position = position;
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::setMediaPlayerPresent(int status)
|
||||
{
|
||||
if (m_mediaPlayerPresent != status) {
|
||||
m_mediaPlayerPresent = status;
|
||||
Q_EMIT mediaPlayerPresentChanged();
|
||||
|
||||
signalPropertiesChange(QStringLiteral("CanGoNext"), CanGoNext());
|
||||
signalPropertiesChange(QStringLiteral("CanGoPrevious"), CanGoPrevious());
|
||||
signalPropertiesChange(QStringLiteral("CanPause"), CanPause());
|
||||
signalPropertiesChange(QStringLiteral("CanPlay"), CanPlay());
|
||||
Q_EMIT canGoNextChanged();
|
||||
Q_EMIT canGoPreviousChanged();
|
||||
Q_EMIT canPauseChanged();
|
||||
Q_EMIT canPlayChanged();
|
||||
}
|
||||
}
|
||||
|
||||
void MediaPlayer2Player::signalPropertiesChange(const QString &property, const QVariant &value)
|
||||
{
|
||||
QVariantMap properties;
|
||||
properties[property] = value;
|
||||
const int ifaceIndex = metaObject()->indexOfClassInfo("D-Bus Interface");
|
||||
QDBusMessage msg = QDBusMessage::createSignal(QStringLiteral("/org/mpris/MediaPlayer2"),
|
||||
QStringLiteral("org.freedesktop.DBus.Properties"), QStringLiteral("PropertiesChanged"));
|
||||
|
||||
msg << QLatin1String(metaObject()->classInfo(ifaceIndex).value());
|
||||
msg << properties;
|
||||
msg << QStringList();
|
||||
|
||||
QDBusConnection::sessionBus().send(msg);
|
||||
}
|
||||
|
||||
#include "moc_mediaplayer2player.cpp"
|
||||
@@ -0,0 +1,244 @@
|
||||
// SPDX-FileCopyrightText: 2014 (c) Sujith Haridasan <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2014 (c) Ashish Madeti <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <[email protected]>
|
||||
// SPDX-FileCopyrightText: 2022 (c) Jonah Brüchert <[email protected]>
|
||||
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QDBusAbstractAdaptor>
|
||||
#include <QDBusObjectPath>
|
||||
#include <QDBusMessage>
|
||||
#include <QUrl>
|
||||
|
||||
class MediaPlayListProxyModel;
|
||||
class ManageAudioPlayer;
|
||||
class ManageMediaPlayerControl;
|
||||
class ManageHeaderBar;
|
||||
class AudioWrapper;
|
||||
|
||||
class MediaPlayer2Player : public QDBusAbstractAdaptor
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_CLASSINFO("D-Bus Interface", "org.mpris.MediaPlayer2.Player") // Docs: https://specifications.freedesktop.org/mpris-spec/latest/Player_Interface.html
|
||||
|
||||
Q_PROPERTY(QString PlaybackStatus READ PlaybackStatus NOTIFY playbackStatusChanged)
|
||||
Q_PROPERTY(double Rate READ Rate WRITE setRate NOTIFY rateChanged)
|
||||
Q_PROPERTY(QVariantMap Metadata READ Metadata NOTIFY playbackStatusChanged)
|
||||
Q_PROPERTY(double Volume READ Volume WRITE setVolume NOTIFY volumeChanged)
|
||||
Q_PROPERTY(qlonglong Position READ Position WRITE setPropertyPosition NOTIFY playbackStatusChanged)
|
||||
Q_PROPERTY(double MinimumRate READ MinimumRate CONSTANT)
|
||||
Q_PROPERTY(double MaximumRate READ MaximumRate CONSTANT)
|
||||
Q_PROPERTY(bool CanGoNext READ CanGoNext NOTIFY canGoNextChanged)
|
||||
Q_PROPERTY(bool CanGoPrevious READ CanGoPrevious NOTIFY canGoPreviousChanged)
|
||||
Q_PROPERTY(bool CanPlay READ CanPlay NOTIFY canPlayChanged)
|
||||
Q_PROPERTY(bool CanPause READ CanPause NOTIFY canPauseChanged)
|
||||
Q_PROPERTY(bool CanControl READ CanControl NOTIFY canControlChanged)
|
||||
Q_PROPERTY(bool CanSeek READ CanSeek NOTIFY canSeekChanged)
|
||||
Q_PROPERTY(int mediaPlayerPresent READ mediaPlayerPresent WRITE setMediaPlayerPresent NOTIFY mediaPlayerPresentChanged)
|
||||
|
||||
public:
|
||||
explicit MediaPlayer2Player(QObject* parent = nullptr);
|
||||
~MediaPlayer2Player() override;
|
||||
|
||||
QString PlaybackStatus() const;
|
||||
double Rate() const;
|
||||
QVariantMap Metadata() const;
|
||||
double Volume() const;
|
||||
qlonglong Position() const;
|
||||
double MinimumRate() const;
|
||||
double MaximumRate() const;
|
||||
bool CanGoNext() const;
|
||||
bool CanGoPrevious() const;
|
||||
bool CanPlay() const;
|
||||
bool CanPause() const;
|
||||
bool CanSeek() const;
|
||||
bool CanControl() const;
|
||||
int currentTrack() const;
|
||||
int mediaPlayerPresent() const;
|
||||
|
||||
void setDesktopFileName(const QString &fileName);
|
||||
|
||||
///
|
||||
/// Signal to the mpris interface that the playback is now at a new position
|
||||
///
|
||||
void setPosition(qlonglong pos);
|
||||
|
||||
///
|
||||
/// Signal the length of the current track to the mpris interface
|
||||
///
|
||||
void setDuration(qlonglong duration);
|
||||
|
||||
enum PlaybackState {
|
||||
PlaybackStopped,
|
||||
PlaybackRunning,
|
||||
PlaybackPaused
|
||||
};
|
||||
|
||||
///
|
||||
/// Set the current playback state
|
||||
///
|
||||
void setPlaybackState(PlaybackState newState);
|
||||
PlaybackState playbackState() const {
|
||||
return m_playbackState;
|
||||
}
|
||||
|
||||
///
|
||||
/// Set the current track's title
|
||||
///
|
||||
void setCurrentTrackTitle(const QString &title);
|
||||
QString currentTrackTitle() const;
|
||||
|
||||
///
|
||||
/// Set the current track's URL
|
||||
///
|
||||
void setCurrentTrackUrl(const QUrl &url);
|
||||
|
||||
///
|
||||
/// Set the album of the currently playing track
|
||||
///
|
||||
void setCurrentTrackAlbum(const QString &album);
|
||||
QString currentTrackAlbum() const;
|
||||
|
||||
///
|
||||
/// Set current track's artist
|
||||
///
|
||||
void setCurrentTrackArtist(const QString &artist);
|
||||
QString currentTrackArtist() const;
|
||||
|
||||
///
|
||||
/// Set cover art url
|
||||
///
|
||||
void setCurrentTrackCoverArt(const QUrl &url);
|
||||
QUrl currentTrackCoverArt() const;
|
||||
|
||||
///
|
||||
/// Set cover art image
|
||||
///
|
||||
void setCurrentTrackCoverArt(const QImage &image);
|
||||
|
||||
void setCanGoPrevious(bool);
|
||||
void canGoForward(bool);
|
||||
void canPause(bool value);
|
||||
void canPlay(bool value);
|
||||
|
||||
Q_SIGNALS:
|
||||
void Seeked(qlonglong Position);
|
||||
|
||||
void rateChanged(double newRate);
|
||||
|
||||
///
|
||||
/// Emitted when the volume should be changed to newVol
|
||||
///
|
||||
void volumeChanged(double newVol);
|
||||
void playbackStatusChanged();
|
||||
void canGoNextChanged();
|
||||
void canGoPreviousChanged();
|
||||
void canPlayChanged();
|
||||
void canPauseChanged();
|
||||
void canControlChanged();
|
||||
void canSeekChanged();
|
||||
void currentTrackChanged();
|
||||
void mediaPlayerPresentChanged();
|
||||
|
||||
///
|
||||
/// Emitted when the player should skip to the next track
|
||||
///
|
||||
void next();
|
||||
|
||||
///
|
||||
/// Emitted when it is requested to skip to the previous track
|
||||
/// over the MPRIS interface
|
||||
///
|
||||
void previous();
|
||||
|
||||
///
|
||||
/// Emitted when play / pause should be toggled
|
||||
///
|
||||
void playPause();
|
||||
|
||||
///
|
||||
/// Emitted when the playback should be stopped
|
||||
///
|
||||
void stop();
|
||||
|
||||
///
|
||||
/// Emitted when playback should be resumed
|
||||
///
|
||||
void play();
|
||||
|
||||
///
|
||||
/// Emitted when the player should seek
|
||||
///
|
||||
void seek(qlonglong offset);
|
||||
|
||||
///
|
||||
/// Emitted when the player should skip to the given position
|
||||
///
|
||||
void positionRequested(qlonglong position);
|
||||
|
||||
public Q_SLOTS:
|
||||
|
||||
void Next();
|
||||
void Previous();
|
||||
void Pause();
|
||||
void PlayPause();
|
||||
void Stop();
|
||||
void Play();
|
||||
void Seek(qlonglong Offset);
|
||||
void SetPosition(const QDBusObjectPath &trackId, qlonglong pos);
|
||||
void OpenUri(const QString &uri);
|
||||
|
||||
private Q_SLOTS:
|
||||
|
||||
void playControlEnabledChanged();
|
||||
|
||||
void skipBackwardControlEnabledChanged();
|
||||
|
||||
void skipForwardControlEnabledChanged();
|
||||
|
||||
void playerPlaybackStateChanged();
|
||||
|
||||
void playerIsSeekableChanged();
|
||||
|
||||
void audioPositionChanged();
|
||||
|
||||
void playerSeeked(qint64 position);
|
||||
|
||||
void audioDurationChanged();
|
||||
|
||||
private:
|
||||
void signalPropertiesChange(const QString &property, const QVariant &value);
|
||||
|
||||
void setMediaPlayerPresent(int status);
|
||||
void setRate(double newRate);
|
||||
void setVolume(double volume);
|
||||
void setPropertyPosition(int newPositionInMs);
|
||||
|
||||
QVariantMap getMetadataOfCurrentTrack();
|
||||
|
||||
QVariantMap m_metadata;
|
||||
QString m_currentTrack;
|
||||
QString m_currentTrackId;
|
||||
double m_rate = 1.0;
|
||||
double m_volume = 0.0;
|
||||
int m_mediaPlayerPresent = 0;
|
||||
bool m_canPause = true;
|
||||
bool m_canPlay = false;
|
||||
bool m_canGoNext = false;
|
||||
bool m_canGoPrevious = false;
|
||||
qlonglong m_position = 0;
|
||||
bool m_playerIsSeekableChanged = false;
|
||||
mutable QDBusMessage mProgressIndicatorSignal;
|
||||
int mPreviousProgressPosition = 0;
|
||||
|
||||
// Current track metadata
|
||||
qlonglong m_duration;
|
||||
PlaybackState m_playbackState = PlaybackStopped;
|
||||
QString m_currentTrackTitle;
|
||||
QUrl m_currentTrackUrl;
|
||||
QString m_currentTrackAlbum;
|
||||
QString m_currentTrackArtist;
|
||||
QUrl m_coverArtUrl;
|
||||
};
|
||||
@@ -0,0 +1,79 @@
|
||||
/***************************************************************************
|
||||
SPDX-FileCopyrightText: 2014 (c) Sujith Haridasan <[email protected]>
|
||||
SPDX-FileCopyrightText: 2014 (c) Ashish Madeti <[email protected]>
|
||||
SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <[email protected]>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
***************************************************************************/
|
||||
|
||||
#include "mpris2.h"
|
||||
#include "mediaplayer2.h"
|
||||
#include "mediaplayer2player.h"
|
||||
|
||||
#include <QDBusConnection>
|
||||
|
||||
|
||||
#if defined Q_OS_WIN
|
||||
#include <Windows.h>
|
||||
#else
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
Mpris2::Mpris2(QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
}
|
||||
|
||||
void Mpris2::initDBusService()
|
||||
{
|
||||
QString mspris2Name(QStringLiteral("org.mpris.MediaPlayer2.") + m_playerName);
|
||||
|
||||
bool success = QDBusConnection::sessionBus().registerService(mspris2Name);
|
||||
|
||||
// If the above failed, it's likely because we're not the first instance
|
||||
// or the name is already taken. In that event the MPRIS2 spec wants the
|
||||
// following:
|
||||
if (!success) {
|
||||
#if defined Q_OS_WIN
|
||||
success = QDBusConnection::sessionBus().registerService(mspris2Name + QLatin1String(".instance") + QString::number(GetCurrentProcessId()));
|
||||
#else
|
||||
success = QDBusConnection::sessionBus().registerService(mspris2Name + QLatin1String(".instance") + QString::number(getpid()));
|
||||
#endif
|
||||
}
|
||||
|
||||
if (success) {
|
||||
m_mp2 = std::make_unique<MediaPlayer2>(this);
|
||||
m_mp2p = std::make_unique<MediaPlayer2Player>(this);
|
||||
|
||||
QDBusConnection::sessionBus().registerObject(QStringLiteral("/org/mpris/MediaPlayer2"), this, QDBusConnection::ExportAdaptors);
|
||||
|
||||
connect(m_mp2.get(), &MediaPlayer2::raisePlayer, this, &Mpris2::raisePlayer);
|
||||
}
|
||||
}
|
||||
|
||||
Mpris2::~Mpris2()
|
||||
= default;
|
||||
|
||||
QString Mpris2::playerName() const
|
||||
{
|
||||
return m_playerName;
|
||||
}
|
||||
|
||||
void Mpris2::setPlayerName(const QString &playerName)
|
||||
{
|
||||
if (m_playerName == playerName) {
|
||||
return;
|
||||
}
|
||||
|
||||
m_playerName = playerName;
|
||||
|
||||
if (!m_playerName.isEmpty()) {
|
||||
if (!m_mp2) {
|
||||
initDBusService();
|
||||
}
|
||||
}
|
||||
|
||||
Q_EMIT playerNameChanged();
|
||||
}
|
||||
|
||||
#include "moc_mpris2.cpp"
|
||||
@@ -0,0 +1,63 @@
|
||||
/***************************************************************************
|
||||
SPDX-FileCopyrightText: 2014 (c) Sujith Haridasan <[email protected]>
|
||||
SPDX-FileCopyrightText: 2014 (c) Ashish Madeti <[email protected]>
|
||||
SPDX-FileCopyrightText: 2016 (c) Matthieu Gallien <[email protected]>
|
||||
|
||||
SPDX-License-Identifier: GPL-3.0-or-later
|
||||
***************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QObject>
|
||||
#include <memory>
|
||||
|
||||
class MediaPlayer2;
|
||||
class MediaPlayer2Player;
|
||||
|
||||
class Mpris2 : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
Q_PROPERTY(QString playerName
|
||||
READ playerName
|
||||
WRITE setPlayerName
|
||||
NOTIFY playerNameChanged)
|
||||
|
||||
public:
|
||||
explicit Mpris2(QObject* parent = nullptr);
|
||||
~Mpris2() override;
|
||||
|
||||
[[nodiscard]] QString playerName() const;
|
||||
|
||||
MediaPlayer2Player *player() const {
|
||||
return m_mp2p.get();
|
||||
}
|
||||
|
||||
void setPlayerName(const QString &playerName);
|
||||
|
||||
Q_SIGNALS:
|
||||
void raisePlayer();
|
||||
|
||||
void playerNameChanged();
|
||||
|
||||
void playListModelChanged();
|
||||
|
||||
void audioPlayerManagerChanged();
|
||||
|
||||
void manageMediaPlayerControlChanged();
|
||||
|
||||
void headerBarManagerChanged();
|
||||
|
||||
void audioPlayerChanged();
|
||||
|
||||
void showProgressOnTaskBarChanged();
|
||||
|
||||
private:
|
||||
|
||||
void initDBusService();
|
||||
|
||||
std::unique_ptr<MediaPlayer2> m_mp2;
|
||||
std::unique_ptr<MediaPlayer2Player> m_mp2p;
|
||||
QString m_playerName;
|
||||
bool mShowProgressOnTaskBar = true;
|
||||
};
|
||||
@@ -18,5 +18,6 @@ SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted
|
||||
<file alias="MaximizedPlayerPage.qml">contents/ui/MaximizedPlayerPage.qml</file>
|
||||
<file>migrations/2022-05-20-194850_init/down.sql</file>
|
||||
<file>migrations/2022-05-20-194850_init/up.sql</file>
|
||||
<file alias="PlaybackHistory.qml">contents/ui/PlaybackHistory.qml</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
+2
-1
@@ -5,6 +5,7 @@
|
||||
#include "ytmusic.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <iostream>
|
||||
|
||||
#include <pybind11/embed.h>
|
||||
#include <pybind11/stl.h>
|
||||
@@ -358,7 +359,7 @@ artist::Artist YTMusic::get_artist(const std::string &channel_id) const
|
||||
artist["views"].cast<std::optional<std::string>>(),
|
||||
artist["name"].cast<std::string>(),
|
||||
artist["channelId"].cast<std::string>(),
|
||||
artist["subscribers"].cast<std::string>(),
|
||||
artist["subscribers"].cast<std::optional<std::string>>(),
|
||||
artist["subscribed"].cast<bool>(),
|
||||
extract_py_list<meta::Thumbnail>(artist["thumbnails"]),
|
||||
extract_artist_section<artist::Artist::Song>(artist, "songs"),
|
||||
|
||||
+1
-1
@@ -131,7 +131,7 @@ struct Artist {
|
||||
std::optional<std::string> views;
|
||||
std::string name;
|
||||
std::string channel_id;
|
||||
std::string subscribers;
|
||||
std::optional<std::string> subscribers;
|
||||
bool subscribed;
|
||||
std::vector<meta::Thumbnail> thumbnails;
|
||||
std::optional<Section<Song>> songs;
|
||||
|
||||
Reference in new issue
Block a user