Compare commits

...

112 Commits

Author SHA1 Message Date
sr093906 8e91fc1fa4
Update Simplified Chinese Strings (#1610) 2024-02-14 03:49:57 -07:00
auouymous a370de87b2
Merge pull request #1603 from auouymous/extract-youtube-channel-id-from-url
Extract YouTube channel ID from URL.
2024-02-14 03:44:23 -07:00
auouymous d3e01d625d
Merge pull request #1601 from tpikonen/desktopfile-dirs
Modernize userappsdirs
2024-02-02 20:11:40 -07:00
auouymous a3adbf2376 Extract YouTube channel ID from URL.
The youtube-dl extension extracts channel ID from the feed URL to update
channel description and coverart. When the feed URL is temporarily not
available, these checks throw an error. This not only fixes the error,
but also eliminates two network requests per feed update when using the
extension.
2024-02-02 19:54:42 -07:00
Teemu Ikonen 299c20a54e Remove '/usr/share/applications/kde/' from userappsdirs
It seems KDE does not use this directory any more.
2024-01-26 12:30:04 +02:00
Teemu Ikonen 4f120fee46 Add flatpak and local app paths to userappsdirs, do tilde expansion 2024-01-26 12:22:40 +02:00
auouymous f6de1b989c
Merge pull request #1595 from tpikonen/portal-settings-dark-mode
Add color scheme (dark and light mode) support
2024-01-23 04:26:39 -07:00
auouymous 38f8018b67
Merge pull request #1583 from TheNightRider12/master
Add PotPlayer Support For Windows
2024-01-13 23:57:05 -07:00
Teemu Ikonen 92244d6309 Add color scheme (dark and light mode) support
Add 'ui.gtk.color_scheme' config variable with 'system', 'light' and
'dark' string values. Config observer in main.py changes the color to
match the config.

System color scheme is read from freedesktop.org Settings portal via
Dbus.

The setting can be changed with a combo box in the preferences window
via new function connect_gtk_combo_box_text(). If Settings portal cannot
be found, only 'light' and 'dark' options are available in preferences.
2024-01-04 11:48:42 +02:00
auouymous e63b339d88
Merge pull request #1585 from tpikonen/codestyle
Fix or ignore more flake8 checks
2023-11-28 01:42:43 -07:00
auouymous 4e9320b834
Merge pull request #1587 from auouymous/youtube-channel-ID-prefix
YouTube feeds no longer contain the required 'UC' prefix on channel ID.
2023-11-28 01:26:06 -07:00
Teemu Ikonen e90e2ebc4f Add noqa comments for macpython constants, fixes flake8 F403,F405 2023-11-23 15:18:26 +02:00
Teemu Ikonen 85b13e6918 Use double quotes to avoid escaping, fixes flake8 Q003 2023-11-23 15:18:26 +02:00
Teemu Ikonen fed80ecf11 Use double quotes for docstrings, fixes flake8 Q002 2023-11-23 15:18:26 +02:00
Teemu Ikonen a965f1a29a Remove unnecessary multiline quotes, fixes flake8 Q001 2023-11-23 15:18:26 +02:00
Teemu Ikonen 6f8877e632 Use 'NotImplementedError', not 'NotImplemented', fixes flake8 F901 2023-11-23 15:18:26 +02:00
Teemu Ikonen 2cc187a940 Remove redefinitions, fixes flake8 check F811 2023-11-23 15:18:26 +02:00
Teemu Ikonen 21327915e0 Fix the use of undefined names, fixes flake8 F821 2023-11-23 15:18:26 +02:00
Teemu Ikonen 28d29f28ab Remove tools/i18n/summary.py
This was used with 'make statistics', which does not exist any more.
2023-11-23 15:18:26 +02:00
Teemu Ikonen 2714efba6b Separate module-level functions with 2 lines, fixes flake8 E302 2023-11-23 15:18:26 +02:00
Teemu Ikonen b3d9644a73 Rewrite gPodderYoutubeDL docstring, fixes flake8 D200 2023-11-23 15:18:26 +02:00
Teemu Ikonen 40157a1241 Move operators to the beginning of line, fixes flake8 W504 2023-11-23 15:18:26 +02:00
Teemu Ikonen 619cda48ef Remove whitespace from blank line, fixes flake8 W293 2023-11-23 15:18:26 +02:00
Teemu Ikonen fb625e47b2 Rename args named like a python keyword, fixes flake8 A002 2023-11-23 15:18:26 +02:00
Teemu Ikonen f200e2ae0a Fix toolbar button sensitivity when switching pages.
Introduced by the in_downloads_list() change in #1572.
2023-11-23 04:00:52 -07:00
auouymous ded70dca2a
Merge pull request #1572 from tpikonen/cleanup
Small cleanups
2023-11-22 05:32:15 -07:00
Teemu Ikonen 1942fc88c0 Replace inject_extensions_menu() with ExtensionMenuHelper 2023-11-22 13:42:02 +02:00
Teemu Ikonen aff0e7b301 MygPoClient: Turn warning on flush into debug msg 2023-11-21 17:01:35 +02:00
Teemu Ikonen a2bd03a506 Store 'remove' action in self.remove_action 2023-11-21 17:01:35 +02:00
Teemu Ikonen 70e1910702 Use new func in_downloads_list() to select the correct treeview 2023-11-21 17:01:35 +02:00
Teemu Ikonen 5f285c181a Remove unused function on_btnEditChannel_clicked() 2023-11-21 17:01:35 +02:00
Teemu Ikonen e1f293eb2d Rename on_btnDownloadedDelete_clicked() to on_delete_activate() 2023-11-21 17:01:35 +02:00
auouymous 5959e971e0 Update urllib3 dependency.
Fixes #1570.
2023-11-20 05:03:48 -07:00
auouymous a1a31db6fd
Merge pull request #1589 from auouymous/fix-windows-launcher-warnings
Change %d to %ld in Windows launcher.
2023-11-20 04:57:34 -07:00
auouymous 9a129cb059 Remove lppPart null check in Windows launcher.
warning: the comparison will always evaluate as 'true' for the address
of 'lppPart' will never be NULL [-Waddress]
2023-11-20 04:14:42 -07:00
auouymous bc93523f69 Change %d to %ld in Windows launcher. 2023-11-20 03:15:30 -07:00
auouymous d62ebea252
Merge pull request #1580 from auouymous/fix-appveyor-build
Fix appveyor build
2023-11-20 03:06:26 -07:00
auouymous 8a4d374190 Remove 'requests' package from setuptools install_requirements.
It causes the appveyor build to fail.
2023-11-20 03:05:18 -07:00
auouymous 62e89ad7b4 Setuptools uses a build directory instead of site-packages. 2023-11-20 03:05:18 -07:00
auouymous 78ea372894 YouTube feeds no longer contain the required 'UC' prefix on channel ID.
Which produces a broken channel URL, and missing description. New
channels will also be missing a thumbnail.

This checks for 22 character IDs and prepends 'UC' to form a valid ID.
Updating all channels with this patch will fix all of the above issues.
2023-11-18 23:56:18 -07:00
Teemu Ikonen 9b9d26ad85 Rename variables named like a python keyword, fixes flake8 A001 2023-11-12 21:17:45 +02:00
Teemu Ikonen 19063b3626 Use raw strings for regexes with escapes, fixes flake8 W605
Add W6 class errors to 'make lint'.
2023-11-12 21:17:45 +02:00
Teemu Ikonen eb7f614cfb Remove unused variables, fixes flake8 check F841
Add the check to 'make lint'.
2023-11-12 21:17:45 +02:00
Teemu Ikonen 75b66353ec Rewrite map+lambda with list comprehension, fixes flake8 C417 2023-11-12 21:17:45 +02:00
Teemu Ikonen a20948b216 Remove unnecessary list comprehension, fixes flake8 C416 2023-11-12 21:17:45 +02:00
Teemu Ikonen cc79b84578 list() around sorted() is unnecessary, fixes flake8 C413 2023-11-12 21:17:45 +02:00
Teemu Ikonen 57f3a6e6ed Use dict literals, not dict(). Fixes flake8 check C408 2023-11-12 21:17:45 +02:00
Teemu Ikonen 904a13391b Remove unnecessary list comprehension, fixes flake8 check C403 2023-11-12 21:17:45 +02:00
Teemu Ikonen cfdab0b149 Use dict comprehensions, fixes flake8 check C402 2023-11-12 21:17:45 +02:00
Teemu Ikonen 9375bf4e26 Use set comprehensions, fixes flake8 check C401 2023-11-12 19:09:21 +02:00
Teemu Ikonen 31ec6fa735 Remove unused imports, fixes flake8 check F401 2023-11-12 19:09:21 +02:00
Teemu Ikonen 9486df5ba0 Remove multiple statements on one line, fixes flake8 check E701
Also add the check to 'make lint'.
2023-11-12 19:09:21 +02:00
Teemu Ikonen cd0cd9ed0f Ignore more flake8 errors 2023-11-12 19:09:21 +02:00
Teemu Ikonen 94e045e8d3 Ignore .mypy_cache in codespell on 'make lint' 2023-11-12 19:09:21 +02:00
TheNightRider12 ff120c9c35 Add PotPlayer Support For Windows 2023-11-11 01:04:20 -08:00
auouymous b8339b8d73 Fix toolbar View menu item always being checked at start.
Introduced by #1293, after the 3.11.4 release.
2023-11-09 23:50:13 -07:00
auouymous 0dce1007e9
Merge pull request #1571 from auouymous/python-3.12
Initial Python 3.12 support
2023-11-03 02:38:10 -06:00
auouymous d110d6289f
Merge pull request #1575 from Piraty/setup-py-dependencies
[WIP] add mandatory dependencies to setup.py
2023-11-03 02:20:02 -06:00
Piraty ecb134cf72
add mandatory dependencies to setup.py 2023-10-27 13:27:00 +02:00
Piraty ab11573e75
prefer `command -v` over non-standard `which` 2023-10-26 01:20:37 +02:00
auouymous 510de4b3a0 Switch from distutils to setuptools. 2023-10-24 03:39:53 -06:00
auouymous 9babe6698b Fix linting issues on Python 3.12. 2023-10-20 03:31:04 -06:00
auouymous dd9b594d24 Replace the removed imp module with importlib. 2023-10-20 03:03:01 -06:00
auouymous 0306eb35a0 Add Python 3.12 to linter. 2023-10-20 02:57:59 -06:00
auouymous 03c22cecd9
Merge pull request #1293 from tpikonen/popover-context
Replace context menus with GtkPopovers
2023-10-11 18:37:49 -06:00
auouymous cac4998119 prepare 3.11.4 release 2023-10-11 17:10:11 -06:00
auouymous 73afa7b924 Bump Mac build to Python 3.11 and osx-bundle 23.10.3. 2023-10-03 22:20:40 -06:00
auouymous 1dbd11ce5e Update urllib3 dependency.
Fixes #1565.
2023-10-02 18:33:13 -06:00
auouymous 1d29027934 prepare 3.11.3 release 2023-09-30 04:17:05 -06:00
auouymous 3a7268a091 update dependencies 2023-09-28 04:53:39 -06:00
auouymous dcaaff1fc2 Bypass tilde expansion if GPODDER_HOME is not declared. 2023-09-27 04:45:40 -06:00
auouymous d589e3d40d
Merge pull request #1559 from auouymous/tilde-expansion
Expand ~ and ~user in GPODDER_HOME and GPODDER_DOWNLOAD_DIR.
2023-09-27 03:52:00 -06:00
auouymous 9a636d049a Expand ~ and ~user in GPODDER_HOME and GPODDER_DOWNLOAD_DIR.
Fixes #1558.
2023-09-27 03:19:36 -06:00
auouymous 468cfad46c
Merge pull request #1560 from Vistaus/master
Updated Dutch translation
2023-09-27 02:17:39 -06:00
auouymous 83688f5c72
Merge pull request #1561 from neodyne/sk-translation-update-8
Update Slovak translation (sk)
2023-09-27 02:06:18 -06:00
neodyne 179205e27c Update Slovak translation (sk) 2023-09-23 22:06:08 +02:00
Heimen Stoffels e4967664bc
Updated Dutch translation 2023-09-22 22:53:38 +02:00
auouymous 2cbd4626ef
Merge pull request #1557 from bovirus/master
Update Italian language
2023-09-21 18:17:37 -06:00
bovirus 6070e1055a
Update Italian language 2023-09-21 16:55:03 +02:00
auouymous 5b0662fcb7 Replace deprecated Gdk.Screen methods. 2023-09-21 04:21:17 -06:00
auouymous 31a4ff5985 make messages 2023-09-21 04:12:21 -06:00
auouymous 267688111e
Merge pull request #1551 from auouymous/show-duration-in-progress-tab
Show remaining duration for each download in progress tab.
2023-09-21 04:07:33 -06:00
auouymous 233ddc5e28 Make file size units translatable. 2023-09-21 04:01:17 -06:00
auouymous 5925bc9539 Show remaining duration for each download in progress tab.
And make the status message translatable.
2023-09-21 03:54:57 -06:00
auouymous 314ac3491c
Merge pull request #1544 from auouymous/sync-check-filesize
Add setting to toggle sync filesize comparisons.
2023-09-21 03:29:28 -06:00
neodyne eee9cde98d
Update translation (Slovak) (#1555)
* Update translation (Slovak)
2023-09-21 02:58:34 -06:00
bovirus 2807463640
Update italian language (#1537)
* Update italian language
2023-09-21 02:42:07 -06:00
Eric Le Lay 713043825c
Merge pull request #1553 from neodyne/rename-add-plural
Add plural form of translation string.
2023-09-16 15:29:36 +02:00
neodyne 4893480d58 Add plural form of translation string. 2023-09-07 16:38:17 +02:00
auouymous fc7ccb8a5c Find channel ID in YouTube "watch" URLs.
Prevents exception when subscribing to a channel via an URL for one of
its videos.
2023-09-02 02:52:55 -06:00
auouymous 818c4549de
Merge pull request #1549 from tpikonen/consent-cookie
youtube: Set consent cookie in get_channel_id_url()
2023-09-01 22:31:47 -06:00
Teemu Ikonen 85836f4d6b youtube: Set consent cookie in get_channel_id_url() 2023-08-25 19:41:47 +03:00
auouymous b350238d58
Merge pull request #1492 from gpodder/mac-sync-trashes
Catch errors for directories inside sync device.
2023-08-23 15:12:25 -06:00
Eric Le Lay 559a2402fc
Merge pull request #1542 from gpodder/fix-1538-accented-letters-windows
Fix #1538 GUI issues - Problem with accented letters in translation
2023-08-23 20:41:08 +02:00
Teemu Ikonen 7cce68c870 Add a toolbar force download button
By @auouymous.
2023-08-22 12:28:42 +03:00
Teemu Ikonen 60d91f5459 Add forceDownload action, use it in Downloads context menu
By @auouymous.
2023-08-22 12:28:36 +03:00
Teemu Ikonen 6af7c5449e Add verb-icons / horizontal button boxes to context menus
Also:

 * Use win.open action when open_instead_of_play is True
 * Remove unnecessary self.download_action.set_enabled() calls

By @auouymous.
2023-08-22 12:23:12 +03:00
Teemu Ikonen 32b9500977 Fix 'Start Download Now' sensitivity
Also disable the download button when the progress list is empty

By @auouymous.
2023-08-22 12:22:44 +03:00
Teemu Ikonen f8a94ff948 Rename funcs on_treeview_podcasts_* to on_treeview_channels_* 2023-08-22 12:09:31 +03:00
Teemu Ikonen 37a38d9fa8 Popup context menus with a LongPress gestures 2023-08-22 12:09:31 +03:00
Teemu Ikonen 3e865661ba Remove redundant treeview arg from treeview_*_show_context_menu funcs 2023-08-22 12:09:31 +03:00
Teemu Ikonen 0925ab1eb5 Disallow all treeview tooltips when context menu is open
Rename treeview_allow_tooltips() to allow_tooltips(). Remove the
treeview arg, and hard code it to enable or disable tooltips on channel
and episode treeviews.
2023-08-22 12:09:31 +03:00
Teemu Ikonen 30c7763e7d Remove funcs _add_sub_menu and _submenu_item_activate_hack 2023-08-22 12:09:31 +03:00
Teemu Ikonen 52445bea3c Replace context GtkMenus with GtkPopovers 2023-08-22 12:06:41 +03:00
Teemu Ikonen fbdff5f179 Add actions for context menu items
Disable 'bluetoothEpisodes' action when Bluetooth is not available.
Add episodeNew and episodeLock to set_episode_actions().
2023-08-22 12:04:30 +03:00
auouymous 9c54237c27 Add setting to toggle sync filesize comparisons.
Fixes #1416.
2023-08-20 06:08:29 -06:00
Eric Le Lay 44edc9bd10 Fix #1538 GUI issues - Problem with accented letters in translation
(windows-only)
2023-08-19 20:05:41 +02:00
auouymous 68749af6d4 Revert #1434.
Fixes #1496.
2023-08-19 05:49:21 -06:00
Teemu Ikonen a369f0a4f1 common.py: Add ExtensionMenuHelper and Dummy classes 2023-08-16 21:35:17 +03:00
Teemu Ikonen ebae9c2f1d Add func TreeViewHelper.get_popup_rectangle 2023-08-16 21:35:17 +03:00
auouymous 957601599e `cmp.commits` is now a method returning an iterator.
Fixes github_release.py.
2023-08-14 00:03:46 -06:00
auouymous 11ed7a98e4 Catch errors for directories inside sync device.
A directory inside the sync device might not be accessible and aborts
the entire sync. The inaccessible directory might belong to the device
and not meant to be read by Gpodder.
2023-03-06 03:02:10 -07:00
99 changed files with 4843 additions and 3104 deletions

View File

@ -6,7 +6,7 @@ jobs:
xcode: "13.4.1"
shell: /bin/bash --login -o pipefail
environment:
- BUNDLE_TAG: 22.8.27
- BUNDLE_TAG: 23.10.3
steps:
- checkout
- run: >

View File

@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12']
steps:
- uses: actions/checkout@v3

View File

@ -30,7 +30,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
- [Podcastparser](http://gpodder.org/podcastparser/) 0.6.0 or newer
- [mygpoclient](http://gpodder.org/mygpoclient/) 1.7 or newer
- [requests](https://requests.readthedocs.io) 2.24.0 or newer
- Python D-Bus bindings
- [dbus-python](http://dbus.freedesktop.org/doc/dbus-python/)
As an alternative to python-dbus on Mac OS X and Windows, you can use
the dummy (no-op) D-Bus module provided in "tools/fake-dbus-module/".

View File

@ -53,7 +53,7 @@ PREFIX ?= /usr
PYTHON ?= python3
HELP2MAN ?= help2man
PYTEST ?= $(shell which pytest || which pytest-3)
PYTEST ?= $(shell command -v pytest || command -v pytest-3)
##########################################################################
@ -73,7 +73,7 @@ lint:
isort --version
isort -q $(ISORTOPTS) || isort --df $(ISORTOPTS)
codespell --quiet-level 3 --skip "./.git,*.po,./share/applications/gpodder.desktop"
codespell --quiet-level 3 --skip "./.git,*.po,.mypy_cache,./share/applications/gpodder.desktop"
release: distclean
$(PYTHON) setup.py sdist

137
po/ca.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Catalan (http://www.transifex.com/projects/p/gpodder/language/"
@ -64,7 +64,7 @@ msgstr ""
msgid "Imported OPML file"
msgstr ""
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr ""
@ -72,27 +72,27 @@ msgstr ""
msgid "Downloading"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr ""
@ -125,7 +125,7 @@ msgstr ""
msgid "HTTP Error %(code)s: %(message)s"
msgstr ""
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr ""
@ -183,7 +183,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -232,7 +232,7 @@ msgstr ""
msgid "Saving iPod database"
msgstr ""
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr ""
@ -261,12 +261,12 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr ""
@ -335,10 +335,38 @@ msgstr ""
msgid "Yesterday"
msgstr ""
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
msgid "KiB"
msgstr ""
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr ""
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -440,12 +468,17 @@ msgstr ""
msgid "Default application"
msgstr ""
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr ""
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -799,8 +832,8 @@ msgstr ""
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1152,8 +1185,8 @@ msgid "Import from OPML"
msgstr ""
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr ""
@ -1590,70 +1623,70 @@ msgstr ""
msgid "Custom (%(format_ids)s)"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] ""
msgstr[1] ""
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr ""
@ -1875,32 +1908,34 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr ""
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr ""
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] ""
msgstr[1] ""
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2306,18 +2341,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid "Devices"
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Preferred YouTube format:"
msgid "Devices"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube HLS format:"
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

138
po/cs.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Czech (http://www.transifex.com/projects/p/gpodder/language/"
@ -72,7 +72,7 @@ msgstr ""
msgid "Imported OPML file"
msgstr "Export do OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Zařazeno do fronty"
@ -81,31 +81,31 @@ msgstr "Zařazeno do fronty"
msgid "Downloading"
msgstr "stahování"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
msgid "Failed"
msgstr "Filtr:"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
msgid "Cancelling"
msgstr "Zrušit"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
msgid "Cancelled"
msgstr "Zrušit"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
msgid "Pausing"
msgstr "Hodnota"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr ""
@ -139,7 +139,7 @@ msgstr "Chyba otevírání %s: %s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Chyba otevírání %s: %s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, fuzzy, python-format
msgid "Error: %s"
msgstr "Chyba otevírání %s: %s"
@ -201,7 +201,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -250,7 +250,7 @@ msgstr "iPodu připojen"
msgid "Saving iPod database"
msgstr "Ukládám databázi iPodu"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Odstraňuji %s"
@ -279,12 +279,12 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Chyba otevírání %s: %s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Přidávání %s"
@ -363,10 +363,38 @@ msgstr "Dnes"
msgid "Yesterday"
msgstr "Včera"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
msgid "KiB"
msgstr ""
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(neznámý)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -475,13 +503,18 @@ msgstr "Příkazový řádek:"
msgid "Default application"
msgstr ""
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
#, fuzzy
msgid "gPodder"
msgstr "Ukončit gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -880,8 +913,8 @@ msgstr ""
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1291,8 +1324,8 @@ msgid "Import from OPML"
msgstr "Export do OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr ""
@ -1793,49 +1826,49 @@ msgstr "Smazat epizody z počítače"
msgid "Custom (%(format_ids)s)"
msgstr "Vlastní formát řetězců"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
#, fuzzy
msgid "Configure audio player"
msgstr "Editor kanálů"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
#, fuzzy
msgid "Command:"
msgstr "Příkazový řádek:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
#, fuzzy
msgid "Configure video player"
msgstr "MP3 přehrávač"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
#, fuzzy
msgid "manually"
msgstr "Uživatelské jméno:"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1843,28 +1876,28 @@ msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
#, fuzzy
msgid "Replace subscription list on server"
msgstr "Popis"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
#, fuzzy
msgid "Select folder for mount point"
msgstr "Volba přípojeného bodu pro iPod"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Volba přípojeného bodu pro iPod"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Popis"
@ -2100,37 +2133,40 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "jedna stažená epizoda:"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Jsou dostupné nové epizody"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
msgid "Rename all downloaded episodes"
msgstr "Stáhnout nové epizody"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
msgid "No downloaded episodes to rename"
msgstr "Stáhnout nové epizody"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
msgid "Renaming all downloaded episodes"
msgstr "Stáhnout nové epizody"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr "Není možné přidat kanál"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "Není možné přidat kanál"
msgstr[1] "Není možné přidat kanál"
msgstr[2] "Není možné přidat kanál"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2585,19 +2621,25 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#, fuzzy
msgid "Devices"
msgstr "Zařízení"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

View File

@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-03-05 15:01+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/"
@ -77,7 +77,7 @@ msgstr "%s na Soundcloudu"
msgid "Imported OPML file"
msgstr "Importovat z OPML souboru"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Zařazeno do fronty"
@ -85,31 +85,31 @@ msgstr "Zařazeno do fronty"
msgid "Downloading"
msgstr "Stahování"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Dokončeno"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Selhalo"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Zrušení..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Zrušeno"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pozastavit"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pozastaveno"
@ -145,7 +145,7 @@ msgstr "Chyba vstupu/výstupu: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Chyba HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Chyba: %s"
@ -203,7 +203,7 @@ msgid "Only keep latest"
msgstr "Zachovat pouze poslední"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -252,7 +252,7 @@ msgstr "iPod otevřen"
msgid "Saving iPod database"
msgstr "Ukládání databáze iPodu"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Odstranění %s"
@ -281,13 +281,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Chyba při otevírání %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Přidání %s"
@ -364,10 +364,40 @@ msgstr "Dnes"
msgid "Yesterday"
msgstr "Včera"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(neznámo)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -475,12 +505,17 @@ msgstr "Příkaz: %s"
msgid "Default application"
msgstr "Výchozí aplikace"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Rozšíření"
@ -865,8 +900,8 @@ msgstr "Proud"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1249,8 +1284,8 @@ msgid "Import from OPML"
msgstr "Importovat z OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Otevřít"
@ -1709,47 +1744,47 @@ msgstr "Odstranit z aplikace gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Vlastní (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Jméno"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Délka"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Info o přídavném modulu"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Rozšíření nemůže být aktivováno"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Nastavit přehrávač audia"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Příkaz:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Nastavit přehrávač videa"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "ručně"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1757,11 +1792,11 @@ msgstr[0] "po %(count)d dni"
msgstr[1] "po %(count)d dnech"
msgstr[2] "po %(count)d dnech"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Nahradit seznam podcastů na serveru"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1769,16 +1804,16 @@ msgstr ""
"Podcasty na serveru, které nejsou v místním seznamu, budou smazány. "
"Pokračovat?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Vyberte složku pro přípojný bod"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Vyberte složku pro přípojný bod"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Nahradit seznam na serveru"
@ -2024,40 +2059,43 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Po stažení přejmenovat epizody"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Po stažení přejmenovat epizody na \"<Název epizody>.<přípona>\""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Stažené epizody"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Stažené epizody"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Stažené epizody"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d nová epizoda"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d nová epizoda"
msgstr[1] "%(count)d nová epizoda"
msgstr[2] "%(count)d nová epizoda"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2496,20 +2534,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Zařízení"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#, fuzzy
msgid "Preferred YouTube format:"
msgstr "Preferovaný formát videa"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
msgid "Preferred YouTube HLS format:"
msgstr "Preferovaný formát videa"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#, fuzzy
msgid "Preferred Vimeo format:"
msgstr "Preferovaný formát videa"

139
po/da.po
View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:30+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Danish (http://www.transifex.com/projects/p/gpodder/language/"
@ -76,7 +76,7 @@ msgstr "%s på Soundcloud"
msgid "Imported OPML file"
msgstr "Importér fra OPML-fil"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Sat i kø"
@ -84,31 +84,31 @@ msgstr "Sat i kø"
msgid "Downloading"
msgstr "Downloader"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Afsluttet"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Fejlet"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Annullerer..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Annulleret"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Sæt på pause"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Sat på pause"
@ -143,7 +143,7 @@ msgstr "I/O-fejl: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP-fejl: %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Fejl: %s"
@ -204,7 +204,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -253,7 +253,7 @@ msgstr "iPod åbnet"
msgid "Saving iPod database"
msgstr "Gemmer iPod-database"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Fjerner %s"
@ -282,13 +282,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Fejl ved åbning af %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Tilføjer %s"
@ -364,10 +364,40 @@ msgstr "I dag"
msgid "Yesterday"
msgstr "I går"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(ukendt)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -472,12 +502,17 @@ msgstr "Kommando: %s"
msgid "Default application"
msgstr "Standardprogram"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -858,8 +893,8 @@ msgstr "Stream"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1236,8 +1271,8 @@ msgid "Import from OPML"
msgstr "Importér fra OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Åbn"
@ -1700,73 +1735,73 @@ msgstr "Slet fra gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Særlige format-tekststrenge"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Varighed"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Konfigurér lydafspiller"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Kommando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Konfigurér videoafspiller:"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuelt"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "efter %(count)d dag"
msgstr[1] "efter %(count)d dage"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Erstat abonnementsliste på server"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
"Server-podcasts, der ikke er tilføjet lokalt, fjernes fra serveren. Fortsæt?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Vælg mappe som indlæsningspunkt"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Vælg mappe som indlæsningspunkt"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Erstat abonnementsliste på server"
@ -2005,42 +2040,44 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "én episode downloadet:"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Der er ingen nye episoder til download"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Downloadede episoder"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Downloadede episoder"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Downloadede episoder"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d ny episode"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d ny episode"
msgstr[1] "%(count)d ny episode"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2482,18 +2519,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Enheder"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/de.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2022-07-08 18:06+0200\n"
"Last-Translator: TZocker\n"
"Language-Team: German (http://www.transifex.com/projects/p/gpodder/language/"
@ -66,7 +66,7 @@ msgstr "Soundcloud-Suche"
msgid "Imported OPML file"
msgstr "Importierte OPML-Datei"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Eingereiht"
@ -74,27 +74,27 @@ msgstr "Eingereiht"
msgid "Downloading"
msgstr "Herunterladen"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Fertig"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Fehlgeschlagen"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "Abbrechen"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Abgebrochen"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Pausieren"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pause"
@ -129,7 +129,7 @@ msgstr "I/O Fehler: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP-Fehler %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Fehler: %s"
@ -187,7 +187,7 @@ msgid "Only keep latest"
msgstr "Nur aktuellste behalten"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -238,7 +238,7 @@ msgstr "iPod geöffnet"
msgid "Saving iPod database"
msgstr "Speichere iPod-Datenbank"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Entferne %s"
@ -271,12 +271,12 @@ msgstr ""
"Nicht genügend Speicher in %(path)s: %(free)s verfügbar, es werden mindesten "
"%(need)s benötigt"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Fehler beim Kopieren von %(from_file)s zu %(to_file)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr "Synchronisierung"
@ -347,10 +347,40 @@ msgstr "Heute"
msgid "Yesterday"
msgstr "Gestern"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(unbekannt)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -457,12 +487,17 @@ msgstr "Kommando: %s"
msgid "Default application"
msgstr "Standard-Programm"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Erweiterungen"
@ -834,8 +869,8 @@ msgstr "Streamen"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1203,8 +1238,8 @@ msgid "Import from OPML"
msgstr "Von OPML importieren"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "Öffnen"
@ -1668,56 +1703,56 @@ msgstr "In gPodder löschen"
msgid "Custom (%(format_ids)s)"
msgstr "Manuell (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Name"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Dokumentation"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Infos zur Erweiterung"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Unterstütze den Autor"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Erweiterung kann nicht aktiviert werden"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Audio-Player einrichten"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Kommando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Video-Player einrichten"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuell"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "nach %(count)d Tag"
msgstr[1] "nach %(count)d Tagen"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Abonnement-Liste am Server ersetzen"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1725,15 +1760,15 @@ msgstr ""
"Podcasts am Server, die lokal nicht hinzugefügt werden, werden am Server "
"entfernt. Fortfahren?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Ordner des Einhängepunkts wählen"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Ordner für Playliste auswählen"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "Der Ordner mit den Wiedergabelisten muss sich auf dem Gerät befinden"
@ -1971,40 +2006,42 @@ msgstr "Benachrichtigungs Blasen für Windows"
msgid "Display notification bubbles for different events."
msgstr "Zeigen Sie Benachrichtigungs Blasen für verschiedene Ereignisse an."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Episoden nach dem Download umbenennen"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Episoden werden zu \"<Episodentitel>.<typ>\" umbenannt"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Heruntergeladene Episoden"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Heruntergeladene Episoden"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Heruntergeladene Episoden"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d neue Episode"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d neue Episode"
msgstr[1] "%(count)d neue Episode"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2433,18 +2470,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "In gPodder gelöschte Episoden vom Gerät entfernen"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Geräte"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Bevorzugtes YouTube-Format:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Bevorzugtes YouTube HLS-Format:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Bevorzugtes Video-Format:"

139
po/el.po
View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:30+0000\n"
"Last-Translator: Teo <anapospastos@hotmail.com>\n"
"Language-Team: Greek (http://www.transifex.com/projects/p/gpodder/language/"
@ -75,7 +75,7 @@ msgstr "%s στο Soundcloud"
msgid "Imported OPML file"
msgstr "Εισαγωγή από αρχείο OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Σε αναμονή"
@ -83,31 +83,31 @@ msgstr "Σε αναμονή"
msgid "Downloading"
msgstr "Λήψη"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Τελείωσε"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Απέτυχε"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Ακύρωση..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Ακυρώθηκε"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Παύση"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Παύση"
@ -143,7 +143,7 @@ msgstr "Σφάλμα I/O: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Σφάλμα HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Σφάλμα: %s"
@ -203,7 +203,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Βίντεο"
@ -252,7 +252,7 @@ msgstr "Το iPod άνοιξε"
msgid "Saving iPod database"
msgstr "Αποθήκευση της βάσης δεδομένων του iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Αφαίρεση του %s"
@ -283,13 +283,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Σφάλμα κατά το άνοιγμα %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Προσθήκη του %s"
@ -366,10 +366,40 @@ msgstr "Σήμερα"
msgid "Yesterday"
msgstr "Χθες"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(άγνωστο)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -474,12 +504,17 @@ msgstr "Εντολή: %s"
msgid "Default application"
msgstr "Προεπιλεγμένη εφαρμογή"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Επεκτάσεις"
@ -854,8 +889,8 @@ msgstr "Αναπαραγωγή"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1237,8 +1272,8 @@ msgid "Import from OPML"
msgstr "Εισαγωγή από OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Άνοιγμα"
@ -1698,58 +1733,58 @@ msgstr "Διαγραφή από το gPodder"
msgid "Custom (%(format_ids)s)"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Όνομα"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Διάρκεια"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Επεκτάσεις"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Η επέκταση δεν γίνεται να ενεργοποιηθεί"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Ρύθμιση αναπαραγωγέα ήχου"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Εντολή:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Ρύθμιση αναπαραγωγέα βίντεο"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "χειροκίνητα"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "μετά από %(count)d ημέρα"
msgstr[1] "μετά από %(count)d ημέρες"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Αντικαταστήστε τη λίστα συνδρομών στο διακομιστή"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1757,16 +1792,16 @@ msgstr ""
"Απομακρυσμένα podcasts που δεν έχουν προστεθεί τοπικά θα αφαιρεθούν από το "
"διακομιστή. Θέλετε α συνεχίσετε;"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Επιλέξτε το φάκελο για το σημείο προσάρτησης"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Επιλέξτε το φάκελο για το σημείο προσάρτησης"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Αντικατάσταση λίστας στον διακομιστή"
@ -2002,40 +2037,42 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Μετονομασία των επεισοδίων μετά τη λήψη"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Ληφθέντα επεισόδια"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Ληφθέντα επεισόδια"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Ληφθέντα επεισόδια"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d νέο επεισόδιο"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d νέο επεισόδιο"
msgstr[1] "%(count)d νέο επεισόδιο"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2476,18 +2513,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Συσκευές"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/es.po
View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Spanish (http://www.transifex.com/projects/p/gpodder/language/"
@ -75,7 +75,7 @@ msgstr "%s en Soundcloud"
msgid "Imported OPML file"
msgstr "Importar de OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Puesto en cola"
@ -83,31 +83,31 @@ msgstr "Puesto en cola"
msgid "Downloading"
msgstr "Descargando"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Terminado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Fallado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Cancelando..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Cancelado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pausa"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pausado"
@ -143,7 +143,7 @@ msgstr "Error de Entrada/Salida: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Error HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Error: %s"
@ -205,7 +205,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Vídeo"
@ -254,7 +254,7 @@ msgstr "iPod abierto"
msgid "Saving iPod database"
msgstr "Guardando la base de datos del iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Eliminando %s"
@ -284,13 +284,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Error al abrir %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Añadiendo %s"
@ -366,10 +366,40 @@ msgstr "Hoy"
msgid "Yesterday"
msgstr "Ayer"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(desconocido)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -474,12 +504,17 @@ msgstr "Comando: %s"
msgid "Default application"
msgstr "Aplicación por defecto"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensiones"
@ -864,8 +899,8 @@ msgstr "Stream"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1242,8 +1277,8 @@ msgid "Import from OPML"
msgstr "Importar de OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Abrir"
@ -1707,58 +1742,58 @@ msgstr "Borrarlo de gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Formato de cadenas personalizado."
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nombre"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Duración"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Información del módulo de extensiones"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configuración reproductor de sonido"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Comando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurar reproductor de video"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manualmente"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "después de %(count)d día"
msgstr[1] "después de %(count)d días"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Reemplazar lista de suscripciones en el servidor"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1766,16 +1801,16 @@ msgstr ""
"Podcasts remotas que no han sido añadidos localmente serán eliminadas del "
"servidor. ¿Continuar?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Seleccione el directorio para punto de montaje"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Seleccione el directorio para punto de montaje"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Reemplazar lista en el servidor"
@ -2015,42 +2050,44 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "un capítulo descargado:"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "No hay nuevos capítulos disponibles para descarga"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Descargar capítulos nuevos"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Descargar capítulos nuevos"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Descargar capítulos nuevos"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d episodio nuevo"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d episodio nuevo"
msgstr[1] "%(count)d episodio nuevo"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2493,18 +2530,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispositivos"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-03-05 15:01+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Spanish (Spain) (http://www.transifex.com/projects/p/gpodder/"
@ -75,7 +75,7 @@ msgstr "%s en Soundcloud"
msgid "Imported OPML file"
msgstr "Importar desde archivo OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "En cola"
@ -83,31 +83,31 @@ msgstr "En cola"
msgid "Downloading"
msgstr "Descargando"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Finalizado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Fallido"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Cancelando..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Cancelado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pausar"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "En pausa"
@ -143,7 +143,7 @@ msgstr "Error de E/S: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Error HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Error: %s"
@ -201,7 +201,7 @@ msgid "Only keep latest"
msgstr "Solo mantener los últimos"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Vídeo"
@ -250,7 +250,7 @@ msgstr "iPod abierto"
msgid "Saving iPod database"
msgstr "Guardando la base de datos del iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Quitando %s"
@ -279,12 +279,12 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Error al actualizar %(url)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Añadiendo %s"
@ -358,10 +358,40 @@ msgstr "Hoy"
msgid "Yesterday"
msgstr "Ayer"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(desconocido)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -466,12 +496,17 @@ msgstr "Orden: %s"
msgid "Default application"
msgstr "Aplicación predeterminada"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensiones"
@ -852,8 +887,8 @@ msgstr "Stream"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1231,8 +1266,8 @@ msgid "Import from OPML"
msgstr "Importar desde OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Abrir"
@ -1689,58 +1724,58 @@ msgstr "Eliminar de gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Personalizado (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nombre"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Duración"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Información del módulo de extensiones"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "La extensión no puede ser activada"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurar reproductor de audio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Orden:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurar reproductor de vídeo"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manualmente"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "después de %(count)d día"
msgstr[1] "después de %(count)d días"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Reemplazar lista de suscripción en el servidor"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1748,15 +1783,15 @@ msgstr ""
"Los podcasts que no se añadieron localmente se eliminarán del servidor.\n"
"¿Continuar?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Seleccione la carpeta para el punto de montaje"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Reemplazar lista en el servidor"
@ -1993,40 +2028,42 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Renombrar episodios después de la descarga"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Renombrar episodios «<título episodio>.<ext>» al descargar"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d episodio nuevo"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d episodio nuevo"
msgstr[1] "%(count)d episodio nuevo"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2465,20 +2502,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispositivos"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#, fuzzy
msgid "Preferred YouTube format:"
msgstr "Formato de vídeo preferido:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
msgid "Preferred YouTube HLS format:"
msgstr "Formato de vídeo preferido:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#, fuzzy
msgid "Preferred Vimeo format:"
msgstr "Formato de vídeo preferido:"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-04-14 13:46-0600\n"
"Last-Translator: Rigoberto Calleja <rigobertoc@alumni.cmu.edu>\n"
"Language-Team: Spanish (Mexico) (http://www.transifex.com/projects/p/gpodder/"
@ -72,7 +72,7 @@ msgstr "%s en SoundCloud"
msgid "Imported OPML file"
msgstr "Importar desde archivo OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "En espera"
@ -80,31 +80,31 @@ msgstr "En espera"
msgid "Downloading"
msgstr "Descargando"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Terminado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Falló"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Cancelando..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Cancelado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Poner en pausa"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "En pausa"
@ -140,7 +140,7 @@ msgstr "Error de E/S: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Error HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Error: %s"
@ -199,7 +199,7 @@ msgid "Only keep latest"
msgstr "Conservar únicamente el más reciente"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -248,7 +248,7 @@ msgstr "iPod abierto"
msgid "Saving iPod database"
msgstr "Guardando base de datos de iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Eliminando %s"
@ -278,13 +278,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Error al abrir %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Agregando %s"
@ -359,10 +359,40 @@ msgstr "Hoy"
msgid "Yesterday"
msgstr "Ayer"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(desconocido)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -467,12 +497,17 @@ msgstr "Comando: %s"
msgid "Default application"
msgstr "Aplicación por defecto"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensiones"
@ -847,8 +882,8 @@ msgstr "Stream"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1226,8 +1261,8 @@ msgid "Import from OPML"
msgstr "Importar desde OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Abrir"
@ -1684,58 +1719,58 @@ msgstr "Eliminar de gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Personalizado (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nombre"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Duración"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Información del módulo de extensiones"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "La extensión no pudo ser activada"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurar reproductor de audio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Comando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurar reproductor de video"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manualmente"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "después de %(count)d día"
msgstr[1] "después de %(count)d días"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Reemplazar la lista de suscripciones en el servidor"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1743,15 +1778,15 @@ msgstr ""
"Los podcasts remotos que no han sido agregados localmente serán eliminados "
"del servidor.¿Desea continuar?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Seleccione una carpeta como punto de montaje"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Seleccione una carpeta para las listas de reproducción"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
#| msgid "Create playlists on device"
msgid "The playlists folder must be on the device"
@ -1997,40 +2032,42 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Renombrar episodios despues de descargarlos"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Renombrar episodios a \"<Titulo del episodio>.<ext>\" al descargarlos"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d episodio nuevo"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d episodio nuevo"
msgstr[1] "%(count)d episodio nuevo"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2468,20 +2505,26 @@ msgstr ""
"Eliminar de gPodder aquellos episodios que sean borrados del dispositivo"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispositivos"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#, fuzzy
msgid "Preferred YouTube format:"
msgstr "Formato de video preferido:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
msgid "Preferred YouTube HLS format:"
msgstr "Formato de video preferido:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#, fuzzy
msgid "Preferred Vimeo format:"
msgstr "Formato de video preferido:"

139
po/eu.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-23 00:23+0000\n"
"Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>\n"
"Language-Team: Basque (http://www.transifex.com/projects/p/gpodder/language/"
@ -73,7 +73,7 @@ msgstr "%s Soundcloud-en"
msgid "Imported OPML file"
msgstr "Inportatu OPML fitxategitik"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Ilaran"
@ -81,31 +81,31 @@ msgstr "Ilaran"
msgid "Downloading"
msgstr "Deskargatzen"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Amaituta"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Huts egin du"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Bertan behera uzten..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Bertan behera utzita"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pausarazi"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pausarazita"
@ -141,7 +141,7 @@ msgstr "I/O Errorea: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP Errorea %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Errorea: %s"
@ -201,7 +201,7 @@ msgid "Only keep latest"
msgstr "Mantendu azkena soilik"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Bideoa"
@ -250,7 +250,7 @@ msgstr "iPod irekita"
msgid "Saving iPod database"
msgstr "iPod datu-basea gordetzen"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "%s kentzen"
@ -281,13 +281,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Errorea %(filename)s irekitzean: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "%s gehitzen"
@ -363,10 +363,40 @@ msgstr "Gaur"
msgid "Yesterday"
msgstr "Atzo"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(ezezaguna)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -471,12 +501,17 @@ msgstr "Komandoa: %s"
msgid "Default application"
msgstr "Aplikazio lehenetsia"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Hedapenak"
@ -850,8 +885,8 @@ msgstr "Korrontea"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1229,8 +1264,8 @@ msgid "Import from OPML"
msgstr "Inportatu OPML-tik"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Ireki"
@ -1687,73 +1722,73 @@ msgstr "Ezabatu gPodder-etik"
msgid "Custom (%(format_ids)s)"
msgstr "Pertsonalizatua (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Izena"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Iraupena"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Hedapen moduluaren informazioa"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Ezin da hedapena aktibatu"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Konfiguratu audio erreproduzitzailea"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Komandoa:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Konfiguratu bideo erreproduzitzailea"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "eskuz"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "egun %(count)d geroago"
msgstr[1] "%(count)d egun geroago"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Ordezkatu zerbitzariko harpidetza zerrenda"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr "Lokalean gehitu ez diren urruneko podcast-ak ezabatuko dira. Jarraitu?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Hautatu karpeta muntaketa-punturako"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Hautatu karpeta muntaketa-punturako"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Ordezkatu zerbitzariko zerrenda"
@ -1989,41 +2024,43 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Berrizendatu atalak deskargatu ondoren"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"Berrizendatu atalak deskargatzean honela: \"<Atalaren izenburua>.<luzapena>\""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Deskargatutako atalak"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Deskargatutako atalak"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Deskargatutako atalak"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "Atal berri %(count)d"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "Atal berri %(count)d"
msgstr[1] "Atal berri %(count)d"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2462,20 +2499,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Gailuak"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#, fuzzy
msgid "Preferred YouTube format:"
msgstr "Bideo-formatu hobetsia:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
msgid "Preferred YouTube HLS format:"
msgstr "Bideo-formatu hobetsia:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#, fuzzy
msgid "Preferred Vimeo format:"
msgstr "Bideo-formatu hobetsia:"

View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Mohammad Dashtizadeh <mohammad@dashtizadeh.net>\n"
"Language-Team: Persian (Iran) (http://www.transifex.com/projects/p/gpodder/"
@ -67,7 +67,7 @@ msgstr ""
msgid "Imported OPML file"
msgstr ""
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "در صف قرار گرفت"
@ -75,31 +75,31 @@ msgstr "در صف قرار گرفت"
msgid "Downloading"
msgstr "در حال دانلود"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "اتمام یافته"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "نا موفق"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancel"
msgid "Cancelling"
msgstr "لغو"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "لغو شده"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "وقفه"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "متوقف شده"
@ -132,7 +132,7 @@ msgstr ""
msgid "HTTP Error %(code)s: %(message)s"
msgstr ""
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "خطا: %s"
@ -191,7 +191,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "ویدئو"
@ -240,7 +240,7 @@ msgstr ""
msgid "Saving iPod database"
msgstr ""
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr ""
@ -269,12 +269,12 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr ""
@ -344,10 +344,38 @@ msgstr "امروز"
msgid "Yesterday"
msgstr "دیروز"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
msgid "KiB"
msgstr ""
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(نامعلوم)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -446,12 +474,17 @@ msgstr ""
msgid "Default application"
msgstr "برنامه پیشفرض"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "جی پادر"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -805,8 +838,8 @@ msgstr "جریان"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1159,8 +1192,8 @@ msgid "Import from OPML"
msgstr ""
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr ""
@ -1597,70 +1630,70 @@ msgstr ""
msgid "Custom (%(format_ids)s)"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "مدت"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] ""
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr ""
@ -1886,32 +1919,33 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr ""
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr ""
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] ""
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2327,18 +2361,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid "Devices"
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Preferred YouTube format:"
msgid "Devices"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube HLS format:"
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/fi.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -73,7 +73,7 @@ msgstr "Käyttäjätunnus %s Soundcloudissa"
msgid "Imported OPML file"
msgstr "Tuo OPML-tiedostosta"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Jonossa"
@ -81,31 +81,31 @@ msgstr "Jonossa"
msgid "Downloading"
msgstr "Ladataan"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Valmis"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Epäonnistui"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Perutaan..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Peruttu"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Tauko"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Tauolla"
@ -140,7 +140,7 @@ msgstr "Siirräntävirhe: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP-virhe: %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Virhe: %s"
@ -201,7 +201,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -250,7 +250,7 @@ msgstr "iPod avattu"
msgid "Saving iPod database"
msgstr "Tallennetaan iPodin tietokanta"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Poistetaan %s"
@ -281,13 +281,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Virhe avattaessa tiedostoa %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Lisätään %s"
@ -363,10 +363,40 @@ msgstr "Tänään"
msgid "Yesterday"
msgstr "Eilen"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(tuntematon)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -472,12 +502,17 @@ msgstr "Komento: %s"
msgid "Default application"
msgstr "Oletussovellus"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -857,8 +892,8 @@ msgstr "Virta"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1235,8 +1270,8 @@ msgid "Import from OPML"
msgstr "Tuo OPML-tiedostosta"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Avaa"
@ -1700,57 +1735,57 @@ msgstr "Poista gPodderista"
msgid "Custom (%(format_ids)s)"
msgstr "Mukautetut muotomerkkijonot"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Otsikko:"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Lataa heti"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Kommentti:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Videosoittimen asetukset"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuaalisesti"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "%(count)d päivän jälkeen"
msgstr[1] "%(count)d päivän jälkeen"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Korvaa palvelimella oleva tilausluettelo"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1758,16 +1793,16 @@ msgstr ""
"Palvelimelta poistetaan podcastit, joita ei ole lisätty paikalliseen "
"gPodderiin. Jatketaanko?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Valitse liitospisteenä käytettävä kansio"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Valitse liitospisteenä käytettävä kansio"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Korvaa palvelimella oleva tilausluettelo"
@ -2006,42 +2041,44 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "yksi jakso ladattu:"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Yksi uusi jakso on saatavilla"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Ladatut jaksot"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Ladatut jaksot"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Ladatut jaksot"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d uusi jakso"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d uusi jakso"
msgstr[1] "%(count)d uusi jakso"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2485,18 +2522,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Laitteet"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

142
po/fr.po
View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2023-07-20 21:28+0200\n"
"Last-Translator: Irénée Thirion <irenee.thirion@e.email>\n"
"Language-Team: French (http://www.transifex.com/projects/p/gpodder/language/"
@ -67,7 +67,7 @@ msgstr "Recherche sur Soundcloud"
msgid "Imported OPML file"
msgstr "Importer depuis un fichier OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Mis en file d'attente"
@ -75,27 +75,27 @@ msgstr "Mis en file d'attente"
msgid "Downloading"
msgstr "En train de télécharger"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Terminé"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Echoué"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "Annulation"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Annulé"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Mise en pause"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "En pause"
@ -128,7 +128,7 @@ msgstr "Erreur E/S : %(error)s :%(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Erreur HTTP %(code)s :%(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Erreur : %s"
@ -186,7 +186,7 @@ msgid "Only keep latest"
msgstr "Ne conserver que le dernier"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Vidéo"
@ -237,7 +237,7 @@ msgstr "iPod ouvert"
msgid "Saving iPod database"
msgstr "Enregistrement de la base de données de l'iPode"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Suppression de %s"
@ -270,13 +270,13 @@ msgstr ""
"Pas assez d'espace sur %(path)s : %(free)s disponible, mais nécessite au "
"moins %(need)s"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
"Erreur lors de la copie de %(from_file)s vers %(to_file)s : %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr "Synchronisation"
@ -352,10 +352,40 @@ msgstr "Aujourd'hui"
msgid "Yesterday"
msgstr "Hier"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(inconnu)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -459,12 +489,17 @@ msgstr "Commande : %s"
msgid "Default application"
msgstr "Application par défaut"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensions"
@ -828,8 +863,8 @@ msgstr "Flux"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1197,8 +1232,8 @@ msgid "Import from OPML"
msgstr "Import depuis OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "Ouvrir"
@ -1648,56 +1683,56 @@ msgstr "Supprimer de gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Personnalisé (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nom"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Documentation"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Informations sur l'extension"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Aider l'auteur financièrement"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "L'extension ne peut pas être activée"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurer le lecteur audio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Commande :"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurer le lecteur vidéo"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuellement"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "après %(count)d jour"
msgstr[1] "après %(count)d jours"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Remplacer la liste des abonnements sur le serveur"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1705,15 +1740,15 @@ msgstr ""
"Les podcasts distant qui n'ont pas été ajoutés localement seront retirés du "
"serveur. Continuer ?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Sélectionnez le répertoire pour le point de montage"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Sélectionnez le répertoire de listes de lecture"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "Le dossier des listes de lecture doit se situer sur le périphérique"
@ -1956,34 +1991,37 @@ msgid "Display notification bubbles for different events."
msgstr ""
"Affiche des bulles de notification Windows lors de différents événements."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Renommer les épisodes suite au téléchargement"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"Renommer les épisodes en \"<titre de l'épisode>.<ext>\" suite à leur "
"téléchargement"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr "Renommer tous les épisodes téléchargés"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr "Aucun épisodes téléchargé à renommer"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr "Renommage de tous les épisodes téléchargés en cours"
#: share/gpodder/extensions/rename_download.py:79
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d épisodes ont été renommés"
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "Renamed %(count)d downloaded episodes"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d épisodes ont été renommés"
msgstr[1] "%(count)d épisodes ont été renommés"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2410,18 +2448,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Retirer du périphérique les épisodes supprimés dans gPodder"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Périphériques"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Format YouTube privilégié :"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Format YouTube privilégié (HLS) :"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Format Vimeo privilégié :"

139
po/gl.po
View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:30+0000\n"
"Last-Translator: Gonçalo Cordeiro <gzcordeiro@gmail.com>\n"
"Language-Team: Galician (http://www.transifex.com/projects/p/gpodder/"
@ -74,7 +74,7 @@ msgstr "%s no Soundcloud"
msgid "Imported OPML file"
msgstr "Importar dun ficheiro OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Na fila"
@ -82,31 +82,31 @@ msgstr "Na fila"
msgid "Downloading"
msgstr "Descargando"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Finalizada"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Fallou"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Cancelando..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Cancelado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Deter"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Detida"
@ -142,7 +142,7 @@ msgstr "Erro de E/S: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Erro de HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Erro: %s"
@ -203,7 +203,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Vídeo"
@ -252,7 +252,7 @@ msgstr "Abriuse o iPod"
msgid "Saving iPod database"
msgstr "Gardando a base de datos do iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Eliminando %s"
@ -283,13 +283,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Produciuse un erro ao abrir %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Engadindo %s"
@ -365,10 +365,40 @@ msgstr "Hoxe"
msgid "Yesterday"
msgstr "Onte"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(descoñecido)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -473,12 +503,17 @@ msgstr "Comando: %s"
msgid "Default application"
msgstr "Aplicación por defecto"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensións"
@ -852,8 +887,8 @@ msgstr "Fluxo"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1232,8 +1267,8 @@ msgid "Import from OPML"
msgstr "Importar de OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Abrir"
@ -1690,58 +1725,58 @@ msgstr "Eliminar do gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Convertendo a %(format)s"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nome"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Duración"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Información do módulo de extensión"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Non se pode activar a extensión"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurar o reprodutor de audio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Comando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurar o reprodutor de vídeo"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manualmente"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "despois de %(count)d día"
msgstr[1] "despois de %(count)d días"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Substituír a lista de subscricións do servidor"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1749,16 +1784,16 @@ msgstr ""
"Os podcasts remotos que non foron engadidos localmente serán eliminados do "
"servidor. Quere continuar?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Seleccione o cartafol para o punto de montaxe"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Seleccione o cartafol para o punto de montaxe"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Substituír a lista do servidor"
@ -1994,41 +2029,43 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Renomear os episodios despois de os descargar"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"Renomear os episodios como «<Título do episodio>.<ext>\" ao descargalos"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Episodios descargados"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d episodio novo"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d episodio novo"
msgstr[1] "%(count)d episodio novo"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2469,18 +2506,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispositivos"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/he.po
View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:30+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Hebrew (http://www.transifex.com/projects/p/gpodder/language/"
@ -75,7 +75,7 @@ msgstr "%s ב־Soundcloud"
msgid "Imported OPML file"
msgstr "ייבא מקובץ OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "ממתין"
@ -83,31 +83,31 @@ msgstr "ממתין"
msgid "Downloading"
msgstr "מוריד"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "הסתיים"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "נכשל"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "מבטל..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "בוטל"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "השהה"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "הושהה"
@ -143,7 +143,7 @@ msgstr "שגיאת I/O: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "שגיאת HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "שגיאה: %s"
@ -204,7 +204,7 @@ msgid "Only keep latest"
msgstr "שמור רק את האחרון"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "וידאו"
@ -253,7 +253,7 @@ msgstr "iPod נפתח"
msgid "Saving iPod database"
msgstr "שומר בסיס נתונים של iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "מסיר את %s"
@ -282,13 +282,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "שגיאה בפתיחת %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "מוסיף %s"
@ -364,10 +364,40 @@ msgstr "היום"
msgid "Yesterday"
msgstr "אתמול"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "ק״ב/שנייה"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(לא ידוע)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -472,12 +502,17 @@ msgstr "פקודה: %s"
msgid "Default application"
msgstr "יישום ברירת מחדל"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "הרחבות"
@ -855,8 +890,8 @@ msgstr "הזרם"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1231,8 +1266,8 @@ msgid "Import from OPML"
msgstr "ייבא מקובץ OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "פתח"
@ -1686,73 +1721,73 @@ msgstr "מחק מ־gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "המר ל־%(format)s"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "שם"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "משך"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "מידע על מודול ההרחבה"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "לא ניתן להפעיל את ההרחבה"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "הגדר נגן אודיו"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "פקודה:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "הגדר נגן וידאו"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "ידנית"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "אחרי יום אחד"
msgstr[1] "אחרי %(count)d ימים"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "החלף רשימת הרשמות בשרת"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr "פודקסטים מרוחקים שלא נוספו באופן מקומי יוסרו מהשרת. האם להמשיך?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "בחר תיקייה לנקודת עיגון"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "בחר תיקייה לנקודת עיגון"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "החלף את הרשימה בשרת"
@ -1989,40 +2024,42 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "שנה את שם הפרקים לאחר ההורדה"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "שנה בהורדה את שם הפרקים למבנה \"<Episode Title>.<ext>\""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "פרקים שהורדו"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "פרקים שהורדו"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "פרקים שהורדו"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "פרק חדש אחד"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "פרק חדש אחד"
msgstr[1] "פרק חדש אחד"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2463,18 +2500,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "התקנים"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/hu.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2018-02-25 20:35+0100\n"
"Last-Translator: Balázs Meskó <mesko.balazs@fsf.hu>\n"
"Language-Team: Hungarian\n"
@ -65,7 +65,7 @@ msgstr "Soundcloud keresés"
msgid "Imported OPML file"
msgstr "Importált OMPL fájl"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Sorbaállítva"
@ -73,31 +73,31 @@ msgstr "Sorbaállítva"
msgid "Downloading"
msgstr "Letöltés"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Elkészült"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Sikertelen"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Megszakítás…"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Megszakítva"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Szüneteltetés"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Szüneteltetve"
@ -133,7 +133,7 @@ msgstr "I/O hiba: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP %(code)s hiba: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Hiba: %s"
@ -191,7 +191,7 @@ msgid "Only keep latest"
msgstr "Csak a legfrissebb megtartása"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Videó"
@ -240,7 +240,7 @@ msgstr "iPod megnyitva"
msgid "Saving iPod database"
msgstr "iPod adatbázis mentése"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "%s eltávolítása"
@ -272,13 +272,13 @@ msgstr ""
"Nincs elég hely a(z) %(path)s útvonalon: %(free)s szabad, de legalább "
"%(need)s szükséges"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Hiba a(z) %(filename)s megnyitásakor: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "%s hozzáadása"
@ -352,10 +352,40 @@ msgstr "Ma"
msgid "Yesterday"
msgstr "Tegnap"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(ismeretlen)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -460,12 +490,17 @@ msgstr "Parancs: %s"
msgid "Default application"
msgstr "Alapértelmezett alkalmazás"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Bővítmények"
@ -840,8 +875,8 @@ msgstr "Folyam"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1214,8 +1249,8 @@ msgid "Import from OPML"
msgstr "Importálás OPML-ből"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "Me_gnyitás"
@ -1667,56 +1702,56 @@ msgstr "Törlés a gPodderből"
msgid "Custom (%(format_ids)s)"
msgstr "Egyéni (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Név"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Dokumentáció"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Bővítményinformációk"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "A szerző támogatása"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "A bővítmény nem aktiválható"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Zenelejátszó beállítása"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Parancs:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Videolejátszó beállítása"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "saját kezűleg"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "%(count)d nap után"
msgstr[1] "%(count)d nap után"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Feliratkozási lista cseréje a kiszolgálón"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1724,15 +1759,15 @@ msgstr ""
"A távoli podcastok amelyek nem lettek helyben hozzáadva, eltávolításra "
"kerülnek a kiszolgálóról. Folytatja?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Válasszon mappát csatolási pontnak"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Válasszon mappát a lejátszólistákhoz"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
#| msgid "Create playlists on device"
msgid "The playlists folder must be on the device"
@ -1966,40 +2001,42 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Epizódok átnevezése letöltés után"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Epizód átnevezése letöltéskor erre: „<Epizódcím>.<kiterjesztés>”"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Letöltött epizódok"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Letöltött epizódok"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Letöltött epizódok"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d új epizód"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d új epizód"
msgstr[1] "%(count)d új epizód"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2435,20 +2472,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Az eszközön törölt epizódok eltávolítása a gPodderből"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Eszközök"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Előnyben részesített YouTube formátum:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
#| msgid "Preferred YouTube format:"
msgid "Preferred YouTube HLS format:"
msgstr "Előnyben részesített YouTube formátum:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Előnyben részesített Vimeo formátum:"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/"
@ -64,7 +64,7 @@ msgstr ""
msgid "Imported OPML file"
msgstr ""
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr ""
@ -72,27 +72,27 @@ msgstr ""
msgid "Downloading"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr ""
@ -125,7 +125,7 @@ msgstr ""
msgid "HTTP Error %(code)s: %(message)s"
msgstr ""
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr ""
@ -183,7 +183,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -232,7 +232,7 @@ msgstr ""
msgid "Saving iPod database"
msgstr ""
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr ""
@ -261,12 +261,12 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr ""
@ -334,10 +334,38 @@ msgstr ""
msgid "Yesterday"
msgstr ""
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
msgid "KiB"
msgstr ""
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr ""
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -436,12 +464,17 @@ msgstr ""
msgid "Default application"
msgstr ""
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr ""
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -784,8 +817,8 @@ msgstr ""
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1130,8 +1163,8 @@ msgid "Import from OPML"
msgstr ""
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr ""
@ -1565,69 +1598,69 @@ msgstr ""
msgid "Custom (%(format_ids)s)"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] ""
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr ""
@ -1849,32 +1882,33 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr ""
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr ""
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] ""
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2280,18 +2314,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid "Devices"
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Preferred YouTube format:"
msgid "Devices"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube HLS format:"
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

656
po/it.po

File diff suppressed because it is too large Load Diff

138
po/kk.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:30+0000\n"
"Last-Translator: Baurzhan Muftakhidinov <baurthefirst@gmail.com>\n"
"Language-Team: Kazakh (http://www.transifex.com/projects/p/gpodder/language/"
@ -73,7 +73,7 @@ msgstr "%s Soundcloud-та"
msgid "Imported OPML file"
msgstr "OPML файлынан импорттау"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Кезекте"
@ -81,31 +81,31 @@ msgstr "Кезекте"
msgid "Downloading"
msgstr "Жүктелуде"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Аяқталған"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Сәтсіз аяқталды"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Бас тарту..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Бас тартылған"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Аялдату"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Аялдатылған"
@ -141,7 +141,7 @@ msgstr "Е/Ш қатесі: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP қатесі %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Қате: %s"
@ -202,7 +202,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Видео"
@ -251,7 +251,7 @@ msgstr "iPod ашылды"
msgid "Saving iPod database"
msgstr "iPod дерекқорын сақтау"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Өшіруде %s"
@ -280,13 +280,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "%(filename)s ашу қатесі: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Қосуда %s"
@ -361,10 +361,40 @@ msgstr "Бүгін"
msgid "Yesterday"
msgstr "Кеше"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "КБ/с"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(белгісіз)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -466,12 +496,17 @@ msgstr "Команда: %s"
msgid "Default application"
msgstr "Негізгі қолданба"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Кеңейтулер"
@ -834,8 +869,8 @@ msgstr "Ағын"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1205,8 +1240,8 @@ msgid "Import from OPML"
msgstr "OPML файлынан импорттау"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Ашу"
@ -1660,73 +1695,73 @@ msgstr "gPodder-ден өшіру"
msgid "Custom (%(format_ids)s)"
msgstr "Таңдауыңызша пішімді жолдар"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Аты"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Ұзақтығы"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Кеңейту модулінің ақпараты"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Кеңейтуді белсендіру мүмкін емес"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Аудио плеерді баптау"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Команда:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Видео плеерді баптау"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "қолмен"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "%(count)d күннен кейін"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Сервердегі тізімді алмастыру"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
"Жергілікті қосылмаған подкасттар серверден де өшіріледі. Жалғастырамыз ба?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Тіркеу нүктесі үшін буманы таңдаңыз"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Тіркеу нүктесі үшін буманы таңдаңыз"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Сервердегі тізімді алмастыру"
@ -1963,42 +1998,43 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Жүктеп алынғаннан кейін эпизодтар аттарын ауыстыру"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"Жүктеп алу кезінде эпизодтарды \"<Эпизод атауы>.<кеңейтуі>\" етіп атын "
"ауыстыру"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Жүктелген эпизодтар"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Жүктелген эпизодтар"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Жүктелген эпизодтар"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d жаңа эпизод"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d жаңа эпизод"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2440,18 +2476,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Құрылғылар"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2016-01-01 21:09+0900\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -64,7 +64,7 @@ msgstr "Soundcloud에서 검색"
msgid "Imported OPML file"
msgstr "가져온 파일"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "대기중"
@ -72,31 +72,31 @@ msgstr "대기중"
msgid "Downloading"
msgstr "다운로드중"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "완료"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "실패"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "취소중"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "취소됨"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "잠시멈춤"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "잠시멈춤"
@ -132,7 +132,7 @@ msgstr "I/O 에러: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP 에러 %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "에러: %s"
@ -192,7 +192,7 @@ msgid "Only keep latest"
msgstr "최신으로 유지"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "비디오"
@ -241,7 +241,7 @@ msgstr "아이팟 연결됨"
msgid "Saving iPod database"
msgstr "아이팟 데이터베이스에 저장하고 있습니다"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "%s 삭제중"
@ -270,13 +270,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "파일여는중 에러 %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "추가중 %s"
@ -349,10 +349,40 @@ msgstr "오늘"
msgid "Yesterday"
msgstr "어제"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "알수없는"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -454,12 +484,17 @@ msgstr "명령어: %s"
msgid "Default application"
msgstr "기본 어플리케이션"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "지파더"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "확장기능"
@ -822,8 +857,8 @@ msgstr "스트림"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1191,8 +1226,8 @@ msgid "Import from OPML"
msgstr "OPML 파일에서 불러오기"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "열기"
@ -1643,55 +1678,55 @@ msgstr "gPodder에서 삭제"
msgid "Custom (%(format_ids)s)"
msgstr "커스텀 (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "이름"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "문서화"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "확장 정보"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "저자를 후원하기"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "확장기능을 사용할 수 없습니다"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "오디오 플레이어 설정"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "명렁어:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "비디오 플레이어 설정"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "수동으로"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "%(count)d 일 후에"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "서버에 있는 구독목록과 교체합니다"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1699,15 +1734,15 @@ msgstr ""
"서버에 저장되어 있는 팟캐스트(이 컴퓨터에 저장되어 있지 않음)를 삭제 하시겠습"
"니까?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "마운트 포인트로 사용할 폴더를 선택하세요"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "플레이리스트를 위한 폴더를 선택하세요"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
#| msgid "Create playlists on device"
msgid "The playlists folder must be on the device"
@ -1943,40 +1978,41 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "다운로드한뒤 에피소드 이름 변경"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "다운로드후에 에피소드 이름을 \"<Episode Title>.<ext>\"로 변경"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "다운로드한 에피소드"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "다운로드한 에피소드"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "다운로드한 에피소드"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "새로운 에피소드 %(count)d 개"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "새로운 에피소드 %(count)d 개"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2412,20 +2448,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "디바이스에서 삭제한 에피소드가 gPodder에 있다면 삭제함"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "디바이스"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "기본 유튜브 포맷:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
#| msgid "Preferred YouTube format:"
msgid "Preferred YouTube HLS format:"
msgstr "기본 유튜브 포맷:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "기본 Vimeo 포맷:"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -64,7 +64,7 @@ msgstr ""
msgid "Imported OPML file"
msgstr ""
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr ""
@ -72,27 +72,27 @@ msgstr ""
msgid "Downloading"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr ""
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr ""
@ -125,7 +125,7 @@ msgstr ""
msgid "HTTP Error %(code)s: %(message)s"
msgstr ""
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr ""
@ -183,7 +183,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -232,7 +232,7 @@ msgstr ""
msgid "Saving iPod database"
msgstr ""
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr ""
@ -261,12 +261,12 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr ""
@ -335,10 +335,38 @@ msgstr ""
msgid "Yesterday"
msgstr ""
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
msgid "KiB"
msgstr ""
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr ""
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -440,12 +468,17 @@ msgstr ""
msgid "Default application"
msgstr ""
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr ""
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -799,8 +832,8 @@ msgstr ""
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1152,8 +1185,8 @@ msgid "Import from OPML"
msgstr ""
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr ""
@ -1590,70 +1623,70 @@ msgstr ""
msgid "Custom (%(format_ids)s)"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] ""
msgstr[1] ""
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr ""
@ -1875,32 +1908,34 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr ""
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr ""
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr ""
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] ""
msgstr[1] ""
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2306,18 +2341,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid "Devices"
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Preferred YouTube format:"
msgid "Devices"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube HLS format:"
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/nb.po
View File

@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2021-10-16 12:30+0000\n"
"Last-Translator: Allan Nordhøy <epost@anotheragency.no>\n"
"Language-Team: Liberium\n"
@ -70,7 +70,7 @@ msgstr "Soundcloud-søk"
msgid "Imported OPML file"
msgstr "Importert OPML-fil"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "I kø"
@ -78,27 +78,27 @@ msgstr "I kø"
msgid "Downloading"
msgstr "Lastes ned"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Ferdig"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Mislykket"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "Avbryter …"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Avbrutt"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Setter på pause"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pauset"
@ -131,7 +131,7 @@ msgstr "I/O-feil: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP-feil %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Feil: %s"
@ -190,7 +190,7 @@ msgid "Only keep latest"
msgstr "Kun behold nyeste"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -241,7 +241,7 @@ msgstr "iPod åpnet"
msgid "Saving iPod database"
msgstr "Lagrer iPod-database"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Fjerner %s…"
@ -272,12 +272,12 @@ msgstr ""
"Ikke nok ledig plass i %(path)s: %(free)s tilgjengelig, men må være minst "
"%(need)s"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Klarte ikke å kopiere %(from_file)s til %(to_file)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
#| msgid "Syncing %s"
msgid "Syncing"
@ -350,10 +350,40 @@ msgstr "I dag"
msgid "Yesterday"
msgstr "I går"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(ukjent)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -457,12 +487,17 @@ msgstr "Kommando: %s"
msgid "Default application"
msgstr "Forvalgt program"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Utvidelser"
@ -838,8 +873,8 @@ msgstr "Strøm"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1209,8 +1244,8 @@ msgid "Import from OPML"
msgstr "Importer fra OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "_Åpne"
@ -1666,56 +1701,56 @@ msgstr "Slett fra gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Egendefinerte (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Navn"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Dokumentasjon"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Utvidelsesinfo"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Støtt utvikleren"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Utvidelsen kan ikke aktiveres"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Sett opp lydavspiller"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Kommando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Sett opp videoavspiller"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuelt"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "etter %(count)d dag"
msgstr[1] "etter %(count)d dager"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Erstatt abonnementslisten på tjeneren?"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1723,15 +1758,15 @@ msgstr ""
"Nettradioopptak i listen på tjeneren som ikke har abonnement lokalt vil bli "
"slettet. Fortsett?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Velg mappe for monteringspunkt"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Velg mappe for spillelister"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "Spillelistemappen må være på enheten"
@ -1964,42 +1999,44 @@ msgstr "Merknadsbobler for vinduer"
msgid "Display notification bubbles for different events."
msgstr "Vis merknadsbobler for forskjellige hendelser."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Endre navn på episoder etter at de er nedlastet"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"Endre navn på episoder til «<Episodetittel>.<filendelse> ved fullført "
"nedlasting"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Nedlastede episoder"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Nedlastede episoder"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Nedlastede episoder"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d ny episode"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d ny episode"
msgstr[1] "%(count)d ny episode"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2429,18 +2466,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Fjern episoder sletter i gPodder fra enhet"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Enheter"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Foretrukket YouTube-format"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Foretrukket YouTube-HLS-format:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Foretrukket Vimeo-format"

141
po/nl.po
View File

@ -11,8 +11,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"PO-Revision-Date: 2023-07-24 11:46+0200\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2023-09-22 18:22+0200\n"
"Last-Translator: Heimen Stoffels <vistausss@fastmail.com>\n"
"Language-Team: Dutch\n"
"Language: nl\n"
@ -68,7 +68,7 @@ msgstr "Zoeken op Soundcloud"
msgid "Imported OPML file"
msgstr "OPML-bestand geïmporteerd"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "In wachtrij"
@ -76,27 +76,27 @@ msgstr "In wachtrij"
msgid "Downloading"
msgstr "Bezig met downloaden"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Afgerond"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Mislukt"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "Bezig met afbreken…"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Afgebroken"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Bezig met pauzeren…"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Gepauzeerd"
@ -129,7 +129,7 @@ msgstr "In-/Uitvoerfout: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP-fout %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Fout: %s"
@ -187,7 +187,7 @@ msgid "Only keep latest"
msgstr "Alleen nieuwste behouden"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -238,7 +238,7 @@ msgstr "iPod geopend"
msgid "Saving iPod database"
msgstr "Bezig met opslaan van iPod-databank"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Bezig met verwijderen van %s"
@ -270,13 +270,13 @@ msgstr ""
"Onvoldoende vrije ruimte in %(path)s: %(free)s beschikbaar, terwijl %(need)s "
"benodigd is"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
"Het kopiëren van %(from_file)s naar %(to_file)s is mislukt: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr "Bezig met synchroniseren…"
@ -347,10 +347,38 @@ msgstr "Vandaag"
msgid "Yesterday"
msgstr "Gisteren"
#: src/gpodder/util.py:585
msgid "kB"
msgstr "kB"
#: src/gpodder/util.py:586
msgid "MB"
msgstr "MB"
#: src/gpodder/util.py:587
msgid "GB"
msgstr "GB"
#: src/gpodder/util.py:591
msgid "KiB"
msgstr "KiB"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr "MiB"
#: src/gpodder/util.py:593
msgid "GiB"
msgstr "GiB"
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(onbekend)"
#: src/gpodder/util.py:609
msgid "B"
msgstr "B"
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -454,12 +482,17 @@ msgstr "Opdracht: %s"
msgid "Default application"
msgstr "Standaardtoepassing"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Uitbreidingen"
@ -819,8 +852,8 @@ msgstr "Streamen"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1183,8 +1216,8 @@ msgid "Import from OPML"
msgstr "Importeren uit OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "_Openen"
@ -1633,56 +1666,56 @@ msgstr "Verwijderen uit gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Aangepast (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Naam"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Documentatie"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Informatie over uitbreiding"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Steun de auteur"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "De uitbreiding kan niet worden ingeschakeld"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Audiospeler configureren"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Opdracht:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Videospeler configureren"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "handmatig"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "na %(count)d dag"
msgstr[1] "na %(count)d dagen"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Abonnementenlijst op server vervangen"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1690,15 +1723,15 @@ msgstr ""
"Podcasts die niet lokaal zijn toegevoegd, worden verwijderd op de server. "
"Doorgaan?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Kies een map voor het aankoppelpunt"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Kies een map voor de afspeellijsten"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "De afspeellijstmap dienst aanwezig te zijn op hetzelfde apparaat"
@ -1935,33 +1968,35 @@ msgstr "Meldingsballonnen voor Windows"
msgid "Display notification bubbles for different events."
msgstr "Toont meldingsballonnen voor verschillende gebeurtenissen."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Afleveringsnamen wijzigen na downloaden"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"Afleveringsnamen wijzigen in \"<Afleveringstitel>.<ext>\" bij downloaden"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr "Alle gedownloade afleveringen hernoemen"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr "Er zijn geen gedownloade afleveringen"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr "Bezig met hernoemen…"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr "Er zijn %(count)d afleveringen hernoemd"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "Er zijn %(count)d afleveringen hernoemd"
msgstr[1] "Er zijn %(count)d afleveringen hernoemd"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2387,18 +2422,26 @@ msgstr ""
"Afleveringen verwijderen uit gPodder die verwijderd zijn op het apparaat"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
"Bestaande afleveringen op apparaat synchroniseren als de bestandsgrootte "
"afwijkt van gPodder (schakel uit bij door apparaat aangepaste bestanden)"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Apparaten"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Voorkeur voor YouTube-formaat:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Voorkeur voor YouTube HLS-formaat:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Voorkeur voor Vimeo-formaat:"

142
po/nn.po
View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2023-02-19 09:11+0100\n"
"Last-Translator: Karl Ove Hufthammer <karl@huftis.org>\n"
"Language-Team: Norwegian Nynorsk <l10n-no@lister.huftis.org>\n"
@ -66,7 +66,7 @@ msgstr "SoundCloud-søk"
msgid "Imported OPML file"
msgstr "Importert OPML-fil"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Lagd i kø"
@ -74,27 +74,27 @@ msgstr "Lagd i kø"
msgid "Downloading"
msgstr "Lastar ned"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Fullført"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Mislukka"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "Avbryt"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Avbroten"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Set på pause"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Sett på pause"
@ -127,7 +127,7 @@ msgstr "I/U-feil: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP-feil %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Feil: %s"
@ -187,7 +187,7 @@ msgid "Only keep latest"
msgstr "Behald berre nyaste episodar"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -238,7 +238,7 @@ msgstr "iPod opna"
msgid "Saving iPod database"
msgstr "Lagrar iPod-database"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Fjernar %s"
@ -270,12 +270,12 @@ msgstr ""
"Ikkje nok ledig plass på %(path)s: %(free)s tilgjengeleg, men treng minst "
"%(need)s"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Klarte ikkje kopiera %(from_file)s til %(to_file)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr "Synkroniserer"
@ -346,10 +346,40 @@ msgstr "I dag"
msgid "Yesterday"
msgstr "I går"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(ukjend)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -451,12 +481,17 @@ msgstr "Kommando: %s"
msgid "Default application"
msgstr "Standardprogram"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Utvidingar"
@ -824,8 +859,8 @@ msgstr "Direkteavspel"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1186,8 +1221,8 @@ msgid "Import from OPML"
msgstr "Importer frå OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "_Opna"
@ -1637,56 +1672,56 @@ msgstr "Slett han frå gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Tilpassa (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Namn"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Dokumentasjon"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Utvidingsinformasjon"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Støtt utviklaren"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Utvidinga kan ikkje takast i bruk"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Set opp lydavspelar"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Kommando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Set opp videoavspelar"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuelt"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "etter %(count)d dag"
msgstr[1] "etter %(count)d dagar"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Byt ut abonnementslista på tenaren"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1694,15 +1729,15 @@ msgstr ""
"Eksterne podkastar som ikkje er lagde til lokalt, vert fjerna på tenaren. "
"Vil du halda fram?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Vel mappe for monteringspunkt"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Vel mappe for spelelister"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "Speleliste-mappa må finnast på eininga"
@ -1938,33 +1973,36 @@ msgstr "Varslingsbobler på Windows"
msgid "Display notification bubbles for different events."
msgstr "Vis varslingsbobler for ulike hendingar."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Endra namn på episodar etter nedlasting"
# Blir dobbelt opp om det står «ved nedlasting» både her og i overskrifta.
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Endra namn på episodane til «<episodetittel>.<filetternamn>»"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr "Endra namn på alle nedlasta episodar"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr "Ingen nedlasta episodar å endra namn på"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr "Endrar namn på alle nedlasta episodar"
#: share/gpodder/extensions/rename_download.py:79
#, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr "Endra namn på %(count)d nedlasta episodar"
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "Renamed %(count)d downloaded episodes"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "Endra namn på %(count)d nedlasta episodar"
msgstr[1] "Endra namn på %(count)d nedlasta episodar"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2393,18 +2431,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Slett automatisk episodar på eininga som er sletta frå gPodder"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Einingar"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Føretrekt format for YouTube:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Føretrekt format for YouTube HLS:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Føretrekt format for Vimeo:"

140
po/pl.po
View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2019-09-11 14:42+0200\n"
"Last-Translator: Karol Bieńkowski <karolbienkowski@protonmail.com>\n"
"Language-Team: Polish <>\n"
@ -67,7 +67,7 @@ msgstr "szukaj na Soundcloud"
msgid "Imported OPML file"
msgstr "Zaimportowano plik OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "W kolejce"
@ -75,31 +75,31 @@ msgstr "W kolejce"
msgid "Downloading"
msgstr "Pobieranie"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Ukończone"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Nieudane"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Anulowanie..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Anulowane"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Wstrzymaj"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Wstrzymane"
@ -135,7 +135,7 @@ msgstr "Błąd we/wy: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Błąd HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Błąd: %s"
@ -193,7 +193,7 @@ msgid "Only keep latest"
msgstr "Zachowaj tylko najnowsze"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Wideo"
@ -244,7 +244,7 @@ msgstr "iPod otwarty"
msgid "Saving iPod database"
msgstr "Zapisywanie bazy danych iPoda"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Usuwanie %s"
@ -275,13 +275,13 @@ msgstr ""
"Brak miejsca w %(path)s: %(free)s jest dostępne, a potrzeba przynajmniej "
"%(need)s"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Błąd podczas otwierania %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
#| msgid "Syncing %s"
msgid "Syncing"
@ -357,10 +357,40 @@ msgstr "Dzisiaj"
msgid "Yesterday"
msgstr "Wczoraj"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(nieznane)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -467,12 +497,17 @@ msgstr "Polecenie: %s"
msgid "Default application"
msgstr "Domyślny program"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Rozszerzenia"
@ -863,8 +898,8 @@ msgstr "Odtwórz strumień"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1243,8 +1278,8 @@ msgid "Import from OPML"
msgstr "Zaimportuj z OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "_Otwórz"
@ -1699,45 +1734,45 @@ msgstr "Usuń z gPoddera"
msgid "Custom (%(format_ids)s)"
msgstr "Niestandardowy (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nazwa"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Dokumentacja"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Informacja o rozszerzeniu"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Wesprzyj autora"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Rozszerzenie nie może być aktywowane"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Skonfiguruj odtwarzacz dźwięku"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Polecenie:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Skonfiguruj odtwarzacz wideo"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "ręcznie"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1745,11 +1780,11 @@ msgstr[0] "po %(count)d dniu"
msgstr[1] "po %(count)d dniach"
msgstr[2] "po %(count)d dniach"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Zastąp listę subskrypcji na serwerze"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1757,15 +1792,15 @@ msgstr ""
"Zdalne podcasty które nie zostały dodane lokalnie zostaną usunięte na "
"serwerze. Kontynuować?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Wybierz folder dla punktu montowania"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Wybierz folder dla playlist"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
#| msgid "Create playlists on device"
msgid "The playlists folder must be on the device"
@ -2000,40 +2035,43 @@ msgstr "Dymki powiadomień dla Windowsa"
msgid "Display notification bubbles for different events."
msgstr "Wyświetlaj dymki powiadomień dla różnych zdarzeń."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Zmień nazwy odcinków po pobraniu"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Zmień nazwy odcinków na \"<Episode Title>.<ext>\" przy pobraniu"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Pobrane odcinki"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Pobrane odcinki"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Pobrane odcinki"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d nowy odcinek"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d nowy odcinek"
msgstr[1] "%(count)d nowy odcinek"
msgstr[2] "%(count)d nowy odcinek"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2474,20 +2512,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Usuń z gPoddera odcinki skasowane na urządzeniu"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Urządzenia"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Preferowany format YouTube:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
#| msgid "Preferred YouTube format:"
msgid "Preferred YouTube HLS format:"
msgstr "Preferowany format YouTube:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Preferowany format Vimeo:"

139
po/pt.po
View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-03-05 15:01+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Portuguese (http://www.transifex.com/projects/p/gpodder/"
@ -75,7 +75,7 @@ msgstr "%s no Soundcloud"
msgid "Imported OPML file"
msgstr "Importar de ficheiro OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Na fila"
@ -83,31 +83,31 @@ msgstr "Na fila"
msgid "Downloading"
msgstr "A transferir"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Concluído"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Falhou"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "A cancelar..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Cancelado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pausar"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pausado"
@ -143,7 +143,7 @@ msgstr "Erro E/S: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Erro HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Erro: %s"
@ -201,7 +201,7 @@ msgid "Only keep latest"
msgstr "Manter última"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Vídeo"
@ -250,7 +250,7 @@ msgstr "iPod aberto"
msgid "Saving iPod database"
msgstr "A gravar base de dados iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "A remover %s"
@ -280,13 +280,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Erro ao abrir %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "A adicionar %s"
@ -362,10 +362,40 @@ msgstr "Hoje"
msgid "Yesterday"
msgstr "Ontem"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(desconhecido)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -470,12 +500,17 @@ msgstr "Comando: %s"
msgid "Default application"
msgstr "Aplicação padrão"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensões"
@ -849,8 +884,8 @@ msgstr "Emissão"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1226,8 +1261,8 @@ msgid "Import from OPML"
msgstr "Importar de OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Abrir"
@ -1685,58 +1720,58 @@ msgstr "Eliminar do gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Personalizado (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nome"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Duração"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Informações da extensão"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "A extensão não pode ser ativada"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurar reprodutor de áudio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Comando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurar reprodutor de vídeo"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manualmente"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "após %(count)d dia"
msgstr[1] "após %(count)d dias"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Substituir lista de subscrições no servidor"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1744,16 +1779,16 @@ msgstr ""
"Os podcasts remotos que não forem adicionados localmente serão removidos do "
"servidor. Continuar?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Escolha a pasta para ponto de montagem"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Escolha a pasta para ponto de montagem"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Substituir lista no servidor"
@ -1999,40 +2034,42 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Mudar nome dos episódios após a receção"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Mudar nome dos episódios para \"<Título>.<ext>\" ao receber"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Episódios transferidos"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Episódios transferidos"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Episódios transferidos"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d novo episódio"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d novo episódio"
msgstr[1] "%(count)d novo episódio"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2471,20 +2508,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispositivos"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#, fuzzy
msgid "Preferred YouTube format:"
msgstr "Formato vídeo preferido:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
msgid "Preferred YouTube HLS format:"
msgstr "Formato vídeo preferido:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#, fuzzy
msgid "Preferred Vimeo format:"
msgstr "Formato vídeo preferido:"

View File

@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-03-05 15:01+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/"
@ -78,7 +78,7 @@ msgstr "%s em Soundcloud"
msgid "Imported OPML file"
msgstr "Importar de um arquivo OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Em espera"
@ -86,31 +86,31 @@ msgstr "Em espera"
msgid "Downloading"
msgstr "Downloading"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Terminados"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Falhou"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Cancelando..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Cancelado"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pausar"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pausado"
@ -146,7 +146,7 @@ msgstr "Erro de I/O: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Erro de HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Erro: %s"
@ -204,7 +204,7 @@ msgid "Only keep latest"
msgstr "Apenas manter as últimas"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Vídeo"
@ -253,7 +253,7 @@ msgstr "iPod aberto"
msgid "Saving iPod database"
msgstr "Salvando o banco dando de dados do iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Removendo %s"
@ -282,13 +282,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Erro ao abrir %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Adicionando %s"
@ -364,10 +364,40 @@ msgstr "Hoje"
msgid "Yesterday"
msgstr "Ontem"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(desconhecido)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -472,12 +502,17 @@ msgstr "Comando: %s"
msgid "Default application"
msgstr "Aplicativo Padrão"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensões"
@ -851,8 +886,8 @@ msgstr "Stream"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1229,8 +1264,8 @@ msgid "Import from OPML"
msgstr "Importar de um arquivo OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Abrir"
@ -1689,58 +1724,58 @@ msgstr "Excluir do gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Personalizado (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Nome"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "Duração"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Informação de módulo de extensão"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Extensão não pode ser ativada"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurar o reprodutor de áudio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Comando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurar reprodutor de vídeo"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manualmente"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "depois de %(count)d dia"
msgstr[1] "depois de %(count)d dias"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Substituir a lista de inscrições no servidor"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1748,16 +1783,16 @@ msgstr ""
"Podcasts remotos que não foram adicionados localmente serão removidos do "
"servidor. continuar?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Selecionar pasta para ponto de montagem"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Selecionar pasta para ponto de montagem"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Substituir a lista no servidor"
@ -2003,40 +2038,42 @@ msgstr "Janelas de notificação para Windows"
msgid "Display notification bubbles for different events."
msgstr "Mostra janelas de notificações para vários eventos."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Renomear episódios depois de baixar"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Renomear episódiops para \"<título do episódio>.<extensão>\" ao baixar"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Episódios baixados"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Episódios baixados"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Episódios baixados"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d novo episódio"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d novo episódio"
msgstr[1] "%(count)d novo episódio"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2481,20 +2518,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Remove episódios deletados no dispositivo do gPodder"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispositivos"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#, fuzzy
msgid "Preferred YouTube format:"
msgstr "Formato preferido de vídeo:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#, fuzzy
msgid "Preferred YouTube HLS format:"
msgstr "Formato preferido de vídeo:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#, fuzzy
msgid "Preferred Vimeo format:"
msgstr "Formato preferido de vídeo:"

140
po/ro.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -73,7 +73,7 @@ msgstr "%s pe Soundcloud"
msgid "Imported OPML file"
msgstr "Importă din fișier OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Adăugat în coada de așteptare"
@ -81,31 +81,31 @@ msgstr "Adăugat în coada de așteptare"
msgid "Downloading"
msgstr "Se descarcă"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Gata"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Eșuat"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Renunțare..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Sa renunțat"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Întrerupt temporar"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Întrerupt temporar"
@ -140,7 +140,7 @@ msgstr "Eroare I/O: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Eroare HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Eroare: %s"
@ -201,7 +201,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -250,7 +250,7 @@ msgstr "iPod este deschis"
msgid "Saving iPod database"
msgstr "Salvează baza de date iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Îndeparteaza %s"
@ -281,13 +281,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Eroare la deschiderea %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Adauga %s"
@ -364,10 +364,40 @@ msgstr "Astăzi"
msgid "Yesterday"
msgstr "Ieri"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(necunoscut)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -476,12 +506,17 @@ msgstr "Linie de comandă: %s"
msgid "Default application"
msgstr "Aplicația implicită"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -866,8 +901,8 @@ msgstr "Flux"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1257,8 +1292,8 @@ msgid "Import from OPML"
msgstr "Importă din OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Deschide"
@ -1728,45 +1763,45 @@ msgstr "Șterge episodul din gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Șiruri de caractere specifice"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Configurează playerul audio"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Linie de comandă:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Configurează playerul video"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manual"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1774,11 +1809,11 @@ msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Înlocuiește lista de abonamente pe server"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1786,17 +1821,17 @@ msgstr ""
"Podcast-uri remote care nu au fost adăugate local vor fi îndepărtate de pe "
"server. Continuați?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
#, fuzzy
msgid "Select folder for mount point"
msgstr "Selecta-ți locul de montare al iPod-ului."
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Selecta-ți locul de montare al iPod-ului."
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Înlocuiește lista de abonamente pe server"
@ -2032,40 +2067,43 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "Un episod nou este disponibil pentru descărcare"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Un episod nou este disponibil pentru descărcare"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Episoade descărcate"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Episoade descărcate"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Episoade descărcate"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
msgid "Renamed %(count)d downloaded episodes"
msgstr "Anumite podcast-uri nu au fost adăugate"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "Anumite podcast-uri nu au fost adăugate"
msgstr[1] "Anumite podcast-uri nu au fost adăugate"
msgstr[2] "Anumite podcast-uri nu au fost adăugate"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2516,18 +2554,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Dispozitive"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

140
po/ru.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder 2.10+git\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2022-08-06 21:47+0700\n"
"Last-Translator: adasiko <adasiko256@yandex.ru>\n"
"Language-Team: \n"
@ -65,7 +65,7 @@ msgstr "Soundcloud поиск"
msgid "Imported OPML file"
msgstr "Импорт из OPML"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "В очереди"
@ -73,31 +73,31 @@ msgstr "В очереди"
msgid "Downloading"
msgstr "Загрузка"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Завершено"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Ошибка"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Отменяется..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Отменено"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Пауза"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Остановлено"
@ -131,7 +131,7 @@ msgstr "Ошибка ввода/вывода: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Ошибка HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Ошибка: %s"
@ -189,7 +189,7 @@ msgid "Only keep latest"
msgstr "Сохранять только последний"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Видео"
@ -240,7 +240,7 @@ msgstr "iPod открыт"
msgid "Saving iPod database"
msgstr "Сохранение базы данных iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Удаление %s"
@ -273,13 +273,13 @@ msgstr ""
"Недостаточно свободного места в %(path)s: %(free)s доступно, но нужно как "
"минимум %(need)s"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Ошибка открытия %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
#| msgid "Syncing %s"
msgid "Syncing"
@ -353,10 +353,40 @@ msgstr "Сегодня"
msgid "Yesterday"
msgstr "Вчера"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "КиБ/с"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(неизвестно)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -463,12 +493,17 @@ msgstr "Команда: %s"
msgid "Default application"
msgstr "Приложение по-умолчанию"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Расширения"
@ -853,8 +888,8 @@ msgstr "Поток"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1231,8 +1266,8 @@ msgid "Import from OPML"
msgstr "Импорт из OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "Открыть"
@ -1686,45 +1721,45 @@ msgstr "Удалить из gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Выражение (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Имя"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Документация"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Информация о расширении"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Поддержать gPodder"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Расширение не может быть активировано"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Настроить аудио плеер"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Команда:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Настроить видео плеер:"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "вручную"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1732,11 +1767,11 @@ msgstr[0] "на следующий день"
msgstr[1] "через %(count)d дня"
msgstr[2] "через %(count)d дней"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Перезаписать список подписок на сервере"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1744,15 +1779,15 @@ msgstr ""
"Подписки на сервере, не сохраненные локально, будут безвозвратно утеряны. "
"Продолжить?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Укажите точку монтирования"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Укажите каталог для плейлистов"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
#| msgid "Create playlists on device"
msgid "The playlists folder must be on the device"
@ -1990,40 +2025,43 @@ msgstr "Уведомления для Windows"
msgid "Display notification bubbles for different events."
msgstr "Отображать уведомления для разных событий."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Переименовать эпизоды после загрузки"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Переименовать эпизоды в \"<Episode Title>.<ext>\" при загрузке"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Загруженные эпизоды"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Загруженные эпизоды"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Загруженные эпизоды"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "один новый выпуск"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "один новый выпуск"
msgstr[1] "один новый выпуск"
msgstr[2] "один новый выпуск"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2453,18 +2491,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Удалять с устройства эпизоды, удаленные в gPodder"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Устройства"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Предпочитаемый формат YouTube:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Предпочитаемый HLS формат YouTube:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Предпочитаемый формат Vimeo:"

197
po/sk.po
View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"PO-Revision-Date: 2022-10-10 13:37+0200\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2023-09-23 13:37+0200\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Slovak (http://www.transifex.com/projects/p/gpodder/language/"
"sk/)\n"
@ -64,7 +64,7 @@ msgstr "Vyhľadávanie na Soundcloud"
msgid "Imported OPML file"
msgstr "Importovaný OPML súbor"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Zaradené do poradia"
@ -72,27 +72,27 @@ msgstr "Zaradené do poradia"
msgid "Downloading"
msgstr "Sťahovanie"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Dokončené"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Zlyhalo"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "Rušenie"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Zrušené"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Pozastavenie"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pozastavené"
@ -125,7 +125,7 @@ msgstr "Chyba vstupu/výstupu: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "Chyba HTTP %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Chyba: %s"
@ -183,7 +183,7 @@ msgid "Only keep latest"
msgstr "Zachovať iba najnovšie"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -234,7 +234,7 @@ msgstr "iPod bol otvorený"
msgid "Saving iPod database"
msgstr "Ukladanie databázy iPodu"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Odstránenie %s"
@ -266,12 +266,12 @@ msgstr ""
"Nedostatok voľného miesta na %(path)s: %(free)s voľného miesta, potrebných "
"je aspoň %(need)s"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Chyba pri kopírovaní %(from_file)s do %(to_file)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr "Synchronizácia"
@ -343,10 +343,38 @@ msgstr "Dnes"
msgid "Yesterday"
msgstr "Včera"
#: src/gpodder/util.py:585
msgid "kB"
msgstr "kB"
#: src/gpodder/util.py:586
msgid "MB"
msgstr "MB"
#: src/gpodder/util.py:587
msgid "GB"
msgstr "GB"
#: src/gpodder/util.py:591
msgid "KiB"
msgstr "KiB"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr "MiB"
#: src/gpodder/util.py:593
msgid "GiB"
msgstr "GiB"
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(neznáme)"
#: src/gpodder/util.py:609
msgid "B"
msgstr "B"
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -453,12 +481,17 @@ msgstr "Príkaz: %s"
msgid "Default application"
msgstr "Predvolená aplikácia"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Rozšírenia"
@ -479,10 +512,8 @@ msgstr[1] "%(count)d neúplné súbory"
msgstr[2] "%(count)d neúplných súborov"
#: src/gpodder/gtkui/main.py:457
#, fuzzy
#| msgid "Clean-up"
msgid "Cleaning up..."
msgstr "Čistenie"
msgstr "Čistenie..."
#: src/gpodder/gtkui/main.py:572
msgid "Action"
@ -494,7 +525,7 @@ msgstr "Potvrdiť zmeny z gpodder.net"
#: src/gpodder/gtkui/main.py:620
msgid "Select the actions you want to carry out."
msgstr "Vyberte akciu, kterou chcete vykonať."
msgstr "Vyberte akcie, ktoré chcete vykonať."
#: src/gpodder/gtkui/main.py:624
msgid "A_pply"
@ -502,7 +533,7 @@ msgstr "_Použiť"
#: src/gpodder/gtkui/main.py:660
msgid "Uploading subscriptions"
msgstr "Nahrávánie odberov"
msgstr "Nahrávanie odberov"
#: src/gpodder/gtkui/main.py:661
msgid "Your subscriptions are being uploaded to the server."
@ -706,10 +737,8 @@ msgstr "Odstránenie"
#: src/gpodder/gtkui/main.py:1750 src/gpodder/gtkui/main.py:3335
#: src/gpodder/gtkui/main.py:3416
#, fuzzy
#| msgid "Updating"
msgid "Updating..."
msgstr "Aktualizácia"
msgstr "Aktualizácia..."
#: src/gpodder/gtkui/main.py:1812
msgid "Start download now"
@ -833,8 +862,8 @@ msgstr "Prehrať zo siete"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -870,10 +899,8 @@ msgid "Episode details"
msgstr "Detaily epizódy"
#: src/gpodder/gtkui/main.py:2205 share/gpodder/ui/gtk/menus.ui.h:31
#, fuzzy
#| msgid "Select _none"
msgid "Select channel"
msgstr "_Nevybrať žiadne"
msgstr "Vybrať zdroj"
#: src/gpodder/gtkui/main.py:2395
msgid "Please check your media player settings in the preferences dialog."
@ -901,7 +928,7 @@ msgstr "Tieto podcasty už odoberáte:"
#: src/gpodder/gtkui/main.py:2676 bin/gpo:345
msgid "Podcast requires authentication"
msgstr "Podcast požaduje overenie"
msgstr "Podcast vyžaduje overenie"
#: src/gpodder/gtkui/main.py:2677 bin/gpo:346
#, python-format
@ -1048,7 +1075,7 @@ msgid ""
"The selected episodes are locked. Please unlock the episodes that you want "
"to delete before trying to delete them."
msgstr ""
"Označené epizódy sú uzamknuté. Pre ich vymazanie je tieto najprv epizódy "
"Označené epizódy sú uzamknuté. Pre ich vymazanie je tieto epizódy najprv "
"potrebné odomknúť."
#: src/gpodder/gtkui/main.py:3106 bin/gpo:874
@ -1203,8 +1230,8 @@ msgid "Import from OPML"
msgstr "Importovať z OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "_Otvoriť"
@ -1466,7 +1493,7 @@ msgstr "Prihlásiť"
#: src/gpodder/gtkui/interface/common.py:188
msgid "Authentication required"
msgstr "Požadované overenie"
msgstr "Vyžadované overenie"
#: src/gpodder/gtkui/interface/common.py:197
msgid "hostname or root URL (e.g. https://gpodder.net)"
@ -1501,7 +1528,7 @@ msgstr "Nastaviť na"
#, python-format
msgid "Cannot set %(field)s to %(value)s. Needed data type: %(datatype)s"
msgstr ""
"%(field)s nemohlo byť nastavené na %(value)s. Požadovaný typ: %(datatype)s"
"Nie je možné nastaviť %(field)s na %(value)s. Potrebný typ: %(datatype)s"
#: src/gpodder/gtkui/interface/configeditor.py:91
msgid "Error setting option"
@ -1657,45 +1684,45 @@ msgstr "Odstrániť z gPodderu"
msgid "Custom (%(format_ids)s)"
msgstr "Vlastné (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Meno"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Dokumentácia"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Informácie o rozšírení"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Podporiť"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Rozšírenie nie je možné aktivovať"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Nastaviť prehrávač audia"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Príkaz:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Nastaviť prehrávač videa"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuálne"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1703,11 +1730,11 @@ msgstr[0] "po %(count)d dni"
msgstr[1] "po %(count)d dňoch"
msgstr[2] "po %(count)d dňoch"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Nahradiť zoznam podcastov na serveri"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1715,15 +1742,15 @@ msgstr ""
"Podcasty na serveri, ktoré neboli pridané lokálne, budú odstránené. "
"Pokračovať?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Vyberte priečinok pre prípojný bod"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Vyberte priečinok pre zoznamy skladieb"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "Priečinok zoznamov skladieb musí byť na zariadení"
@ -1956,40 +1983,35 @@ msgstr "Bublinové oznámenia pre Windows"
msgid "Display notification bubbles for different events."
msgstr "Zobraziť bublinové oznámenia pre rôzne udalosti."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "Premenovať epizódy po stiahnutí"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Premenovať epizódy po stiahnutí na \"<Názov epizódy>.<prípona>\""
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#, fuzzy
#| msgid "Downloaded episodes"
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
msgid "Rename all downloaded episodes"
msgstr "Stiahnuté epizódy"
msgstr "Premenovať všetky stiahnuté epizódy"
#: share/gpodder/extensions/rename_download.py:60
#, fuzzy
#| msgid "Downloaded episodes"
#: share/gpodder/extensions/rename_download.py:61
msgid "No downloaded episodes to rename"
msgstr "Stiahnuté epizódy"
msgstr "Žiadne stiahnuté epizódy na premenovanie"
#: share/gpodder/extensions/rename_download.py:66
#, fuzzy
#| msgid "Downloaded episodes"
#: share/gpodder/extensions/rename_download.py:67
msgid "Renaming all downloaded episodes"
msgstr "Stiahnuté epizódy"
msgstr "Premenovanie všetkých stiahnutých epizód"
#: share/gpodder/extensions/rename_download.py:79
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d nová epizóda"
#: share/gpodder/extensions/rename_download.py:81
#, python-format
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "Premenovaná %(count)d stiahnutá epizóda"
msgstr[1] "Premenované %(count)d stiahnuté epizódy"
msgstr[2] "Premenovaných %(count)d stiahnutých epizód"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2146,13 +2168,14 @@ msgstr ""
#: share/gpodder/extensions/youtube-dl.py:593
msgid "Embed all available subtitles in downloaded video"
msgstr ""
msgstr "Vložiť všetky dostupné titulky do stiahnutých videí"
#: share/gpodder/extensions/youtube-dl.py:600
msgid ""
"The \"ffmpeg\" command was not found. FFmpeg is required for embedding "
"subtitles."
msgstr ""
"Príkaz \"ffmpeg\" nebol nájdený. FFmpeg je potrebný na vloženie titulkov."
#: share/gpodder/extensions/youtube-dl.py:609
msgid "youtube-dl"
@ -2304,7 +2327,7 @@ msgstr "Prehrávač audia:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:6
msgid "Find as you type"
msgstr ""
msgstr "Hľadať počas písania"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:7
msgid "General"
@ -2344,7 +2367,7 @@ msgstr "Maximálny počet epizód podcastu:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:18
msgid "Consider only episodes added in the update as new"
msgstr ""
msgstr "Považovať iba epizódy pridané počas aktualizácie za nové"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:19
msgid "When new episodes are found:"
@ -2407,18 +2430,26 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "Odstrániť epizódy vymazané z gPodderu zo zariadenia"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
"Synchronizovať existujúce epizódy so zariadením, keď sa líšia veľkosťou "
"súborov (zakážte ak zariadenie modifikuje súbory)"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Zariadenia"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Preferovaný formát pre YouTube:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Preferovaný formát pre YouTube HLS:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Preferovaný formát pre Vimeo:"
@ -2564,21 +2595,19 @@ msgstr "Vždy zobraziť nové epizódy"
#: share/gpodder/ui/gtk/menus.ui.h:47
msgid "Trim episode title prefix"
msgstr ""
msgstr "Skrátiť názvy epizód"
#: share/gpodder/ui/gtk/menus.ui.h:48
msgid "Episode descriptions"
msgstr "Popis epizód"
#: share/gpodder/ui/gtk/menus.ui.h:49
#, fuzzy
#| msgid "Show episode list"
msgid "Show episode released time"
msgstr "Zobraziť zoznam epizód"
msgstr "Zobraziť čas vydania epizód"
#: share/gpodder/ui/gtk/menus.ui.h:50
msgid "Right align episode released column"
msgstr ""
msgstr "Zarovnať čas vydania epizód vpravo"
#: share/gpodder/ui/gtk/menus.ui.h:51
msgid "Require control click to sort episodes"

139
po/sv.po
View File

@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:30+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: Swedish (http://www.transifex.com/projects/p/gpodder/language/"
@ -77,7 +77,7 @@ msgstr "%s i Soundcloud"
msgid "Imported OPML file"
msgstr "Importera från OPML fil"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Köad"
@ -85,31 +85,31 @@ msgstr "Köad"
msgid "Downloading"
msgstr "Laddar ner"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Klar"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Misslyckad"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Avbryter..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Avbruten"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Pausa"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Pausad"
@ -145,7 +145,7 @@ msgstr "I/O Fel: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP Fel: %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Fel: %s"
@ -206,7 +206,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -255,7 +255,7 @@ msgstr "iPod öppnad"
msgid "Saving iPod database"
msgstr "Sparar iPod databas"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Raderar %s"
@ -286,13 +286,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Fel vid öppnande av %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Lägger till %s"
@ -368,10 +368,40 @@ msgstr "Idag"
msgid "Yesterday"
msgstr "Igår"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(okänt)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -476,12 +506,17 @@ msgstr "Kommando: %s"
msgid "Default application"
msgstr "Förvald applikation"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Extensioner"
@ -860,8 +895,8 @@ msgstr "Ström"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1238,8 +1273,8 @@ msgid "Import from OPML"
msgstr "Inportera från OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Öppna"
@ -1707,58 +1742,58 @@ msgstr "Radera från gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Egenformaterade strängar"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Namn"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
#, fuzzy
msgid "Documentation"
msgstr "varaktighet"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
#, fuzzy
msgid "Extension info"
msgstr "Modulinfo för extension"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Ställ in musik spelare"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Kommando:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Ställ in video spelare"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "manuellt"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "efter %(count)d dag"
msgstr[1] "efter %(count)d dagar"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Ersätt prenumerationslista på servern"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1766,16 +1801,16 @@ msgstr ""
"Fjärrpoddsändningar som inte har lagts till lokalt kommer att raderas från "
"servern.Fortsätt?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Välj monteringspunkt för iPod"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Välj monteringspunkt för iPod"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Byt ut lista på server"
@ -2015,42 +2050,44 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "ett avsnitt nerladdat"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "En ny episod är tillgängligt för nedladdning"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Nedladdade avsnitt"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Nedladdade avsnitt"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Nedladdade avsnitt"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d nytt avsnitt"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d nytt avsnitt"
msgstr[1] "%(count)d nytt avsnitt"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2493,18 +2530,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Enheter"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

139
po/tr.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder 3.10.21\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2022-04-11 10:00+0300\n"
"Last-Translator: Serkan ÖNDER <serkanonder@outlook.com>\n"
"Language-Team: \n"
@ -64,7 +64,7 @@ msgstr "Soundcloud araması"
msgid "Imported OPML file"
msgstr "İçe aktarılan OPML dosyası"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "Kuyrukta"
@ -72,27 +72,27 @@ msgstr "Kuyrukta"
msgid "Downloading"
msgstr "İndiriliyor"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Tamamlandı"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Başarısız"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelling"
msgstr "İptal ediliyor"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Vazgeçildi"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Pausing"
msgstr "Duraklatma"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Duraklatıldı"
@ -125,7 +125,7 @@ msgstr "G/Ç Hatası: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP Hatası %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Hata: %s"
@ -184,7 +184,7 @@ msgid "Only keep latest"
msgstr "Sadece en yeniyi sakla"
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr "Video"
@ -235,7 +235,7 @@ msgstr "iPod açıldı"
msgid "Saving iPod database"
msgstr "İPod veritabanını kaydetme"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "%s Kaldırılıyor"
@ -268,14 +268,14 @@ msgstr ""
"%(path)s içinde yeterli alan yok: %(free)s mevcut, ancak en az %(need)s "
"gerekiyor"
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, python-format
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr ""
"%(from_file)s dosyası, %(to_file)s dosyasına kopyalanırken hata oluştu: "
"%(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
msgid "Syncing"
msgstr "Eşitleme"
@ -347,10 +347,40 @@ msgstr "Bugün"
msgid "Yesterday"
msgstr "Dün"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "KiB/s"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(bilinmiyor)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -453,12 +483,17 @@ msgstr "Komut: %s"
msgid "Default application"
msgstr "Öntanımlı uygulama"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr "Uzantılar"
@ -830,8 +865,8 @@ msgstr "Akış"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1197,8 +1232,8 @@ msgid "Import from OPML"
msgstr "OPML'den içe aktar"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
msgid "_Open"
msgstr "_Aç"
@ -1642,71 +1677,71 @@ msgstr "gPodder'dan sil"
msgid "Custom (%(format_ids)s)"
msgstr "Özel (%(format_ids)s)"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr "Ad"
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr "Belgelendirme"
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr "Uzantı bilgileri"
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr "Yazarı destekleyin"
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr "Uzantı etkinleştirilemez"
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Ses oynatıcıyı yapılandırın"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Komut:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Video oynatıcıyı yapılandırın"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "elle"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
msgstr[0] "%(count)d gün sonra"
msgstr[1] "%(count)d gün sonra"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Sunucudaki abonelik listesini değiştirin"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
msgstr ""
"Yerel olarak eklenmemiş uzak podcast'ler sunucuda kaldırılacaktır. Devam et?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Bağlama noktası için klasör seçin"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
msgid "Select folder for playlists"
msgstr "Çalma listeleri için klasör seçin"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
msgid "The playlists folder must be on the device"
msgstr "Çalma listeleri klasörü cihazda olmalıdır"
@ -1940,42 +1975,44 @@ msgstr "Windows için Bildirim Balonları"
msgid "Display notification bubbles for different events."
msgstr "Farklı olaylar için bildirim balonları görüntüleyin."
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
msgid "Rename episodes after download"
msgstr "İndirdikten sonra bölümleri yeniden adlandırın"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr ""
"İndirme sırasında bölümleri \"<Episode Title>.<ext>\" olarak yeniden "
"adlandırın"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "İndirilen bölümler"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "İndirilen bölümler"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "İndirilen bölümler"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d yeni bölüm"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d yeni bölüm"
msgstr[1] "%(count)d yeni bölüm"
#: share/gpodder/extensions/rm_ogg_cover.py:37
msgid "Remove cover art from OGG files"
@ -2401,18 +2438,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr "gPodder'da silinen bölümleri cihazdan kaldırın"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Aygıtlar"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr "Tercih edilen YouTube biçimi:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr "Tercih edilen YouTube HLS biçimi:"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr "Tercih edilen Vimeo biçimi:"

140
po/uk.po
View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gPodder\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-08-13 22:27-0600\n"
"POT-Creation-Date: 2023-10-11 17:07-0600\n"
"PO-Revision-Date: 2013-01-19 12:31+0000\n"
"Last-Translator: Thomas Perl <m@thp.io>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -74,7 +74,7 @@ msgstr "%s на Soundcloud"
msgid "Imported OPML file"
msgstr "Імпортувати з OPML-файлу"
#: src/gpodder/download.py:587 src/gpodder/sync.py:643
#: src/gpodder/download.py:587 src/gpodder/sync.py:650
msgid "Queued"
msgstr "В черзі"
@ -82,31 +82,31 @@ msgstr "В черзі"
msgid "Downloading"
msgstr "Завантажую"
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/model.py:898 src/gpodder/sync.py:651
msgid "Finished"
msgstr "Завершено"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Failed"
msgstr "Помилка"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Cancelling..."
msgid "Cancelling"
msgstr "Скасовую..."
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
msgid "Cancelled"
msgstr "Скасовано"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#, fuzzy
#| msgid "Pause"
msgid "Pausing"
msgstr "Пауза"
#: src/gpodder/download.py:588 src/gpodder/sync.py:644
#: src/gpodder/download.py:588 src/gpodder/sync.py:651
#: src/gpodder/gtkui/model.py:394
msgid "Paused"
msgstr "Призупинено"
@ -141,7 +141,7 @@ msgstr "Помилка вводу/виводу: %(error)s: %(filename)s"
msgid "HTTP Error %(code)s: %(message)s"
msgstr "HTTP помилка %(code)s: %(message)s"
#: src/gpodder/download.py:1014 src/gpodder/sync.py:844
#: src/gpodder/download.py:1014 src/gpodder/sync.py:851
#, python-format
msgid "Error: %s"
msgstr "Помилка: %s"
@ -202,7 +202,7 @@ msgid "Only keep latest"
msgstr ""
#: src/gpodder/model.py:1368 src/gpodder/model.py:1383
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
msgid "Video"
msgstr ""
@ -251,7 +251,7 @@ msgstr "iPod відкритий"
msgid "Saving iPod database"
msgstr "Збереження даних iPod"
#: src/gpodder/sync.py:354 src/gpodder/sync.py:621
#: src/gpodder/sync.py:354 src/gpodder/sync.py:628
#, python-format
msgid "Removing %s"
msgstr "Видалення %s"
@ -281,13 +281,13 @@ msgid ""
"Not enough space in %(path)s: %(free)s available, but need at least %(need)s"
msgstr ""
#: src/gpodder/sync.py:552
#: src/gpodder/sync.py:556
#, fuzzy, python-format
#| msgid "Error opening %(filename)s: %(message)s"
msgid "Error copying %(from_file)s to %(to_file)s: %(message)s"
msgstr "Помилка відкривання %(filename)s: %(message)s"
#: src/gpodder/sync.py:643
#: src/gpodder/sync.py:650
#, fuzzy
msgid "Syncing"
msgstr "Додаю %s"
@ -364,10 +364,40 @@ msgstr "Сьогодні"
msgid "Yesterday"
msgstr "Вчора"
#: src/gpodder/util.py:585
msgid "kB"
msgstr ""
#: src/gpodder/util.py:586
msgid "MB"
msgstr ""
#: src/gpodder/util.py:587
msgid "GB"
msgstr ""
#: src/gpodder/util.py:591
#, fuzzy
#| msgid "KiB/s"
msgid "KiB"
msgstr "КіБ/с"
#: src/gpodder/util.py:592
msgid "MiB"
msgstr ""
#: src/gpodder/util.py:593
msgid "GiB"
msgstr ""
#: src/gpodder/util.py:599 src/gpodder/util.py:602
msgid "(unknown)"
msgstr "(невідомо)"
#: src/gpodder/util.py:609
msgid "B"
msgstr ""
#: src/gpodder/util.py:1507 src/gpodder/util.py:1529
#, python-format
msgid "%(count)d second"
@ -476,12 +506,17 @@ msgstr "Команда: %s"
msgid "Default application"
msgstr "Програма за замовчуванням"
#: src/gpodder/gtkui/download.py:98
#, python-format
msgid "%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)"
msgstr ""
#: src/gpodder/gtkui/main.py:174 share/applications/gpodder.desktop.in.h:1
msgid "gPodder"
msgstr "gPodder"
#: src/gpodder/gtkui/main.py:413
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:39
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:40
msgid "Extensions"
msgstr ""
@ -870,8 +905,8 @@ msgstr "Потік"
#: src/gpodder/gtkui/interface/common.py:269
#: src/gpodder/gtkui/desktop/channel.py:145
#: src/gpodder/gtkui/desktop/episodeselector.py:327
#: src/gpodder/gtkui/desktop/preferences.py:702
#: src/gpodder/gtkui/desktop/preferences.py:720
#: src/gpodder/gtkui/desktop/preferences.py:705
#: src/gpodder/gtkui/desktop/preferences.py:723
#: share/gpodder/extensions/concatenate_videos.py:40
#: share/gpodder/ui/gtk/gpodderaddpodcast.ui.h:2
#: share/gpodder/ui/gtk/gpodderchannel.ui.h:2
@ -1256,8 +1291,8 @@ msgid "Import from OPML"
msgstr "Імпортувати з OPML"
#: src/gpodder/gtkui/main.py:3726 src/gpodder/gtkui/desktop/channel.py:146
#: src/gpodder/gtkui/desktop/preferences.py:703
#: src/gpodder/gtkui/desktop/preferences.py:721
#: src/gpodder/gtkui/desktop/preferences.py:706
#: src/gpodder/gtkui/desktop/preferences.py:724
#, fuzzy
msgid "_Open"
msgstr "Відкрити"
@ -1724,45 +1759,45 @@ msgstr "Видалити з gPodder"
msgid "Custom (%(format_ids)s)"
msgstr "Довільний рядок формату"
#: src/gpodder/gtkui/desktop/preferences.py:383
#: src/gpodder/gtkui/desktop/preferences.py:385
msgid "Name"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:435
#: src/gpodder/gtkui/desktop/preferences.py:437
msgid "Documentation"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:440
#: src/gpodder/gtkui/desktop/preferences.py:442
msgid "Extension info"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:445
#: src/gpodder/gtkui/desktop/preferences.py:447
msgid "Support the author"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:488 bin/gpo:1078
#: src/gpodder/gtkui/desktop/preferences.py:490 bin/gpo:1078
msgid "Extension cannot be activated"
msgstr ""
#: src/gpodder/gtkui/desktop/preferences.py:540
#: src/gpodder/gtkui/desktop/preferences.py:542
msgid "Configure audio player"
msgstr "Налаштування аудіо-програвача"
#: src/gpodder/gtkui/desktop/preferences.py:541
#: src/gpodder/gtkui/desktop/preferences.py:551
#: src/gpodder/gtkui/desktop/preferences.py:543
#: src/gpodder/gtkui/desktop/preferences.py:553
msgid "Command:"
msgstr "Команда:"
#: src/gpodder/gtkui/desktop/preferences.py:550
#: src/gpodder/gtkui/desktop/preferences.py:552
msgid "Configure video player"
msgstr "Налаштування аудіо-програвача"
#: src/gpodder/gtkui/desktop/preferences.py:563
#: src/gpodder/gtkui/desktop/preferences.py:587
#: src/gpodder/gtkui/desktop/preferences.py:565
#: src/gpodder/gtkui/desktop/preferences.py:589
msgid "manually"
msgstr "вручну"
#: src/gpodder/gtkui/desktop/preferences.py:589
#: src/gpodder/gtkui/desktop/preferences.py:591
#, python-format
msgid "after %(count)d day"
msgid_plural "after %(count)d days"
@ -1770,11 +1805,11 @@ msgstr[0] "через %(count)d день"
msgstr[1] "через %(count)d дні"
msgstr[2] "через %(count)d днів"
#: src/gpodder/gtkui/desktop/preferences.py:623
#: src/gpodder/gtkui/desktop/preferences.py:625
msgid "Replace subscription list on server"
msgstr "Замінити список завантаження на сервері"
#: src/gpodder/gtkui/desktop/preferences.py:624
#: src/gpodder/gtkui/desktop/preferences.py:626
msgid ""
"Remote podcasts that have not been added locally will be removed on the "
"server. Continue?"
@ -1782,16 +1817,16 @@ msgstr ""
"Віддалений подкаст, що не був доданий локально, буде видалений із сервера. "
"Продовжити?"
#: src/gpodder/gtkui/desktop/preferences.py:699
#: src/gpodder/gtkui/desktop/preferences.py:702
msgid "Select folder for mount point"
msgstr "Оберіть теку для точки монтування"
#: src/gpodder/gtkui/desktop/preferences.py:717
#: src/gpodder/gtkui/desktop/preferences.py:720
#, fuzzy
msgid "Select folder for playlists"
msgstr "Оберіть теку для точки монтування"
#: src/gpodder/gtkui/desktop/preferences.py:731
#: src/gpodder/gtkui/desktop/preferences.py:734
#, fuzzy
msgid "The playlists folder must be on the device"
msgstr "Замінити список завантаження на сервері"
@ -2030,42 +2065,45 @@ msgstr ""
msgid "Display notification bubbles for different events."
msgstr ""
#: share/gpodder/extensions/rename_download.py:18
#: share/gpodder/extensions/rename_download.py:19
#, fuzzy
msgid "Rename episodes after download"
msgstr "Немає епізодів для завантаження"
#: share/gpodder/extensions/rename_download.py:19
#: share/gpodder/extensions/rename_download.py:20
#, fuzzy
msgid "Rename episodes to \"<Episode Title>.<ext>\" on download"
msgstr "Доступний для завантаження один новий епізод"
#: share/gpodder/extensions/rename_download.py:54
#: share/gpodder/extensions/rename_download.py:61
#: share/gpodder/extensions/rename_download.py:80
#: share/gpodder/extensions/rename_download.py:55
#: share/gpodder/extensions/rename_download.py:62
#: share/gpodder/extensions/rename_download.py:84
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Rename all downloaded episodes"
msgstr "Завантажені епізоди"
#: share/gpodder/extensions/rename_download.py:60
#: share/gpodder/extensions/rename_download.py:61
#, fuzzy
#| msgid "Downloaded episodes"
msgid "No downloaded episodes to rename"
msgstr "Завантажені епізоди"
#: share/gpodder/extensions/rename_download.py:66
#: share/gpodder/extensions/rename_download.py:67
#, fuzzy
#| msgid "Downloaded episodes"
msgid "Renaming all downloaded episodes"
msgstr "Завантажені епізоди"
#: share/gpodder/extensions/rename_download.py:79
#: share/gpodder/extensions/rename_download.py:81
#, fuzzy, python-format
#| msgid "%(count)d new episode"
#| msgid_plural "%(count)d new episodes"
msgid "Renamed %(count)d downloaded episodes"
msgstr "%(count)d новий епізод"
msgid "Renamed %(count)d downloaded episode"
msgid_plural "Renamed %(count)d downloaded episodes"
msgstr[0] "%(count)d новий епізод"
msgstr[1] "%(count)d новий епізод"
msgstr[2] "%(count)d новий епізод"
#: share/gpodder/extensions/rm_ogg_cover.py:37
#, fuzzy
@ -2509,18 +2547,24 @@ msgid "Remove episodes deleted in gPodder from device"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:34
msgid ""
"Sync existing episodes on device when file size differs from gPodder "
"(disable if device modifies files)"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
msgid "Devices"
msgstr "Пристрої"
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:35
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
msgid "Preferred YouTube format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:36
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
msgid "Preferred YouTube HLS format:"
msgstr ""
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:37
#: share/gpodder/ui/gtk/gpodderpreferences.ui.h:38
msgid "Preferred Vimeo format:"
msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
[pycodestyle]
count=1
select = W1, W2, W3, E11, E121, E122, E123, E124, E125, E127, E129, E13, E2, E3, E401, E5, E703, E711, E712, E713, E721, E731, E74, E9
select = W1, W2, W3, W6, E11, E121, E122, E123, E124, E125, E127, E129, E13, E2, E3, E401, E5, E701, E703, E711, E712, E713, E721, E731, E74, E9, F841
# https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes
max-line-length = 142
@ -10,4 +10,4 @@ known_first_party=gpodder,soco
[flake8]
max-line-length = 142
ignore = E126, E128, W503
ignore = BLK100, CCR001, CNL100, D1, E126, E128, E402, I, W503, Q000

View File

@ -21,11 +21,12 @@
import os
import re
import sys
from distutils.core import setup
from setuptools import setup
installing = ('install' in sys.argv and '--help' not in sys.argv)
# distutils depends on setup.py being executed from the same dir.
# setuptools depends on setup.py being executed from the same dir.
# Most of our custom commands work either way, but this makes
# it work in all cases.
os.chdir(os.path.dirname(os.path.realpath(__file__)))
@ -184,9 +185,9 @@ if uis is not None:
try:
packages = list(sorted(find_packages(uis)))
scripts = list(sorted(find_scripts(uis)))
data_files = list(sorted(find_data_files(uis, scripts)))
packages = sorted(find_packages(uis))
scripts = sorted(find_scripts(uis))
data_files = sorted(find_data_files(uis, scripts))
except MissingFile as mf:
print("""
Missing file: %s
@ -211,4 +212,11 @@ setup(
packages=packages,
scripts=scripts,
data_files=data_files,
install_requires=[
"podcastparser>=0.6.0",
"mygpoclient>=1.7",
"dbus-python;platform_system=='Linux'",
"PyGObject",
]
)

View File

@ -37,10 +37,10 @@ class Player(object):
self.gpodder = None
def is_installed(self):
raise NotImplemented('Must be implemented by subclass')
raise NotImplementedError('Must be implemented by subclass')
def open_files(self, filenames):
raise NotImplemented('Must be implemented by subclass')
raise NotImplementedError('Must be implemented by subclass')
def enqueue_episodes(self, episodes, config=None):
filenames = [episode.get_playback_url(config=config) for episode in episodes]

View File

@ -51,9 +51,9 @@ def subsecond_difference(usec1, usec2):
class CurrentTrackTracker(object):
'''An instance of this class is responsible for tracking the state of the
"""An instance of this class is responsible for tracking the state of the
currently playing track -- it's playback status, playing position, etc.
'''
"""
def __init__(self, notifier):
self.uri = None
self.length = None

View File

@ -5,7 +5,6 @@
import logging
import os
import time
import gpodder
from gpodder import util
@ -14,6 +13,7 @@ from gpodder.model import PodcastEpisode
logger = logging.getLogger(__name__)
_ = gpodder.gettext
N_ = gpodder.ngettext
__title__ = _('Rename episodes after download')
__description__ = _('Rename episodes to "<Episode Title>.<ext>" on download')
@ -76,7 +76,10 @@ class gPodderExtension:
progress_indicator.on_finished()
if renamed_count > 0:
self.gpodder.show_message(_('Renamed %(count)d downloaded episodes') % {'count': renamed_count},
self.gpodder.show_message(
N_('Renamed %(count)d downloaded episode',
'Renamed %(count)d downloaded episodes',
renamed_count) % {'count': renamed_count},
_('Rename all downloaded episodes'), important=True)
def make_filename(self, current_filename, title, sortdate, podcast_title):

View File

@ -38,7 +38,7 @@ class gPodderExtension:
try:
info = speaker.get_speaker_info()
except requests.ConnectionError as ce:
except requests.ConnectionError:
# ignore speakers we can't connect to
continue

View File

@ -136,7 +136,7 @@ class AudioFile(object):
Picture type = cover image
see http://flac.sourceforge.net/documentation_tools_flac.html#encoding_options
"""
f = file(cover)
f = open(cover, mode='rb')
p = Picture()
p.type = 3
p.data = f.read()

View File

@ -94,7 +94,7 @@ class gPodderExtension(object):
intro = episode_data.split('introDuration":')[1] \
.split(',')[0] or INTRO_DEFAULT
intro = int(float(intro) * 1000)
except (ValueError, IndexError) as e:
except (ValueError, IndexError):
logger.info("Couldn't parse introDuration string: %s", intro)
intro = INTRO_DEFAULT * 1000
current_filename = episode.local_filename(create=False)

View File

@ -54,9 +54,9 @@ DefaultConfig = {
# youtube feed still preprocessed by youtube.py (compat)
CHANNEL_RE = re.compile(r'''https://www.youtube.com/feeds/videos.xml\?channel_id=(.+)''')
USER_RE = re.compile(r'''https://www.youtube.com/feeds/videos.xml\?user=(.+)''')
PLAYLIST_RE = re.compile(r'''https://www.youtube.com/feeds/videos.xml\?playlist_id=(.+)''')
CHANNEL_RE = re.compile(r'https://www.youtube.com/feeds/videos.xml\?channel_id=(.+)')
USER_RE = re.compile(r'https://www.youtube.com/feeds/videos.xml\?user=(.+)')
PLAYLIST_RE = re.compile(r'https://www.youtube.com/feeds/videos.xml\?playlist_id=(.+)')
def youtube_parsedate(s):
@ -236,7 +236,7 @@ class YoutubeFeed(model.Feed):
# trim guids to max episodes
entries = [e for i, e in enumerate(self._ie_result['entries'])
if not self._max_episodes or i < self._max_episodes]
all_seen_guids = set(e['guid'] for e in entries)
all_seen_guids = {e['guid'] for e in entries}
# only fetch new ones from youtube since they are so slow to get
new_entries = [e for e in entries if e['guid'] not in existing_guids]
logger.debug('%i/%i new entries', len(new_entries), len(all_seen_guids))
@ -286,7 +286,8 @@ class YoutubeFeed(model.Feed):
class gPodderYoutubeDL(download.CustomDownloader):
def __init__(self, gpodder_config, my_config, force=False):
"""
"""Instance of CustomDownloader using youtube-dl or yt-dlp.
:param force: force using this downloader even if config says don't manage downloads
"""
self.gpodder_config = gpodder_config

View File

@ -44,6 +44,21 @@
<property name="homogeneous">True</property>
</packing>
</child>
<child>
<object class="GtkToolButton" id="toolForceDownload">
<property name="visible">False</property>
<property name="sensitive">False</property>
<property name="can-focus">False</property>
<property name="is-important">True</property>
<property name="label" translatable="yes">Start download now</property>
<property name="icon-name">document-save-symbolic</property>
<signal name="clicked" handler="on_force_download_selected_episodes" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="homogeneous">True</property>
</packing>
</child>
<child>
<object class="GtkToolButton" id="toolDownload">
<property name="visible">True</property>
@ -180,7 +195,7 @@
<property name="has-tooltip">True</property>
<property name="headers-visible">False</property>
<signal name="button-press-event" handler="on_treeview_button_pressed" swapped="no"/>
<signal name="button-release-event" handler="on_treeview_podcasts_button_released" swapped="no"/>
<signal name="button-release-event" handler="on_treeview_channels_button_released" swapped="no"/>
<signal name="cursor-changed" handler="on_treeChannels_cursor_changed" swapped="no"/>
<signal name="draw" handler="on_treeview_expose_event" swapped="no"/>
<signal name="query-tooltip" handler="on_treeview_query_tooltip" swapped="no"/>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<!-- Generated with glade 3.40.0 -->
<!--*- mode: xml -*-->
<interface>
<requires lib="gtk+" version="3.16"/>
@ -273,6 +273,50 @@
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkLabel" id="label_color_scheme">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-end">8</property>
<property name="label" translatable="yes">Color scheme:</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="combo_color_scheme">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="hexpand">True</property>
<property name="active">0</property>
<property name="active-id">1</property>
<items>
<item id="system" translatable="yes">System</item>
<item id="light" translatable="yes">Light</item>
<item id="dark" translatable="yes">Dark</item>
</items>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack-type">end</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
</object>
<packing>
<property name="name">general</property>
@ -1019,6 +1063,22 @@
<property name="position">10</property>
</packing>
</child>
<child>
<object class="GtkCheckButton" id="checkbutton_compare_episode_filesize">
<property name="label" translatable="yes">Sync existing episodes on device when file size differs from gPodder (disable if device modifies files)</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">False</property>
<property name="halign">start</property>
<property name="margin-bottom">4</property>
<property name="draw-indicator">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">11</property>
</packing>
</child>
</object>
<packing>
<property name="name">devices</property>
@ -1141,7 +1201,6 @@
<property name="can-focus">False</property>
<property name="border-width">0</property>
<property name="orientation">vertical</property>
<property name="spacing">0</property>
<child>
<object class="GtkTreeView" id="treeviewExtensions">
<property name="visible">True</property>

View File

@ -259,5 +259,182 @@
</submenu>
</submenu>
</menu>
<menu id="channels-context">
<section>
<attribute name="display-hint">horizontal-buttons</attribute>
<item>
<attribute name="action">win.updateChannel</attribute>
<attribute name="label" translatable="yes">Update channel</attribute>
<attribute name="verb-icon">view-refresh-symbolic</attribute>
</item>
<item>
<attribute name="action">win.editChannel</attribute>
<attribute name="label" translatable="yes">Channel settings</attribute>
<attribute name="verb-icon">preferences-other-symbolic</attribute>
</item>
<item>
<attribute name="action">win.removeChannel</attribute>
<attribute name="label" translatable="yes">Delete channel</attribute>
<attribute name="verb-icon">edit-delete-symbolic</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.updateChannel</attribute>
<attribute name="label" translatable="yes">Update channel</attribute>
</item>
<item>
<attribute name="action">win.editChannel</attribute>
<attribute name="label" translatable="yes">Channel settings</attribute>
</item>
<item>
<attribute name="action">win.removeChannel</attribute>
<attribute name="label" translatable="yes">Delete channel</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.openChannelDownloadFolder</attribute>
<attribute name="label" translatable="yes">Open download folder</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.markEpisodesAsOld</attribute>
<attribute name="label" translatable="yes">Mark episodes as old</attribute>
</item>
<item>
<attribute name="action">win.channelAutoArchive</attribute>
<attribute name="label" translatable="yes">Archive all episodes</attribute>
</item>
<item>
<attribute name="action">win.refreshImage</attribute>
<attribute name="label" translatable="yes">Refresh image</attribute>
</item>
</section>
<!-- Extensions -->
</menu>
<menu id="episodes-context">
<section>
<attribute name="display-hint">horizontal-buttons</attribute>
<item>
<attribute name="action">win.play</attribute>
<attribute name="label" translatable="yes">Play</attribute>
<attribute name="verb-icon">media-playback-start-symbolic</attribute>
</item>
<item>
<attribute name="action">win.download</attribute>
<attribute name="label" translatable="yes">Download</attribute>
<attribute name="verb-icon">document-save-symbolic</attribute>
</item>
<!-- Cancel -->
<item>
<attribute name="action">win.delete</attribute>
<attribute name="label" translatable="yes">Delete</attribute>
<attribute name="verb-icon">edit-delete-symbolic</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.play</attribute>
<attribute name="label" translatable="yes">Play</attribute>
</item>
<item>
<attribute name="action">win.download</attribute>
<attribute name="label" translatable="yes">Download</attribute>
</item>
<!-- Cancel -->
<item>
<attribute name="action">win.delete</attribute>
<attribute name="label" translatable="yes">Delete</attribute>
</item>
</section>
<!-- Extensions -->
<!-- Send To -->
<section>
<item>
<attribute name="action">win.episodeNew</attribute>
<attribute name="label" translatable="yes">New</attribute>
</item>
<item>
<attribute name="action">win.episodeLock</attribute>
<attribute name="label" translatable="yes">Archive</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.toggleShownotes</attribute>
<attribute name="label" translatable="yes">Episode details</attribute>
</item>
<item>
<attribute name="action">win.openEpisodeDownloadFolder</attribute>
<attribute name="label" translatable="yes">Open download folder</attribute>
</item>
<item>
<attribute name="action">win.selectChannel</attribute>
<attribute name="label" translatable="yes">Select channel</attribute>
</item>
</section>
</menu>
<menu id="episodes-context-sendto">
<item>
<attribute name="action">win.saveEpisodes</attribute>
<attribute name="label" translatable="yes">Local folder</attribute>
</item>
<item>
<attribute name="action">win.bluetoothEpisodes</attribute>
<attribute name="label" translatable="yes">Bluetooth device</attribute>
</item>
</menu>
<menu id="downloads-context">
<section>
<attribute name="display-hint">horizontal-buttons</attribute>
<item>
<attribute name="action">win.forceDownload</attribute>
<attribute name="label" translatable="yes">Start download now</attribute>
<attribute name="verb-icon">document-save-symbolic</attribute>
</item>
<item>
<attribute name="action">win.pause</attribute>
<attribute name="label" translatable="yes">Pause</attribute>
<attribute name="verb-icon">media-playback-pause-symbolic</attribute>
</item>
<item>
<attribute name="action">win.cancel</attribute>
<attribute name="label" translatable="yes">Cancel</attribute>
<attribute name="verb-icon">process-stop-symbolic</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.download</attribute>
<attribute name="label" translatable="yes">Start download now</attribute>
</item>
<item>
<attribute name="action">win.pause</attribute>
<attribute name="label" translatable="yes">Pause</attribute>
</item>
<item>
<attribute name="action">win.cancel</attribute>
<attribute name="label" translatable="yes">Cancel</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.moveUp</attribute>
<attribute name="label" translatable="yes">Move up</attribute>
</item>
<item>
<attribute name="action">win.moveDown</attribute>
<attribute name="label" translatable="yes">Move down</attribute>
</item>
</section>
<section>
<item>
<attribute name="action">win.remove</attribute>
<attribute name="label" translatable="yes">Remove from list</attribute>
</item>
</section>
</menu>
</interface>
<!-- :noTabs=true:tabSize=2:indentSize=2: -->

View File

@ -1,4 +1,4 @@
.TH GPO "1" "August 2023" "gpodder 3.11.2" "User Commands"
.TH GPO "1" "October 2023" "gpodder 3.11.4" "User Commands"
.SH NAME
gpo \- Text mode interface of gPodder
.SH SYNOPSIS

View File

@ -1,5 +1,5 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
.TH GPODDER "1" "August 2023" "gpodder 3.11.2" "User Commands"
.TH GPODDER "1" "October 2023" "gpodder 3.11.4" "User Commands"
.SH NAME
gpodder \- Media aggregator and podcast client
.SH SYNOPSIS

View File

@ -51,6 +51,16 @@
</screenshot>
</screenshots>
<releases>
<release version="3.11.4" date="2023-10-11">
<description>
<p>This release only updates dependencies in the Windows and Mac builds</p>
</description>
</release>
<release version="3.11.3" date="2023-09-30">
<description>
<p>Bug fixes and minor improvements</p>
</description>
</release>
<release version="3.11.2" date="2023-08-13">
<description>
<p>Major changes:</p>

View File

@ -20,8 +20,8 @@
# This metadata block gets parsed by setup.py - use single quotes only
__tagline__ = 'Media aggregator and podcast client'
__author__ = 'Thomas Perl <thp@gpodder.org>'
__version__ = '3.11.2'
__date__ = '2023-08-13'
__version__ = '3.11.4'
__date__ = '2023-10-11'
__copyright__ = '© 2005-2023 The gPodder Team'
__license__ = 'GNU General Public License, version 3 or later'
__url__ = 'http://gpodder.org/'
@ -215,14 +215,14 @@ def fixup_home(old_home):
# Default locations for configuration and data files
default_home = os.path.expanduser(os.path.join('~', 'gPodder'))
default_home = fixup_home(default_home)
set_home(os.environ.get(ENV_HOME, default_home))
set_home(os.path.expanduser(os.environ.get(ENV_HOME, default_home)))
if home != default_home:
print('Storing data in', home, '(GPODDER_HOME is set)', file=sys.stderr)
if ENV_DOWNLOADS in os.environ:
# Allow to relocate the downloads folder (pull request 4, bug 466)
downloads = os.environ[ENV_DOWNLOADS]
downloads = os.path.expanduser(os.environ[ENV_DOWNLOADS])
print('Storing downloads in %s (%s is set)' % (downloads,
ENV_DOWNLOADS), file=sys.stderr)

View File

@ -182,6 +182,7 @@ defaults = {
},
'html_shownotes': True, # enable webkit renderer
'color_scheme': None, # system, light or dark. Initialized in app.py
},
},
@ -197,6 +198,8 @@ defaults = {
'max_filename_length': 120,
'compare_episode_filesize': True,
'custom_sync_name': '{episode.sortdate}_{episode.title}',
'custom_sync_name_enabled': False,
@ -406,12 +409,12 @@ class Config(object):
" (999 is bad for NTFS and ext{2-4})")
self.device_sync.max_filename_length = 120
def clamp_range(self, name, min, max):
def clamp_range(self, name, minval, maxval):
value = getattr(self, name)
if value < min:
setattr(self, name, min)
if value < minval:
setattr(self, name, minval)
return True
if value > max:
setattr(self, name, max)
if value > maxval:
setattr(self, name, maxval)
return True
return False

View File

@ -140,7 +140,7 @@ class CoverDownloader(object):
fp.close()
return filename + extension
except Exception as e:
except Exception:
logger.warning('Cannot save cover art', exc_info=True)
# Fallback to cover art based on the podcast title

View File

@ -104,11 +104,11 @@ class Database(object):
except Exception as e:
logger.error('Cannot commit: %s', e, exc_info=True)
def get_content_types(self, id):
def get_content_types(self, pid):
"""Given a podcast ID, returns the content types"""
with self.lock:
cur = self.cursor()
cur.execute('SELECT mime_type FROM %s WHERE podcast_id = ?' % self.TABLE_EPISODE, (id,))
cur.execute('SELECT mime_type FROM %s WHERE podcast_id = ?' % self.TABLE_EPISODE, (pid,))
for (mime_type,) in cur:
yield mime_type
cur.close()

View File

@ -39,8 +39,9 @@ class gPodderDevicePlaylist(object):
def __init__(self, config, playlist_name):
self._config = config
self.linebreak = '\r\n'
self.playlist_file = (util.sanitize_filename(playlist_name, self._config.device_sync.max_filename_length) +
'.' + self._config.device_sync.playlists.extension)
self.playlist_file = (
util.sanitize_filename(playlist_name, self._config.device_sync.max_filename_length)
+ '.' + self._config.device_sync.playlists.extension)
device_folder = util.new_gio_file(self._config.device_sync.device_folder)
self.playlist_folder = device_folder.resolve_relative_path(self._config.device_sync.playlists.folder)

View File

@ -58,27 +58,27 @@ class Provider(object):
def on_search(self, query):
# Should return a list of DirectoryEntry objects
raise NotImplemented()
raise NotImplementedError()
def on_url(self, url):
# Should return a list of DirectoryEntry objects
raise NotImplemented()
raise NotImplementedError()
def on_file(self, filename):
# Should return a list of DirectoryEntry objects
raise NotImplemented()
raise NotImplementedError()
def on_tag(self, tag):
# Should return a list of DirectoryEntry objects
raise NotImplemented()
raise NotImplementedError()
def on_static(self):
# Should return a list of DirectoryEntry objects
raise NotImplemented()
raise NotImplementedError()
def get_tags(self):
# Should return a list of DirectoryTag objects
raise NotImplemented()
raise NotImplementedError()
def directory_entry_from_opml(url):

View File

@ -176,11 +176,11 @@ class ContentRange(object):
if '/' not in value:
# Invalid, no length given
return None
range, length = value.split('/', 1)
if '-' not in range:
startstop, length = value.split('/', 1)
if '-' not in startstop:
# Invalid, no range
return None
start, end = range.split('-', 1)
start, end = startstop.split('-', 1)
try:
start = int(start)
if end == '*':
@ -200,10 +200,12 @@ class ContentRange(object):
return cls(start, end - 1, length)
class DownloadCancelledException(Exception): pass
class DownloadCancelledException(Exception):
pass
class DownloadNoURLException(Exception): pass
class DownloadNoURLException(Exception):
pass
class gPodderDownloadHTTPError(Exception):
@ -218,7 +220,7 @@ class DownloadURLOpener:
# Sometimes URLs are not escaped correctly - try to fix them
# (see RFC2396; Section 2.4.3. Excluded US-ASCII Characters)
# FYI: The omission of "%" in the list is to avoid double escaping!
ESCAPE_CHARS = dict((ord(c), '%%%x' % ord(c)) for c in ' <>#"{}|\\^[]`')
ESCAPE_CHARS = {ord(c): '%%%x' % ord(c) for c in ' <>#"{}|\\^[]`'}
def __init__(self, channel, max_retries=3):
super().__init__()
@ -303,8 +305,8 @@ class DownloadURLOpener:
# We told the server to resume - see if she agrees
# See RFC2616 (206 Partial Content + Section 14.16)
# XXX check status code here, too...
range = ContentRange.parse(headers.get('content-range', ''))
if range is None or range.start != current_size:
conrange = ContentRange.parse(headers.get('content-range', ''))
if conrange is None or conrange.start != current_size:
# Ok, that did not work. Reset the download
# TODO: seek and truncate if content-range differs from request
tfp.close()
@ -373,7 +375,7 @@ class DefaultDownload(CustomDownload):
tempname, reporthook=reporthook)
# If we arrive here, the download was successful
break
except urllib.error.ContentTooShortError as ctse:
except urllib.error.ContentTooShortError:
if retry < max_retries:
logger.info('Content too short: %s - will retry.',
url)
@ -600,7 +602,7 @@ class DownloadTask(object):
def __enter__(self):
return self.__lock.acquire()
def __exit__(self, type, value, traceback):
def __exit__(self, exception_type, value, traceback):
self.__lock.release()
def __get_status(self):
@ -978,7 +980,7 @@ class DownloadTask(object):
except DownloadNoURLException:
result = DownloadTask.FAILED
self.error_message = _('Episode has no URL to download')
except urllib.error.ContentTooShortError as ctse:
except urllib.error.ContentTooShortError:
result = DownloadTask.FAILED
self.error_message = _('Missing content from server')
except ConnectionError as ce:

View File

@ -31,7 +31,7 @@ For an example extension see share/gpodder/examples/extensions.py
import functools
import glob
import imp
import importlib
import logging
import os
import re
@ -179,10 +179,12 @@ class MissingDependency(Exception):
self.cause = cause
class MissingModule(MissingDependency): pass
class MissingModule(MissingDependency):
pass
class MissingCommand(MissingDependency): pass
class MissingCommand(MissingDependency):
pass
class ExtensionContainer(object):
@ -291,15 +293,16 @@ class ExtensionContainer(object):
self.name, self.metadata.only_for)
return
basename, extension = os.path.splitext(os.path.basename(self.filename))
fp = open(self.filename, 'r')
basename, _ = os.path.splitext(os.path.basename(self.filename))
try:
module_file = imp.load_module(basename, fp, self.filename,
(extension, 'r', imp.PY_SOURCE))
# from load_source() on https://docs.python.org/dev/whatsnew/3.12.html
loader = importlib.machinery.SourceFileLoader(basename, self.filename)
spec = importlib.util.spec_from_file_location(basename, self.filename, loader=loader)
module_file = importlib.util.module_from_spec(spec)
loader.exec_module(module_file)
finally:
# Remove the .pyc file if it was created during import
util.delete_file(self.filename + 'c')
fp.close()
self.default_config = getattr(module_file, 'DefaultConfig', {})
if self.default_config:

View File

@ -43,26 +43,33 @@ class ExceptionWithData(Exception):
# Temporary errors
class BadRequest(Exception): pass
class BadRequest(Exception):
pass
class InternalServerError(Exception): pass
class InternalServerError(Exception):
pass
class WifiLogin(ExceptionWithData): pass
class WifiLogin(ExceptionWithData):
pass
# Fatal errors
class Unsubscribe(Exception): pass
class Unsubscribe(Exception):
pass
class NotFound(Exception): pass
class NotFound(Exception):
pass
class InvalidFeed(Exception): pass
class InvalidFeed(Exception):
pass
class UnknownStatusCode(ExceptionWithData): pass
class UnknownStatusCode(ExceptionWithData):
pass
# Authentication error
@ -203,7 +210,7 @@ class Fetcher(object):
try:
self.fetch(ad._resolved_url, etag=None, modified=None, autodiscovery=False, **kwargs)
return Result(NEW_LOCATION, ad._resolved_url)
except Exception as e:
except Exception:
logger.warning('Feed autodiscovery failed', exc_info=True)
# Second, try to resolve the URL

View File

@ -122,6 +122,7 @@ class gPodderApplication(Gtk.Application):
builder = Gtk.Builder()
builder.set_translation_domain(gpodder.textdomain)
self.builder = builder
menu_filename = None
for ui_folder in gpodder.ui_folders:
@ -199,8 +200,67 @@ class gPodderApplication(Gtk.Application):
# Handle "subscribe to podcast" events from firefox
macosx.register_handlers(self.window)
# Set dark mode from color_scheme config key, or from Settings portal
# if it exists and color_scheme is 'system'.
if getattr(gpodder.dbus_session_bus, 'fake', False):
self.have_settings_portal = False
self._set_default_color_scheme('light')
self.set_dark_mode(self.window.config.ui.gtk.color_scheme == 'dark')
else:
self.read_portal_color_scheme()
gpodder.dbus_session_bus.add_signal_receiver(
self.on_portal_setting_changed, "SettingChanged", None,
"org.freedesktop.portal.Desktop", "/org/freedesktop/portal/desktop")
self.window.gPodder.present()
def _set_default_color_scheme(self, default):
"""Set the default value for color_scheme based on GTK settings.
If gtk_application_prefer_dark_theme is set to 1 (a non-default value),
the user has set it in GTK settings.ini and we set color_scheme to match
this preference. Otherwise we set the key to the given default, which
should be 'system' in case Settings portal is found, or 'light' if it's not.
"""
if self.window.config.ui.gtk.color_scheme is None:
settings = Gtk.Settings.get_default()
self.window.config.ui.gtk.color_scheme = (
'dark' if settings.props.gtk_application_prefer_dark_theme == 1
else default)
def set_dark_mode(self, dark):
settings = Gtk.Settings.get_default()
settings.props.gtk_application_prefer_dark_theme = 1 if dark else 0
def read_portal_color_scheme(self):
gpodder.dbus_session_bus.call_async(
"org.freedesktop.portal.Desktop", "/org/freedesktop/portal/desktop",
"org.freedesktop.portal.Settings", "ReadOne", "ss",
("org.freedesktop.appearance", "color-scheme"),
self.on_portal_settings_read, self.on_portal_settings_read_error)
def on_portal_settings_read(self, value):
self.have_settings_portal = True
self._set_default_color_scheme('system')
if self.window.config.ui.gtk.color_scheme == 'system':
self.set_dark_mode(value == 1)
else:
self.set_dark_mode(self.window.config.ui.gtk.color_scheme == 'dark')
def on_portal_settings_read_error(self, value):
self.have_settings_portal = False
self._set_default_color_scheme('light')
self.set_dark_mode(self.window.config.ui.gtk.color_scheme == 'dark')
def on_portal_setting_changed(self, namespace, key, value):
if (namespace == 'org.freedesktop.appearance'
and key == 'color-scheme'):
dark = (value == 1)
if self.window.config.ui.gtk.color_scheme == 'system':
logger.debug(
f"'color-scheme' changed to {value}, setting dark mode to {dark}")
self.set_dark_mode(dark)
def on_menu(self, action, param):
self.menu_popover.popup()
@ -264,7 +324,8 @@ class gPodderApplication(Gtk.Application):
on_send_full_subscriptions=self.window.on_send_full_subscriptions,
on_itemExportChannels_activate=self.window.on_itemExportChannels_activate,
on_extension_enabled=self.on_extension_enabled,
on_extension_disabled=self.on_extension_disabled)
on_extension_disabled=self.on_extension_disabled,
have_settings_portal=self.have_settings_portal)
def on_goto_mygpo(self, action, param):
self.window.mygpo_client.open_website()

View File

@ -49,12 +49,12 @@ class ConfigModel(Gtk.ListStore):
self._config.add_observer(self._on_update)
def _type_as_string(self, type):
if type == int:
def _type_as_string(self, datatype):
if datatype == int:
return _('Integer')
elif type == float:
elif datatype == float:
return _('Float')
elif type == bool:
elif datatype == bool:
return _('Boolean')
else:
return _('String')
@ -154,6 +154,13 @@ class UIConfig(config.Config):
setattr(self, name, togglebutton.get_active())
togglebutton.connect('toggled', _togglebutton_toggled)
def connect_gtk_combo_box_text(self, name, combo_text):
combo_text.set_active_id(getattr(self, name))
def _combo_box_text_changed(combo):
setattr(self, name, combo.get_active_id())
combo_text.connect('changed', _combo_box_text_changed)
def connect_gtk_window(self, window, config_prefix, show_window=False):
cfg = getattr(self.ui.gtk.state, config_prefix)
@ -162,13 +169,14 @@ class UIConfig(config.Config):
if -1 not in (cfg.x, cfg.y, cfg.width, cfg.height):
# get screen resolution
screen = Gdk.Screen.get_default()
screen_width = 0
screen_height = 0
for i in range(0, screen.get_n_monitors()):
monitor = screen.get_monitor_geometry(i)
screen_width += monitor.width
screen_height += monitor.height
def get_screen_size(display):
monitor_geometries = [display.get_monitor(i).get_geometry() for i in range(display.get_n_monitors())]
x0 = min(r.x for r in monitor_geometries)
y0 = min(r.y for r in monitor_geometries)
x1 = max(r.x + r.width for r in monitor_geometries)
y1 = max(r.y + r.height for r in monitor_geometries)
return x1 - x0, y1 - y0
screen_width, screen_height = get_screen_size(Gdk.Display.get_default())
logger.debug('Screen %d x %d' % (screen_width, screen_height))
# reset window position if more than 50% is off-screen
half_width = cfg.width / 2

View File

@ -245,9 +245,9 @@ class gPodderEpisodeSelector(BuilderWidget):
if path is not None:
model = treeview.get_model()
iter = model.get_iter(path)
index = model.get_value(iter, self.COLUMN_INDEX)
description = model.get_value(iter, self.COLUMN_TOOLTIP)
iterator = model.get_iter(path)
index = model.get_value(iterator, self.COLUMN_INDEX)
description = model.get_value(iterator, self.COLUMN_TOOLTIP)
if self.last_tooltip_episode is not None and self.last_tooltip_episode != index:
self.last_tooltip_episode = None
return False
@ -383,9 +383,9 @@ class gPodderEpisodeSelector(BuilderWidget):
def on_row_activated(self, treeview, path, view_column):
model = treeview.get_model()
iter = model.get_iter(path)
value = model.get_value(iter, self.COLUMN_TOGGLE)
model.set_value(iter, self.COLUMN_TOGGLE, not value)
iterator = model.get_iter(path)
value = model.get_value(iterator, self.COLUMN_TOGGLE)
model.set_value(iterator, self.COLUMN_TOGGLE, not value)
self.calculate_total_size()
@ -400,12 +400,12 @@ class gPodderEpisodeSelector(BuilderWidget):
if remove_episodes:
for episode in selected_episodes:
index = self.episodes.index(episode)
iter = self.model.get_iter_first()
while iter is not None:
if self.model.get_value(iter, self.COLUMN_INDEX) == index:
self.model.remove(iter)
iterator = self.model.get_iter_first()
while iterator is not None:
if self.model.get_value(iterator, self.COLUMN_INDEX) == index:
self.model.remove(iterator)
break
iter = self.model.iter_next(iter)
iterator = self.model.iter_next(iterator)
return selected_episodes

View File

@ -119,8 +119,8 @@ class YouTubeVideoFormatListModel(Gtk.ListStore):
}
self.append((caption, 0))
for id, (fmt_id, path, description) in youtube.formats:
self.append((description, id))
for fmt, (fmt_id, path, description) in youtube.formats:
self.append((description, fmt))
def get_index(self):
for index, row in enumerate(self):
@ -145,8 +145,8 @@ class YouTubeVideoHLSFormatListModel(Gtk.ListStore):
}
self.append((caption, 0))
for id, (fmt_id, path, description) in youtube.hls_formats:
self.append((description, id))
for fmt, (fmt_id, path, description) in youtube.hls_formats:
self.append((description, fmt))
def get_index(self):
for index, row in enumerate(self):
@ -205,6 +205,21 @@ class gPodderPreferences(BuilderWidget):
index = self.video_player_model.get_index(self._config.player.video)
self.combo_video_player_app.set_active(index)
self.combo_color_scheme.remove_all()
self.combo_color_scheme.prepend('dark', 'Dark')
self.combo_color_scheme.prepend('light', 'Light')
cs = self._config.ui.gtk.color_scheme
if self.have_settings_portal:
self.combo_color_scheme.prepend('system', 'System')
self.combo_color_scheme.set_active_id(cs)
else:
if cs == 'system':
self.combo_color_scheme.set_active_id('light')
self._config.ui.gtk.color_scheme = 'light'
else:
self.combo_color_scheme.set_active_id(cs)
self._config.connect_gtk_combo_box_text('ui.gtk.color_scheme', self.combo_color_scheme)
self.preferred_youtube_format_model = YouTubeVideoFormatListModel(self._config)
self.combobox_preferred_youtube_format.set_model(self.preferred_youtube_format_model)
cellrenderer = Gtk.CellRendererText()
@ -300,6 +315,8 @@ class gPodderPreferences(BuilderWidget):
self.checkbutton_delete_using_playlists)
self._config.connect_gtk_togglebutton('device_sync.delete_deleted_episodes',
self.checkbutton_delete_deleted_episodes)
self._config.connect_gtk_togglebutton('device_sync.compare_episode_filesize',
self.checkbutton_compare_episode_filesize)
# Have to do this before calling set_active on checkbutton_enable
self._enable_mygpo = self._config.mygpo.enabled
@ -572,8 +589,8 @@ class gPodderPreferences(BuilderWidget):
ret = ret.replace(' ', '\xa0')
return ret
def on_update_interval_value_changed(self, range):
value = int(range.get_value())
def on_update_interval_value_changed(self, gtk_range):
value = int(gtk_range.get_value())
self._config.auto.update.enabled = (value > 0)
self._config.auto.update.frequency = self.update_interval_presets[value]
@ -589,8 +606,8 @@ class gPodderPreferences(BuilderWidget):
return N_('after %(count)d day', 'after %(count)d days',
value) % {'count': value}
def on_expiration_value_changed(self, range):
value = int(range.get_value())
def on_expiration_value_changed(self, gtk_range):
value = int(gtk_range.get_value())
if value == 0:
self.checkbutton_expiration_unplayed.set_active(False)
@ -688,6 +705,7 @@ class gPodderPreferences(BuilderWidget):
self.combobox_on_sync.set_sensitive(False)
self.checkbutton_skip_played_episodes.set_sensitive(True)
self.checkbutton_delete_deleted_episodes.set_sensitive(True)
self.checkbutton_compare_episode_filesize.set_sensitive(True)
children = self.btn_filesystemMountpoint.get_children()
if children:

View File

@ -41,9 +41,13 @@ _ = gpodder.gettext
logger = logging.getLogger(__name__)
# where are the .desktop files located?
userappsdirs = ['/usr/share/applications/',
'/usr/local/share/applications/',
'/usr/share/applications/kde/']
userappsdirs = [os.path.expanduser(p) for p in (
'/usr/share/applications/',
'/usr/local/share/applications/',
'~/.local/share/applications',
'/var/lib/flatpak/exports/share/applications/',
'~/.local/share/flatpak/exports/share/applications/',
)]
# the name of the section in the .desktop files
sect = 'Desktop Entry'
@ -77,8 +81,8 @@ class PlayerListModel(Gtk.ListStore):
return len(self) - 1
@classmethod
def is_separator(cls, model, iter):
return model.get_value(iter, cls.C_COMMAND) == ''
def is_separator(cls, model, iterator):
return model.get_value(iterator, cls.C_COMMAND) == ''
class UserApplication(object):
@ -94,7 +98,7 @@ class UserApplication(object):
if os.path.exists(self.icon):
try:
return GdkPixbuf.Pixbuf.new_from_file_at_size(self.icon, 24, 24)
except GObject.GError as ge:
except GObject.GError:
pass
# Load it from the current icon theme
@ -113,6 +117,7 @@ WIN32_APP_REG_KEYS = [
('Windows Media Player 11', ('audio', 'video'), r'HKEY_CLASSES_ROOT\WMP11.AssocFile.MP3\shell\open\command'),
('QuickTime Player', ('audio', 'video'), r'HKEY_CLASSES_ROOT\QuickTime.mp3\shell\open\command'),
('VLC', ('audio', 'video'), r'HKEY_CLASSES_ROOT\VLC.mp3\shell\open\command'),
('PotPlayer', ('audio', 'video'), r'HKEY_CLASSES_ROOT\potrun\shell\open\command'),
]
@ -178,9 +183,9 @@ class UserAppsReader(object):
except Exception as e:
logger.warning('Parse HKEY error: %s (%s)', hkey, e)
for dir in userappsdirs:
if os.path.exists(dir):
for file in glob.glob(os.path.join(dir, '*.desktop')):
for appdir in userappsdirs:
if os.path.exists(appdir):
for file in glob.glob(os.path.join(appdir, '*.desktop')):
self.parse_and_append(file)
self.__finished.set()

View File

@ -80,13 +80,13 @@ class DownloadStatusModel(Gtk.ListStore):
message = html.escape(message)
return '%s\n<small>%s - %s</small>' % (episode, message, podcast)
def request_update(self, iter, task=None):
def request_update(self, iterator, task=None):
if task is None:
# Ongoing update request from UI - get task from model
task = self.get_value(iter, self.C_TASK)
task = self.get_value(iterator, self.C_TASK)
else:
# Initial update request - update non-changing fields
self.set(iter,
self.set(iterator,
self.C_TASK, task,
self.C_URL, task.url)
@ -95,10 +95,12 @@ class DownloadStatusModel(Gtk.ListStore):
task.STATUS_MESSAGE[task.status],
task.error_message)
elif task.status == task.DOWNLOADING:
status_message = '%s (%.0f%%, %s/s)' % (
task.STATUS_MESSAGE[task.status],
task.progress * 100,
util.format_filesize(task.speed))
status_message = _('%(status)s (%(progress).0f%%, %(rate)s/s, %(remaining)s)') % {
'status': task.STATUS_MESSAGE[task.status],
'progress': task.progress * 100,
'rate': util.format_filesize(task.speed),
'remaining': util.format_time(round((task.total_size * (1 - task.progress)) / task.speed)) if task.speed > 0 else '--:--'
}
else:
status_message = task.STATUS_MESSAGE[task.status]
@ -120,7 +122,7 @@ class DownloadStatusModel(Gtk.ListStore):
else:
progress_message = ('unknown size')
self.set(iter,
self.set(iterator,
self.C_NAME, self._format_message(task.episode.title,
status_message, task.episode.channel.title),
self.C_PROGRESS, 100. * task.progress,
@ -128,8 +130,8 @@ class DownloadStatusModel(Gtk.ListStore):
self.C_ICON_NAME, self._status_ids[task.status])
def __add_new_task(self, task):
iter = self.append()
self.request_update(iter, task)
it = self.append()
self.request_update(it, task)
def register_task(self, task, background=True):
if background:
@ -186,7 +188,7 @@ class DownloadStatusModel(Gtk.ListStore):
# this is the only thread accessing the list store, so it's safe
# to assume a) the task is still queued and b) we can transition to downloading
task.status = task.DOWNLOADING
except StopIteration as e:
except StopIteration:
task = None
# hand the task off to the worker thread
dqr.resolve(task)

View File

@ -37,8 +37,8 @@ from gi.repository import Gdk, GdkPixbuf, Gtk, Pango, PangoCairo # isort:skip
class TextExtents(object):
def __init__(self, ctx, text):
tuple = ctx.text_extents(text)
(self.x_bearing, self.y_bearing, self.width, self.height, self.x_advance, self.y_advance) = tuple
extents = ctx.text_extents(text)
(self.x_bearing, self.y_bearing, self.width, self.height, self.x_advance, self.y_advance) = extents
EPISODE_LIST_ICON_SIZE = 16
@ -53,7 +53,8 @@ def draw_rounded_rectangle(ctx, x, y, w, h, r=10, left_side_width=None,
x = int(x)
offset = 0
if close: offset = 0.5
if close:
offset = 0.5
if sides_to_draw & RRECT_LEFT_SIDE:
ctx.move_to(x + int(left_side_width) - offset, y + h)
@ -136,7 +137,7 @@ def draw_cake(percentage, text=None, emblem=None, size=None):
ctx = cairo.Context(surface)
bgc = get_background_color(Gtk.StateFlags.ACTIVE)
fgc = get_background_color(Gtk.StateFlags.SELECTED)
# fgc = get_background_color(Gtk.StateFlags.SELECTED)
txc = get_foreground_color(Gtk.StateFlags.NORMAL)
border = 1.5
@ -482,7 +483,7 @@ def investigate_widget_colors(type_classes_and_widgets):
f.write("</table></html>\n")
def draw_iconcell_scale(column, cell, model, iter, scale):
def draw_iconcell_scale(column, cell, model, iterator, scale):
"""
Draw cell's pixbuf to a surface with proper scaling for high resolution
displays. To be used as gtk.TreeViewColumn.set_cell_data_func.

View File

@ -19,7 +19,7 @@
import os
from gi.repository import Gdk, Gtk
from gi.repository import Gdk, Gio, Gtk
import gpodder
from gpodder import util
@ -300,12 +300,12 @@ class TreeViewHelper(object):
@staticmethod
def make_search_equal_func(gpodder_model):
def func(model, column, key, iter):
def func(model, column, key, iterator):
if model is None:
return True
key = key.lower()
for column in gpodder_model.SEARCH_COLUMNS:
if key in model.get_value(iter, column).lower():
if key in model.get_value(iterator, column).lower():
return False
return True
return func
@ -345,3 +345,74 @@ class TreeViewHelper(object):
return (x, y, True)
return position_func
@staticmethod
def get_popup_rectangle(treeview, event, column=0):
"""
:return: Gdk.Rectangle to pass to Gtk.Popover.set_pointing_to()
If event is given, return a zero-width and height rectangle with the
event coordinates. If event is None, get the area of the column in the
first selected treeview row.
Used for instance when the popup trigger is the Menu key: It will
position the popover on top of the column on the selected row, even if
the mouse is elsewhere
"""
if event is not None:
area = Gdk.Rectangle()
area.x, area.y = treeview.convert_bin_window_to_widget_coords(event.x, event.y)
return area
# If there's a selection, place the popup menu on top of
# the first-selected row and given column (otherwise in the top left corner)
selection = treeview.get_selection()
model, paths = selection.get_selected_rows()
if paths:
path = paths[0]
area = treeview.get_cell_area(path, treeview.get_column(column))
else:
area = Gdk.Rectangle() # x, y, width, height are all 0
area.x, area.y = treeview.convert_bin_window_to_widget_coords(area.x, area.y)
return area
class ExtensionMenuHelper(object):
"""A helper class to handle extension submenus"""
def __init__(self, gpodder, menu, action_prefix, gen_callback_func=None):
self.gPodder = gpodder
self.menu = menu
self.action_prefix = action_prefix
self.gen_callback_func = gen_callback_func
self.actions = []
def replace_entries(self, new_entries):
# remove previous menu entries
for a in self.actions:
self.gPodder.remove_action(a.get_property('name'))
self.actions = []
self.menu.remove_all()
# create new ones
new_entries = list(new_entries or [])
for i, (label, callback) in enumerate(new_entries):
action_id = self.action_prefix + str(i)
action = Gio.SimpleAction.new(action_id)
action.set_enabled(callback is not None)
if callback is not None:
if self.gen_callback_func is None:
action.connect('activate', callback)
else:
action.connect('activate', self.gen_callback_func(callback))
self.actions.append(action)
self.gPodder.add_action(action)
itm = Gio.MenuItem.new(label, 'win.' + action_id)
self.menu.append_item(itm)
class Dummy:
"""A class for objects with arbitrary attributes (for imitating Gtk Events etc.)"""
def __init__(self, **kwds):
self.__dict__.update(kwds)

View File

@ -68,20 +68,20 @@ class gPodderConfigEditor(BuilderWidget):
self._config.connect_gtk_window(self.main_window, 'config_editor', True)
def visible_func(self, model, iter, user_data=None):
def visible_func(self, model, iterator, user_data=None):
text = self.entryFilter.get_text().lower()
if text == '':
return True
else:
# either the variable name or its value
return (text in model.get_value(iter, 0).lower()
or text in model.get_value(iter, 2).lower())
return (text in model.get_value(iterator, 0).lower()
or text in model.get_value(iterator, 2).lower())
def value_edited(self, renderer, path, new_text):
model = self.configeditor.get_model()
iter = model.get_iter(path)
name = model.get_value(iter, 0)
type_cute = model.get_value(iter, 1)
iterator = model.get_iter(path)
name = model.get_value(iterator, 0)
type_cute = model.get_value(iterator, 1)
if not self._config.update_field(name, new_text):
message = _('Cannot set %(field)s to %(value)s. Needed data type: %(datatype)s')
@ -92,9 +92,9 @@ class gPodderConfigEditor(BuilderWidget):
def value_toggled(self, renderer, path):
model = self.configeditor.get_model()
iter = model.get_iter(path)
field_name = model.get_value(iter, 0)
field_type = model.get_value(iter, 3)
iterator = model.get_iter(path)
field_name = model.get_value(iterator, 0)
field_type = model.get_value(iterator, 3)
# Flip the boolean config flag
if field_type == bool:

View File

@ -31,7 +31,7 @@ def aeKeyword(fourCharCode):
# for the kCoreEventClass, kAEOpenDocuments, ... constants
# comes with macpython
try:
from Carbon.AppleEvents import *
from Carbon.AppleEvents import * # noqa: F403
except ImportError:
...
@ -62,18 +62,18 @@ try:
self.gp = gp
aem = NSAppleEventManager.sharedAppleEventManager()
aem.setEventHandler_andSelector_forEventClass_andEventID_(
self, 'openFileEvent:reply:', aeKeyword(kCoreEventClass), aeKeyword(kAEOpenDocuments))
self, 'openFileEvent:reply:', aeKeyword(kCoreEventClass), aeKeyword(kAEOpenDocuments)) # noqa: F405
aem.setEventHandler_andSelector_forEventClass_andEventID_(
self, 'subscribeEvent:reply:', aeKeyword('GURL'), aeKeyword('GURL'))
def openFileEvent_reply_(self, event, reply):
""" handles an 'Open With...' event"""
urls = []
filelist = event.paramDescriptorForKeyword_(aeKeyword(keyDirectObject))
filelist = event.paramDescriptorForKeyword_(aeKeyword(keyDirectObject)) # noqa: F405
numberOfItems = filelist.numberOfItems()
for i in range(1, numberOfItems + 1):
fileAliasDesc = filelist.descriptorAtIndex_(i)
fileURLDesc = fileAliasDesc.coerceToDescriptorType_(aeKeyword(typeFileURL))
fileURLDesc = fileAliasDesc.coerceToDescriptorType_(aeKeyword(typeFileURL)) # noqa: F405
fileURLData = fileURLDesc.data()
url = memoryview(fileURLData.bytes(), 0, fileURLData.length())
url = str(url)
@ -86,7 +86,7 @@ try:
def subscribeEvent_reply_(self, event, reply):
""" handles a 'Subscribe to...' event"""
filelist = event.paramDescriptorForKeyword_(aeKeyword(keyDirectObject))
filelist = event.paramDescriptorForKeyword_(aeKeyword(keyDirectObject)) # noqa: F405
fileURLData = filelist.data()
url = memoryview(fileURLData.bytes(), 0, fileURLData.length())
url = str(url)

File diff suppressed because it is too large Load Diff

View File

@ -41,15 +41,6 @@ _ = gpodder.gettext
logger = logging.getLogger(__name__)
try:
from gi.repository import Gio
have_gio = True
except ImportError:
have_gio = False
# ----------------------------------------------------------
class GEpisode(model.PodcastEpisode):
__slots__ = ()
@ -109,7 +100,8 @@ class Model(model.Model):
# Singleton indicator if a row is a section
class SeparatorMarker(object): pass
class SeparatorMarker(object):
pass
class BackgroundUpdate(object):
@ -229,26 +221,26 @@ class EpisodeListModel(Gtk.ListStore):
else:
return None
def _filter_visible_func(self, model, iter, misc):
def _filter_visible_func(self, model, iterator, misc):
# If searching is active, set visibility based on search text
if self._search_term is not None and self._search_term != '':
episode = model.get_value(iter, self.C_EPISODE)
episode = model.get_value(iterator, self.C_EPISODE)
if episode is None:
return False
try:
return self._search_term_eql.match(episode)
except Exception as e:
except Exception:
return True
if self._view_mode == self.VIEW_ALL:
return True
elif self._view_mode == self.VIEW_UNDELETED:
return model.get_value(iter, self.C_VIEW_SHOW_UNDELETED)
return model.get_value(iterator, self.C_VIEW_SHOW_UNDELETED)
elif self._view_mode == self.VIEW_DOWNLOADED:
return model.get_value(iter, self.C_VIEW_SHOW_DOWNLOADED)
return model.get_value(iterator, self.C_VIEW_SHOW_DOWNLOADED)
elif self._view_mode == self.VIEW_UNPLAYED:
return model.get_value(iter, self.C_VIEW_SHOW_UNPLAYED)
return model.get_value(iterator, self.C_VIEW_SHOW_UNPLAYED)
return True
@ -375,11 +367,11 @@ class EpisodeListModel(Gtk.ListStore):
if row[self.C_URL] in urls:
self.update_by_iter(row.iter)
def update_by_filter_iter(self, iter):
def update_by_filter_iter(self, iterator):
# Convenience function for use by "outside" methods that use iters
# from the filtered episode list model (i.e. all UI things normally)
iter = self._sorter.convert_iter_to_child_iter(iter)
self.update_by_iter(self._filter.convert_iter_to_child_iter(iter))
iterator = self._sorter.convert_iter_to_child_iter(iterator)
self.update_by_iter(self._filter.convert_iter_to_child_iter(iterator))
def get_update_fields(self, episode):
tooltip = []
@ -496,10 +488,10 @@ class EpisodeListModel(Gtk.ListStore):
self.C_FILESIZE_AND_TIME, episode.file_size,
)
def update_by_iter(self, iter):
episode = self.get_value(iter, self.C_EPISODE)
def update_by_iter(self, iterator):
episode = self.get_value(iterator, self.C_EPISODE)
if episode is not None:
self.set(iter, *self.get_update_fields(episode))
self.set(iterator, *self.get_update_fields(episode))
class PodcastChannelProxy:
@ -574,8 +566,8 @@ class PodcastListModel(Gtk.ListStore):
SEARCH_ATTRS = ('title', 'description', 'group_by')
@classmethod
def row_separator_func(cls, model, iter):
return model.get_value(iter, cls.C_SEPARATOR)
def row_separator_func(cls, model, iterator):
return model.get_value(iterator, cls.C_SEPARATOR)
def __init__(self, cover_downloader):
Gtk.ListStore.__init__(self, str, str, str, GdkPixbuf.Pixbuf,
@ -597,8 +589,8 @@ class PodcastListModel(Gtk.ListStore):
self.ICON_DISABLED = 'media-playback-pause'
self.ICON_ERROR = 'dialog-warning'
def _filter_visible_func(self, model, iter, misc):
channel = model.get_value(iter, self.C_CHANNEL)
def _filter_visible_func(self, model, iterator, misc):
channel = model.get_value(iterator, self.C_CHANNEL)
# If searching is active, set visibility based on search text
if self._search_term is not None and self._search_term != '':
@ -607,7 +599,7 @@ class PodcastListModel(Gtk.ListStore):
if channel.ALL_EPISODES_PROXY:
return False
return any(key in getattr(ch, c).lower() for c in PodcastListModel.SEARCH_ATTRS for ch in channel.channels)
columns = (model.get_value(iter, c) for c in self.SEARCH_COLUMNS)
columns = (model.get_value(iterator, c) for c in self.SEARCH_COLUMNS)
return any((key in c.lower() for c in columns if c is not None))
# Show section if any of its channels have an update error
@ -615,18 +607,18 @@ class PodcastListModel(Gtk.ListStore):
if any(c._update_error is not None for c in channel.channels):
return True
if model.get_value(iter, self.C_SEPARATOR):
if model.get_value(iterator, self.C_SEPARATOR):
return True
elif getattr(channel, '_update_error', None) is not None:
return True
elif self._view_mode == EpisodeListModel.VIEW_ALL:
return model.get_value(iter, self.C_HAS_EPISODES)
return model.get_value(iterator, self.C_HAS_EPISODES)
elif self._view_mode == EpisodeListModel.VIEW_UNDELETED:
return model.get_value(iter, self.C_VIEW_SHOW_UNDELETED)
return model.get_value(iterator, self.C_VIEW_SHOW_UNDELETED)
elif self._view_mode == EpisodeListModel.VIEW_DOWNLOADED:
return model.get_value(iter, self.C_VIEW_SHOW_DOWNLOADED)
return model.get_value(iterator, self.C_VIEW_SHOW_DOWNLOADED)
elif self._view_mode == EpisodeListModel.VIEW_UNPLAYED:
return model.get_value(iter, self.C_VIEW_SHOW_UNPLAYED)
return model.get_value(iterator, self.C_VIEW_SHOW_UNPLAYED)
return True
@ -730,7 +722,7 @@ class PodcastListModel(Gtk.ListStore):
logger.debug("cached thumb wrong size: %r != %i", (pixbuf.get_width(), pixbuf.get_height()), self._max_image_side)
return None
return pixbuf
except Exception as e:
except Exception:
logger.warning('Could not load cached cover art for %s', channel.url, exc_info=True)
channel.cover_thumb = None
channel.save()
@ -846,8 +838,8 @@ class PodcastListModel(Gtk.ListStore):
if config.ui.gtk.podcast_list.all_episodes and channels:
all_episodes = PodcastChannelProxy(db, config, channels, '', self)
iter = self.append(channel_to_row(all_episodes))
self.update_by_iter(iter)
iterator = self.append(channel_to_row(all_episodes))
self.update_by_iter(iterator)
# Separator item
if not config.ui.gtk.podcast_list.sections:
@ -869,11 +861,11 @@ class PodcastListModel(Gtk.ListStore):
if config.ui.gtk.podcast_list.sections and section is not None:
section_channels = list(section_channels)
section_obj = PodcastChannelProxy(db, config, section_channels, section, self)
iter = self.append(section_to_row(section_obj))
self.update_by_iter(iter)
iterator = self.append(section_to_row(section_obj))
self.update_by_iter(iterator)
for channel in section_channels:
iter = self.append(channel_to_row(channel, True))
self.update_by_iter(iter)
iterator = self.append(channel_to_row(channel, True))
self.update_by_iter(iterator)
def get_filter_path_from_url(self, url):
# Return the path of the filtered model for a given URL
@ -903,13 +895,13 @@ class PodcastListModel(Gtk.ListStore):
if row[self.C_URL] in urls:
self.update_by_iter(row.iter)
def iter_is_first_row(self, iter):
iter = self._filter.convert_iter_to_child_iter(iter)
path = self.get_path(iter)
def iter_is_first_row(self, iterator):
iterator = self._filter.convert_iter_to_child_iter(iterator)
path = self.get_path(iterator)
return (path == Gtk.TreePath.new_first())
def update_by_filter_iter(self, iter):
self.update_by_iter(self._filter.convert_iter_to_child_iter(iter))
def update_by_filter_iter(self, iterator):
self.update_by_iter(self._filter.convert_iter_to_child_iter(iterator))
def update_all(self):
for row in self:
@ -920,12 +912,12 @@ class PodcastListModel(Gtk.ListStore):
if isinstance(row[self.C_CHANNEL], PodcastChannelProxy) and not row[self.C_CHANNEL].ALL_EPISODES_PROXY:
self.update_by_iter(row.iter)
def update_by_iter(self, iter):
if iter is None:
def update_by_iter(self, iterator):
if iterator is None:
return
# Given a GtkTreeIter, update volatile information
channel = self.get_value(iter, self.C_CHANNEL)
channel = self.get_value(iterator, self.C_CHANNEL)
if channel is SeparatorMarker:
return
@ -948,7 +940,7 @@ class PodcastListModel(Gtk.ListStore):
pill_image = self._get_pill_image(channel, downloaded, unplayed)
cover_image = self._get_cover_image(channel, True)
self.set(iter,
self.set(iterator,
self.C_TITLE, channel.title,
self.C_DESCRIPTION, description,
self.C_COVER, cover_image,

View File

@ -117,7 +117,7 @@ class CoverDownloader(ObservableService):
try:
pixbuf = GdkPixbuf.Pixbuf.new_from_file(filename)
except Exception as e:
except Exception:
logger.warning('Cannot load cover art', exc_info=True)
if pixbuf is None and filename.startswith(channel.cover_file):
logger.info('Deleting broken cover: %s', filename)
@ -125,7 +125,7 @@ class CoverDownloader(ObservableService):
filename = get_filename()
try:
pixbuf = GdkPixbuf.Pixbuf.new_from_file(filename)
except Exception as e:
except Exception:
logger.warning('Corrupt cover art on server, deleting', exc_info=True)
util.delete_file(filename)

View File

@ -350,7 +350,7 @@ class gPodderShownotesHTML(gPodderShownotes):
if episode.file_size > 0 else "-",
'duration': episode.get_play_info_string()})
header_html = _('<div id="gpodder-title">\n%(heading)s\n<p>%(subheading)s</p>\n<p>%(details)s</p></div>\n') \
% dict(heading=heading, subheading=subheading, details=details)
% {'heading': heading, 'subheading': subheading, 'details': details}
# uncomment to prevent background override in html shownotes
# self.manager.remove_all_style_sheets ()
logger.debug("base uri: %s (chan:%s)", self._base_uri, episode.channel.url)

View File

@ -329,7 +329,7 @@ class iPodTrack(object):
if self.filename_on_ipod is not None:
try:
os.unlink(self.filename_on_ipod)
except Exception as e:
except Exception:
logger.info('Could not delete podcast file from iPod', exc_info=True)
@ -433,7 +433,7 @@ if __name__ == '__main__':
Episode URL: {track.podcast_url}
Podcast URL: {track.podcast_rss}
Play count: {track.playcount}
Bookmark: {track.bookmark_time/1000:.0f} seconds
Bookmark: {track.bookmark_time / 1000:.0f} seconds
Filename: {track.filename_on_ipod}
""").rstrip())

View File

@ -49,7 +49,7 @@ class Store(object):
self.lock = threading.RLock()
def _schema(self, class_):
return class_.__name__, list(sorted(class_.__slots__))
return class_.__name__, sorted(class_.__slots__)
def _set(self, o, slot, value):
# Set a slot on the given object to value, doing a cast if
@ -139,7 +139,7 @@ class Store(object):
try:
self.db.execute(sql, list(kwargs.values()))
return True
except Exception as e:
except Exception:
return False
def remove(self, o):
@ -168,7 +168,7 @@ class Store(object):
sql += ' WHERE %s' % (' AND '.join('%s=?' % k for k in kwargs))
try:
cur = self.db.execute(sql, list(kwargs.values()))
except Exception as e:
except Exception:
raise
def apply(row):
@ -176,7 +176,7 @@ class Store(object):
for attr, value in zip(slots, row):
try:
self._set(o, attr, value)
except ValueError as ve:
except ValueError:
return None
return o
return [x for x in [apply(row) for row in cur] if x is not None]
@ -193,9 +193,9 @@ if __name__ == '__main__':
class Person(object):
__slots__ = {'username': str, 'id': int}
def __init__(self, username, id):
def __init__(self, username, uid):
self.username = username
self.id = id
self.id = uid
def __repr__(self):
return '<Person "%s" (%d)>' % (self.username, self.id)
@ -214,9 +214,9 @@ if __name__ == '__main__':
class Person(object):
__slots__ = {'username': str, 'id': int, 'mail': str}
def __init__(self, username, id, mail):
def __init__(self, username, uid, mail):
self.username = username
self.id = id
self.id = uid
self.mail = mail
def __repr__(self):

View File

@ -936,11 +936,11 @@ class PodcastChannel(PodcastModelObject):
feed_fetcher = gPodderFetcher()
def __init__(self, model, id=None):
def __init__(self, model, channel_id=None):
self.parent = model
self.children = []
self.id = id
self.id = channel_id
self.url = None
self.title = ''
self.link = ''
@ -1033,9 +1033,9 @@ class PodcastChannel(PodcastModelObject):
# youtube-dl and yt-dlp create <name>.partial and <name>.partial.<ext> files while downloading.
# On startup, the latter is reported as an unknown external file.
# Both files are properly removed when the download completes.
existing_files = set(filename for filename in
glob.glob(os.path.join(self.save_dir, '*'))
if not filename.endswith('.partial'))
existing_files = {filename
for filename in glob.glob(os.path.join(self.save_dir, '*'))
if not filename.endswith('.partial')}
ignore_files = ['folder' + ext for ext in
coverart.CoverDownloader.EXTENSIONS]
@ -1115,7 +1115,7 @@ class PodcastChannel(PodcastModelObject):
try:
tmp.update(max_episodes)
except Exception as e:
except Exception:
logger.debug('Fetch failed. Removing buggy feed.')
tmp.remove_downloaded()
tmp.delete()
@ -1302,7 +1302,7 @@ class PodcastChannel(PodcastModelObject):
# FIXME: could return the feed because in autodiscovery it is parsed already
url = result.feed
logger.info('New feed location: %s => %s', self.url, url)
if url in set(x.url for x in self.model.get_podcasts()):
if url in {x.url for x in self.model.get_podcasts()}:
raise Exception('Already subscribed to ' + url)
self.url = url
# With the updated URL, fetch the feed again

View File

@ -124,7 +124,8 @@ class SubscribeAction(object):
# New entity name for "received" actions
class ReceivedSubscribeAction(SubscribeAction): pass
class ReceivedSubscribeAction(SubscribeAction):
pass
class UpdateDeviceAction(object):
@ -154,7 +155,8 @@ class EpisodeAction(object):
# New entity name for "received" actions
class ReceivedEpisodeAction(EpisodeAction): pass
class ReceivedEpisodeAction(EpisodeAction):
pass
class RewrittenUrl(object):
@ -444,7 +446,7 @@ class MygPoClient(object):
def flush(self, now=False):
if not self.can_access_webservice():
logger.warning('Flush requested, but sync disabled.')
logger.debug('Flush requested, but sync disabled.')
return
if self._worker_thread is None or now:
@ -510,7 +512,7 @@ class MygPoClient(object):
# handle outside
raise
except Exception as e:
except Exception:
logger.warning('Exception while polling for episodes.', exc_info=True)
# Step 2: Upload Episode actions

View File

@ -62,7 +62,6 @@ def get_metadata(url):
track_response = util.urlopen(url)
filesize = track_response.headers['content-length'] or '0'
filetype = track_response.headers['content-type'] or 'application/octet-stream'
headers_s = '\n'.join('%s:%s' % (k, v) for k, v in list(track_response.headers.items()))
filename = util.get_header_param(track_response.headers, 'filename', 'content-disposition') \
or os.path.basename(os.path.dirname(url))
track_response.close()
@ -222,7 +221,7 @@ class SoundcloudFeed(model.Feed):
if self.max_episodes > 0:
tracks = tracks[:self.max_episodes]
seen_guids = set(track['guid'] for track in tracks)
seen_guids = {track['guid'] for track in tracks}
episodes = []
for track in tracks:
@ -241,7 +240,7 @@ class SoundcloudFavFeed(SoundcloudFeed):
super(SoundcloudFavFeed, self).__init__(username)
def get_title(self):
return _('%s\'s favorites on Soundcloud') % self.username
return _("%s's favorites on Soundcloud") % self.username
def get_link(self):
return 'https://soundcloud.com/%s/favorites' % self.username

View File

@ -76,7 +76,7 @@ class Matcher(object):
return regexp.search(self._episode._text_description)
return bool(eval(term, {'__builtins__': None, 'S': S, 's': s, 'R': R, 'r': r}, self))
except Exception as e:
except Exception:
return False
def __getitem__(self, k):
@ -216,7 +216,7 @@ class EQL(object):
if not self._regex and not self._string:
try:
self._query = compile(query, '<eql-string>', 'eval')
except Exception as e:
except Exception:
self._query = None
def match(self, episode):

View File

@ -528,7 +528,11 @@ class MP3PlayerDevice(Device):
to_file_exists = to_file.query_exists()
from_size = episode.file_size
to_size = episode.file_size
if to_file_exists:
# An interrupted sync results in a partial file on the device that must be removed to fully sync it.
# Comparing file size would detect such files and finish uploading.
# However, some devices add metadata to files, increasing their size, and forcing an upload on every sync.
# File size and checksum can not be used.
if to_file_exists and self._config.device_sync.compare_episode_filesize:
try:
info = to_file.query_info(Gio.FILE_ATTRIBUTE_STANDARD_SIZE, Gio.FileQueryInfoFlags.NONE)
to_size = info.get_attribute_uint64(Gio.FILE_ATTRIBUTE_STANDARD_SIZE)
@ -578,10 +582,13 @@ class MP3PlayerDevice(Device):
if self._config.one_folder_per_podcast:
if path_info.get_file_type() == Gio.FileType.DIRECTORY:
path_file = root_path.get_child(path_info.get_name())
for child_info in path_file.enumerate_children(attributes, Gio.FileQueryInfoFlags.NONE, None):
if child_info.get_file_type() == Gio.FileType.REGULAR:
child_file = path_file.get_child(child_info.get_name())
self.add_sync_track(tracks, child_file, child_info, path_info.get_name())
try:
for child_info in path_file.enumerate_children(attributes, Gio.FileQueryInfoFlags.NONE, None):
if child_info.get_file_type() == Gio.FileType.REGULAR:
child_file = path_file.get_child(child_info.get_name())
self.add_sync_track(tracks, child_file, child_info, path_info.get_name())
except GLib.Error as err:
logger.error('get all tracks for %s failed: %s', path_file.get_uri(), err.message)
else:
if path_info.get_file_type() == Gio.FileTypeFlags.REGULAR:
@ -630,10 +637,12 @@ class MP3PlayerDevice(Device):
return True
class SyncCancelledException(Exception): pass
class SyncCancelledException(Exception):
pass
class SyncFailedException(Exception): pass
class SyncFailedException(Exception):
pass
class SyncTask(download.DownloadTask):
@ -762,7 +771,7 @@ class SyncTask(download.DownloadTask):
def __enter__(self):
return self.__lock.acquire()
def __exit__(self, type, value, traceback):
def __exit__(self, exception_type, value, traceback):
self.__lock.release()
def notify_as_finished(self):
@ -836,7 +845,7 @@ class SyncTask(download.DownloadTask):
try:
logger.info('Starting SyncTask')
self.device.add_track(self, reporthook=self.status_updated)
except SyncCancelledException as e:
except SyncCancelledException:
sync_result = SyncTask.CANCELLED
except Exception as e:
sync_result = SyncTask.FAILED

View File

@ -257,14 +257,14 @@ class gPodderSyncUI(object):
if episodes_in_playlists:
for episode_filename in episodes_in_playlists:
if ((not self._config.device_sync.playlists.use_absolute_path
and not playlist.playlist_folder.resolve_relative_path(episode_filename).query_exists()) or
(self._config.device_sync.playlists.use_absolute_path
and not playlist.playlist_folder.resolve_relative_path(episode_filename).query_exists())
or (self._config.device_sync.playlists.use_absolute_path
and not playlist.mountpoint.resolve_relative_path(episode_filename).query_exists())):
# episode was synced but no longer on device
# i.e. must have been deleted by user, so delete from gpodder
try:
episodes_to_delete.append(episode_dict[episode_filename])
except KeyError as ioe:
except KeyError:
logger.warning('Episode %s, removed from device has already been deleted from gpodder',
episode_filename)
# delete all episodes from gpodder (will prompt user)

View File

@ -147,7 +147,7 @@ _MIME_TYPE_LIST = [
('.webm', 'audio/webm'),
]
_MIME_TYPES = dict((k, v) for v, k in _MIME_TYPE_LIST)
_MIME_TYPES = {k: v for v, k in _MIME_TYPE_LIST}
_MIME_TYPES_EXT = dict(_MIME_TYPE_LIST)
@ -393,18 +393,18 @@ def calculate_size(path):
return os.path.getsize(path)
if os.path.isdir(path) and not os.path.islink(path):
sum = os.path.getsize(path)
size = os.path.getsize(path)
try:
for item in os.listdir(path):
try:
sum += calculate_size(os.path.join(path, item))
size += calculate_size(os.path.join(path, item))
except:
logger.warning('Cannot get size for %s', path, exc_info=True)
except:
logger.warning('Cannot access %s', path, exc_info=True)
return sum
return size
return 0
@ -543,10 +543,10 @@ def format_date(timestamp):
yesterday = time.localtime(time.time() - seconds_in_a_day)[:3]
try:
timestamp_date = time.localtime(timestamp)[:3]
except ValueError as e:
except ValueError:
logger.warning('Cannot convert timestamp', exc_info=True)
return None
except TypeError as e:
except TypeError:
logger.warning('Cannot convert timestamp', exc_info=True)
return None
@ -582,15 +582,15 @@ def format_filesize(bytesize, use_si_units=False, digits=2):
has a negative value.
"""
si_units = (
('kB', 10**3),
('MB', 10**6),
('GB', 10**9),
(_('kB'), 10**3),
(_('MB'), 10**6),
(_('GB'), 10**9),
)
binary_units = (
('KiB', 2**10),
('MiB', 2**20),
('GiB', 2**30),
(_('KiB'), 2**10),
(_('MiB'), 2**20),
(_('GiB'), 2**30),
)
try:
@ -606,7 +606,7 @@ def format_filesize(bytesize, use_si_units=False, digits=2):
else:
units = binary_units
(used_unit, used_value) = ('B', bytesize)
(used_unit, used_value) = (_('B'), bytesize)
for (unit, value) in units:
if bytesize >= value:
@ -844,9 +844,7 @@ def nice_html_description(img, description):
"""
basic html formatting + hyperlink highlighting + video thumbnail
"""
description = re.sub(r'''https?://[^\s]+''',
r'''<a href="\g<0>">\g<0></a>''',
description)
description = re.sub(r'https?://[^\s]+', r'<a href="\g<0>">\g<0></a>', description)
description = description.replace('\n', '<br>')
html = """<style type="text/css">
body > img { float: left; max-width: 30vw; margin: 0 1em 1em 0; }
@ -943,9 +941,9 @@ def mimetype_from_extension(extension):
return _MIME_TYPES_EXT[extension]
# Need to prepend something to the extension, so guess_type works
type, encoding = mimetypes.guess_type('file' + extension)
mimetype, encoding = mimetypes.guess_type('file' + extension)
return type or ''
return mimetype or ''
def extension_correct_for_mimetype(extension, mimetype):
@ -1057,10 +1055,10 @@ def file_type_by_extension(extension):
return _MIME_TYPES_EXT[extension].split('/')[0]
# Need to prepend something to the extension, so guess_type works
type, encoding = mimetypes.guess_type('file' + extension)
mimetype, encoding = mimetypes.guess_type('file' + extension)
if type is not None and '/' in type:
filetype, rest = type.split('/', 1)
if mimetype is not None and '/' in mimetype:
filetype, rest = mimetype.split('/', 1)
if filetype in ('audio', 'video', 'image'):
return filetype
@ -1353,8 +1351,8 @@ class IdleTimeout(object):
from gi.repository import GLib
self.id = GLib.timeout_add(milliseconds, self._callback, *args, priority=GLib.PRIORITY_DEFAULT_IDLE)
def set_max_milliseconds(self, max):
self.max_milliseconds = max
def set_max_milliseconds(self, max_milliseconds):
self.max_milliseconds = max_milliseconds
return self
def _callback(self, *args):
@ -1780,7 +1778,8 @@ def isabs(string):
they are considered "absolute" paths.
Source: http://code.activestate.com/recipes/208993/
"""
if protocolPattern.match(string): return 1
if protocolPattern.match(string):
return 1
return os.path.isabs(string)
@ -2342,7 +2341,7 @@ def get_header_param(headers, param, header_name):
raw_value = msg.get_param(param, header=header_name)
if raw_value is not None:
value = email.utils.collapse_rfc2231_value(raw_value)
except Exception as e:
except Exception:
logger.error('Cannot get %s from %s', param, header_name, exc_info=True)
return value
@ -2404,16 +2403,16 @@ def mount_volume_for_file(file, op=None):
return result, message
def scale_pixbuf(pixbuf, max):
def scale_pixbuf(pixbuf, max_size):
from gi.repository import GdkPixbuf
w_cur = pixbuf.get_width()
h_cur = pixbuf.get_height()
if w_cur <= max and h_cur <= max:
if w_cur <= max_size and h_cur <= max_size:
return pixbuf
f = max / (w_cur if w_cur >= h_cur else h_cur)
f = max_size / (w_cur if w_cur >= h_cur else h_cur)
w_new = int(w_cur * f)
h_new = int(h_cur * f)

View File

@ -153,6 +153,6 @@ def get_reg_current_user_string_value(subkey, value_name):
if type_ == winreg.REG_SZ:
return value
else:
raise WindowsError("Unexpected type for value %s in registry: %i" % (valueName, type_))
raise WindowsError("Unexpected type for value %s in registry: %i" % (value_name, type_))
except FileNotFoundError:
return None

View File

@ -18,7 +18,7 @@
# along with elib.intl. If not, see <http://www.gnu.org/licenses/>.
'''
"""
This code is adapted from the elib.intl module available on GitHub at
https://github.com/dieterv/elib.intl, commit 49d5797 on 1 Sep 2017.
@ -38,7 +38,7 @@ This module adds the following on Microsoft Windows systems:
See http://www.gnu.org/software/gettext/FAQ.html#windows_setenv for more
information.
'''
"""
__version__ = '0.0.3'
@ -55,7 +55,7 @@ logger = getLogger(__name__)
def _localefromlcid(lcid):
'''
"""
:param lcid: Microsoft Windows LCID
:returns: name of the supported gPodder locale or ISO 639-1 language code for a given lcid. If there is no
ISO 639-1 language code assigned to the language specified by lcid,
@ -65,7 +65,7 @@ def _localefromlcid(lcid):
More information can be found on the following websites:
- List of ISO 639-1 and ISO 639-2 language codes: http://www.loc.gov/standards/iso639-2/
- List of language identifiers: https://msdn.microsoft.com/library/windows/desktop/dd318693(v=vs.85).aspx
'''
"""
mapping = {1078: 'af', # Afrikaans - South Africa
1052: 'sq', # Albanian - Albania
1118: 'am', # Amharic - Ethiopia
@ -297,7 +297,7 @@ def _localefromlcid(lcid):
def _getscreenlanguage():
'''
"""
:returns: the locale for this session.
If the LANGUAGE environment variable is set, it's value overrides the
@ -306,7 +306,7 @@ def _getscreenlanguage():
Windows installation language.
Works on Microsoft Windows 2000 and up.
'''
"""
# Start with nothing
lang = None
@ -321,23 +321,23 @@ def _getscreenlanguage():
from ctypes import windll
lcid = windll.kernel32.GetUserDefaultUILanguage()
except:
logger.warning('Failed to get current screen language with \'GetUserDefaultUILanguage\'')
logger.warning("Failed to get current screen language with 'GetUserDefaultUILanguage'")
finally:
if lcid is None:
lang = 'C'
else:
lang = _localefromlcid(lcid)
logger.info('Windows screen language is \'%s\' (lcid %s)', lang, lcid)
logger.info("Windows screen language is '%s' (lcid %s)", lang, lcid)
return lang
def install(domain, localedir):
'''
"""
:param domain: translation domain
:param localedir: locale directory
'''
"""
# prep locale system
locale.setlocale(locale.LC_ALL, '')
@ -353,5 +353,7 @@ def install(domain, localedir):
from ctypes import cdll
libintl = cdll.LoadLibrary('libintl-8.dll')
libintl.bindtextdomain(domain.encode('mbcs'), localedir.encode('mbcs'))
# See #1538 not calling bind_textdomain_codeset results in garbled menus
libintl.bind_textdomain_codeset(domain.encode('mbcs'), 'UTF-8'.encode('mbcs'))
del libintl

View File

@ -45,7 +45,8 @@ FILEFORMAT_RANKING = ['270p', '360p', '720p', '1080p']
FORMATS = tuple((x, x) for x in FILEFORMAT_RANKING)
class VimeoError(BaseException): pass
class VimeoError(BaseException):
pass
@registry.download_url.register

View File

@ -174,21 +174,21 @@ def get_fmt_ids(youtube_config, allow_partial):
if youtube_config.preferred_hls_fmt_id == 0:
hls_fmt_ids = (youtube_config.preferred_hls_fmt_ids if youtube_config.preferred_hls_fmt_ids else [])
else:
format = hls_formats_dict.get(youtube_config.preferred_hls_fmt_id)
if format is None:
fmt = hls_formats_dict.get(youtube_config.preferred_hls_fmt_id)
if fmt is None:
hls_fmt_ids = []
else:
hls_fmt_ids, path, description = format
hls_fmt_ids, path, description = fmt
else:
hls_fmt_ids = []
if youtube_config.preferred_fmt_id == 0:
return (youtube_config.preferred_fmt_ids + hls_fmt_ids if youtube_config.preferred_fmt_ids else hls_fmt_ids)
format = formats_dict.get(youtube_config.preferred_fmt_id)
if format is None:
fmt = formats_dict.get(youtube_config.preferred_fmt_id)
if fmt is None:
return hls_fmt_ids
fmt_ids, path, description = format
fmt_ids, path, description = fmt
return fmt_ids + hls_fmt_ids
@ -342,24 +342,24 @@ def get_real_download_url(url, allow_partial, preferred_fmt_ids=None):
raise YouTubeError('Unsupported DRM content')
raise YouTubeError('No formats found')
formats_available = set(fmt_id for fmt_id, url in fmt_id_url_map)
formats_available = {fmt_id for fmt_id, url in fmt_id_url_map}
fmt_id_url_map = dict(fmt_id_url_map)
for id in preferred_fmt_ids:
if not re.search(r'^[0-9]+$', str(id)):
for fmt_id in preferred_fmt_ids:
if not re.search(r'^[0-9]+$', str(fmt_id)):
# skip non-integer formats 'best', '136+140' or twitch '720p'
continue
id = int(id)
if id in formats_available:
format = formats_dict.get(id) or hls_formats_dict.get(id)
if format is not None:
_, _, description = format
fmt_id = int(fmt_id)
if fmt_id in formats_available:
fmt = formats_dict.get(fmt_id) or hls_formats_dict.get(fmt_id)
if fmt is not None:
_, _, description = fmt
else:
description = 'Unknown'
logger.info('Found YouTube format: %s (fmt_id=%d)',
description, id)
url, duration = fmt_id_url_map[id]
description, fmt_id)
url, duration = fmt_id_url_map[fmt_id]
break
else:
raise YouTubeError('No preferred formats found')
@ -432,17 +432,25 @@ def get_real_channel_url(url):
@lru_cache(1)
def get_channel_id_url(url, feed_data=None):
if 'youtube.com' in url:
# URL may contain channel ID, avoid a network request
m = re.search(r'channel_id=([^"]+)', url)
if m:
# old versions of gpodder allowed newlines and whitespace in feed URLs, strip here to avoid a 404
channel_id = m.group(1).strip()
channel_url = 'https://www.youtube.com/channel/{}'.format(channel_id)
return channel_url
try:
if feed_data is None:
r = util.urlopen(url)
r = util.urlopen(url, cookies={'SOCS': 'CAI'})
if not r.ok:
raise YouTubeError('Youtube "%s": %d %s' % (url, r.status_code, r.reason))
else:
r = feed_data
# video page may contain corrupt HTML/XML, search for tag to avoid exception
m = re.search(r'channel_id=([^"]+)">', r.text)
m = re.search(r'(channel_id=([^"]+)">|"channelId":"([^"]+)")', r.text)
if m:
channel_id = m.group(1)
channel_id = m.group(2) or m.group(3)
else:
raw_xml_data = io.BytesIO(r.content)
xml_data = xml.etree.ElementTree.parse(raw_xml_data)
@ -454,6 +462,10 @@ def get_channel_id_url(url, feed_data=None):
channel_id = m.group(1)
if channel_id is None:
raise Exception('Could not retrieve YouTube channel ID for URL %s.' % url)
# feeds no longer contain the required "UC" prefix on channel ID
if len(channel_id) == 22:
channel_id = "UC" + channel_id
channel_url = 'https://www.youtube.com/channel/{}'.format(channel_id)
return channel_url
@ -632,10 +644,11 @@ def parse_youtube_url(url):
return new_url
# look for channel URL in page
logger.debug("Unknown Youtube URL, trying to extract channel ID...")
new_url = get_channel_id_url(url)
if new_url:
logger.debug("New Youtube URL: {}".format(new_url))
return new_url
return parse_youtube_url(new_url)
logger.debug("Not a valid Youtube URL: {}".format(url))
return url

View File

@ -54,8 +54,8 @@ SIMPLE_RSS = """
</rss>
"""
def test_easy(httpserver):
res_data = SIMPLE_RSS
httpserver.expect_request('/feed').respond_with_data(SIMPLE_RSS, content_type='text/xml')
res = MyFetcher().fetch(httpserver.url_for('/feed'), custom_key='value')
assert res.status == UPDATED_FEED
@ -66,8 +66,8 @@ def test_easy(httpserver):
assert args['url'] == httpserver.url_for('/feed')
assert args['extra_args']['custom_key'] == 'value'
def test_redirect(httpserver):
res_data = SIMPLE_RSS
httpserver.expect_request('/endfeed').respond_with_data(SIMPLE_RSS, content_type='text/xml')
redir_headers = {
'Location': '/endfeed',
@ -75,7 +75,7 @@ def test_redirect(httpserver):
# temporary redirect
httpserver.expect_request('/feed').respond_with_data(status=302, headers=redir_headers)
httpserver.expect_request('/permanentfeed').respond_with_data(status=301, headers=redir_headers)
res = MyFetcher().fetch(httpserver.url_for('/feed'))
assert res.status == UPDATED_FEED
args = res.feed['parse_feed']
@ -105,9 +105,9 @@ def test_redirect_loop(httpserver):
assert args['data_stream'].getvalue().decode('utf-8') == SIMPLE_RSS
assert args['url'] == httpserver.url_for('/feed')
def test_temporary_error_retry(httpserver):
httpserver.expect_ordered_request('/feed').respond_with_data(status=503)
res_data = SIMPLE_RSS
httpserver.expect_ordered_request('/feed').respond_with_data(SIMPLE_RSS, content_type='text/xml')
res = MyFetcher().fetch(httpserver.url_for('/feed'))
assert res.status == UPDATED_FEED

View File

@ -3,5 +3,5 @@ import re
here = os.path.dirname(__file__) or '.'
main_module = open(os.path.join(here, '../src/gpodder/__init__.py')).read()
metadata = dict(re.findall("__([a-z_]+)__\s*=\s*'([^']+)'", main_module))
metadata = dict(re.findall(r"__([a-z_]+)__\s*=\s*'([^']+)'", main_module))
print(metadata['version'])

View File

@ -53,7 +53,7 @@ def download_circleci(circleci, prefix):
""" download build artifacts from circleCI and exit """
print("I: downloading release artifacts from Circle.ci")
artifacts = requests.get("https://circleci.com/api/v1.1/project/github/gpodder/gpodder/%s/artifacts" % circleci).json()
items = set([u["url"] for u in artifacts if re.match(".+/gPodder-.+\.zip$", u["path"])])
items = {u["url"] for u in artifacts if re.match(r".+/gPodder-.+\.zip$", u["path"])}
if len(items) == 0:
error_exit("Nothing found to download")
download_items(items, prefix)
@ -88,7 +88,7 @@ def checksums():
m.update(block)
s.update(block)
block = f.read(4096)
ret[os.path.basename(archive)] = dict(md5=m.hexdigest(), sha256=s.hexdigest())
ret[os.path.basename(archive)] = {'md5': m.hexdigest(), 'sha256': s.hexdigest()}
return ret
@ -97,8 +97,8 @@ def get_contributors(tag, previous_tag):
list contributor logins '@...' for every commit in range
"""
cmp = repo.compare_commits(previous_tag, tag)
logins = [c.author.login for c in cmp.commits if c.author] + [c.committer.login for c in cmp.commits]
return sorted(set("@{}".format(n) for n in logins))
logins = [c.author.login for c in cmp.commits() if c.author] + [c.committer.login for c in cmp.commits()]
return sorted({"@{}".format(n) for n in logins})
def get_previous_tag():
@ -172,7 +172,7 @@ def upload(repo, tag, previous_tag, circleci, appveyor):
print("I: uploading %s..." % itm)
with open(filename, "rb") as f:
try:
asset = release.upload_asset(content_type, itm, f)
_ = release.upload_asset(content_type, itm, f)
except Exception as e:
error_exit("Error uploading asset '%s' (%r)" % (itm, e))
print("I: upload success")

View File

@ -1,61 +0,0 @@
#!/usr/bin/env python3
# summary.py - Text-based visual translation completeness summary
# Thomas Perl <thp@gpodder.org>, 2009-01-03
#
# Usage: make statistics | python summary.py
#
import glob
import math
import os
import re
import subprocess
width = 40
class Language(object):
def __init__(self, language, translated, fuzzy, untranslated):
self.language = language
self.translated = int(translated)
self.fuzzy = int(fuzzy)
self.untranslated = int(untranslated)
def get_translated_ratio(self):
return self.translated / (self.translated + self.fuzzy + self.untranslated)
def get_fuzzy_ratio(self):
return self.fuzzy / (self.translated + self.fuzzy + self.untranslated)
def get_untranslated_ratio(self):
return self.untranslated / (self.translated + self.fuzzy + self.untranslated)
def __cmp__(self, other):
return cmp(self.get_translated_ratio(), other.get_translated_ratio())
languages = []
COUNTS_RE = '((\d+) translated message[s]?)?(, (\d+) fuzzy translation[s]?)?(, (\d+) untranslated message[s]?)?\.'
po_folder = os.path.join(os.path.dirname(__file__), '..', '..', 'po')
for filename in glob.glob(os.path.join(po_folder, '*.po')):
language, _ = os.path.splitext(os.path.basename(filename))
msgfmt = subprocess.Popen(['msgfmt', '--statistics', filename],
stderr=subprocess.PIPE)
_, stderr = msgfmt.communicate()
match = re.match(COUNTS_RE, stderr).groups()
languages.append(Language(language, match[1] or '0', match[3] or '0', match[5] or '0'))
print('')
for language in sorted(languages):
tc = '#' * (int(math.floor(width * language.get_translated_ratio())))
fc = '~' * (int(math.floor(width * language.get_fuzzy_ratio())))
uc = ' ' * (width - len(tc) - len(fc))
print(' %5s [%s%s%s] -- %3.0f %% translated' % (language.language, tc, fc, uc, language.get_translated_ratio() * 100))
print("""
Total translations: %s
""" % (len(languages)))

View File

@ -104,7 +104,7 @@ os.environ['GI_TYPELIB_PATH'] = join(bundle_lib, 'girepository-1.0')
# for forked python
os.environ['PYTHONHOME'] = bundle_res
# Set $PYTHON to point inside the bundle
PYVER = 'python3.9'
PYVER = 'python3.11'
sys.path.append(bundle_res)
print('System Path:\n', '\n'.join(sys.path))
@ -128,7 +128,7 @@ def gpodder_home():
# it would be preferred to the old one
default_path = join(os.environ['HOME'], 'Library', 'Application Support', 'gPodder')
cands = [
os.environ.get('GPODDER_HOME'),
os.path.expanduser(os.environ.get('GPODDER_HOME')) if 'GPODDER_HOME' in os.environ else None,
default_path,
join(os.environ['HOME'], 'gPodder'),
]
@ -155,7 +155,7 @@ if regen:
openssl = join(bundle_bin, 'openssl')
MakeCertPem(openssl).regen(cert_gen)
else:
print('No regenerating', cert_gen, 'it\'s fresh enough')
print("No regenerating", cert_gen, "it's fresh enough")
# and link to it by default. Users may want to point cert.pem to MacPorts
# /opt/local/etc/openssl/cert.pem, for instance.
@ -180,5 +180,4 @@ elif app == 'run-pip':
# print("running", args)
os.execv(python_exe, args)
else:
import runpy
runpy.run_path(join(bundle_bin, app), run_name='__main__')

View File

@ -28,7 +28,7 @@ appname=$(basename "$app")
zip="${appname%.app}-$version.zip"
contents="${appname%.app}.contents"
if (which md5 >& /dev/null) ; then
if command -v md5 2>/dev/null; then
MD5=md5
else
MD5=md5sum

View File

@ -66,7 +66,7 @@ cp -a "$checkout"/tools/mac-osx/launcher.py "$resources"/
cp -a "$checkout"/tools/mac-osx/make_cert_pem.py "$resources"/bin
# install gPodder hard dependencies
$run_pip install setuptools==64.0.3 wheel || exit 1
$run_pip install setuptools==68.1.2 wheel || exit 1
$run_pip install mygpoclient==1.9 podcastparser==0.6.10 requests[socks]==2.31.0 || exit 1
# install brotli and pycryptodomex (build from source)
$run_pip debug -v
@ -89,7 +89,7 @@ for po in po/*; do
done
# copy fake dbus
cp -r tools/fake-dbus-module/dbus $resources/lib/python3.9/site-packages/dbus
cp -r tools/fake-dbus-module/dbus $resources/lib/python3.11/site-packages/dbus
# install
"$run_python" setup.py install --root="$resources/" --prefix=. --optimize=0

View File

@ -7,7 +7,7 @@ mutagen==1.46.0
mygpoclient==1.9
podcastparser==0.6.10
requests[socks]==2.31.0
urllib3==2.0.4
urllib3==2.0.7
yt-dlp
# eyed3 is optional and pulls in a lot of dependencies, so disable by default
# eyed3

View File

@ -85,7 +85,7 @@ function extract_installer {
PIP_REQUIREMENTS="\
certifi==2023.7.22
chardet==5.1.0
chardet==5.2.0
comtypes==1.2.0
git+https://github.com/jaraco/pywin32-ctypes.git@f27d6a0
html5lib==1.1
@ -95,7 +95,7 @@ mygpoclient==1.9
podcastparser==0.6.10
PySocks==1.7.1
requests==2.31.0
urllib3==2.0.4
urllib3==2.0.7
webencodings==0.5.1
yt-dlp
"
@ -155,7 +155,7 @@ function install_gpodder {
fi
# Create launchers
echo "python3 is $(which python3) version is $(python3 --version)"
echo "python3 is $(command -v python3) version is $(python3 --version)"
python3 "${MISC}"/create-launcher.py \
"${GPO_VERSION}" "${MINGW_ROOT}"/bin
@ -439,7 +439,7 @@ function dump_packages {
}
function build_installer {
BUILDPY=$(echo "${MINGW_ROOT}"/lib/python3.*/site-packages/gpodder)/build_info.py
BUILDPY="${REPO_CLONE}"/build/lib/gpodder/build_info.py
cp "${REPO_CLONE}"/src/gpodder/build_info.py "$BUILDPY"
echo 'BUILD_TYPE = u"windows"' >> "$BUILDPY"
echo "BUILD_VERSION = $BUILD_VERSION" >> "$BUILDPY"
@ -454,7 +454,7 @@ function build_installer {
}
function build_portable_installer {
BUILDPY=$(echo "${MINGW_ROOT}"/lib/python3.*/site-packages/gpodder)/build_info.py
BUILDPY="${REPO_CLONE}"/build/lib/gpodder/build_info.py
cp "${REPO_CLONE}"/src/gpodder/build_info.py "$BUILDPY"
echo 'BUILD_TYPE = u"windows-portable"' >> "$BUILDPY"
echo "BUILD_VERSION = $BUILD_VERSION" >> "$BUILDPY"

View File

@ -85,11 +85,11 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
if (retval == 0)
{
// It's bad, but can be ignored
printf ("GetFullPathName failed (%%d)\\n", GetLastError());
printf ("GetFullPathName failed (%%ld)\\n", GetLastError());
}
else if (retval < BUFSIZE)
{
if (lppPart != NULL && *lppPart != 0)
if (*lppPart != NULL)
{
lppPart[0][-1] = 0;
printf("Calling SetDllDirectoryW(%%ls)\\n", buffer);
@ -100,7 +100,7 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
}
else
{
printf ("SetDllDirectoryW failed (%%d)\\n", GetLastError());
printf ("SetDllDirectoryW failed (%%ld)\\n", GetLastError());
}
}
else
@ -110,7 +110,7 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
}
else
{
printf ("GetFullPathName buffer too small (required %%d)\\n", retval);
printf ("GetFullPathName buffer too small (required %%ld)\\n", retval);
return -1; // this shouldn't happen
}